Core

Overview

Provides the basic backbone capabilities for the media playback framework, including functions related to the memory, error code, and format carrier.

@syscap SystemCapability.Multimedia.Media.Core

Since: 9

Summary

Files

Name Description
native_averrors.h Declares the error codes used by the media playback framework.
File to Include: <multimedia/player_framework/native_averrors.h>
native_avformat.h Declares the format-related functions and enums.
File to Include: <multimedia/player_framework/native_avformat.h>
native_avmemory.h Declares the memory-related functions.
File to Include: <multimedia/player_framework/native_avmemory.h>

Types

Name Description
OH_AVErrCode Enumerates the audio and video error codes.
OH_AVPixelFormat Enumerates the audio and video pixel formats.

Enums

Name Description
OH_AVErrCode {
AV_ERR_OK = 0, AV_ERR_NO_MEMORY = 1, AV_ERR_OPERATE_NOT_PERMIT = 2, AV_ERR_INVALID_VAL = 3,
AV_ERR_IO = 4, AV_ERR_TIMEOUT = 5, AV_ERR_UNKNOWN = 6, AV_ERR_SERVICE_DIED = 7,
AV_ERR_INVALID_STATE = 8, AV_ERR_UNSUPPORT = 9, AV_ERR_EXTEND_START = 100
}
Enumerates the audio and video error codes.
OH_AVPixelFormat {
AV_PIXEL_FORMAT_YUVI420 = 1, AV_PIXEL_FORMAT_NV12 = 2, AV_PIXEL_FORMAT_NV21 = 3, AV_PIXEL_FORMAT_SURFACE_FORMAT = 4,
AV_PIXEL_FORMAT_RGBA = 5
}
Enumerates the audio and video pixel formats.

Functions

Name Description
OH_AVFormat_Create (void) Creates an OH_AVFormat instance for reading and writing data.
OH_AVFormat_Destroy (struct OH_AVFormat *format) Destroys an OH_AVFormat instance.
OH_AVFormat_Copy (struct OH_AVFormat *to, struct OH_AVFormat *from) Copies the resources from an OH_AVFormat instance to another.
OH_AVFormat_SetIntValue (struct OH_AVFormat *format, const char *key, int32_t value) Writes data of the int type to an OH_AVFormat instance.
OH_AVFormat_SetLongValue (struct OH_AVFormat *format, const char *key, int64_t value) Writes data of the long type to an OH_AVFormat instance.
OH_AVFormat_SetFloatValue (struct OH_AVFormat *format, const char *key, float value) Writes data of the float type to an OH_AVFormat instance.
OH_AVFormat_SetDoubleValue (struct OH_AVFormat *format, const char *key, double value) Writes data of the double type to an OH_AVFormat instance.
OH_AVFormat_SetStringValue (struct OH_AVFormat *format, const char *key, const char *value) Writes data of the string type to an OH_AVFormat instance.
OH_AVFormat_SetBuffer (struct OH_AVFormat *format, const char *key, const uint8_t *addr, size_t size) Writes data with a specified size to an OH_AVFormat instance.
OH_AVFormat_GetIntValue (struct OH_AVFormat *format, const char *key, int32_t *out) Reads data of the int type from an OH_AVFormat instance.
OH_AVFormat_GetLongValue (struct OH_AVFormat *format, const char *key, int64_t *out) Reads data of the long type from an OH_AVFormat instance.
OH_AVFormat_GetFloatValue (struct OH_AVFormat *format, const char *key, float *out) Reads data of the float type from an OH_AVFormat instance.
OH_AVFormat_GetDoubleValue (struct OH_AVFormat *format, const char *key, double *out) Reads data of the double type from an OH_AVFormat instance.
OH_AVFormat_GetStringValue (struct OH_AVFormat *format, const char *key, const char **out) Reads data of the double type from an OH_AVFormat instance.
OH_AVFormat_GetBuffer (struct OH_AVFormat *format, const char *key, uint8_t **addr, size_t *size) Reads data with a specified size from an OH_AVFormat instance.
OH_AVFormat_DumpInfo (struct OH_AVFormat *format) Dumps the information contained in anOH_AVFormat instance as a string.
OH_AVMemory_GetAddr (struct OH_AVMemory *mem) Obtains the virtual memory address of an OH_AVMemory instance.
OH_AVMemory_GetSize (struct OH_AVMemory *mem) Obtains the memory size of an OH_AVMemory instance.

Type Description

OH_AVErrCode

typedef enum OH_AVErrCodeOH_AVErrCode

Description
Enumerates the audio and video error codes.

@syscap SystemCapability.Multimedia.Media.Core

OH_AVPixelFormat

typedef enum OH_AVPixelFormatOH_AVPixelFormat

Description
Enumerates the audio and video pixel formats.

@syscap SystemCapability.Multimedia.Media.Core

Enum Description

OH_AVErrCode

enum OH_AVErrCode

Description
Enumerates the audio and video error codes.

@syscap SystemCapability.Multimedia.Media.Core

