author | Jian Wang <jian.wang@amlogic.com> | 2017-11-10 07:16:37 (GMT) |
---|---|---|
committer | Jian Wang <jian.wang@amlogic.com> | 2017-11-20 06:39:16 (GMT) |
commit | bcf77bffff442a8fd3f7e3e1ac084ca9ad1eb9a2 (patch) | |
tree | 16b20e597df8d0bdb0b3e692f1e6966795800f44 | |
parent | 6a53ae689996668ee42ce735214fb3de3c62389b (diff) | |
download | media-bcf77bffff442a8fd3f7e3e1ac084ca9ad1eb9a2.zip media-bcf77bffff442a8fd3f7e3e1ac084ca9ad1eb9a2.tar.gz media-bcf77bffff442a8fd3f7e3e1ac084ca9ad1eb9a2.tar.bz2 |
mediaext: add for media extensions [2/6]
PD# 152138
add media extensions
Change-Id: I12765f9bdaf2445211473f090c2495a0fb9b7e66
-rw-r--r-- | ammediaext/AmMediaDefsExt.cpp | 71 | ||||
-rw-r--r-- | ammediaext/AmMediaDefsExt.h | 78 | ||||
-rw-r--r-- | ammediaext/AmMetaDataExt.h | 123 | ||||
-rw-r--r-- | ammediaext/Android.mk | 22 | ||||
-rw-r--r-- | ammediaext/OMX_VendorExt.h | 177 |
5 files changed, 471 insertions, 0 deletions
diff --git a/ammediaext/AmMediaDefsExt.cpp b/ammediaext/AmMediaDefsExt.cpp new file mode 100644 index 0000000..bca32ac --- a/dev/null +++ b/ammediaext/AmMediaDefsExt.cpp @@ -0,0 +1,71 @@ +/* + * Copyright (C) 2012 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#define __STDINT_LIMITS +#define __STDC_LIMIT_MACROS +#include <stdint.h> + +#include <AmMediaDefsExt.h> + +namespace android +{ + +const int64_t kUnknownPTS = INT64_MIN; + +const char *MEDIA_MIMETYPE_VIDEO_MJPEG = "video/mjpeg"; +const char *MEDIA_MIMETYPE_VIDEO_MSMPEG4 = "video/x-msmpeg"; +const char *MEDIA_MIMETYPE_VIDEO_SORENSON_SPARK = "video/x-sorenson-spark"; +const char *MEDIA_MIMETYPE_VIDEO_WMV = "video/x-ms-wmv"; +const char *MEDIA_MIMETYPE_VIDEO_VC1 = "video/vc1"; +const char *MEDIA_MIMETYPE_VIDEO_WVC1 = "video/wvc1"; +const char *MEDIA_MIMETYPE_VIDEO_VPX = "video/x-vnd.on2.vp8"; +const char *MEDIA_MIMETYPE_VIDEO_RM10 = "video/rm10"; +const char *MEDIA_MIMETYPE_VIDEO_RM20 = "video/rm20"; +const char *MEDIA_MIMETYPE_VIDEO_RM30 = "video/rm30"; +const char *MEDIA_MIMETYPE_VIDEO_RM40 = "video/rm40"; +const char *MEDIA_MIMETYPE_VIDEO_VP6 = "video/x-vnd.on2.vp6"; +const char *MEDIA_MIMETYPE_VIDEO_VP6F = "video/x-vnd.on2.vp6f"; +const char *MEDIA_MIMETYPE_VIDEO_VP6A = "video/x-vnd.on2.vp6a"; +const char *MEDIA_MIMETYPE_VIDEO_WMV1 = "video/wmv1"; +const char *MEDIA_MIMETYPE_VIDEO_WMV2 = "video/wmv2"; +const char *MEDIA_MIMETYPE_VIDEO_WMV3 = "video/wmv3"; +const char *MEDIA_MIMETYPE_VIDEO_MSWMV3 = "video/x-ms-wmv"; + + +const char *MEDIA_MIMETYPE_AUDIO_DTS = "audio/dtshd"; +const char *MEDIA_MIMETYPE_AUDIO_MP1 = "audio/mp1"; +const char *MEDIA_MIMETYPE_AUDIO_MP2 = "audio/mp2"; +const char *MEDIA_MIMETYPE_AUDIO_ADPCM_IMA = "audio/adpcm-ima"; +const char *MEDIA_MIMETYPE_AUDIO_ADPCM_MS = "audio/adpcm-ms"; +const char *MEDIA_MIMETYPE_AUDIO_ALAC = "audio/alac"; +const char *MEDIA_MIMETYPE_AUDIO_AAC_ADIF = "audio/aac-adif"; +const char *MEDIA_MIMETYPE_AUDIO_AAC_LATM = "audio/aac-latm"; +const char *MEDIA_MIMETYPE_AUDIO_ADTS_PROFILE = "audio/adts"; +const char *MEDIA_MIMETYPE_AUDIO_WMA = "audio/wma"; +const char *MEDIA_MIMETYPE_AUDIO_WMAPRO = "audio/wmapro"; +const char *MEDIA_MIMETYPE_AUDIO_DTSHD = "audio/dtshd"; +const char *MEDIA_MIMETYPE_AUDIO_TRUEHD = "audio/truehd"; +const char *MEDIA_MIMETYPE_AUDIO_EC3 = "audio/eac3"; +const char *MEDIA_MIMETYPE_AUDIO_APE = "audio/ape"; +const char *MEDIA_MIMETYPE_AUDIO_FFMPEG = "audio/ffmpeg"; + +const char *MEDIA_MIMETYPE_TEXT_TTML = "application/ttml+xml"; + +const char *MEDIA_MIMETYPE_CONTAINER_ASF = "video/x-ms-asf"; +const char *MEDIA_MIMETYPE_CONTAINER_FLV = "video/x-flv"; +const char *MEDIA_MIMETYPE_CONTAINER_AIFF = "audio/x-aiff"; +const char *MEDIA_MIMETYPE_CONTAINER_DDP = "audio/ddp"; +} // namespace android diff --git a/ammediaext/AmMediaDefsExt.h b/ammediaext/AmMediaDefsExt.h new file mode 100644 index 0000000..1dee085 --- a/dev/null +++ b/ammediaext/AmMediaDefsExt.h @@ -0,0 +1,78 @@ +/* + * Copyright (C) 2012 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef AM_MEDIA_DEFS_EXT_H_ + +#define AM_MEDIA_DEFS_EXT_H_ + +#include <stdint.h> + +namespace android { + +extern const int64_t kUnknownPTS; + +extern const char *MEDIA_MIMETYPE_VIDEO_MSMPEG4; +extern const char *MEDIA_MIMETYPE_VIDEO_MJPEG; +extern const char *MEDIA_MIMETYPE_VIDEO_SORENSON_SPARK; +extern const char *MEDIA_MIMETYPE_VIDEO_WMV; +extern const char *MEDIA_MIMETYPE_VIDEO_VC1; +extern const char *MEDIA_MIMETYPE_VIDEO_WVC1; + +extern const char *MEDIA_MIMETYPE_VIDEO_VP6; +extern const char *MEDIA_MIMETYPE_VIDEO_VP6F; +extern const char *MEDIA_MIMETYPE_VIDEO_VP6A; +extern const char *MEDIA_MIMETYPE_VIDEO_HEVC; +extern const char *MEDIA_MIMETYPE_VIDEO_VPX; +extern const char *MEDIA_MIMETYPE_VIDEO_RM10; +extern const char *MEDIA_MIMETYPE_VIDEO_RM20; +extern const char *MEDIA_MIMETYPE_VIDEO_RM30; +extern const char *MEDIA_MIMETYPE_VIDEO_RM40; +extern const char *MEDIA_MIMETYPE_VIDEO_WMV1; +extern const char *MEDIA_MIMETYPE_VIDEO_WMV2; +extern const char *MEDIA_MIMETYPE_VIDEO_WMV3; +extern const char *MEDIA_MIMETYPE_VIDEO_MSWMV3; + +extern const char *MEDIA_MIMETYPE_VIDEO_VC1; +extern const char *MEDIA_MIMETYPE_VIDEO_WVC1; + +extern const char *MEDIA_MIMETYPE_AUDIO_DTS; +extern const char *MEDIA_MIMETYPE_AUDIO_MP1; +extern const char *MEDIA_MIMETYPE_AUDIO_MP2; +extern const char *MEDIA_MIMETYPE_AUDIO_ADPCM_IMA; +extern const char *MEDIA_MIMETYPE_AUDIO_ADPCM_MS; +extern const char *MEDIA_MIMETYPE_AUDIO_ALAC; +extern const char *MEDIA_MIMETYPE_AUDIO_AAC_ADIF; +extern const char *MEDIA_MIMETYPE_AUDIO_AAC_LATM; +extern const char *MEDIA_MIMETYPE_AUDIO_ADTS_PROFILE; +extern const char *MEDIA_MIMETYPE_AUDIO_WMA; +extern const char *MEDIA_MIMETYPE_AUDIO_WMAPRO; +extern const char *MEDIA_MIMETYPE_AUDIO_FFMPEG; +extern const char *MEDIA_MIMETYPE_AUDIO_DTSHD; +extern const char *MEDIA_MIMETYPE_AUDIO_APE; +extern const char *MEDIA_MIMETYPE_AUDIO_EC3; +extern const char *MEDIA_MIMETYPE_AUDIO_TRUEHD; +extern const char *MEDIA_MIMETYPE_AUDIO_ADTS_PROFILE; + + +extern const char *MEDIA_MIMETYPE_TEXT_TTML; + +extern const char *MEDIA_MIMETYPE_CONTAINER_ASF; +extern const char *MEDIA_MIMETYPE_CONTAINER_FLV; +extern const char *MEDIA_MIMETYPE_CONTAINER_DDP; +extern const char *MEDIA_MIMETYPE_CONTAINER_AIFF; +} // namespace android + +#endif // AM_MEDIA_DEFS_EXT_H_ diff --git a/ammediaext/AmMetaDataExt.h b/ammediaext/AmMetaDataExt.h new file mode 100644 index 0000000..30421cf --- a/dev/null +++ b/ammediaext/AmMetaDataExt.h @@ -0,0 +1,123 @@ +/* + * Copyright (C) 2012 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef AM_META_DATA_EXT_H_ + +#define AM_META_DATA_EXT_H_ + +#include <sys/types.h> + +#include <stdint.h> + +#include <utils/RefBase.h> +#include <utils/KeyedVector.h> +#include <utils/String8.h> + +namespace android { + +// The following keys map to int32_t data unless indicated otherwise. +enum { + // DRM information to implement secure pipeline + kKeyDrmID = 'drID', // raw data + + // kKeyFrameRate already exists, but we want a real number like 29.97. + kKeyFrameRateQ16 = 'frQF', // int32_t (video frame rate fps in Q16) + // Key to store codec specific data. + kKeyCodecSpecific = 'cosp', // raw data + // Keys for WMA codec initialization parameters. + kKeyWMABlockAlign = 'blkA', // int32_t + kKeyWMABitsPerSample = 'btSp', // int32_t + kKeyWMAFormatTag = 'foTg', // int32_t + + // Key to pass native window to OMX components. + kKeyNativeWindow = 'nawi', // pointer + + // Key to pass CryptoInfo to player. + kKeyCryptoInfo = 'cryi', // pointer + + // Key to adjust the timing of video/audio format change notification. + kKeyFormatChangeTime = 'fctu', // int64_t (usecs) + + // Keys to pass the original PTS and DTS to the decoder component. + kKeyPTSFromContainer = 'ptsC', // int64_t (usecs) + kKeyDTSFromContainer = 'dtsC', // int64_t (usecs) + kKeyMediaTimeOffset = 'mOfs', // int64_t (usecs) + + // Keys to support various PCM formats. + kKeyPCMBitsPerSample = 'Pbps', // int32_t + kKeyPCMDataEndian = 'Pend', // int32_t (OMX_ENDIANTYPE) + kKeyPCMDataSigned = 'Psgn', // int32_t (OMX_NUMERICALDATATYPE) + + // Keys to inner subtitle support + kKeyStreamTimeBaseNum = 'tiBS', //int32_t stream time base num + kKeyStreamTimeBaseDen = 'tiDS', //int32_t stream time base den + kKeyStreamStartTime = 'stTS', //int64_t stream start time + kKeyStreamCodecID = 'cIDS', //int32_t stream codec id + kKeyStreamCodecTag = 'cTgS', //int32_t stream codec tag + kKeyPktSize = 'sizP', // int32_t avPacket size + kKeyPktPts = 'ptsP', // int64_t avPacket pts + kKeyPktDts = 'dtsP', // int64_t avPacket dts + kKeyPktDuration = 'durP', // int32_t avPacket duration + kKeyPktConvergenceDuration = 'cduP', // int64_t avPacket convergence duration + kKeyPktFirstVPts = 'VPts', // int64_t first video pts + + + // audio profile + kKeyAudioProfile = 'aprf', // int32_t + kKeyExtraData = 'exda', + kKeyExtraDataSize = 'edsz', + kKeyCodecID = 'cdid', + + //amffmpeg extended types + kKeyProgramName = 'proN', // cstring + kKeyProgramNum = 'PrgN', // int32_t + kKeyIsMVC = 'mvc ', // bool (int32_t) + kKey4kOSD = '4OSD', // bool (int32_t) + KKeyIsDV = 'isDV', // bool (int32_t) + + kKeyBlockAlign = 'bagn', + kKeyAudioFlag ='aufg', // audio info reported from decoder to indicate special info + kKeyDtsDecoderVer ='dtsV', + kKeyDts958Fs ='dtsF', + kKeyDts958PktSize ='dtsP', + kKeyDts958PktType ='dtsT', + kKeyDtsPcmSampsInFrmMaxFs='dtsS', + + +}; + + +namespace media { + +typedef int32_t Type; + +// Amplayer extended types. +static const int kAmlTypeBase = 8192; //extend first id. +static const Type kAudioTrackNum = kAmlTypeBase + 1; // Integer +static const Type kVideoTrackNum = kAmlTypeBase + 2; // Integer +static const Type kInnerSubtitleNum = kAmlTypeBase + 3; // Integer +static const Type kAudioCodecAllInfo = kAmlTypeBase + 4; // String +static const Type kVideoCodecAllInfo = kAmlTypeBase + 5; // String +static const Type kInnerSubtitleAllInfo = kAmlTypeBase + 6; // String +static const Type kStreamType = kAmlTypeBase + 7; // String +static const Type kPlayerType = kAmlTypeBase + 8; // Integer + +} // namespace android::media + + +} // namespace android + +#endif // AM_META_DATA_EXT_H_ diff --git a/ammediaext/Android.mk b/ammediaext/Android.mk new file mode 100644 index 0000000..0a6c35f --- a/dev/null +++ b/ammediaext/Android.mk @@ -0,0 +1,22 @@ +LOCAL_PATH:= $(call my-dir) + +include $(CLEAR_VARS) + +LOCAL_VENDOR_MODULE := true +LOCAL_SRC_FILES := \ + AmMediaDefsExt.cpp \ + +LOCAL_C_INCLUDES += \ + $(TOP)/frameworks/native/include/media/openmax \ + $(TOP)/system/core/include/utils \ + $(LOCAL_PATH)/include/ + +LOCAL_SHARED_LIBRARIES := \ + libcutils \ + libdl \ + libutils \ + liblog \ + + +LOCAL_MODULE:= libammediaext +include $(BUILD_SHARED_LIBRARY) diff --git a/ammediaext/OMX_VendorExt.h b/ammediaext/OMX_VendorExt.h new file mode 100644 index 0000000..7b0a48e --- a/dev/null +++ b/ammediaext/OMX_VendorExt.h @@ -0,0 +1,177 @@ +/* + * Copyright (C) 2010 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#ifndef OMX_VendorExt_h +#define OMX_VendorExt_h + +#ifdef __cplusplus +extern "C" { +#endif /* __cplusplus */ + +#include <OMX_Core.h> + +typedef enum OMX_AUDIO_VENDOR_CODINGEXTTYPE { + OMX_AUDIO_CodingAndroidDTSHD = OMX_AUDIO_CodingVendorStartUnused, /**< DTSHD encoded data */ + OMX_AUDIO_CodingAndroidALAC, + OMX_AUDIO_CodingAndroidTRUEHD, + OMX_AUDIO_CodingFFMPEG, /**< ffmpeg audio encoded data */ +} OMX_AUDIO_VENDOR_CODINGEXTTYPE; + +typedef enum OMX_VIDEO_VENDOR_CODINGEXTTYPE { + OMX_VIDEO_ExtCodingUnused = OMX_VIDEO_CodingVendorStartUnused, + OMX_VIDEO_CodingVC1, + OMX_VIDEO_CodingVP6, /**< VP6 */ + OMX_VIDEO_CodingMSMPEG4, /**< MSMPEG4 */ + OMX_VIDEO_CodingSorenson, /**< Sorenson codec*/ + OMX_VIDEO_CodingWMV3, + OMX_VIDEO_CodingRV10, + OMX_VIDEO_CodingRV20, + OMX_VIDEO_CodingRV30, + OMX_VIDEO_CodingRV40, +} OMX_VIDEO_CODINGEXTTYPE; + +typedef enum OMX_VENDOR_INDEXEXTTYPE { + OMX_IndexParamAudioAndroidDtshd = OMX_IndexVendorStartUnused + 0x00100000, /**< reference: OMX_AUDIO_PARAM_ANDROID_DTSHDTYPE */ + OMX_IndexParamAudioAndroidAsf, /**< reference: OMX_AUDIO_PARAM_ANDROID_ASFTYPE */ + OMX_IndexParamAudioAndroidApe,/**< reference: OMX_AUDIO_PARAM_ANDROID_APETYPE */ + OMX_IndexParamAudioAndroidAlac, /**< reference: OMX_AUDIO_PARAM_ANDROID_ALACTYPE */ + OMX_IndexParamAudioAndroidTruehd, /**< reference: OMX_AUDIO_PARAM_ANDROID_TRUEHDTYPE */ + OMX_IndexParamAudioFFmpeg, + OMX_IndexParamAudioDolbyAudio, /**< reference: OMX_AUDIO_PARAM_DOLBYAUDIOTYPE */ + + OMX_IndexParamLowLatencyMode = OMX_IndexVendorStartUnused + 0x00200000, /* add by aml */ + OMX_IndexParam4kosd, /* add by aml */ +} OMX_VENDOR_INDEXEXTTYPE; + +typedef struct OMX_AUDIO_PARAM_DOLBYAUDIOTYPE { + OMX_U32 nSize; /**< size of the structure in bytes */ + OMX_VERSIONTYPE nVersion; /**< OMX specification version information */ + OMX_U32 nPortIndex; /**< port that this structure applies to */ + OMX_BOOL bExtendFormat; /**< Using extend format for output 4Bytes PCM size + pcm data + 4Bytes Raw size + Raw data*/ + OMX_U32 nAudioCodec; /**< AudioCodec. 1.ac3 2.eac3. */ +} OMX_AUDIO_PARAM_DOLBYAUDIOTYPE; + +typedef struct OMX_AUDIO_PARAM_ANDROID_DTSHDTYPE { + OMX_U32 nSize; /**< Size of this structure, in Bytes */ + OMX_VERSIONTYPE nVersion; /**< OMX specification version information */ + OMX_U32 nPortIndex; /**< Port that this structure applies to */ + + OMX_U16 nChannels; + OMX_U32 nSamplesPerSec; + OMX_U16 bitwidth; + OMX_BOOL bExtendFormat; /**< Using extend format for output 4Bytes PCM size + pcm data + 4Bytes Raw size + Raw data */ + int HwHDPCMoutCap; + int HwMulChoutCap; +} OMX_AUDIO_PARAM_ANDROID_DTSHDTYPE; + +typedef struct OMX_AUDIO_PARAM_ANDROID_ASFTYPE { + OMX_U32 nSize; /**< Size of this structure, in Bytes */ + OMX_VERSIONTYPE nVersion; /**< OMX specification version information */ + OMX_U32 nPortIndex; /**< Port that this structure applies to */ + + OMX_U16 wFormatTag; + OMX_U16 nChannels; + OMX_U32 nSamplesPerSec; + OMX_U32 nAvgBitratePerSec; + OMX_U16 nBlockAlign; + OMX_U16 wBitsPerSample; + OMX_U16 extradata_size; + OMX_U8 extradata[128]; +} OMX_AUDIO_PARAM_ASFTYPE; + +/** Ffmpeg params */ +typedef struct OMX_AUDIO_PARAM_FFMPEGTYPE { + OMX_U32 nSize; /**< Size of this structure, in Bytes */ + OMX_VERSIONTYPE nVersion; /**< OMX specification version information */ + OMX_U32 nPortIndex; /**< Port that this structure applies to */ + OMX_U32 nChannels; /**< Number of channels */ + OMX_U32 nBitRate; /**< Bit rate of the input data. Use 0 for variable + rate or unknown bit rates */ + OMX_U32 nSamplingRate; /**< is the sampling rate of the source data */ + OMX_U32 nBitPerSample; /**< Bit per sample */ + OMX_U32 nBlockAlign; /**< block align */ + OMX_U32 nCodecID; /**<codec id **/ + OMX_U32 nExtraData_Size; /** extra data size **/ + OMX_U8 nExtraData[1]; /** extra data point **/ +} OMX_AUDIO_PARAM_FFMPEGTYPE; + +typedef struct OMX_AUDIO_PARAM_ANDROID_APETYPE { + OMX_U32 nSize; /**< Size of this structure, in Bytes */ + OMX_VERSIONTYPE nVersion; /**< OMX specification version information */ + OMX_U32 nPortIndex; /**< Port that this structure applies to */ + + OMX_U16 nChannels; + OMX_U32 nSamplesPerSec; + OMX_U16 wBitsPerSample; + OMX_U16 extradata_size; + OMX_U8 *extradata; +} OMX_AUDIO_PARAM_APETYPE; + +typedef struct OMX_AUDIO_PARAM__ANDROID_TRUEHDTYPE { + OMX_U32 nSize; /**< size of the structure in bytes */ + OMX_VERSIONTYPE nVersion; /**< OMX specification version information */ + OMX_U32 nPortIndex; /**< port that this structure applies to */ + + OMX_U16 nChannels; + OMX_U32 nSamplesPerSec; + OMX_U16 wBitsPerSample; + OMX_BOOL bExtendFormat; /**< Using extend format for output 4Bytes PCM size + pcm data + 4Bytes Raw size + Raw data*/ + OMX_U32 nAudioCodec; /**< AudioCodec. 1.ac3 2.eac3. */ +} OMX_AUDIO_PARAM__ANDROID_TRUEHDTYPE; + +typedef struct OMX_AUDIO_PARAM_ANDROID_ALACTYPE { + OMX_U32 nSize; /**< Size of this structure, in Bytes */ + OMX_VERSIONTYPE nVersion; /**< OMX specification version information */ + OMX_U32 nPortIndex; /**< Port that this structure applies to */ + + OMX_U16 nChannels; + OMX_U32 nSamplesPerSec; + OMX_U16 extradata_size; + OMX_U8 *extradata; +} OMX_AUDIO_PARAM_ALACTYPE; + +typedef struct OMX_VIDEO_FORCESHUTDOWMCOMPONENT{ + OMX_U32 nSize; + OMX_VERSIONTYPE nVersion; + OMX_U32 nPortIndex; + OMX_BOOL isForceShutdowm; +} OMX_VIDEO_FORCESHUTDOWMCOMPONENT; + +typedef struct OMX_VIDEO_PARAM_IS_MVC { + OMX_U32 nSize; + OMX_VERSIONTYPE nVersion; + OMX_U32 nPortIndex; + OMX_BOOL bIsMVC; +} OMX_VIDEO_PARAM_IS_MVC; + +/** + * AML RM/WMV2 Video information + */ +typedef struct OMX_VIDEO_INFO { + OMX_U32 nSize; + OMX_VERSIONTYPE nVersion; + OMX_U32 nPortIndex; + OMX_U8 mExtraData[128]; + OMX_U32 nExtraDataSize; + OMX_U32 width; + OMX_U32 height; +} OMX_VIDEO_INFO; + +#ifdef __cplusplus +} +#endif /* __cplusplus */ + +#endif /* OMX_VindorExt_h */ +/* File EOF */ |