ax_comm_aio.h 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. /**********************************************************************************
  2. *
  3. * Copyright (c) 2019-2020 Beijing AXera Technology Co., Ltd. All Rights Reserved.
  4. *
  5. * This source file is the property of Beijing AXera Technology Co., Ltd. and
  6. * may not be copied or distributed in any isomorphic form without the prior
  7. * written consent of Beijing AXera Technology Co., Ltd.
  8. *
  9. **********************************************************************************/
  10. #ifndef _AX_COMM_AIO_H_
  11. #define _AX_COMM_AIO_H_
  12. #include "ax_base_type.h"
  13. #ifdef __cplusplus
  14. extern "C" {
  15. #endif
  16. typedef enum axAUDIO_BIT_WIDTH_E {
  17. AX_AUDIO_BIT_WIDTH_8 = 0, /* 8bit width */
  18. AX_AUDIO_BIT_WIDTH_16 = 1, /* 16bit width*/
  19. AX_AUDIO_BIT_WIDTH_24 = 2, /* 24bit width*/
  20. AX_AUDIO_BIT_WIDTH_BUTT,
  21. } AX_AUDIO_BIT_WIDTH_E;
  22. typedef enum axAUDIO_SOUND_MODE_E {
  23. AX_AUDIO_SOUND_MODE_MONO = 0, /*mono*/
  24. AX_AUDIO_SOUND_MODE_STEREO = 1, /*stereo*/
  25. AX_AUDIO_SOUND_MODE_BUTT
  26. } AX_AUDIO_SOUND_MODE_E;
  27. typedef struct axAUDIO_FRAME_S {
  28. AX_AUDIO_BIT_WIDTH_E enBitwidth; /*audio frame bitwidth*/
  29. AX_AUDIO_SOUND_MODE_E enSoundmode; /*audio frame momo or stereo mode*/
  30. AX_U8 *u64VirAddr;
  31. AX_U64 u64PhyAddr;
  32. AX_U64 u64TimeStamp; /*audio frame timestamp*/
  33. AX_U32 u32Seq; /*audio frame seq*/
  34. AX_U32 u32Len; /*data lenth in frame*/
  35. AX_U32 u32PoolId[2];
  36. AX_BOOL bEof;
  37. } AX_AUDIO_FRAME_S;
  38. typedef struct axAUDIO_STREAM_S {
  39. AX_U8 *pStream; /* the virtual address of stream */
  40. AX_U64 u64PhyAddr; /* the physics address of stream */
  41. AX_U32 u32Len; /* stream lenth, by bytes */
  42. AX_U64 u64TimeStamp; /* frame time stamp*/
  43. AX_U32 u32Seq; /* frame seq,if stream is not a valid frame,u32Seq is 0*/
  44. AX_BOOL bEof;
  45. } AX_AUDIO_STREAM_S;
  46. #ifdef __cplusplus
  47. }
  48. #endif
  49. #endif