avp_ext.h 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220
  1. #ifndef __AVP_EXT_H__
  2. #define __AVP_EXT_H__
  3. /*
  4. * \brief Define et middleware stream task playback status
  5. */
  6. typedef enum AVPStreamStatus_e_ {
  7. AVP_STREAM_STATUS_NULL = 0, /*<! nothing, just for init status*/
  8. AVP_STREAM_STATUS_RUNNING, /*<! running status,under playback*/
  9. AVP_STREAM_STATUS_WAITING, /*<! waiting status,waiting for playing*/
  10. } AVPStreamStatus_e;
  11. typedef struct AVPPBStreamInfo_t_
  12. {
  13. UINT32 dPrograss;
  14. UINT32 dDlSpeed;
  15. } AVPPBStreamInfo_t;
  16. typedef enum _AVPFrameRate_e
  17. {
  18. AVP_FRAME_RATE_FORBIDDEN = 0,
  19. AVP_FRAME_RATE_23976 = 1, /*!< 23.976*/
  20. AVP_FRAME_RATE_24 = 2,
  21. AVP_FRAME_RATE_25 = 3,
  22. AVP_FRAME_RATE_2997 = 4, /*!< 29.97*/
  23. AVP_FRAME_RATE_30 = 5,
  24. AVP_FRAME_RATE_50 = 6,
  25. AVP_FRAME_RATE_5994 = 7, /*!< 59.94*/
  26. AVP_FRAME_RATE_60 = 8
  27. } AVPFrameRate_e;
  28. /**
  29. * \brief Define Video Codec ID
  30. */
  31. typedef enum _AVPVideoCodecID_e
  32. {
  33. AVP_VIDEODEC_CODEC_NONE = 0,
  34. AVP_VIDEODEC_CODEC_UNKNOWN,
  35. AVP_VIDEODEC_CODEC_MPEG1,
  36. AVP_VIDEODEC_CODEC_MPEG2,
  37. AVP_VIDEODEC_CODEC_MPEG4,
  38. AVP_VIDEODEC_CODEC_H264,
  39. AVP_VIDEODEC_CODEC_VC1,
  40. AVP_VIDEODEC_CODEC_MJPEG,
  41. AVP_VIDEODEC_CODEC_RV,
  42. } AVPVideoCodecID_e;
  43. typedef enum _AVPFileType_t
  44. {
  45. AVP_FILE_TYPE_UNKNOWN = 0,
  46. AVP_FILE_TYPE_AVI,
  47. AVP_FILE_TYPE_ASF,
  48. AVP_FILE_TYPE_QT,
  49. AVP_FILE_TYPE_ND,
  50. AVP_FILE_TYPE_MPG,
  51. AVP_FILE_TYPE_WAVE,
  52. AVP_FILE_TYPE_CDXA,
  53. AVP_FILE_TYPE_OGG,
  54. AVP_FILE_TYPE_MP3,
  55. AVP_FILE_TYPE_AAC,
  56. AVP_FILE_TYPE_MKV,
  57. AVP_FILE_TYPE_RMF,
  58. AVP_FILE_TYPE_TS,
  59. AVP_FILE_TYPE_TSPL_PSA,
  60. AVP_FILE_TYPE_TSPL_PSV,
  61. AVP_FILE_TYPE_TSPL_TSA,
  62. AVP_FILE_TYPE_TSPL_TSV,
  63. AVP_FILE_TYPE_FLV,
  64. AVP_FILE_TYPE_SWF,
  65. AVP_FILE_TYPE_AC3,
  66. AVP_FILE_TYPE_FLAC,
  67. AVP_FILE_TYPE_APE,
  68. AVP_FILE_TYPE_JPG,
  69. AVP_FILE_TYPE_BMP,
  70. AVP_FILE_TYPE_GIF,
  71. AVP_FILE_TYPE_PNG,
  72. AVP_FILE_TYPE_TIFF,
  73. } AVPFileType_t;
  74. /**
  75. * \brief Define Audio Codec ID
  76. */
  77. typedef enum _AVPAudioCodecID_e
  78. {
  79. AVP_AUDIODEC_CODEC_NONE = 0,
  80. AVP_AUDIODEC_CODEC_UNKNOWN,
  81. AVP_AUDIODEC_CODEC_MPEG1_LAYER1,
  82. AVP_AUDIODEC_CODEC_MPEG1_LAYER2,
  83. AVP_AUDIODEC_CODEC_MPEG1_LAYER3,
  84. AVP_AUDIODEC_CODEC_MPEG2,
  85. AVP_AUDIODEC_CODEC_AC3,
  86. AVP_AUDIODEC_CODEC_TRUEHD,
  87. AVP_AUDIODEC_CODEC_PCM,
  88. AVP_AUDIODEC_CODEC_WMA,
  89. AVP_AUDIODEC_CODEC_AAC,
  90. AVP_AUDIODEC_CODEC_MPEG2_AAC,
  91. AVP_AUDIODEC_CODEC_DTS,
  92. AVP_AUDIODEC_CODEC_OGG_VORBIS,
  93. AVP_AUDIODEC_CODEC_COOK,
  94. AVP_AUDIODEC_CODEC_FLAC,
  95. } AVPAudioCodecID_e;
  96. /**
  97. * \brief Define Audio Channel info
  98. */
  99. typedef enum _AVPAudioChanel_t
  100. {
  101. AVP_AUDIO_CHANEL_NONE = 0,
  102. AVP_AUDIO_CHANEL_2 = 2,
  103. } AVPAudioChanel_t;
  104. /**
  105. * \brief Define Audio Stream attribute info
  106. */
  107. typedef struct _AVPAudStrmAttribute_t
  108. {
  109. UINT32 dChanelInfo; /*!< channel info,\ref AVPAudioChanel_t*/
  110. AVPAudioCodecID_e eAudioCodec; /*!< codec info,\ref AVPVideoCodecID_e*/
  111. } AVPAudStrmAttribute_t;
  112. typedef struct _AVPMetaData_t
  113. {
  114. UINT32 dTotalPlayBackTime; /*<! total playback time */
  115. UINT64 dFileSize; /*<! File size */
  116. UINT32 dBitRate;
  117. /*Video MetaData*/
  118. UINT32 dHorizontalSize; /*<! resolution wide*/
  119. UINT32 dVerticalSize; /*<! resolution high*/
  120. AVPVideoCodecID_e eVideoCodecID; /*!< current playback file video codec,\ref AVPVideoCodecID_e*/
  121. /*audio MetaData*/
  122. AVPAudioCodecID_e eAudioCodecID; /*!< current playback file audio codec,\ref AVPAudioCodecID_e*/
  123. AVPFrameRate_e eFrameRate; /*!< current playback file frame rate,\ref AVPFrameRate_e*/
  124. AVPFileType_t eFileType; /*<! File Type */
  125. } AVPMetaData_t;
  126. typedef enum AVPPlayState_e_
  127. {
  128. AVP_PLAY_STATE_IDLE, /*<! idle state*/
  129. AVP_PLAY_STATE_STOP, /*<! stop state*/
  130. AVP_PLAY_STATE_PLAY, /*<! play state*/
  131. AVP_PLAY_STATE_FF, /*<! fast forward state*/
  132. AVP_PLAY_STATE_FB, /*<! fast backward state*/
  133. AVP_PLAY_STATE_SF, /*<! slow forward state*/
  134. AVP_PLAY_STATE_SB, /*<! slow backward state*/
  135. AVP_PLAY_STATE_PAUSE, /*<! pause state*/
  136. AVP_PLAY_STATE_TRANSITIONING, /*<! transitioning state*/
  137. AVP_PLAY_STATE_MAX,
  138. } AVPPlayState_e;
  139. typedef enum
  140. {
  141. NET_PPLAYER_NULL,
  142. NET_PPLAYER_PLAY,
  143. NET_PPLAYER_STOP,
  144. NET_PPLAYER_TRANSITIONING,
  145. NET_PPLAYER_MAX
  146. } NET_PPlayer_Status;
  147. typedef struct _AVPPlayBackInfo_t {
  148. AVPPlayState_e eState; /*!< Current playback file state,\ref AVPPlayState_e*/
  149. AVPMetaData_t stMetaData; /*!< Current playback file meta data,\ref AVPMetaData_t*/
  150. } AVPPlayBackInfo_t;
  151. /*
  152. * \brief Define avp driver work stage
  153. */
  154. typedef enum AVPDriverStage_e_
  155. {
  156. AVP_DRIVER_STAGE_STARTUP = 1, /*<! start up stage>*/
  157. AVP_DRIVER_STAGE_RUNNING, /*<! running stage>*/
  158. AVP_DRIVER_STAGE_FINALIZE /*<! finalize stage>*/
  159. } AVPDriverStage_e;
  160. /*
  161. * \brief Define avp stream type
  162. */
  163. typedef enum AVPStreamType_e_
  164. {
  165. AVP_STREAM_TYPE_NULL = 0,
  166. AVP_STREAM_TYPE_RMVB, /*<! rmvb stream>*/
  167. AVP_STREAM_TYPE_MAX
  168. } AVPStreamType_e;
  169. typedef enum AVPDrvExecuteStatus_e_ {
  170. AVP_DRV_EXE_STATUS_NONEBLOCK = 1,
  171. AVP_DRV_EXE_STATUS_BLOCK,
  172. AVP_DRV_EXE_STATUS_BUFFERING,
  173. } AVPDrvExecuteStatus_e;
  174. typedef enum AVPStreamParaType_e_
  175. {
  176. AVP_STREAM_PARA_NULL = 0,
  177. AVP_STREAM_PARA_STAGE,
  178. AVP_STREAM_PARA_PRESTAGE,
  179. AVP_STREAM_PARA_TYPE,
  180. AVP_STREAM_PARA_EXESTATUS,
  181. AVP_STREAM_PARA_MAX,
  182. } AVPStreamParaType_e;
  183. #endif