CodecTypes.idl

概述

Codec模块接口定义中使用的自定义数据类型。

Codec模块接口定义中使用的自定义数据类型,包括编解码类型、音视频参数、buffer定义等。

模块包路径:ohos.hdi.codec.v1_0

起始版本: 3.2

相关模块:Codec

汇总

名称 描述
struct  Alignment 对齐结构定义。
struct  Rect 矩形的定义。
struct  RangeValue 取值范围的定义。
struct  CodecVideoPortCap 定义视频编解码能力。
struct  CodecAudioPortCap 定义音频编解码能力。
struct  PortCap 定义音视频编解码能力。
struct  OmxVerType 定义组件的版本信息。
union  OMX_VERSIONTYPE 定义组件的版本信息。
struct  CodecCompCapability 定义Codec编解码能力。
struct  OmxCodecBuffer Codec buffer信息的定义。
struct  OMX_TUNNELSETUPTYPE 用于将数据从输出端口传递到输入端口。
struct  CompVerInfo 定义了组件信息,包含组件名,UUID, 组件版本以及spec版本。
struct  EventInfo 定义事件上报信息。

枚举

名称 描述
CodecType {
VIDEO_DECODER, VIDEO_ENCODER, AUDIO_DECODER, AUDIO_ENCODER,   INVALID_TYPE
}
枚举编解码的类型。
AvCodecRole {
MEDIA_ROLETYPE_IMAGE_JPEG = 0, MEDIA_ROLETYPE_VIDEO_AVC, MEDIA_ROLETYPE_VIDEO_HEVC, MEDIA_ROLETYPE_AUDIO_FIRST = 0x10000,   MEDIA_ROLETYPE_AUDIO_AAC = 0x10000, MEDIA_ROLETYPE_AUDIO_G711A, MEDIA_ROLETYPE_AUDIO_G711U, MEDIA_ROLETYPE_AUDIO_G726,   MEDIA_ROLETYPE_AUDIO_PCM, MEDIA_ROLETYPE_AUDIO_MP3, MEDIA_ROLETYPE_INVALID
}
枚举音视频编解码组件类型。
Profile {
INVALID_PROFILE = 0, AAC_LC_PROFILE = 0x1000, AAC_MAIN_PROFILE, AAC_HE_V1_PROFILE,   AAC_HE_V2_PROFILE, AAC_LD_PROFILE, AAC_ELD_PROFILE, AVC_BASELINE_PROFILE = 0x2000,   AVC_MAIN_PROFILE, AVC_HIGH_PROFILE, HEVC_MAIN_PROFILE = 0x3000, HEVC_MAIN_10_PROFILE
}
枚举Codec规格。
CodecCapsMask { CODEC_CAP_ADAPTIVE_PLAYBACK = 0x1, CODEC_CAP_SECURE_PLAYBACK = 0x2, CODEC_CAP_TUNNEL_PLAYBACK = 0x4, CODEC_CAP_MULTI_PLANE = 0x10000 } 枚举播放能力。
AudioSampleRate {
AUD_SAMPLE_RATE_8000 = 8000, AUD_SAMPLE_RATE_12000 = 12000, AUD_SAMPLE_RATE_11025 = 11025, AUD_SAMPLE_RATE_16000 = 16000,   AUD_SAMPLE_RATE_22050 = 22050, AUD_SAMPLE_RATE_24000 = 24000, AUD_SAMPLE_RATE_32000 = 32000, AUD_SAMPLE_RATE_44100 = 44100,   AUD_SAMPLE_RATE_48000 = 48000, AUD_SAMPLE_RATE_64000 = 64000, AUD_SAMPLE_RATE_96000 = 96000, AUD_SAMPLE_RATE_INVALID
}
枚举音频采样率。
AudioSampleFormat {
AUDIO_SAMPLE_FMT_U8 , AUDIO_SAMPLE_FMT_S16 , AUDIO_SAMPLE_FMT_S32 , AUDIO_SAMPLE_FMT_FLOAT , AUDIO_SAMPLE_FMT_DOUBLE , AUDIO_SAMPLE_FMT_U8P , AUDIO_SAMPLE_FMT_S16P , AUDIO_SAMPLE_FMT_S32P , AUDIO_SAMPLE_FMT_FLOATP , AUDIO_SAMPLE_FMT_DOUBLEP , AUDIO_SAMPLE_FMT_INVALID
}
枚举音频采样格式。
CodecProcessMode {
PROCESS_BLOCKING_INPUT_BUFFER = 0X1, PROCESS_BLOCKING_OUTPUT_BUFFER = 0X2, PROCESS_BLOCKING_CONTROL_FLOW = 0X4, PROCESS_NONBLOCKING_INPUT_BUFFER = 0X100,   PROCESS_NONBLOCKING_OUTPUT_BUFFER = 0X200, PROCESS_NONBLOCKING_CONTROL_FLOW = 0X400
}
枚举编解码处理模式。
ShareMemTypes { READ_WRITE_TYPE = 0x1, READ_ONLY_TYPE = 0x2 } 枚举共享内存类型。
BitRateMode {
BIT_RATE_MODE_INVALID , BIT_RATE_MODE_VBR , BIT_RATE_MODE_CBR , BIT_RATE_MODE_CQ , BIT_RATE_MODE_VCBR , BIT_RATE_MODE_ABR
}
枚举比特率类型。
CodecEventType {
OMX_EventCmdComplete , OMX_EventError , OMX_EventMark , OMX_EventPortSettingsChanged ,
OMX_EventBufferFlag , OMX_EventResourcesAcquired , OMX_EventComponentResumed , OMX_EventDynamicResourcesAvailable ,
OMX_EventPortFormatDetected , OMX_EventKhronosExtensions = 0x6F000000 , OMX_EventVendorStartUnused = 0x7F000000 , OMX_EventMax = 0x7FFFFFFF
}
枚举组件状态
CodecCommandType {
OMX_CommandStateSet , OMX_CommandFlush , OMX_CommandPortDisable , OMX_CommandPortEnable , OMX_CommandMarkBuffer , OMX_CommandKhronosExtensions = 0x6F000000 , OMX_CommandVendorStartUnused = 0x7F000000 , OMX_CommandMax = 0x7FFFFFFF
}
枚举ICodecComponent中SendCommand接口的cmd参数
CodecStateType {
OMX_StateInvalid , OMX_StateLoaded , OMX_StateIdle , OMX_StateExecuting , OMX_StatePause , OMX_StateWaitForResources , OMX_StateKhronosExtensions = 0x6F000000 , OMX_StateVendorStartUnused = 0x7F000000 , OMX_StateMax = 0x7FFFFFFF
}
更改组件状态
CodecBufferSupplierType {
OMX_BufferSupplyUnspecified = 0 , OMX_BufferSupplyInput , OMX_BufferSupplyOutput , OMX_BufferSupplyKhronosExtensions = 0x6F000000 , OMX_BufferSupplyVendorStartUnused = 0x7F000000 , OMX_BufferSupplyMax = 0x7FFFFFFF
}
表示端口供应商在两个端口之间建立隧道时的首选项