avrecorder_base.h
Overview
The file declares the struct and enums used by the AVRecorder.
File to include: <multimedia/player_framework/avrecorder_base.h>
Library: libavrecorder.so
System capability: SystemCapability.Multimedia.Media.AVRecorder
Since: 18
Related module: AVRecorder
Summary
Structs
| Name | typedef Keyword | Description |
|---|---|---|
| OH_AVRecorder_Profile | OH_AVRecorder_Profile | Describes the parameters used for audio and video recording. |
| OH_AVRecorder | OH_AVRecorder | Describes an initialized AVRecorder. |
| OH_AVRecorder_Location | OH_AVRecorder_Location | Describes the geographical location information about a media asset. |
| OH_AVRecorder_MetadataTemplate | OH_AVRecorder_MetadataTemplate | Describes the basic template of metadata. |
| OH_AVRecorder_Metadata | OH_AVRecorder_Metadata | Describes the metadata. |
| OH_AVRecorder_Config | OH_AVRecorder_Config | Describes the AVRecorder configuration. |
| OH_AVRecorder_Range | OH_AVRecorder_Range | Describes the range. |
| OH_AVRecorder_EncoderInfo | OH_AVRecorder_EncoderInfo | Describes the encoder information. |
Enums
| Name | typedef Keyword | Description |
|---|---|---|
| OH_AVRecorder_AudioSourceType | OH_AVRecorder_AudioSourceType | Enumerates the audio source types of the AVRecorder. |
| OH_AVRecorder_VideoSourceType | OH_AVRecorder_VideoSourceType | Enumerates the video source types of the AVRecorder. |
| OH_AVRecorder_CodecMimeType | OH_AVRecorder_CodecMimeType | Enumerates the MIME types of the encoder. |
| OH_AVRecorder_ContainerFormatType | OH_AVRecorder_ContainerFormatType | Enumerates the Container Format Types (CFTs). |
| OH_AVRecorder_State | OH_AVRecorder_State | Enumerates the AVRecorder states. |
| OH_AVRecorder_StateChangeReason | OH_AVRecorder_StateChangeReason | Enumerates the reasons for AVRecorder state changes. |
| OH_AVRecorder_FileGenerationMode | OH_AVRecorder_FileGenerationMode | Enumerates the modes available for creating a recording file. |
Functions
| Name | typedef Keyword | Description |
|---|---|---|
| typedef void (*OH_AVRecorder_OnStateChange)(OH_AVRecorder *recorder, OH_AVRecorder_State state, OH_AVRecorder_StateChangeReason reason, void *userData) | OH_AVRecorder_OnStateChange | Called when the AVRecorder state changes. |
| typedef void (*OH_AVRecorder_OnError)(OH_AVRecorder *recorder, int32_t errorCode, const char *errorMsg, void *userData) | OH_AVRecorder_OnError | Called when an error occurs during recording. |
| typedef void (*OH_AVRecorder_OnUri)(OH_AVRecorder *recorder, OH_MediaAsset *asset, void *userData) | OH_AVRecorder_OnUri | Called when the recording is in OH_AVRecorder_FileGenerationMode.AVRECORDER_AUTO_CREATE_CAMERA_SCENE mode. |
Enum Description
OH_AVRecorder_AudioSourceType
enum OH_AVRecorder_AudioSourceType
Description
Enumerates the audio source types of the AVRecorder.
System capability: SystemCapability.Multimedia.Media.AVRecorder
Since: 18
| Enum Item | Description |
|---|---|
| AVRECORDER_DEFAULT = 0 | Default audio source. |
| AVRECORDER_MIC = 1 | Microphone audio source. |
| AVRECORDER_VOICE_RECOGNITION = 2 | Audio source in speech recognition scenarios. |
| AVRECORDER_VOICE_COMMUNICATION = 7 | Voice communication source. |
| AVRECORDER_VOICE_MESSAGE = 10 | Voice message source. |
| AVRECORDER_CAMCORDER = 13 | Audio source in camera recording scenarios. |
OH_AVRecorder_VideoSourceType
enum OH_AVRecorder_VideoSourceType
Description
Enumerates the video source types of the AVRecorder.
System capability: SystemCapability.Multimedia.Media.AVRecorder
Since: 18
| Enum Item | Description |
|---|---|
| AVRECORDER_SURFACE_YUV = 0 | Raw data surface. |
| AVRECORDER_SURFACE_ES = 1 | ES data surface. |
OH_AVRecorder_CodecMimeType
enum OH_AVRecorder_CodecMimeType
Description
Enumerates the MIME types of the encoder.
System capability: SystemCapability.Multimedia.Media.AVRecorder
Since: 18
| Enum Item | Description |
|---|---|
| AVRECORDER_VIDEO_AVC = 2 | MIME type of the H.264 encoder. |
| AVRECORDER_AUDIO_AAC = 3 | MIME type of the AAC encoder. |
| AVRECORDER_AUDIO_MP3 = 4 | MIME type of the MP3 encoder. |
| AVRECORDER_AUDIO_G711MU = 5 | MIME type of the G711-mulaw encoder. |
| AVRECORDER_VIDEO_MPEG4 = 6 | MIME type of the MPEG4 encoder. |
| AVRECORDER_VIDEO_HEVC = 8 | MIME type of the H.265 encoder. |
| AVRECORDER_AUDIO_AMR_NB = 9 | MIME type of the AMR-NB codec. |
| AVRECORDER_AUDIO_AMR_WB = 10 | MIME type of the AMR-WB codec. |
OH_AVRecorder_ContainerFormatType
enum OH_AVRecorder_ContainerFormatType
Description
Enumerates the Container Format Types (CFTs).
System capability: SystemCapability.Multimedia.Media.AVRecorder
Since: 18
| Enum Item | Description |
|---|---|
| AVRECORDER_CFT_MPEG_4 = 2 | Video container format mp4. |
| AVRECORDER_CFT_MPEG_4A = 6 | Audio container format m4a. |
| AVRECORDER_CFT_AMR = 8 | Audio container format amr. |
| AVRECORDER_CFT_MP3 = 9 | Audio container format mp3. |
| AVRECORDER_CFT_WAV = 10 | Audio container format wav. |
| AVRECORDER_CFT_AAC = 11 | Audio container format aac (with ADTS header). Since: 20 |
OH_AVRecorder_State
enum OH_AVRecorder_State
Description
Enumerates the AVRecorder states.
System capability: SystemCapability.Multimedia.Media.AVRecorder
Since: 18
| Enum Item | Description |
|---|---|
| AVRECORDER_IDLE = 0 | Idle. In this state, you can call OH_AVRecorder_Prepare to set recording parameters, and the AVRecorder transitions to the AVRECORDER_PREPARED state. |
| AVRECORDER_PREPARED = 1 | Prepared. After the parameters are set, you can call OH_AVRecorder_Start to start recording, and the AVRecorder transitions to the AVRECORDER_STARTED state. |
| AVRECORDER_STARTED = 2 | Started. Recording is in progress. In this case, you can call OH_AVRecorder_Pause to pause recording, and the AVRecorder transitions to the AVRECORDER_PAUSED state. You can also call OH_AVRecorder_Stop to stop recording, and the AVRecorder transitions to the AVRECORDER_STOPPED state. |
| AVRECORDER_PAUSED = 3 | Paused. In this state, you can call OH_AVRecorder_Resume to resume recording, and the AVRecorder transitions to the AVRECORDER_STARTED state. You can also call OH_AVRecorder_Stop to stop recording, and the AVRecorder transitions to the AVRECORDER_STOPPED state. |
| AVRECORDER_STOPPED = 4 | Stopped. In this state, you can call OH_AVRecorder_Prepare to set recording parameters, and the AVRecorder transitions to the AVRECORDER_PREPARED state again. |
| AVRECORDER_RELEASED = 5 | Released. The recording resources are released. No operation can be performed at this time. In any other state, you can call OH_AVRecorder_Release to transition to the AVRECORDER_RELEASED state. |
| AVRECORDER_ERROR = 6 | Error state. The AVRecorder transitions to this state when an irreversible error occurs in the instance. In this state, the OH_AVRecorder_OnError event is reported, with the detailed error cause. You should call OH_AVRecorder_Reset to reset the AVRecorder instance or call OH_AVRecorder_Release to release resources. |
OH_AVRecorder_StateChangeReason
enum OH_AVRecorder_StateChangeReason
Description
Enumerates the reasons for AVRecorder state changes.
System capability: SystemCapability.Multimedia.Media.AVRecorder
Since: 18
| Enum Item | Description |
|---|---|
| AVRECORDER_USER = 0 | The state change is caused by user operations. |
| AVRECORDER_BACKGROUND = 1 | The state change is caused by background operations. |
OH_AVRecorder_FileGenerationMode
enum OH_AVRecorder_FileGenerationMode
Description
Enumerates the modes available for creating a recording file.
System capability: SystemCapability.Multimedia.Media.AVRecorder
Since: 18
| Enum Item | Description |
|---|---|
| AVRECORDER_APP_CREATE = 0 | The application creates a media file in the sandbox. |
| AVRECORDER_AUTO_CREATE_CAMERA_SCENE = 1 | The system creates a media file. This value is valid only in camera recording scenarios. |
Function Description
OH_AVRecorder_OnStateChange()
typedef void (*OH_AVRecorder_OnStateChange)(OH_AVRecorder *recorder,OH_AVRecorder_State state, OH_AVRecorder_StateChangeReason reason, void *userData)
Description
Called when the AVRecorder state changes.
System capability: SystemCapability.Multimedia.Media.AVRecorder
Since: 18
Parameters
| Parameter | Description |
|---|---|
| OH_AVRecorder *recorder | Pointer to the OH_AVRecorder instance. |
| OH_AVRecorder_State state | AVRecorder state. |
| OH_AVRecorder_StateChangeReason reason | Reason for the AVRecorder state change. |
| void *userData | Pointer to user-defined data. |
OH_AVRecorder_OnError()
typedef void (*OH_AVRecorder_OnError)(OH_AVRecorder *recorder, int32_t errorCode, const char *errorMsg,void *userData)
Description
Called when an error occurs during recording.
System capability: SystemCapability.Multimedia.Media.AVRecorder
Since: 18
Parameters
| Parameter | Description |
|---|---|
| OH_AVRecorder *recorder | Pointer to the OH_AVRecorder instance. |
| int32_t errorCode | Error code. For details, see OH_AVErrCode. |
| const char *errorMsg | Pointer to the error message. |
| void *userData | Pointer to user-defined data. |
OH_AVRecorder_OnUri()
typedef void (*OH_AVRecorder_OnUri)(OH_AVRecorder *recorder, OH_MediaAsset *asset, void *userData)
Description
Called when the recording is in OH_AVRecorder_FileGenerationMode.AVRECORDER_AUTO_CREATE_CAMERA_SCENE mode.
System capability: SystemCapability.Multimedia.Media.AVRecorder
Since: 18
Parameters
| Parameter | Description |
|---|---|
| OH_AVRecorder *recorder | Pointer to the OH_AVRecorder instance. |
| OH_MediaAsset *asset | Pointer to the OH_MediaAsset instance. |
| void *userData | Pointer to user-defined data. |