Name Description
AV_ERR_OK Operation successful.
AV_ERR_NO_MEMORY No memory.
AV_ERR_OPERATE_NOT_PERMIT Invalid parameter.
AV_ERR_INVALID_VAL Invalid value.
AV_ERR_IO I/O error.
AV_ERR_TIMEOUT Timeout.
AV_ERR_UNKNOWN Unknown error.
AV_ERR_SERVICE_DIED Unavailable media service.
AV_ERR_INVALID_STATE Unsupported operation in this state.
AV_ERR_UNSUPPORT Unsupported API.
AV_ERR_EXTEND_START Initial value for extended error codes.

OH_AVPixelFormat

enum OH_AVPixelFormat

Description
Enumerates the audio and video pixel formats.

@syscap SystemCapability.Multimedia.Media.Core

Name Description
AV_PIXEL_FORMAT_YUVI420 YUV 420 Planar.
AV_PIXEL_FORMAT_NV12 NV12. YUV 420 Semi-planar.
AV_PIXEL_FORMAT_NV21 NV21. YVU 420 Semi-planar.
AV_PIXEL_FORMAT_SURFACE_FORMAT Surface.
AV_PIXEL_FORMAT_RGBA RGBA8888.

Function Description

OH_AVFormat_Copy()

bool OH_AVFormat_Copy (struct OH_AVFormat * to, struct OH_AVFormat * from )

Description
Copies the resources from an OH_AVFormat instance to another.

@syscap SystemCapability.Multimedia.Media.Core

Parameters

Name Description
to Indicates the handle to the OH_AVFormat instance to which the data will be copied.
from Indicates the handle to the OH_AVFormat instance from which the data will be copied.

Returns

Returns TRUE if the operation is successful.

Returns FALSE if the operation fails.

OH_AVFormat_Create()

struct OH_AVFormat* OH_AVFormat_Create (void )

Description
Creates an OH_AVFormat instance for reading and writing data.

@syscap SystemCapability.Multimedia.Media.Core

Returns

Returns the handle to an OH_AVFormat instance.

OH_AVFormat_Destroy()

void OH_AVFormat_Destroy (struct OH_AVFormat * format)

Description
Destroys an OH_AVFormat instance.

@syscap SystemCapability.Multimedia.Media.Core

Parameters

Name Description
format Indicates the handle to an OH_AVFormat instance.

Returns

void

OH_AVFormat_DumpInfo()

const char* OH_AVFormat_DumpInfo (struct OH_AVFormat * format)

Description
Dumps the information contained in anOH_AVFormat instance as a string.

@syscap SystemCapability.Multimedia.Media.Core

Parameters

Name Description
format Indicates the handle to an OH_AVFormat instance.

Returns

Returns the pointer to a collect of strings, each of which consists of a key and value.

OH_AVFormat_GetBuffer()

bool OH_AVFormat_GetBuffer (struct OH_AVFormat * format, const char * key, uint8_t ** addr, size_t * size )

Description
Reads data with a specified size from an OH_AVFormat instance.

@syscap SystemCapability.Multimedia.Media.Core

Parameters

Name Description
format Indicates the handle to an OH_AVFormat instance.
key Indicates the pointer to the key of the data to read.
addr Indicates the double pointer to the address where the data read is stored. The data read is destroyed when the OH_AVFormat instance is destroyed. To hold the data for an extended period of time, copy it to the memory.
size Indicates the pointer to the size of the data read.

Returns

Returns TRUE if the operation is successful.

Returns FALSE if the operation fails.

OH_AVFormat_GetDoubleValue()

bool OH_AVFormat_GetDoubleValue (struct OH_AVFormat * format, const char * key, double * out )

Description
Reads data of the double type from an OH_AVFormat instance.

@syscap SystemCapability.Multimedia.Media.Core

Parameters

Name Description
format Indicates the handle to an OH_AVFormat instance.
key Indicates the pointer to the key of the data to read.
out Indicates the pointer to the data read.

Returns

Returns TRUE if the operation is successful.

Returns FALSE if the operation fails.

OH_AVFormat_GetFloatValue()

bool OH_AVFormat_GetFloatValue (struct OH_AVFormat * format, const char * key, float * out )

Description
Reads data of the float type from an OH_AVFormat instance.

@syscap SystemCapability.Multimedia.Media.Core

Parameters

Name Description
format Indicates the handle to an OH_AVFormat instance.
key Indicates the pointer to the key of the data to read.
out Indicates the pointer to the data read.

Returns

Returns TRUE if the operation is successful.

Returns FALSE if the operation fails.

OH_AVFormat_GetIntValue()

bool OH_AVFormat_GetIntValue (struct OH_AVFormat * format, const char * key, int32_t * out )

Description
Reads data of the int type from an OH_AVFormat instance.

@syscap SystemCapability.Multimedia.Media.Core

Parameters

Name Description
format Indicates the handle to an OH_AVFormat instance.
key Indicates the pointer to the key of the data to read.
out Indicates the pointer to the data read.

Returns

Returns TRUE if the operation is successful.

Returns FALSE if the operation fails.

OH_AVFormat_GetLongValue()

bool OH_AVFormat_GetLongValue (struct OH_AVFormat * format, const char * key, int64_t * out )

