Android-x86
Fork

  • R/O
  • HTTP
  • SSH
  • HTTPS

frameworks-native: コミット

frameworks/native


コミットメタ情報

リビジョン46d619de70a2cab1b71954d273007938839c71cf (tree)
日時2013-11-04 23:47:25
作者Michael Chen <omxcodec@gmai...>
コミッターChih-Wei Huang

ログメッセージ

add HEVC decoder and cleanup

Change-Id: I16342228014320161a22302a3c14df7725556cd2

変更サマリ

差分

--- a/include/media/openmax/OMX_Audio.h
+++ b/include/media/openmax/OMX_Audio.h
@@ -109,8 +109,11 @@ typedef enum OMX_AUDIO_CODINGTYPE {
109109 OMX_AUDIO_CodingFLAC, /**< Any variant of FLAC encoded data */
110110 OMX_AUDIO_CodingKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
111111 OMX_AUDIO_CodingVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
112+ OMX_AUDIO_CodingMP2, /**< Any variant of MP2 encoded data */
113+ OMX_AUDIO_CodingAC3, /**< Any variant of AC3 encoded data */
112114 OMX_AUDIO_CodingAPE, /**< Any variant of APE encoded data */
113115 OMX_AUDIO_CodingDTS, /**< Any variant of DTS encoded data */
116+ OMX_AUDIO_CodingFFMPEG, /**< Any variant of FFMPEG encoded data */
114117 OMX_AUDIO_CodingMax = 0x7FFFFFFF
115118 } OMX_AUDIO_CODINGTYPE;
116119
@@ -356,6 +359,36 @@ typedef struct OMX_AUDIO_PARAM_FLACTYPE {
356359 } OMX_AUDIO_PARAM_FLACTYPE;
357360
358361
362+/** MP2 params */
363+typedef struct OMX_AUDIO_PARAM_MP2TYPE {
364+ OMX_U32 nSize; /**< size of the structure in bytes */
365+ OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
366+ OMX_U32 nPortIndex; /**< port that this structure applies to */
367+ OMX_U32 nChannels; /**< Number of channels */
368+ OMX_U32 nBitRate; /**< Bit rate of the input data. Use 0 for variable
369+ rate or unknown bit rates */
370+ OMX_U32 nSampleRate; /**< Sampling rate of the source data. Use 0 for
371+ variable or unknown sampling rate. */
372+ OMX_AUDIO_CHANNELMODETYPE eChannelMode; /**< Channel mode enumeration */
373+ OMX_AUDIO_MP3STREAMFORMATTYPE eFormat; /**< MP3 stream format */
374+} OMX_AUDIO_PARAM_MP2TYPE;
375+
376+
377+/** AC3 params */
378+typedef struct OMX_AUDIO_PARAM_AC3TYPE {
379+ OMX_U32 nSize; /**< size of the structure in bytes */
380+ OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
381+ OMX_U32 nPortIndex; /**< port that this structure applies to */
382+ OMX_U32 nChannels; /**< Number of channels */
383+ OMX_U32 nBitRate; /**< Bit rate of the input data. Use 0 for variable
384+ rate or unknown bit rates */
385+ OMX_U32 nSamplingRate; /**< Sampling rate of the source data. Use 0 for
386+ variable or unknown sampling rate. */
387+ OMX_AUDIO_CHANNELMODETYPE eChannelMode; /**< Channel mode enumeration */
388+} OMX_AUDIO_PARAM_AC3TYPE;
389+
390+
391+/** APE params */
359392 typedef struct OMX_AUDIO_PARAM_APETYPE {
360393 OMX_U32 nSize; /**< size of the structure in bytes */
361394 OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
@@ -370,6 +403,7 @@ typedef struct OMX_AUDIO_PARAM_APETYPE {
370403 } OMX_AUDIO_PARAM_APETYPE;
371404
372405
406+/** DTS params */
373407 typedef struct OMX_AUDIO_PARAM_DTSTYPE {
374408 OMX_U32 nSize; /**< size of the structure in bytes */
375409 OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
@@ -382,6 +416,23 @@ typedef struct OMX_AUDIO_PARAM_DTSTYPE {
382416 OMX_AUDIO_CHANNELMODETYPE eChannelMode; /**< Channel mode enumeration */
383417 } OMX_AUDIO_PARAM_DTSTYPE;
384418
419+/** FFMPEG Audio params */
420+typedef struct OMX_AUDIO_PARAM_FFMPEGTYPE {
421+ OMX_U32 nSize;
422+ OMX_VERSIONTYPE nVersion;
423+ OMX_U32 nPortIndex;
424+
425+ OMX_S32 eCodecId; /**< enum AVCodecID */
426+ OMX_U32 nChannels; /**< Number of channels */
427+ OMX_U32 nBitRate; /**< Bit rate of the input data. Use 0 for variable
428+ rate or unknown bit rates */
429+ OMX_U32 nBitsPerSample; /**< Number of bits in each sample */
430+ OMX_U32 nSampleRate; /**< Sampling rate of the source data. Use 0 for
431+ variable or unknown sampling rate. */
432+ OMX_U32 nBlockAlign; /**< is the block alignment, or block size, in bytes of the audio codec */
433+
434+ OMX_S32 eSampleFormat; /**< enum AVSampleFormat */
435+} OMX_AUDIO_PARAM_FFMPEGTYPE;
385436
386437 /** WMA Version */
387438 typedef enum OMX_AUDIO_WMAFORMATTYPE {
--- a/include/media/openmax/OMX_Index.h
+++ b/include/media/openmax/OMX_Index.h
@@ -136,8 +136,6 @@ typedef enum OMX_INDEXTYPE {
136136 OMX_IndexParamAudioSmv, /**< reference: OMX_AUDIO_PARAM_SMVTYPE */
137137 OMX_IndexParamAudioVorbis, /**< reference: OMX_AUDIO_PARAM_VORBISTYPE */
138138 OMX_IndexParamAudioFlac, /**< reference: OMX_AUDIO_PARAM_FLACTYPE */
139- OMX_IndexParamAudioApe, /**< reference: OMX_AUDIO_PARAM_APETYPE */
140- OMX_IndexParamAudioDts, /**< reference: OMX_AUDIO_PARAM_DTSTYPE */
141139
142140 OMX_IndexConfigAudioMidiImmediateEvent, /**< reference: OMX_AUDIO_CONFIG_MIDIIMMEDIATEEVENTTYPE */
143141 OMX_IndexConfigAudioMidiControl, /**< reference: OMX_AUDIO_CONFIG_MIDICONTROLTYPE */
@@ -265,6 +263,12 @@ typedef enum OMX_INDEXTYPE {
265263 to 0x7FFFFFFE. This range is not broken out by vendor, so
266264 private indexes are not guaranteed unique and therefore should
267265 only be sent to the appropriate component. */
266+ OMX_IndexParamAudioMp2, /**< reference: OMX_AUDIO_PARAM_MP2TYPE */
267+ OMX_IndexParamAudioAc3, /**< reference: OMX_AUDIO_PARAM_AC3TYPE */
268+ OMX_IndexParamAudioApe, /**< reference: OMX_AUDIO_PARAM_APETYPE */
269+ OMX_IndexParamAudioDts, /**< reference: OMX_AUDIO_PARAM_DTSTYPE */
270+ OMX_IndexParamVideoFFmpeg, /**< reference: OMX_VIDEO_PARAM_FFMPEGTYPE */
271+ OMX_IndexParamAudioFFmpeg, /**< reference: OMX_AUDIO_PARAM_FFMPEGTYPE */
268272
269273 OMX_IndexMax = 0x7FFFFFFF
270274
--- a/include/media/openmax/OMX_Video.h
+++ b/include/media/openmax/OMX_Video.h
@@ -88,6 +88,11 @@ typedef enum OMX_VIDEO_CODINGTYPE {
8888 OMX_VIDEO_CodingVPX, /**< Google VPX, formerly known as On2 VP8 */
8989 OMX_VIDEO_CodingKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */
9090 OMX_VIDEO_CodingVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */
91+ OMX_VIDEO_CodingVC1, /**< VC1 */
92+ OMX_VIDEO_CodingFLV1, /**< Sorenson's H.263 */
93+ OMX_VIDEO_CodingDIVX, /**< DIVX */
94+ OMX_VIDEO_CodingHEVC, /**< HEVC */
95+ OMX_VIDEO_CodingFFMPEG, /**< FFMPEG */
9196 OMX_VIDEO_CodingMax = 0x7FFFFFFF
9297 } OMX_VIDEO_CODINGTYPE;
9398
@@ -1067,6 +1072,19 @@ typedef struct OMX_VIDEO_CONFIG_NALSIZE {
10671072 OMX_U32 nNaluBytes;
10681073 } OMX_VIDEO_CONFIG_NALSIZE;
10691074
1075+/**
1076+ * FFMPEG Video Params
1077+ */
1078+typedef struct OMX_VIDEO_PARAM_FFMPEGTYPE {
1079+ OMX_U32 nSize;
1080+ OMX_VERSIONTYPE nVersion;
1081+ OMX_U32 nPortIndex;
1082+
1083+ OMX_S32 eCodecId; /**< enum AVCodecID */
1084+ OMX_U32 nWidth;
1085+ OMX_U32 nHeight;
1086+} OMX_VIDEO_PARAM_FFMPEGTYPE;
1087+
10701088 /** @} */
10711089
10721090 #ifdef __cplusplus
旧リポジトリブラウザで表示