avrecorder_base.h
概述
定义了媒体AVRecorder的结构体和枚举。
引用文件: avrecorder_base.h
库: libavrecorder.so
系统能力: SystemCapability.Multimedia.Media.AVRecorder
起始版本: 18
相关模块: AVRecorder
汇总
结构体
| 名称 | typedef关键字 | 描述 |
|---|---|---|
| OH_AVRecorder_Profile | OH_AVRecorder_Profile | 定义音视频录制的详细参数。 |
| OH_AVRecorder | OH_AVRecorder | 初始化AVRecorder。 |
| OH_AVRecorder_Location | OH_AVRecorder_Location | 提供媒体资源的地理位置信息。 |
| OH_AVRecorder_MetadataTemplate | OH_AVRecorder_MetadataTemplate | 定义元数据的基本模板。 |
| OH_AVRecorder_Metadata | OH_AVRecorder_Metadata | 元数据信息数据结构。 |
| OH_AVRecorder_Config | OH_AVRecorder_Config | 提供媒体AVRecorder的配置定义。 |
| OH_AVRecorder_Range | OH_AVRecorder_Range | 表示类型的范围。 |
| OH_AVRecorder_EncoderInfo | OH_AVRecorder_EncoderInfo | 提供编码器信息。 |
枚举
| 名称 | typedef关键字 | 描述 |
|---|---|---|
| OH_AVRecorder_AudioSourceType | OH_AVRecorder_AudioSourceType | AVRecorder的音频源类型。 |
| OH_AVRecorder_VideoSourceType | OH_AVRecorder_VideoSourceType | AVRecorder的视频源类型。 |
| OH_AVRecorder_CodecMimeType | OH_AVRecorder_CodecMimeType | 编码器MIME类型。 |
| OH_AVRecorder_ContainerFormatType | OH_AVRecorder_ContainerFormatType | 容器格式类型(容器格式类型的缩写是 CFT)。 |
| OH_AVRecorder_State | OH_AVRecorder_State | AVRecorder状态。 |
| OH_AVRecorder_StateChangeReason | OH_AVRecorder_StateChangeReason | AVRecorder状态变化的原因。 |
| OH_AVRecorder_FileGenerationMode | OH_AVRecorder_FileGenerationMode | 创建录制文件的模式。 |
函数
| 名称 | typedef关键字 | 描述 |
|---|---|---|
| typedef void (*OH_AVRecorder_OnStateChange)(OH_AVRecorder *recorder,OH_AVRecorder_State state, OH_AVRecorder_StateChangeReason reason, void *userData) | OH_AVRecorder_OnStateChange | 当录制状态发生变化时调用。 |
| typedef void (*OH_AVRecorder_OnError)(OH_AVRecorder *recorder, int32_t errorCode, const char *errorMsg,void *userData) | OH_AVRecorder_OnError | 当录制过程中发生错误时调用。 |
| typedef void (*OH_AVRecorder_OnUri)(OH_AVRecorder *recorder, OH_MediaAsset *asset, void *userData) | OH_AVRecorder_OnUri | 当录制在OH_AVRecorder_FileGenerationMode.AVRECORDER_AUTO_CREATE_CAMERA_SCENE模式时调用。 |
枚举类型说明
OH_AVRecorder_AudioSourceType
enum OH_AVRecorder_AudioSourceType
描述
AVRecorder的音频源类型。
系统能力: SystemCapability.Multimedia.Media.AVRecorder
起始版本: 18
| 枚举项 | 描述 |
|---|---|
| AVRECORDER_DEFAULT = 0 | 默认音频源类型。 |
| AVRECORDER_MIC = 1 | 麦克风音频源类型。 |
| AVRECORDER_VOICE_RECOGNITION = 2 | 语音识别场景的音频源。 |
| AVRECORDER_VOICE_COMMUNICATION = 7 | 语音通话场景的音频源。 |
| AVRECORDER_VOICE_MESSAGE = 10 | 短语音消息的音频源。 |
| AVRECORDER_CAMCORDER = 13 | 相机录像的音频源。 |
OH_AVRecorder_VideoSourceType
enum OH_AVRecorder_VideoSourceType
描述
AVRecorder的视频源类型。
系统能力: SystemCapability.Multimedia.Media.AVRecorder
起始版本: 18
| 枚举项 | 描述 |
|---|---|
| AVRECORDER_SURFACE_YUV = 0 | 原始数据Surface。 |
| AVRECORDER_SURFACE_ES = 1 | ES数据Surface。 |
OH_AVRecorder_CodecMimeType
enum OH_AVRecorder_CodecMimeType
描述
编码器MIME类型。
系统能力: SystemCapability.Multimedia.Media.AVRecorder
起始版本: 18
| 枚举项 | 描述 |
|---|---|
| AVRECORDER_VIDEO_AVC = 2 | H.264 编码器MIME类型。 |
| AVRECORDER_AUDIO_AAC = 3 | AAC 编码器MIME类型。 |
| AVRECORDER_AUDIO_MP3 = 4 | mp3 编码器MIME类型。 |
| AVRECORDER_AUDIO_G711MU = 5 | G711-mulaw 编码器MIME类型。 |
| AVRECORDER_VIDEO_MPEG4 = 6 | MPEG4 编码器MIME类型。 |
| AVRECORDER_VIDEO_HEVC = 8 | H.265 编码器MIME类型。 |
| AVRECORDER_AUDIO_AMR_NB = 9 | AMR_NB 编解码器MIME类型。 |
| AVRECORDER_AUDIO_AMR_WB = 10 | AMR_WB 编解码器MIME类型。 |
OH_AVRecorder_ContainerFormatType
enum OH_AVRecorder_ContainerFormatType
描述
容器格式类型(容器格式类型的缩写是 CFT)。
系统能力: SystemCapability.Multimedia.Media.AVRecorder
起始版本: 18
| 枚举项 | 描述 |
|---|---|
| AVRECORDER_CFT_MPEG_4 = 2 | 视频容器格式类型mp4。 |
| AVRECORDER_CFT_MPEG_4A = 6 | 音频容器格式类型m4a。 |
| AVRECORDER_CFT_AMR = 8 | 音频容器格式类型amr。 |
| AVRECORDER_CFT_MP3 = 9 | 音频容器格式类型mp3。 |
| AVRECORDER_CFT_WAV = 10 | 音频容器格式类型wav。 |
OH_AVRecorder_State
enum OH_AVRecorder_State
描述
AVRecorder状态。
系统能力: SystemCapability.Multimedia.Media.AVRecorder
起始版本: 18
| 枚举项 | 描述 |
|---|---|
| AVRECORDER_IDLE = 0 | 空闲状态。此时可以调用OH_AVRecorder_Prepare方法设置录制参数,进入AVRECORDER_PREPARED状态。 |
| AVRECORDER_PREPARED = 1 | 准备状态。参数设置完成,此时可以调用OH_AVRecorder_Start方法开始录制,进入AVRECORDER_STARTED状态。 |
| AVRECORDER_STARTED = 2 | 启动状态。正在录制,此时可以调用OH_AVRecorder_Pause方法暂停录制,进入AVRECORDER_PAUSED状态。 也可以调用OH_AVRecorder_Stop方法结束录制,进入AVRECORDER_STOPPED状态。 |
| AVRECORDER_PAUSED = 3 | 暂停状态。此时可以调用OH_AVRecorder_Resume方法继续录制,进入AVRECORDER_STARTED状态。 也可以调用OH_AVRecorder_Stop方法结束录制,进入AVRECORDER_STOPPED状态。 |
| AVRECORDER_STOPPED = 4 | 停止状态。此时可以调用OH_AVRecorder_Prepare方法设置录制参数,重新进入AVRECORDER_PREPARED状态。 |
| AVRECORDER_RELEASED = 5 | 释放状态。录制资源释放,此时不能再进行任何操作。在任何其他状态下,均可以通过调用OH_AVRecorder_Release方法进入AVRECORDER_RELEASED状态。 |
| AVRECORDER_ERROR = 6 | 错误状态。当AVRecorder实例发生不可逆错误,会转换至当前状态。 切换至AVRECORDER_ERROR状态时会伴随OH_AVRecorder_OnError事件,该事件会上报详细错误原因。 在AVRECORDER_ERROR状态时,用户需要调用OH_AVRecorder_Reset方法重置AVRecorder实例,或者调用OH_AVRecorder_Release方法释放资源。 |
OH_AVRecorder_StateChangeReason
enum OH_AVRecorder_StateChangeReason
描述
AVRecorder状态变化的原因。
系统能力: SystemCapability.Multimedia.Media.AVRecorder
起始版本: 18
| 枚举项 | 描述 |
|---|---|
| AVRECORDER_USER = 0 | 用户操作导致的状态变化。 |
| AVRECORDER_BACKGROUND = 1 | 后台操作导致的状态变化。 |
OH_AVRecorder_FileGenerationMode
enum OH_AVRecorder_FileGenerationMode
描述
创建录制文件的模式。
系统能力: SystemCapability.Multimedia.Media.AVRecorder
起始版本: 18
| 枚举项 | 描述 |
|---|---|
| AVRECORDER_APP_CREATE = 0 | 由应用自行在沙箱中创建媒体文件。 |
| AVRECORDER_AUTO_CREATE_CAMERA_SCENE = 1 | 由系统创建媒体文件,当前仅在相机录制场景下生效。 |
函数说明
OH_AVRecorder_OnStateChange()
typedef void (*OH_AVRecorder_OnStateChange)(OH_AVRecorder *recorder,OH_AVRecorder_State state, OH_AVRecorder_StateChangeReason reason, void *userData)
描述
当录制状态发生变化时调用。
系统能力: SystemCapability.Multimedia.Media.AVRecorder
起始版本: 18
参数:
| 参数项 | 描述 |
|---|---|
| OH_AVRecorder *recorder | OH_AVRecorder实例的指针。 |
| OH_AVRecorder_State state | 表示录制器状态。 |
| OH_AVRecorder_StateChangeReason reason | 录制器状态变化的原因。 |
| void *userData | 用户特定数据的指针。 |
OH_AVRecorder_OnError()
typedef void (*OH_AVRecorder_OnError)(OH_AVRecorder *recorder, int32_t errorCode, const char *errorMsg,void *userData)
描述
当录制过程中发生错误时调用。
系统能力: SystemCapability.Multimedia.Media.AVRecorder
起始版本: 18
参数:
| 参数项 | 描述 |
|---|---|
| OH_AVRecorder *recorder | OH_AVRecorder实例的指针。 |
| int32_t errorCode | 错误码,详细说明请参见AVErrorCode。 |
| const char *errorMsg | 错误信息。 |
| void *userData | 用户特定数据的指针。 |
OH_AVRecorder_OnUri()
typedef void (*OH_AVRecorder_OnUri)(OH_AVRecorder *recorder, OH_MediaAsset *asset, void *userData)
描述
当录制在OH_AVRecorder_FileGenerationMode.AVRECORDER_AUTO_CREATE_CAMERA_SCENE模式下时调用。
系统能力: SystemCapability.Multimedia.Media.AVRecorder
起始版本: 18
参数:
| 参数项 | 描述 |
|---|---|
| OH_AVRecorder *recorder | OH_AVRecorder实例的指针。 |
| OH_MediaAsset *asset | OH_MediaAsset实例的指针。 |
| void *userData | 用户特定数据的指针。 |