Tizen Native API
5.0
|
The Media Tool APIs provides functions for AV packet buffer for interworking between multimedia framework module .
#include <media_packet.h>
MEDIA TOOL API allows :
The media packet handle is created by caller. After creating media_packet_h handle, the caller can set & get other meta datas.
Functions | |
int | media_packet_create_alloc (media_format_h fmt, media_packet_finalize_cb fcb, void *fcb_data, media_packet_h *packet) |
Creates a media packet handle and allocates buffer. | |
int | media_packet_create (media_format_h fmt, media_packet_finalize_cb fcb, void *fcb_data, media_packet_h *packet) |
Creates a media packet handle. | |
int | media_packet_copy (media_packet_h org_packet, media_packet_finalize_cb fcb, void *fcb_data, media_packet_h *new_packet) |
Copies a media packet handle. | |
int | media_packet_alloc (media_packet_h packet) |
Allocates buffer with media packet handle. | |
int | media_packet_create_from_tbm_surface (media_format_h fmt, tbm_surface_h surface, media_packet_finalize_cb fcb, void *fcb_data, media_packet_h *packet) |
Creates media packet handle and allocates buffer with tbm_surface_h. | |
int | media_packet_create_from_external_memory (media_format_h fmt, void *mem_ptr, uint64_t size, media_packet_finalize_cb fcb, void *fcb_data, media_packet_h *packet) |
Creates media packet handle with already allocated external buffer. | |
int | media_packet_get_format (media_packet_h packet, media_format_h *fmt) |
Gets media_format_h of media packet. | |
int | media_packet_set_format (media_packet_h packet, media_format_h fmt) |
Sets media_format_h of media packet. | |
int | media_packet_set_pts (media_packet_h packet, uint64_t pts) |
Sets PTS of media packet. | |
int | media_packet_set_dts (media_packet_h packet, uint64_t dts) |
Sets DTS of media packet handle. | |
int | media_packet_set_duration (media_packet_h packet, uint64_t duration) |
Sets PTS of media packet. | |
int | media_packet_set_buffer_size (media_packet_h packet, uint64_t size) |
Sets buffer size of media packet. | |
int | media_packet_get_pts (media_packet_h packet, uint64_t *pts) |
Gets PTS of media packet. | |
int | media_packet_get_dts (media_packet_h packet, uint64_t *dts) |
Gets DTS of media packet. | |
int | media_packet_get_duration (media_packet_h packet, uint64_t *duration) |
Gets duration of media packet. | |
int | media_packet_get_buffer_size (media_packet_h packet, uint64_t *size) |
Gets buffer size of media packet. | |
int | media_packet_get_buffer_data_ptr (media_packet_h packet, void **data) |
Gets buffer data pointer of media packet. | |
int | media_packet_get_tbm_surface (media_packet_h packet, tbm_surface_h *surface) |
Gets TBM surface data of media packet. | |
int | media_packet_set_extra (media_packet_h packet, void *extra) |
Sets extra data of media packet. | |
int | media_packet_get_extra (media_packet_h packet, void **extra) |
Gets extra data of media packet. | |
int | media_packet_is_video (media_packet_h packet, bool *is_video) |
Checks whether the given media packet is for video. | |
int | media_packet_is_audio (media_packet_h packet, bool *is_audio) |
Checks whether the given media packet is for audio. | |
int | media_packet_is_text (media_packet_h packet, bool *is_text) |
Checks whether the given media packet is for text. | |
int | media_packet_is_encoded (media_packet_h packet, bool *is_encoded) |
Checks whether the given media packet is encoded type. | |
int | media_packet_is_raw (media_packet_h packet, bool *is_raw) |
Checks whether the given media packet is raw type. | |
int | media_packet_get_flags (media_packet_h packet, media_buffer_flags_e *flags) |
Gets media_buffer_flags_e of media packet. | |
int | media_packet_set_flags (media_packet_h packet, media_buffer_flags_e flags) |
Sets media_buffer_flags_e of media packet. | |
int | media_packet_unset_flags (media_packet_h packet, media_buffer_flags_e flags) |
Unsets media_buffer_flags_e of media packet. | |
int | media_packet_is_codec_config (media_packet_h packet, bool *is_codec_config) |
Checks whether the given media packet is codec data. | |
int | media_packet_is_end_of_stream (media_packet_h packet, bool *is_eos) |
Checks whether the given media packet is eos. | |
int | media_packet_is_sync_frame (media_packet_h packet, bool *is_sync) |
Checks whether the given media packet is sync frame. | |
int | media_packet_has_tbm_surface_buffer (media_packet_h packet, bool *has_tbm_surface) |
Checks whether the allocated buffer is tbm surface or not. | |
int | media_packet_get_number_of_video_planes (media_packet_h packet, uint32_t *num) |
Gets the number of planes from tbm surface in the given media packet. | |
int | media_packet_get_video_stride_width (media_packet_h packet, int plane_idx, int *stride_width) |
Gets stride width from tbm surface in the given media packet. | |
int | media_packet_get_video_stride_height (media_packet_h packet, int plane_idx, int *stride_height) |
Gets stride height from tbm surface in the given media packet. | |
int | media_packet_get_video_plane_data_ptr (media_packet_h packet, int plane_idx, void **plane_data_ptr) |
Gets plane data pointer from tbm surface in the given media packet. | |
int | media_packet_get_codec_data (media_packet_h packet, void **codec_data, unsigned int *codec_data_size) |
Gets codec data and the codec data size of media packet. | |
int | media_packet_destroy (media_packet_h packet) |
Destroys the media packet handle. | |
int | media_packet_set_rotate_method (media_packet_h packet, media_packet_rotate_method_e method) |
Sets the rotation method. | |
int | media_packet_get_rotate_method (media_packet_h packet, media_packet_rotate_method_e *method) |
Gets the rotation method. | |
int | media_packet_pool_create (media_packet_pool_h *pool) |
Creates a media packet pool to handle the media packets. | |
int | media_packet_pool_set_media_format (media_packet_pool_h pool, media_format_h fmt) |
Sets the media format for the media packet pool. | |
int | media_packet_pool_set_size (media_packet_pool_h pool, int min_buffers, int max_buffers) |
Sets the media packet pool size. | |
int | media_packet_pool_get_size (media_packet_pool_h pool, int *min_buffers, int *max_buffers, int *curr_buffers) |
Gets the media packet pool size. | |
int | media_packet_pool_allocate (media_packet_pool_h pool) |
Allocates the media packet pool. | |
int | media_packet_pool_acquire_packet (media_packet_pool_h pool, media_packet_h *pkt, long timeout) |
Acquires a media packet from the media packet pool. | |
int | media_packet_pool_release_packet (media_packet_pool_h pool, media_packet_h pkt) |
Releases the media packet to pool. | |
int | media_packet_pool_deallocate (media_packet_pool_h pool) |
Deallocates all the media packets. | |
int | media_packet_pool_destroy (media_packet_pool_h pool) |
Destroys the media packet pool. | |
Typedefs | |
typedef struct media_packet_s * | media_packet_h |
The Media Packet handle. | |
typedef enum _finalize_cb_ret | media_packet_finalize_cb_ret_t |
Enumeration for the return values of media packet finalize call back functions. | |
typedef int(* | media_packet_finalize_cb )(media_packet_h packet, int error_code, void *user_data) |
Called when the media packet is destroyed. | |
typedef struct media_packet_pool_s * | media_packet_pool_h |
The Media Packet Pool Handle. |
typedef int(* media_packet_finalize_cb)(media_packet_h packet, int error_code, void *user_data) |
Called when the media packet is destroyed.
It will be invoked when media_packet_destroy() is called.
[in] | packet | The media packet handle |
[in] | error_code | The error code of media_packet_error_e |
[in] | user_data | The user data passed from the callback registration function |
MEDIA_PACKET_REUSE | Packet handle is not destroyed, the handle will be reused. |
MEDIA_PACKET_FINALIZE | Destroy media packet handle, the handle will not be reused. |
typedef enum _finalize_cb_ret media_packet_finalize_cb_ret_t |
Enumeration for the return values of media packet finalize call back functions.
typedef struct media_packet_s* media_packet_h |
The Media Packet handle.
typedef struct media_packet_pool_s* media_packet_pool_h |
The Media Packet Pool Handle.
enum _finalize_cb_ret |
Enumeration for the return values of media packet finalize call back functions.
enum media_buffer_flags_e |
Enumeration for media buffer flag.
enum media_packet_error_e |
Enumeration for media packet error.
Enumeration for media packet rotation method.
int media_packet_alloc | ( | media_packet_h | packet | ) |
Allocates buffer with media packet handle.
Before using media_packet_alloc(), media packet handle must be exist.
[in] | packet | The existing media packet handle |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_OUT_OF_MEMORY | Out of memory |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_copy | ( | media_packet_h | org_packet, |
media_packet_finalize_cb | fcb, | ||
void * | fcb_data, | ||
media_packet_h * | new_packet | ||
) |
Copies a media packet handle.
It re-creates only media packet handle with exist media packet handle.
new_packet
must be released by using media_packet_destroy(). [in] | org_packet | The existing media packet handle |
[in] | fcb | The media_packet_finalize_cb() to register |
[in] | fcb_data | The user data to be passed to the media_packet_finalize_cb() function |
[out] | new_packet | A new handle for media packet |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_OUT_OF_MEMORY | Out of memory |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_create | ( | media_format_h | fmt, |
media_packet_finalize_cb | fcb, | ||
void * | fcb_data, | ||
media_packet_h * | packet | ||
) |
Creates a media packet handle.
It creates only media packet handle without allocated buffer.
packet
must be released by using media_packet_destroy(). [in] | fmt | The allocated media_format_h by caller |
[in] | fcb | The media_packet_finalize_cb() to register |
[in] | fcb_data | The user data to be passed to the media_packet_finalize_cb() function |
[out] | packet | A new handle for media packet |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_OUT_OF_MEMORY | Out of memory |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
#include <media_packet.h> { media_format_h fmt; media_packet_h packet; media_format_create(&fmt); media_format_set_video_mime(fmt, MEDIA_FORMAT_H264_HP); media_format_set_video_width(fmt, 640); media_format_set_video_height(fmt, 480); media_format_set_video_avg_bps(fmt, 10000000); media_format_set_video_max_bps(fmt, 15000000); media_packet_create (fmt, _finalize_callback, fcb_data, &packet); media_format_unref(fmt); ... media_packet_destroy(packet); } int _finalize_callback(media_packet_h packet, int err, void* userdata) { ... return MEDIA_PACKET_FINALIZE; }
int media_packet_create_alloc | ( | media_format_h | fmt, |
media_packet_finalize_cb | fcb, | ||
void * | fcb_data, | ||
media_packet_h * | packet | ||
) |
Creates a media packet handle and allocates buffer.
The buffer will be allocated to heap or tbm_surface.
[in] | fmt | The allocated media_format_h by caller |
[in] | fcb | The media_packet_finalize_cb() to register |
[in] | fcb_data | The user data to be passed to the media_packet_finalize_cb() function |
[out] | packet | A new handle for media packet |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_OUT_OF_MEMORY | Out of memory |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
#include <media_packet.h> { media_format_h fmt; media_packet_h packet; media_format_create(&fmt); media_format_set_video_mime(fmt, MEDIA_FORMAT_H264_HP); media_format_set_video_width(fmt, 640); media_format_set_video_height(fmt, 480); media_format_set_video_avg_bps(fmt, 10000000); media_format_set_video_max_bps(fmt, 15000000); media_packet_create_alloc (fmt, _finalize_callback, fcb_data, &packet); media_format_unref(fmt); ... media_packet_destroy(packet); } int _finalize_callback(media_packet_h packet, int err, void* userdata) { ... return MEDIA_PACKET_FINALIZE; }
int media_packet_create_from_external_memory | ( | media_format_h | fmt, |
void * | mem_ptr, | ||
uint64_t | size, | ||
media_packet_finalize_cb | fcb, | ||
void * | fcb_data, | ||
media_packet_h * | packet | ||
) |
Creates media packet handle with already allocated external buffer.
It does not support video's MEDIA_FORMAT_RAW type.
packet
must be released by using media_packet_destroy(). [in] | fmt | The allocated media_format_h by caller |
[in] | mem_ptr | The memory pointer which is created by external module |
[in] | size | The buffer size value to set |
[in] | fcb | The media_packet_finalize_cb() to register |
[in] | fcb_data | The user data to be passed to the media_packet_finalize_cb() function |
[out] | packet | A new handle for media packet |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_OUT_OF_MEMORY | Out of memory |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
#include <media_packet.h> { media_format_h fmt; media_packet_h packet; media_format_create(&fmt); media_format_set_video_mime(fmt, MEDIA_FORMAT_H264_HP); media_format_set_video_width(fmt, 640); media_format_set_video_height(fmt, 480); media_format_set_video_avg_bps(fmt, 10000000); media_format_set_video_max_bps(fmt, 15000000); media_packet_create_from_external_memory (fmt, mem_ptr, size, _finalize_callback, fcb_data, &packet); media_format_unref(fmt); ... media_packet_destroy(packet); } int _finalize_callback(media_packet_h packet, int err, void* userdata) { ... return MEDIA_PACKET_FINALIZE; }
int media_packet_create_from_tbm_surface | ( | media_format_h | fmt, |
tbm_surface_h | surface, | ||
media_packet_finalize_cb | fcb, | ||
void * | fcb_data, | ||
media_packet_h * | packet | ||
) |
Creates media packet handle and allocates buffer with tbm_surface_h.
packet
must be released by using media_packet_destroy(). [in] | fmt | The allocated media_format_h by caller |
[in] | surface | The tbm_surface_h by caller |
[in] | fcb | The media_packet_finalize_cb() to register |
[in] | fcb_data | The user data to be passed to the media_packet_finalize_cb() function |
[out] | packet | A new handle for media packet |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_OUT_OF_MEMORY | Out of memory |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
#include <media_packet.h> { media_format_h fmt; media_packet_h packet; media_format_create(&fmt); media_format_set_video_mime(fmt, MEDIA_FORMAT_H264_HP); media_format_set_video_width(fmt, 640); media_format_set_video_height(fmt, 480); media_format_set_video_avg_bps(fmt, 10000000); media_format_set_video_max_bps(fmt, 15000000); media_packet_create_from_tbm_surface (fmt, surface, _finalize_callback, fcb_data, &packet); media_format_unref(fmt); ... media_pacekt_destory(packet); } int _finalize_callback(media_packet_h packet, int err, void* userdata) { ... return MEDIA_PACKET_FINALIZE; }
int media_packet_destroy | ( | media_packet_h | packet | ) |
Destroys the media packet handle.
The registered finalize_callback() function will be invoked to destroy the media packet handle.
[in] | packet | The handle to media packet to be destroyed |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_get_buffer_data_ptr | ( | media_packet_h | packet, |
void ** | data | ||
) |
Gets buffer data pointer of media packet.
[in] | packet | The media packet handle |
[out] | data | The allocated buffer data pointer |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_get_buffer_size | ( | media_packet_h | packet, |
uint64_t * | size | ||
) |
Gets buffer size of media packet.
[in] | packet | The media packet handle |
[out] | size | The buffer size value to get |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_get_codec_data | ( | media_packet_h | packet, |
void ** | codec_data, | ||
unsigned int * | codec_data_size | ||
) |
Gets codec data and the codec data size of media packet.
[in] | packet | The media packet handle |
[out] | codec_data | The codec data to get |
[out] | codec_data_size | The codec data size to get |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_get_dts | ( | media_packet_h | packet, |
uint64_t * | dts | ||
) |
Gets DTS of media packet.
[in] | packet | The media packet handle |
[out] | dts | The DTS value to get |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_get_duration | ( | media_packet_h | packet, |
uint64_t * | duration | ||
) |
Gets duration of media packet.
[in] | packet | The media packet handle |
[out] | duration | The duration value to get |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_get_extra | ( | media_packet_h | packet, |
void ** | extra | ||
) |
Gets extra data of media packet.
[in] | packet | The media packet handle |
[out] | extra | The extra data to get |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_get_flags | ( | media_packet_h | packet, |
media_buffer_flags_e * | flags | ||
) |
Gets media_buffer_flags_e of media packet.
[in] | packet | The media packet handle |
[out] | flags | The media_buffer_flags_e of media packet to get |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_get_format | ( | media_packet_h | packet, |
media_format_h * | fmt | ||
) |
Gets media_format_h of media packet.
[in] | packet | The media packet handle |
[out] | fmt | The media format of media packet |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
#include <media_packet.h> { media_format_h* fmt; media_packet_get_format (pakcet, &fmt); .. media_format_unref(fmt); ... }
int media_packet_get_number_of_video_planes | ( | media_packet_h | packet, |
uint32_t * | num | ||
) |
Gets the number of planes from tbm surface in the given media packet.
Use only if the media_format_h is MEDIA_FORMAT_RAW and MEDIA_FORMAT_VIDEO. It means that media_packet_h's buffer is allocated on tbm_surface. If not sure of that, use media_packet_is_video() and media_packet_is_raw() or media_packet_has_tbm_surface_buffer().
[in] | packet | The media packet handle |
[out] | num | The number of planes from tbm_surface |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_get_pts | ( | media_packet_h | packet, |
uint64_t * | pts | ||
) |
Gets PTS of media packet.
[in] | packet | The media packet handle |
[out] | pts | The PTS value to get |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
int media_packet_get_rotate_method | ( | media_packet_h | packet, |
media_packet_rotate_method_e * | method | ||
) |
Gets the rotation method.
[in] | packet | The media packet handle |
[out] | method | The rotation method |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_get_tbm_surface | ( | media_packet_h | packet, |
tbm_surface_h * | surface | ||
) |
Gets TBM surface data of media packet.
[in] | packet | The media packet handle |
[out] | surface | The tbm_surface data pointer |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_get_video_plane_data_ptr | ( | media_packet_h | packet, |
int | plane_idx, | ||
void ** | plane_data_ptr | ||
) |
Gets plane data pointer from tbm surface in the given media packet.
Use only if the media_format_h is MEDIA_FORMAT_RAW and MEDIA_FORMAT_VIDEO. It means that media_packet_h's buffer is allocated on tbm_surface. If not sure of that, use media_packet_is_video() and media_packet_is_raw() or media_packet_has_tbm_surface_buffer().
plane_data_ptr
must not be released by using free(). Note that It is released by media_packet_destory() or tbm_surface_destroy(). [in] | packet | The media packet handle |
[in] | plane_idx | The plane index value |
[out] | plane_data_ptr | The plane data pointer from tbm_surface |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_get_video_stride_height | ( | media_packet_h | packet, |
int | plane_idx, | ||
int * | stride_height | ||
) |
Gets stride height from tbm surface in the given media packet.
Use only if the media_format_h is MEDIA_FORMAT_RAW and MEDIA_FORMAT_VIDEO. It means that media_packet_h's buffer is allocated on tbm_surface. If not sure of that, use media_packet_is_video() and media_packet_is_raw() or media_packet_has_tbm_surface_buffer().
[in] | packet | The media packet handle |
[in] | plane_idx | The plane index value |
[out] | stride_height | The stride height value from tbm_surface |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_get_video_stride_width | ( | media_packet_h | packet, |
int | plane_idx, | ||
int * | stride_width | ||
) |
Gets stride width from tbm surface in the given media packet.
Use only if the media_format_h is MEDIA_FORMAT_RAW and MEDIA_FORMAT_VIDEO. It means that media_packet_h's buffer is allocated on tbm_surface. If not sure of that, use media_packet_is_video() and media_packet_is_raw() or media_packet_has_tbm_surface_buffer().
[in] | packet | The media packet handle |
[in] | plane_idx | The plane index value |
[out] | stride_width | the stride value from tbm_surface |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_has_tbm_surface_buffer | ( | media_packet_h | packet, |
bool * | has_tbm_surface | ||
) |
Checks whether the allocated buffer is tbm surface or not.
[in] | packet | The media packet handle |
[out] | has_tbm_surface | true if the given media packet's allocated buffer is tbm surface, otherwise false if the given media packet's allocated buffer is not tbm surface |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_is_audio | ( | media_packet_h | packet, |
bool * | is_audio | ||
) |
Checks whether the given media packet is for audio.
[in] | packet | The media packet handle |
[out] | is_audio | true if the given media packet is for audio, otherwise false if the given media packet is not for audio |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_is_codec_config | ( | media_packet_h | packet, |
bool * | is_codec_config | ||
) |
Checks whether the given media packet is codec data.
[in] | packet | The media packet handle |
[out] | is_codec_config | true if the given media packet is for codec data, otherwise false if the given media packet is not for codec data |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_is_encoded | ( | media_packet_h | packet, |
bool * | is_encoded | ||
) |
Checks whether the given media packet is encoded type.
[in] | packet | The media packet handle |
[out] | is_encoded | true if the given media packet is encoded, otherwise false if the given media packet is not encoded |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_is_end_of_stream | ( | media_packet_h | packet, |
bool * | is_eos | ||
) |
Checks whether the given media packet is eos.
[in] | packet | The media packet handle |
[out] | is_eos | true if the given media packet is for eos, otherwise false if the given media packet is not for eos |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_is_raw | ( | media_packet_h | packet, |
bool * | is_raw | ||
) |
Checks whether the given media packet is raw type.
[in] | packet | The media packet handle |
[out] | is_raw | true if the given media packet is for raw video, otherwise false if the given media packet is not for raw video |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_is_sync_frame | ( | media_packet_h | packet, |
bool * | is_sync | ||
) |
Checks whether the given media packet is sync frame.
[in] | packet | The media packet handle |
[out] | is_sync | true if the given media packet is for sync frame, otherwise false if the given media packet is not for sync frame |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_is_text | ( | media_packet_h | packet, |
bool * | is_text | ||
) |
Checks whether the given media packet is for text.
[in] | packet | The media packet handle |
[out] | is_text | true if the given media packet is for text, otherwise false if the given media packet is not for text |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_is_video | ( | media_packet_h | packet, |
bool * | is_video | ||
) |
Checks whether the given media packet is for video.
[in] | packet | The media packet handle |
[out] | is_video | true if the given media packet is for video, otherwise false if the given media packet is not for video |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_pool_acquire_packet | ( | media_packet_pool_h | pool, |
media_packet_h * | pkt, | ||
long | timeout | ||
) |
Acquires a media packet from the media packet pool.
It will take a media packet from the queue and block until media packet is released into the pool again. When there are no media packets available, it will be increased to max_buffers of given parameter.
[in] | pool | The media packet pool handle |
[out] | pkt | The media packet handle |
[in] | timeout | It indicates the millisecond-timeouts to block while waiting for one of acquired packet to be released. If the value of timeout is -1, the pool blocks indefinitely until media packet into the pool. |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | The user does not allocate the pool. The pool should be allocated with media_packet_pool_allocate() before acquiring media packet from the pool. |
MEDIA_PACKET_ERROR_NO_AVAILABLE_PACKET | No available packet |
int media_packet_pool_allocate | ( | media_packet_pool_h | pool | ) |
Allocates the media packet pool.
It will allocate media packets with min_buffers which given to media_packet_pool_set_size().
[in] | pool | The allocated pool handle |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_OUT_OF_MEMORY | Out of memory |
MEDIA_PACKET_ERROR_INVALID_OPERATION | The user set the invalid format with media_packet_pool_set_format() or set the invalid size with media_packet_pool_set_size(). The user already allocate the pool. |
int media_packet_pool_create | ( | media_packet_pool_h * | pool | ) |
Creates a media packet pool to handle the media packets.
It creates a media packet pool instance
[out] | pool | The media packet pool handle |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_OUT_OF_MEMORY | Out of memory |
int media_packet_pool_deallocate | ( | media_packet_pool_h | pool | ) |
Deallocates all the media packets.
Deallocates the packets allocated with media_packet_pool_allocate().
[in] | pool | The media packet pool handle |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | The user does not release all media packets to the pool. |
int media_packet_pool_destroy | ( | media_packet_pool_h | pool | ) |
Destroys the media packet pool.
Destroys the media packet pool handle and releases all its resources.
[in] | pool | The handle to media packet pool to be destroyed |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | The user does not create media packet pool instance, or not deallocate all media packets with media_packet_pool_deallocate(). |
int media_packet_pool_get_size | ( | media_packet_pool_h | pool, |
int * | min_buffers, | ||
int * | max_buffers, | ||
int * | curr_buffers | ||
) |
Gets the media packet pool size.
Gets the configuration values from the pool.
[in] | pool | The allocated pool handle |
[out] | min_buffers | The minimum number of buffers to allocate |
[out] | max_buffers | The maximum number of buffers to allocate |
[out] | curr_buffers | The current number of allocated buffers |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
int media_packet_pool_release_packet | ( | media_packet_pool_h | pool, |
media_packet_h | pkt | ||
) |
Releases the media packet to pool.
Rlease a packet back in the pool. It will put the packet back in the queue.
[in] | pool | The media packet pool handle |
[in] | pkt | The packet to release, the pkt should have previously been acquired from the pool with media_packet_pool_acquire_packet() |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_OUT_OF_MEMORY | Out of memory |
MEDIA_PACKET_ERROR_INVALID_OPERATION | The user releases media packet which is not associated with a given pool. |
int media_packet_pool_set_media_format | ( | media_packet_pool_h | pool, |
media_format_h | fmt | ||
) |
Sets the media format for the media packet pool.
[in] | pool | The media packet pool handle |
[in] | fmt | The media_format_h allocated by the caller |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
int media_packet_pool_set_size | ( | media_packet_pool_h | pool, |
int | min_buffers, | ||
int | max_buffers | ||
) |
Sets the media packet pool size.
Sets the number of packets to allocate with given parameters. The media packet pool will be allocated with min_buffers when media_pacet_pool_allocate() is called. When there are no media packets available, it will be increased to max_buffers of given parameter.
[in] | pool | The allocated pool handle |
[in] | min_buffers | The minimum number of buffers to allocate |
[in] | max_buffers | The maximum number of buffers to allocate |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_OUT_OF_MEMORY | Out of memory |
int media_packet_set_buffer_size | ( | media_packet_h | packet, |
uint64_t | size | ||
) |
Sets buffer size of media packet.
[in] | packet | The media packet handle |
[out] | size | The buffer size value to set |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_set_dts | ( | media_packet_h | packet, |
uint64_t | dts | ||
) |
Sets DTS of media packet handle.
[in] | packet | The media packet handle |
[in] | dts | The DTS value to set |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_set_duration | ( | media_packet_h | packet, |
uint64_t | duration | ||
) |
Sets PTS of media packet.
[in] | packet | The media packet handle |
[in] | duration | The duration value to set |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_set_extra | ( | media_packet_h | packet, |
void * | extra | ||
) |
Sets extra data of media packet.
[in] | packet | The media packet handle |
[in] | extra | The extra data to set |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_set_flags | ( | media_packet_h | packet, |
media_buffer_flags_e | flags | ||
) |
Sets media_buffer_flags_e of media packet.
[in] | packet | The media packet handle |
[in] | flags | The media_buffer_flags_e of media packet to set |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_set_format | ( | media_packet_h | packet, |
media_format_h | fmt | ||
) |
Sets media_format_h of media packet.
[in] | packet | The media packet handle |
[in] | fmt | The media_format_h to set |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
#include <media_packet.h> { media_format_h fmt; media_packet_set_format (pakcet, fmt); .. media_format_unref(fmt); ... }
int media_packet_set_pts | ( | media_packet_h | packet, |
uint64_t | pts | ||
) |
Sets PTS of media packet.
[in] | packet | The media packet handle |
[in] | pts | The PTS value to set |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_set_rotate_method | ( | media_packet_h | packet, |
media_packet_rotate_method_e | method | ||
) |
Sets the rotation method.
[in] | packet | The media packet handle |
[in] | method | The rotation method |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |
int media_packet_unset_flags | ( | media_packet_h | packet, |
media_buffer_flags_e | flags | ||
) |
Unsets media_buffer_flags_e of media packet.
[in] | packet | The media packet handle |
[in] | flags | The media_buffer_flags_e of media packet to unset |
0
on success, otherwise a negative error value MEDIA_PACKET_ERROR_NONE | Successful |
MEDIA_PACKET_ERROR_INVALID_PARAMETER | Invalid parameter |
MEDIA_PACKET_ERROR_INVALID_OPERATION | Invalid operation |