Description
Reads data of the long type from an OH_AVFormat instance.

@syscap SystemCapability.Multimedia.Media.Core

Parameters

Name Description
format Indicates the handle to an OH_AVFormat instance.
key Indicates the pointer to the key of the data to read.
out Indicates the pointer to the data read.

Returns

Returns TRUE if the operation is successful.

Returns FALSE if the operation fails.

OH_AVFormat_GetStringValue()

bool OH_AVFormat_GetStringValue (struct OH_AVFormat * format, const char * key, const char ** out )

Description
Reads data of the double type from an OH_AVFormat instance.

@syscap SystemCapability.Multimedia.Media.Core

Parameters

Name Description
format Indicates the handle to an OH_AVFormat instance.
key Indicates the pointer to the key of the data to read.
out Indicates the double pointer to the data read. The data read is updated when GetString is called and destroyed when the OH_AVFormat instance is destroyed. To hold the data for an extended period of time, copy it to the memory.

Returns

Returns TRUE if the operation is successful.

Returns FALSE if the operation fails.

OH_AVFormat_SetBuffer()

bool OH_AVFormat_SetBuffer (struct OH_AVFormat * format, const char * key, const uint8_t * addr, size_t size )

Description
Writes data with a specified size to an OH_AVFormat instance.

@syscap SystemCapability.Multimedia.Media.Core

Parameters

Name Description
format Indicates the handle to an OH_AVFormat instance.
key Indicates the pointer to the key of the data to write.
addr Indicates the pointer to the address where the data is written.
size Indicates the size of the data written.

Returns

Returns TRUE if the operation is successful.

Returns FALSE if the operation fails.

OH_AVFormat_SetDoubleValue()

bool OH_AVFormat_SetDoubleValue (struct OH_AVFormat * format, const char * key, double value )

Description
Writes data of the double type to an OH_AVFormat instance.

@syscap SystemCapability.Multimedia.Media.Core

Parameters

Name Description
format Indicates the handle to an OH_AVFormat instance.
key Indicates the pointer to the key of the data to write.
value Indicates the value of the data to write.

Returns

Returns TRUE if the operation is successful.

Returns FALSE if the operation fails.

OH_AVFormat_SetFloatValue()

bool OH_AVFormat_SetFloatValue (struct OH_AVFormat * format, const char * key, float value )

Description
Writes data of the float type to an OH_AVFormat instance.

@syscap SystemCapability.Multimedia.Media.Core

Parameters

Name Description
format Indicates the handle to an OH_AVFormat instance.
key Indicates the pointer to the key of the data to write.
value Indicates the value of the data to write.

Returns

Returns TRUE if the operation is successful.

Returns FALSE if the operation fails.

OH_AVFormat_SetIntValue()

bool OH_AVFormat_SetIntValue (struct OH_AVFormat * format, const char * key, int32_t value )

Description
Writes data of the int type to an OH_AVFormat instance.

@syscap SystemCapability.Multimedia.Media.Core

Parameters

Name Description
format Indicates the handle to an OH_AVFormat instance.
key Indicates the pointer to the key of the data to write.
value Indicates the value of the data to write.

Returns

Returns TRUE if the operation is successful.

Returns FALSE if the operation fails.

OH_AVFormat_SetLongValue()

bool OH_AVFormat_SetLongValue (struct OH_AVFormat * format, const char * key, int64_t value )

Description
Writes data of the long type to an OH_AVFormat instance.

@syscap SystemCapability.Multimedia.Media.Core

Parameters

Name Description
format Indicates the handle to an OH_AVFormat instance.
key Indicates the pointer to the key of the data to write.
value Indicates the value of the data to write.

Returns

Returns TRUE if the operation is successful.

Returns FALSE if the operation fails.

OH_AVFormat_SetStringValue()

bool OH_AVFormat_SetStringValue (struct OH_AVFormat * format, const char * key, const char * value )

Description
Writes data of the string type to an OH_AVFormat instance.

@syscap SystemCapability.Multimedia.Media.Core

Parameters

Name Description
format Indicates the handle to an OH_AVFormat instance.
key Indicates the pointer to the key of the data to write.
value Indicates the pointer to the value of the data to write.

Returns

Returns TRUE if the operation is successful.

Returns FALSE if the operation fails.

OH_AVMemory_GetAddr()

uint8_t* OH_AVMemory_GetAddr (struct OH_AVMemory * mem)

Description
Obtains the virtual memory address of an OH_AVMemory instance.

@syscap SystemCapability.Multimedia.Media.Core

Parameters

Name Description
mem Indicates the pointer to an OH_AVMemory instance.

Returns

Returns the virtual address if the memory is valid.

Returns a null pointer if the memory is invalid.

OH_AVMemory_GetSize()

int32_t OH_AVMemory_GetSize (struct OH_AVMemory * mem)

Description
Obtains the memory size of an OH_AVMemory instance.

@syscap SystemCapability.Multimedia.Media.Core

Parameters

Name Description
mem Indicates the pointer to an OH_AVMemory instance.

Returns

Returns the size if the memory is valid.

Returns -1 if the memory is invalid.