native_avcodec_base.h
概述
声明运行音视频编解码通用的结构体、字符常量、枚举。
起始版本: 9
相关模块:
汇总
结构体
名称 | 描述 |
---|---|
OH_AVCodecBufferAttr | 定义OH_AVCodec的Buffer描述信息。 |
OH_AVCodecAsyncCallback | AVCodec所有的异步回调函数指针集合。注册一个该结构体实例给OH_AVCodec实例,并处理通过该回调报告 的信息,以确保AVCodec正常运转。 |
类型定义
名称 | 描述 |
---|---|
OH_AVCodecBufferFlags | 枚举OH_AVCodec的Buffer标记的类别。 |
OH_AVCodecBufferAttr | 定义OH_AVCodec的Buffer描述信息。 |
(*OH_AVCodecOnError) (OH_AVCodec *codec, int32_t errorCode, void *userData) | 当OH_AVCodec实例运行发生错误时,该函数指针会被调用以报告具体错误信息。 |
(*OH_AVCodecOnStreamChanged) (OH_AVCodec *codec, OH_AVFormat *format, void *userData) | 当输出流发生变化时,该函数指针会被调用以报告新的流描述信息。 需要注意的时,OH_AVFormat指针的生命周期仅维持在该函数指针被调用时上有效,禁止在调用结束后继续访问。 |
(*OH_AVCodecOnNeedInputData) (OH_AVCodec *codec, uint32_t index, OH_AVMemory *data, void *userData) | 当AVCodec运行过程中需要新的输入数据时,该函数指针会被调用,并携带一块可用的Buffer以供填入新的输入数据。 |
(*OH_AVCodecOnNewOutputData) (OH_AVCodec *codec, uint32_t index, OH_AVMemory *data, OH_AVCodecBufferAttr *attr, void *userData) | 当AVCodec运行过程中产生了新的输出数据时,该函数指针会被调用,并携带一块包含新输出数据的Buffer, 需要注意的是,OH_AVCodecBufferAttr指针的生命周期仅维持在该函数指针被调用时有效,禁止调用结束后继续访问。 |
OH_AVCodecAsyncCallback | AVCodec所有的异步回调函数指针集合。注册一个该结构体实例给OH_AVCodec实例,并处理通过该回调报告 的信息,以确保AVCodec正常运转。 |
OH_MediaType | 媒体类型。 |
OH_AVCProfile | AVC Profile枚举。 |
OH_AACProfile | AAC Profile枚举。 |
枚举
名称 | 描述 |
---|---|
OH_AVCodecBufferFlags { AVCODEC_BUFFER_FLAGS_NONE = 0, AVCODEC_BUFFER_FLAGS_EOS = 1 << 0, AVCODEC_BUFFER_FLAGS_SYNC_FRAME = 1 << 1, AVCODEC_BUFFER_FLAGS_INCOMPLETE_FRAME = 1 << 2, AVCODEC_BUFFER_FLAGS_CODEC_DATA = 1 << 3 } |
枚举OH_AVCodec的Buffer标记的类别。 |
OH_MediaType { MEDIA_TYPE_AUD = 0, MEDIA_TYPE_VID = 1 } | 媒体类型。 |
OH_AVCProfile { AVC_PROFILE_BASELINE = 0, AVC_PROFILE_HIGH = 4, AVC_PROFILE_MAIN = 8 } | AVC Profile枚举。 |
OH_AACProfile { AAC_PROFILE_LC = 0 } | AAC Profile枚举。 |
变量
名称 | 描述 |
---|---|
OH_AVCODEC_MIMETYPE_VIDEO_AVC | AVC视频编解码器的MIME类型。 |
OH_AVCODEC_MIMETYPE_AUDIO_AAC | AAC音频编解码器的MIME类型。 |
OH_ED_KEY_TIME_STAMP | 提供统一的surface Buffer附属数据的字符描述符。 |
OH_ED_KEY_EOS | surface附属数据中结束流的字符描述符,值类型为bool。 |
OH_MD_KEY_TRACK_TYPE | 为媒体播放框架提供统一的字符描述符。 |
OH_MD_KEY_CODEC_MIME | MIME类型的字符描述符,值类型为string。 |
OH_MD_KEY_DURATION | duration的字符描述符,值类型为int64_t。 |
OH_MD_KEY_BITRATE | 比特率的字符描述符,值类型为uint32_t。 |
OH_MD_KEY_MAX_INPUT_SIZE | 最大输入尺寸的字符描述符,值类型为uint32_t。 |
OH_MD_KEY_WIDTH | 视频宽度的字符描述符,值类型为uint32_t。 |
OH_MD_KEY_HEIGHT | 视频高度的字符描述符,值类型为uint32_t。 |
OH_MD_KEY_PIXEL_FORMAT | 视频像素格式的字符描述符,值类型为int32_t,具体见OH_AVPixelFormat。 |
OH_MD_KEY_AUDIO_SAMPLE_FORMAT | 音频采样格式的字符描述符,值类型为uint32_t。 |
OH_MD_KEY_FRAME_RATE | 视频帧率的字符描述符,值类型为double。 |
OH_MD_KEY_VIDEO_ENCODE_BITRATE_MODE | 视频编码比特率模式的字符描述符,值类型为int32_t,具体见OH_VideoEncodeBitrateMode。 |
OH_MD_KEY_PROFILE | 音视频编码能力的字符描述符,值类型为int32_t,具体见OH_AVCProfile或OH_AACProfile。 |
OH_MD_KEY_AUD_CHANNEL_COUNT | 音频声道数的字符描述符,值类型为uint32_t。 |
OH_MD_KEY_AUD_SAMPLE_RATE | 音频采样率的字符描述符,值类型为uint32_t。 |
OH_MD_KEY_I_FRAME_INTERVAL | I帧间隔时长的字符描述符,值类型为int32_t,单位是毫秒。 |
OH_MD_KEY_ROTATION | surface旋转角度的字符描述符,值类型为int32_t,限于{0, 90, 180, 270},默认值为0。 |