Tizen Native API
5.0
|
The Media Streamer APIs provides functions for building custom player.
Required Header
#include <media_streamer.h>
Overview
The Media Streamer API allows application developers to construct the custom player. It includes provides a way to handle media content by user specific player.
MEDIASTREAMER allows :
- Application can decide input type of media source.
- Application can decide output type of media content.
- Application can create filter nodes considering requirements.
- Application can set/get properties of each nodes.
The Media Streamer API also notifies you by callback mechanism when state is changed.
Related Features
This API is related with the following features:
- http://tizen.org/feature/network.wifi
- http://tizen.org/feature/network.telephony
- http://tizen.org/feature/network.ethernet
- http://tizen.org/feature/camera
- http://tizen.org/feature/microphone
It is recommended to design feature related codes in your application for reliability.
You can check if a device supports the related features for this API by using System Information, thereby controlling the procedure of your application.
To ensure your application is only running on the device with specific features, please define the features in your manifest file using the manifest editor in the SDK.
More details on featuring your application can be found from Feature Element.
Functions | |
int | media_streamer_set_error_cb (media_streamer_h streamer, media_streamer_error_cb callback, void *user_data) |
Sets a error callback function to be invoked when an error occurs. | |
int | media_streamer_unset_error_cb (media_streamer_h streamer) |
Unsets the error callback function. | |
int | media_streamer_set_state_change_cb (media_streamer_h streamer, media_streamer_state_changed_cb callback, void *user_data) |
Sets a callback that will be triggered after media streamer state is changed. | |
int | media_streamer_unset_state_change_cb (media_streamer_h streamer) |
Unsets the state changed callback function. | |
int | media_streamer_set_interrupted_cb (media_streamer_h streamer, media_streamer_interrupted_cb callback, void *user_data) |
Sets a callback function to be invoked when the media streamer is interrupted. | |
int | media_streamer_unset_interrupted_cb (media_streamer_h streamer) |
Unsets the callback function. | |
int | media_streamer_src_set_buffer_status_cb (media_streamer_node_h source, media_streamer_custom_buffer_status_cb callback, void *user_data) |
Sets a callback function to be invoked when buffer underrun or overflow is occurred. | |
int | media_streamer_src_unset_buffer_status_cb (media_streamer_node_h source) |
Unsets the src buffer status callback function. | |
int | media_streamer_sink_set_data_ready_cb (media_streamer_node_h sink, media_streamer_sink_data_ready_cb callback, void *user_data) |
Sets a callback function to be called when the custom sink is ready for data processing. | |
int | media_streamer_sink_unset_data_ready_cb (media_streamer_node_h sink) |
Unsets the sink data ready callback function. | |
int | media_streamer_sink_set_eos_cb (media_streamer_node_h sink, media_streamer_sink_eos_cb callback, void *user_data) |
Sets a callback function to be called when custom sink detect the end-of-stream. | |
int | media_streamer_sink_unset_eos_cb (media_streamer_node_h sink) |
Unsets the sink end-of-stream callback function. | |
int | media_streamer_create (media_streamer_h *streamer) |
Creates an instance of media streamer and passes the handle to the caller. | |
int | media_streamer_prepare (media_streamer_h streamer) |
Sets media streamer state to MEDIA_STREAMER_STATE_READY. | |
int | media_streamer_unprepare (media_streamer_h streamer) |
Sets media streamer state to MEDIA_STREAMER_STATE_IDLE. | |
int | media_streamer_play (media_streamer_h streamer) |
Sets media streamer state to MEDIA_STREAMER_STATE_PLAYING. | |
int | media_streamer_pause (media_streamer_h streamer) |
Pauses the media streamer. | |
int | media_streamer_stop (media_streamer_h streamer) |
Stops the media streamer. | |
int | media_streamer_destroy (media_streamer_h streamer) |
Destroys media streamer. | |
int | media_streamer_set_play_position (media_streamer_h streamer, int time, bool accurate, media_streamer_position_changed_cb callback, void *user_data) |
Changes playback position to the defined time value, asynchronously. | |
int | media_streamer_get_play_position (media_streamer_h streamer, int *time) |
Gets the current position in milliseconds. | |
int | media_streamer_get_duration (media_streamer_h streamer, int *duration) |
Gets the total running time of the associated media. | |
int | media_streamer_get_state (media_streamer_h streamer, media_streamer_state_e *state) |
Gets media streamer state. | |
int | media_streamer_node_create_src (media_streamer_node_src_type_e type, media_streamer_node_h *src) |
Creates media streamer source node. | |
int | media_streamer_node_push_packet (media_streamer_node_h src, media_packet_h packet) |
Pushes packet into custom source node. | |
int | media_streamer_node_create_sink (media_streamer_node_sink_type_e type, media_streamer_node_h *sink) |
Creates media streamer sink node. | |
int | media_streamer_node_pull_packet (media_streamer_node_h sink, media_packet_h *packet) |
Pulls packet from custom sink node. | |
int | media_streamer_node_create (media_streamer_node_type_e type, media_format_h in_fmt, media_format_h out_fmt, media_streamer_node_h *node) |
Creates media streamer node except MEDIA_STREAMER_NODE_TYPE_SRC and MEDIA_STREAMER_NODE_TYPE_SINK. | |
int | media_streamer_node_add (media_streamer_h streamer, media_streamer_node_h node) |
Adds node to media streamer. | |
int | media_streamer_node_destroy (media_streamer_node_h node) |
Destroys media streamer node. | |
int | media_streamer_node_remove (media_streamer_h streamer, media_streamer_node_h node) |
Removes media streamer node from streamer. | |
int | media_streamer_node_link (media_streamer_node_h src_node, const char *src_pad_name, media_streamer_node_h dest_node, const char *sink_pad_name) |
Links two media streamer nodes. | |
int | media_streamer_node_set_pad_format (media_streamer_node_h node, const char *pad_name, media_format_h fmt) |
Sets media format for pad of media streamer node. | |
int | media_streamer_node_get_pad_format (media_streamer_node_h node, const char *pad_name, media_format_h *fmt) |
Gets media format for pad of media streamer node. | |
int | media_streamer_node_get_pad_name (media_streamer_node_h node, char ***src_pad_name, int *src_pad_num, char ***sink_pad_name, int *sink_pad_num) |
Gets name of node pads. | |
int | media_streamer_node_set_params (media_streamer_node_h node, bundle *param_list) |
Sets parameters of node. | |
int | media_streamer_node_get_params (media_streamer_node_h node, bundle **param_list) |
Gets node parameter list. | |
int | media_streamer_node_set_param (media_streamer_node_h node, const char *param_name, const char *param_value) |
Sets single parameter of node. | |
int | media_streamer_node_get_param (media_streamer_node_h node, const char *param_name, char **param_value) |
Gets value of parameter. | |
Typedefs | |
typedef void * | media_streamer_h |
Media Streamer handle type. | |
typedef void * | media_streamer_node_h |
Media Streamer node handle type. | |
typedef void(* | media_streamer_error_cb )(media_streamer_h streamer, media_streamer_error_e error, void *user_data) |
Called when error occurs in media streamer. | |
typedef void(* | media_streamer_state_changed_cb )(media_streamer_h streamer, media_streamer_state_e previous_state, media_streamer_state_e current_state, void *user_data) |
Called when media streamer state is changed. | |
typedef void(* | media_streamer_custom_buffer_status_cb )(media_streamer_node_h node, media_streamer_custom_buffer_status_e status, void *user_data) |
Called when the custom source needs more data or has enough data. | |
typedef void(* | media_streamer_sink_data_ready_cb )(media_streamer_node_h node, void *user_data) |
Called when new data is available from custom sink. | |
typedef void(* | media_streamer_sink_eos_cb )(media_streamer_node_h node, void *user_data) |
Called when the end-of-stream has been reached. | |
typedef void(* | media_streamer_position_changed_cb )(void *user_data) |
Called when the seek operation is completed. | |
typedef void(* | media_streamer_interrupted_cb )(media_streamer_interrupted_code_e code, void *user_data) |
Called when the media streamer is interrupted. | |
Defines | |
#define | MEDIA_STREAMER_PARAM_CAMERA_ID "camera-id" |
Definition for camera-id parameter of source node. | |
#define | MEDIA_STREAMER_PARAM_CAPTURE_WIDTH "capture-width" |
Definition for capture-width parameter of source node. | |
#define | MEDIA_STREAMER_PARAM_CAPTURE_HEIGHT "capture-height" |
Definition for capture-height parameter of source node. | |
#define | MEDIA_STREAMER_PARAM_IS_LIVE_STREAM "is-live" |
Definition for is-live parameter of source node. | |
#define | MEDIA_STREAMER_PARAM_URI "uri" |
Definition for uri parameter of source node. | |
#define | MEDIA_STREAMER_PARAM_USER_AGENT "user-agent" |
Definition for user-agent parameter of source node. | |
#define | MEDIA_STREAMER_PARAM_STREAM_TYPE "stream-type" |
Definition for stream type parameter of source node. | |
#define | MEDIA_STREAMER_PARAM_PORT "port" |
Definition for port parameter of source or sink node. | |
#define | MEDIA_STREAMER_PARAM_VIDEO_IN_PORT "video_in_port" |
Definition for video port parameter of source node. | |
#define | MEDIA_STREAMER_PARAM_AUDIO_IN_PORT "audio_in_port" |
Definition for audio port parameter of source node. | |
#define | MEDIA_STREAMER_PARAM_VIDEO_OUT_PORT "video_out_port" |
Definition for video port parameter of sink node. | |
#define | MEDIA_STREAMER_PARAM_AUDIO_OUT_PORT "audio_out_port" |
Definition for audio port parameter of sink node. | |
#define | MEDIA_STREAMER_PARAM_IP_ADDRESS "address" |
Definition for IP address parameter of source node. | |
#define | MEDIA_STREAMER_PARAM_AUDIO_DEVICE "audio_device" |
Definition for audio device name parameter of source or sink node. | |
#define | MEDIA_STREAMER_PARAM_CLOCK_SYNCHRONIZED "sync" |
Definition for sync parameter of sink node. | |
#define | MEDIA_STREAMER_PARAM_ROTATE "rotate" |
Definition for rotate parameter of sink node. | |
#define | MEDIA_STREAMER_PARAM_FLIP "flip" |
Definition for flip parameter of sink node. | |
#define | MEDIA_STREAMER_PARAM_DISPLAY_GEOMETRY_METHOD "display-geometry-method" |
Definition for display geometry method parameter of sink node. | |
#define | MEDIA_STREAMER_PARAM_DISPLAY "display" |
Definition for display parameter of sink node. | |
#define | MEDIA_STREAMER_PARAM_VISIBLE "visible" |
Definition for visible parameter of sink node. | |
#define | MEDIA_STREAMER_PARAM_HOST "host" |
Definition for host parameter of sink node. | |
#define | MEDIA_STREAMER_PARAM_SEGMENT_LOCATION "location" |
Definition for segment location parameter of adaptive sink node. | |
#define | MEDIA_STREAMER_PARAM_PLAYLIST_LOCATION "playlist-location" |
Definition for playlist location parameter of adaptive sink node. |
Define Documentation
#define MEDIA_STREAMER_PARAM_AUDIO_DEVICE "audio_device" |
Definition for audio device name parameter of source or sink node.
ALSA device, as defined in an asound configuration file. ex) "hw:0,0", "hw:0,1" Data type is string and default value is "default".
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_AUDIO_IN_PORT "audio_in_port" |
Definition for audio port parameter of source node.
The port to receive the audio packets from. Data type is integer.
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_AUDIO_OUT_PORT "audio_out_port" |
Definition for audio port parameter of sink node.
The port to send the audio packets to. Data type is integer.
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_CAMERA_ID "camera-id" |
Definition for camera-id parameter of source node.
Index number of camera to activate. Data type is integer and default value is 0.
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_CAPTURE_HEIGHT "capture-height" |
Definition for capture-height parameter of source node.
Height for camera size to capture. Data type is integer and default value is 1200.
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_CAPTURE_WIDTH "capture-width" |
Definition for capture-width parameter of source node.
Width for camera size to capture. Data type is integer and default value is 1600.
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_CLOCK_SYNCHRONIZED "sync" |
Definition for sync parameter of sink node.
Synchronize on the clock Data type is boolean and default value is true.
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_DISPLAY "display" |
Definition for display parameter of sink node.
It is a object to draw video frame on. Data type is Pointer.
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_DISPLAY_GEOMETRY_METHOD "display-geometry-method" |
Definition for display geometry method parameter of sink node.
Geometrical method for display. 0:Letter box 1:Original size 2:Full-screen 3:Cropped full screen 4:Original size if surface size is larger than video size(width/height), or Letter box if video size(width/height) is larger than surface size. 5:Custom ROI Default value is 0(Letter box).
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_FLIP "flip" |
Definition for flip parameter of sink node.
Flip for display. 0:none, 1:horizontal, 2:vertical, 3:both Default value is 0.
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_HOST "host" |
Definition for host parameter of sink node.
The host/IP/Multicast group to send the packets to. Data type is string and default value is "localhost".
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_IP_ADDRESS "address" |
Definition for IP address parameter of source node.
IP address to send/receive packets for. Data type is string and default value is "0.0.0.0".
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_IS_LIVE_STREAM "is-live" |
Definition for is-live parameter of source node.
Whether to act as a live source. Data type is boolean and default value is false.
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_PLAYLIST_LOCATION "playlist-location" |
Definition for playlist location parameter of adaptive sink node.
Path for writing playlist from. Data type is string.
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_PORT "port" |
Definition for port parameter of source or sink node.
The port to receive the packets from. Data type is integer and default value is 5004.
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_ROTATE "rotate" |
Definition for rotate parameter of sink node.
Rotate angle of display output. 0:none/1:rotate 90 degree/2:rotate 180 degree/3:rotate 270 degree Default value is 3(rotate 270 degree).
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_SEGMENT_LOCATION "location" |
Definition for segment location parameter of adaptive sink node.
Path for writing playlist from Data type is string.
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_STREAM_TYPE "stream-type" |
Definition for stream type parameter of source node.
The type of the push data stream. 0:stream, 1:seekable, 2:random-access (default:0)
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_URI "uri" |
Definition for uri parameter of source node.
URI to read from Data type is string.
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_USER_AGENT "user-agent" |
Definition for user-agent parameter of source node.
Value of the User-Agent HTTP request header field. Data type is string.
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_VIDEO_IN_PORT "video_in_port" |
Definition for video port parameter of source node.
The port to receive the video packets from. Data type is integer.
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_VIDEO_OUT_PORT "video_out_port" |
Definition for video port parameter of sink node.
The port to send the video packets to. Data type is integer.
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
#define MEDIA_STREAMER_PARAM_VISIBLE "visible" |
Definition for visible parameter of sink node.
Draws screen or blacks out. Data type is boolean and default value is true(visible).
- Since :
- 3.0
- See also:
- media_streamer_node_get_params
Typedef Documentation
typedef void(* media_streamer_custom_buffer_status_cb)(media_streamer_node_h node, media_streamer_custom_buffer_status_e status, void *user_data) |
Called when the custom source needs more data or has enough data.
This callback will be invoked when the buffer level drops below the threshold of max size or no free space in custom source buffer.
- Since :
- 3.0
- Remarks:
- Callback can be applied only for MEDIA_STREAMER_NODE_SRC_TYPE_CUSTOM source type
- Parameters:
-
[in] node Media streamer source node handle [in] status Media streamer custom buffer status [in] user_data The user data passed from the callback registration function
typedef void(* media_streamer_error_cb)(media_streamer_h streamer, media_streamer_error_e error, void *user_data) |
Called when error occurs in media streamer.
- Since :
- 3.0
- Remarks:
- Following error codes can be delivered. MEDIA_STREAMER_ERROR_INVALID_OPERATION, MEDIA_STREAMER_ERROR_FILE_NO_SPACE_ON_DEVICE, MEDIA_STREAMER_ERROR_NOT_SUPPORTED, MEDIA_STREAMER_ERROR_CONNECTION_FAILED, MEDIA_STREAMER_ERROR_RESOURCE_CONFLICT
- Parameters:
-
[in] streamer Media streamer handle [in] error The error that occurred in media steamer [in] user_data The user data passed from the code where media_streamer_set_error_cb() was invoked This data will be accessible from media_streamer_error_cb
- Precondition:
- Create media streamer handle by calling media_streamer_create() function
typedef void* media_streamer_h |
Media Streamer handle type.
- Since :
- 3.0
typedef void(* media_streamer_interrupted_cb)(media_streamer_interrupted_code_e code, void *user_data) |
Called when the media streamer is interrupted.
- Since :
- 3.0
- Parameters:
-
[in] code The interrupted error code [in] user_data The user data passed from the callback registration function
typedef void* media_streamer_node_h |
Media Streamer node handle type.
- Since :
- 3.0
typedef void(* media_streamer_position_changed_cb)(void *user_data) |
Called when the seek operation is completed.
- Since :
- 3.0
- Parameters:
-
[in] user_data The user data passed from the callback registration function
- See also:
- media_streamer_set_play_position()
typedef void(* media_streamer_sink_data_ready_cb)(media_streamer_node_h node, void *user_data) |
Called when new data is available from custom sink.
This callback can be applied only to MEDIA_STREAMER_NODE_SINK_TYPE_CUSTOM sink type
- Since :
- 3.0
- Parameters:
-
[in] node Media streamer sink node handle [in] user_data The user data passed from the code where media_streamer_sink_set_data_ready_cb() was invoked This data will be accessible from media_streamer_sink_data_ready_cb
- Precondition:
- media_streamer_sink_set_data_ready_cb()
typedef void(* media_streamer_sink_eos_cb)(media_streamer_node_h node, void *user_data) |
Called when the end-of-stream has been reached.
This callback can be applied only to MEDIA_STREAMER_NODE_SINK_TYPE_CUSTOM sink type
- Since :
- 3.0
- Parameters:
-
[in] node Media streamer sink node handle [in] user_data The user data passed from the code where media_streamer_sink_set_eos_cb() was invoked This data will be accessible from media_streamer_sink_eos_cb
- Precondition:
- media_streamer_sink_set_eos_cb()
typedef void(* media_streamer_state_changed_cb)(media_streamer_h streamer, media_streamer_state_e previous_state, media_streamer_state_e current_state, void *user_data) |
Called when media streamer state is changed.
- Since :
- 3.0
- Parameters:
-
[in] streamer Media streamer handle [in] previous_state The previous state of the media streamer [in] current_state The current state of media streamer [in] user_data The user data passed from the code where media_streamer_set_state_changed_cb() was invoked This data will be accessible from media_streamer_state_changed_cb
- Precondition:
- Create media streamer handle by calling media_streamer_create() function
Enumeration Type Documentation
Enumeration for media streamer error.
- Since :
- 3.0
- Enumerator:
Enumeration for media streamer sink node type.
- Since :
- 3.0
- Enumerator:
Enumeration for media streamer source node type.
- Since :
- 3.0
- Enumerator:
Enumeration for media streamer node type.
- Since :
- 3.0
- Enumerator:
MEDIA_STREAMER_NODE_TYPE_NONE Not defined type
MEDIA_STREAMER_NODE_TYPE_SRC Src node type. Not available for media_streamer_node_create(). Use media_streamer_node_create_src()
MEDIA_STREAMER_NODE_TYPE_SINK Sink node type. Not available for media_streamer_node_create(). Use media_streamer_node_create_sink()
MEDIA_STREAMER_NODE_TYPE_VIDEO_ENCODER Video encoder node type
MEDIA_STREAMER_NODE_TYPE_VIDEO_DECODER Video decoder node type
MEDIA_STREAMER_NODE_TYPE_AUDIO_ENCODER Audio encoder node type
MEDIA_STREAMER_NODE_TYPE_AUDIO_DECODER Audio decoder node type
MEDIA_STREAMER_NODE_TYPE_VIDEO_CONVERTER Video converter node type
MEDIA_STREAMER_NODE_TYPE_AUDIO_CONVERTER Audio converter node type
MEDIA_STREAMER_NODE_TYPE_AUDIO_RESAMPLE Audio resample node type
MEDIA_STREAMER_NODE_TYPE_VIDEO_PAY Rtp video payloader
MEDIA_STREAMER_NODE_TYPE_AUDIO_PAY Rtp audio payloader
MEDIA_STREAMER_NODE_TYPE_VIDEO_DEPAY Rtp video depayloader
MEDIA_STREAMER_NODE_TYPE_AUDIO_DEPAY Rtp audio depayloader
MEDIA_STREAMER_NODE_TYPE_VIDEO_RATE Rate node type
MEDIA_STREAMER_NODE_TYPE_VIDEO_SCALE Scale node type
MEDIA_STREAMER_NODE_TYPE_TEXT_OVERLAY Overlay node type
MEDIA_STREAMER_NODE_TYPE_PARSER Parser node type
MEDIA_STREAMER_NODE_TYPE_FILTER Filter node type, to limit formats of data
MEDIA_STREAMER_NODE_TYPE_TEE Tee node type, splits data to multiple path
MEDIA_STREAMER_NODE_TYPE_QUEUE Queue node type
MEDIA_STREAMER_NODE_TYPE_MQUEUE Multiple data queue node type
MEDIA_STREAMER_NODE_TYPE_MUXER Muxer node type
MEDIA_STREAMER_NODE_TYPE_DEMUXER Demuxer node type
MEDIA_STREAMER_NODE_TYPE_RTP Rtp component to send and receive data
MEDIA_STREAMER_NODE_TYPE_INPUT_SELECTOR N-to-1 input stream selector
MEDIA_STREAMER_NODE_TYPE_OUTPUT_SELECTOR 1-to-N output stream selector
MEDIA_STREAMER_NODE_TYPE_INTERLEAVE Folds many mono channel into one interleaved audio stream
MEDIA_STREAMER_NODE_TYPE_DEINTERLEAVE Splits multi channel audio into many mono audio
Enumeration for media streamer state.
- Since :
- 3.0
- Enumerator:
Function Documentation
int media_streamer_create | ( | media_streamer_h * | streamer | ) |
Creates an instance of media streamer and passes the handle to the caller.
- Since :
- 3.0
- Remarks:
- You must release streamer using media_streamer_destroy()
- Parameters:
-
[out] streamer Media streamer handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Postcondition:
- The media streamer state will be MEDIA_STREAMER_STATE_IDLE.
- See also:
- media_streamer_destroy()
int media_streamer_destroy | ( | media_streamer_h | streamer | ) |
Destroys media streamer.
- Since :
- 3.0
- Remarks:
- Nodes in streamer will be removed automatically. Don't need to remove nodes by calling media_streamer_node_remove(). If you want to change the node without destroying streamer handle, you can call the media_streamer_node_remove() function after setting the streamer state to MEDIA_STREAMER_STATE_IDLE state.
- Parameters:
-
[in] streamer Media streamer handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- Create a media streamer handle by calling media_streamer_create() function
- Postcondition:
- The media streamer state will be MEDIA_STREAMER_STATE_NONE.
- See also:
- media_streamer_create()
int media_streamer_get_duration | ( | media_streamer_h | streamer, |
int * | duration | ||
) |
Gets the total running time of the associated media.
- Since :
- 3.0
- Remarks:
- The streamer's src node type should be MEDIA_STREAMER_NODE_SRC_TYPE_FILE or MEDIA_STREAMER_NODE_SRC_TYPE_HTTP. If not, return value will be MEDIA_STREAMER_ERROR_NONE and duration will be -1.
- Parameters:
-
[in] streamer Media streamer handle [out] duration The duration in milliseconds
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- The media streamer state must be one of these: MEDIA_STREAMER_STATE_PAUSED, or MEDIA_STREAMER_STATE_PLAYING.
int media_streamer_get_play_position | ( | media_streamer_h | streamer, |
int * | time | ||
) |
Gets the current position in milliseconds.
- Since :
- 3.0
- Parameters:
-
[in] streamer Media streamer handle [out] time The current position in milliseconds
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- The media streamer state must be one of these: MEDIA_STREAMER_STATE_PAUSED, or MEDIA_STREAMER_STATE_PLAYING.
- See also:
- media_streamer_set_play_position()
int media_streamer_get_state | ( | media_streamer_h | streamer, |
media_streamer_state_e * | state | ||
) |
Gets media streamer state.
- Since :
- 3.0
- Parameters:
-
[in] streamer Media streamer handle [out] state Media streamer state
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- Create a media streamer handle by calling media_streamer_create() function
- See also:
- media_streamer_state_e
int media_streamer_node_add | ( | media_streamer_h | streamer, |
media_streamer_node_h | node | ||
) |
Adds node to media streamer.
- Since :
- 3.0
- Parameters:
-
[in] streamer Media streamer handle [in] node Media streamer node handle to be added
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- Create media streamer handle by calling media_streamer_create() function
- Create node handle by calling media_streamer_node_create() function
int media_streamer_node_create | ( | media_streamer_node_type_e | type, |
media_format_h | in_fmt, | ||
media_format_h | out_fmt, | ||
media_streamer_node_h * | node | ||
) |
Creates media streamer node except MEDIA_STREAMER_NODE_TYPE_SRC and MEDIA_STREAMER_NODE_TYPE_SINK.
Creates node specific type with specific format of input and output data.
- Since :
- 3.0
- Remarks:
- The node type should not be MEDIA_STREAMER_NODE_TYPE_SRC and MEDIA_STREAMER_NODE_TYPE_SINK. To create src/sink type node, media_streamer_node_create_src()/media_streamer_node_create_sink() should be called. You can release node using media_streamer_node_destroy() function
- Parameters:
-
[in] type Created node type [in] in_fmt Media format handle for input data [in] out_fmt Media format handle for output data [out] node Media streamer node handle to be created
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
int media_streamer_node_create_sink | ( | media_streamer_node_sink_type_e | type, |
media_streamer_node_h * | sink | ||
) |
Creates media streamer sink node.
- Since :
- 3.0
- Privilege:
- http://tizen.org/privilege/internet
- Remarks:
- The internet privilege(http://tizen.org/privilege/internet) should be added if any URIs are used to transmit the output data. You can release sink node using media_streamer_node_destroy()
- If type is MEDIA_STREAMER_NODE_SINK_TYPE_ADAPTIVE, the HTTP server will be started and the server will be able to transmit the output data to the other device. The application must have an authentication responsibility between a server and client because the data transmission is not secure.
- Parameters:
-
[in] type Type of sink node to be created [out] sink Media streamer sink node handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation MEDIA_STREAMER_ERROR_PERMISSION_DENIED Permission denied MEDIA_STREAMER_ERROR_NOT_SUPPORTED Not supported
int media_streamer_node_create_src | ( | media_streamer_node_src_type_e | type, |
media_streamer_node_h * | src | ||
) |
Creates media streamer source node.
- Since :
- 3.0
- Privilege:
- http://tizen.org/privilege/internet http://tizen.org/privilege/camera http://tizen.org/privilege/recorder
- Remarks:
- The internet privilege(http://tizen.org/privilege/internet) should be added if any URIs are used to play from network. The camera privilege(http://tizen.org/privilege/camera) should be added if the src node handle the camera device. The recorder privilege(http://tizen.org/privilege/recorder) should be added if the src node handle the recorder device. You can release source node using media_streamer_node_destroy() function.
- Parameters:
-
[in] type Media streamer source node type [out] src Media streamer source node handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation MEDIA_STREAMER_ERROR_PERMISSION_DENIED Permission denied MEDIA_STREAMER_ERROR_NOT_SUPPORTED Not supported
int media_streamer_node_destroy | ( | media_streamer_node_h | node | ) |
Destroys media streamer node.
- Since :
- 3.0
- Parameters:
-
[in] node Media streamer node handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- Create node handle by calling media_streamer_node_create() function
- If the node was added to media streamer, it have to be removed by calling media_streamer_node_remove() function
int media_streamer_node_get_pad_format | ( | media_streamer_node_h | node, |
const char * | pad_name, | ||
media_format_h * | fmt | ||
) |
Gets media format for pad of media streamer node.
- Since :
- 3.0
- Parameters:
-
[in] node Media streamer node handle [in] pad_name Pad name [out] fmt Media format handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- Create a node handle by calling media_streamer_node_createxxx() function
- Get pad name by calling media_streamer_node_get_pad_name() function
- See also:
- media_format_h
int media_streamer_node_get_pad_name | ( | media_streamer_node_h | node, |
char *** | src_pad_name, | ||
int * | src_pad_num, | ||
char *** | sink_pad_name, | ||
int * | sink_pad_num | ||
) |
Gets name of node pads.
- Since :
- 3.0
- Remarks:
- After using the src_pad_name and sink_pad_name, it have to be free. src_pad_name or sink_pad_name can be null according to the node type. In case of src type node, sink_pad_name will be null. In case of sink type node, src_pad_name will be null.
- Parameters:
-
[in] node Media streamer node handle [out] src_pad_name Array of source pad name [out] src_pad_num The number of source pads [out] sink_pad_name Array of sink pad name [out] sink_pad_num The number of sink pads
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- Create a node handle by calling media_streamer_node_createxxx() function
int media_streamer_node_get_param | ( | media_streamer_node_h | node, |
const char * | param_name, | ||
char ** | param_value | ||
) |
Gets value of parameter.
Gets parameter one by one without creating param bundle.
- Since :
- 3.0
- Parameters:
-
[in] node Media streamer node handle [in] param_name Param name of node [out] param_value Param value of node
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- Create a node handle by calling media_streamer_node_createXXX() function.
- Get param list to know the param name by calling media_streamer_node_get_params() function.
- See also:
- media_streamer_node_create()
- media_streamer_src_create()
- media_streamer_sink_create()
- media_streamer_node_get_params()
- media_streamer_node_set_param()
int media_streamer_node_get_params | ( | media_streamer_node_h | node, |
bundle ** | param_list | ||
) |
Gets node parameter list.
- Since :
- 3.0
- Remarks:
- After using param_list, it have to be free by calling bundle_free() in bundle.h Refer to the "Parameter information of node" in this file to get info.
- Parameters:
-
[in] node Media streamer node handle [out] param_list Key value array of media streamer node parameters
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- Create a node handle by calling media_streamer_node_createXXX() function
- Postcondition:
- Set params which are needed to set by calling media_streamer_node_set_params() or media_streamer_node_set_param() function.
- See also:
- media_streamer_node_create()
- media_streamer_src_create()
- media_streamer_sink_create()
- media_streamer_node_set_params()
- media_streamer_node_set_param()
int media_streamer_node_link | ( | media_streamer_node_h | src_node, |
const char * | src_pad_name, | ||
media_streamer_node_h | dest_node, | ||
const char * | sink_pad_name | ||
) |
Links two media streamer nodes.
- Since :
- 3.0
- Remarks:
- Pads are node's input and output, where you can connect other nodes. (src_node) - (sink_node) src_node and sink_node is determined relatively. In case of (A)-(B)-(C), (B) can be sink_node with (A) or (B) can be src_node with (C). However, src type node is always src node and sink type node is always sink node. (A) is src node and can not be sink node at all. (C) is sink node and can not be src node at all.
- Parameters:
-
[in] src_node Media streamer node handle [in] src_pad_name The name of the source pad of the source node [in] dest_node The destination media streamer node handle [in] sink_pad_name The name of the sink pad of the destination node
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- Create a source node and a destination node handles by calling media_streamer_node_create() function and add the nodes into streamer by calling media_streamer_node_add() function.
int media_streamer_node_pull_packet | ( | media_streamer_node_h | sink, |
media_packet_h * | packet | ||
) |
Pulls packet from custom sink node.
This function can be called only for MEDIA_STREAMER_NODE_SINK_TYPE_CUSTOM
- Since :
- 3.0
- Parameters:
-
[in] sink Media streamer sink node handle [out] packet Media packet handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- Create a sink node handle by calling media_streamer_node_create_sink() function
- Set media_streamer_data_ready_cb by calling media_streamer_set_data_ready_cb() function.
int media_streamer_node_push_packet | ( | media_streamer_node_h | src, |
media_packet_h | packet | ||
) |
Pushes packet into custom source node.
This function can be called only for MEDIA_STREAMER_NODE_SRC_TYPE_CUSTOM.
- Since :
- 3.0
- Parameters:
-
[in] src Media streamer source node handle [in] packet Media packet handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- Create a source node handle by calling media_streamer_node_create_src() function
- The media streamer state must be set to MEDIA_STREAMER_STATE_IDLE at least.
- See also:
- media_packet_h
int media_streamer_node_remove | ( | media_streamer_h | streamer, |
media_streamer_node_h | node | ||
) |
Removes media streamer node from streamer.
- Since :
- 3.0
- Remarks:
- To remove node without error posting, the state of streamer should be MEDIA_STREAMER_STATE_IDLE. If the node is linked, it will be unlinked before removing.
- Parameters:
-
[in] streamer Media streamer handle [in] node Media streamer node handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- Add node to streamer by calling media_streamer_node_add() function
- See also:
- media_streamer_node_add()
int media_streamer_node_set_pad_format | ( | media_streamer_node_h | node, |
const char * | pad_name, | ||
media_format_h | fmt | ||
) |
Sets media format for pad of media streamer node.
- Since :
- 3.0
- Parameters:
-
[in] node Media streamer node handle [in] pad_name Pad name [in] fmt Media format handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- Create a node handle by calling media_streamer_node_createxxx() function
- Get pad name by calling media_streamer_node_get_pad_name() function
- See also:
- media_format_h
int media_streamer_node_set_param | ( | media_streamer_node_h | node, |
const char * | param_name, | ||
const char * | param_value | ||
) |
Sets single parameter of node.
Sets parameter one by one without creating param bundle.
- Since :
- 3.0
- Remarks:
- The mediastorage privilege(http://tizen.org/privilege/mediastorage) should be added if any video/audio files are written in the internal storage devices. The externalstorage privilege(http://tizen.org/privilege/externalstorage) should be added if any video/audio files are written in the external storage devices.
- Parameters:
-
[in] node Media streamer node handle [in] param_name Param name of node [in] param_value Param value of node
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation MEDIA_STREAMER_ERROR_PERMISSION_DENIED Permission denied
- Precondition:
- Create a node handle by calling media_streamer_node_createXXX() function.
- Get param list to set by calling media_streamer_node_get_params() function.
- See also:
- media_streamer_node_create()
- media_streamer_src_create()
- media_streamer_sink_create()
- media_streamer_node_get_params()
- media_streamer_node_get_param()
int media_streamer_node_set_params | ( | media_streamer_node_h | node, |
bundle * | param_list | ||
) |
Sets parameters of node.
Many parameters can be set at one time all together by using bundle.
- Since :
- 3.0
- Remarks:
- The mediastorage privilege(http://tizen.org/privilege/mediastorage) should be added if any video/audio files are written in the internal storage devices. The externalstorage privilege(http://tizen.org/privilege/externalstorage) should be added if any video/audio files are written in the external storage devices.
- Parameters:
-
[in] node Media streamer node handle [in] param_list Key value array of media streamer node parameters
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation MEDIA_STREAMER_ERROR_PERMISSION_DENIED Permission denied
- Precondition:
- Create a node handle by calling media_streamer_node_createXXX() function.
- Get param list to set by calling media_streamer_node_get_params() function.
int media_streamer_pause | ( | media_streamer_h | streamer | ) |
Pauses the media streamer.
- Since :
- 3.0
- Parameters:
-
[in] streamer Media streamer handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- The media streamer state must be set to MEDIA_STREAMER_STATE_PLAYING.
- Postcondition:
- The media streamer state will be MEDIA_STREAMER_STATE_READY.
int media_streamer_play | ( | media_streamer_h | streamer | ) |
Sets media streamer state to MEDIA_STREAMER_STATE_PLAYING.
Start running the current streamer, or resumes it if paused.
- Since :
- 3.0
- Parameters:
-
[in] streamer Media streamer handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- The media streamer state must be set to MEDIA_STREAMER_STATE_READY by calling media_streamer_prepare() or set to MEDIA_STREAMER_STATE_PAUSED by calling media_streamer_pause().
- Postcondition:
- The media streamer state will be MEDIA_STREAMER_STATE_PLAYING.
int media_streamer_prepare | ( | media_streamer_h | streamer | ) |
Sets media streamer state to MEDIA_STREAMER_STATE_READY.
- Since :
- 3.0
- Parameters:
-
[in] streamer Media streamer handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- The media streamer state must be set to MEDIA_STREAMER_STATE_IDLE by calling media_streamer_create() or media_streamer_unprepare().
- At least one src and one sink should be added and linked in the streamer by calling media_streamer_node_create_src(), media_streamer_node_create_sink() and media_streamer_node_link().
- Postcondition:
- The media streamer state will be MEDIA_STREAMER_STATE_READY.
int media_streamer_set_error_cb | ( | media_streamer_h | streamer, |
media_streamer_error_cb | callback, | ||
void * | user_data | ||
) |
Sets a error callback function to be invoked when an error occurs.
Following error codes can be delivered by error callback. MEDIA_STREAMER_ERROR_INVALID_OPERATION, MEDIA_STREAMER_ERROR_FILE_NO_SPACE_ON_DEVICE, MEDIA_STREAMER_ERROR_NOT_SUPPORTED, MEDIA_STREAMER_ERROR_CONNECTION_FAILED, MEDIA_STREAMER_ERROR_RESOURCE_CONFLICT
- Since :
- 3.0
- Parameters:
-
[in] streamer Media streamer handle [in] callback Callback function pointer [in] user_data The user data passed from the code where media_streamer_set_error_cb() was invoked This data will be accessible from media_streamer_error_cb
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- Create a media streamer handle by calling media_streamer_create() function
- Postcondition:
- media_streamer_error_cb() will be invoked.
int media_streamer_set_interrupted_cb | ( | media_streamer_h | streamer, |
media_streamer_interrupted_cb | callback, | ||
void * | user_data | ||
) |
Sets a callback function to be invoked when the media streamer is interrupted.
- Since :
- 3.0
- Parameters:
-
[in] streamer Media streamer handle [in] callback The callback function to register [in] user_data The user data to be passed to the callback function
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Postcondition:
- media_streamer_interrupted_cb() will be invoked.
int media_streamer_set_play_position | ( | media_streamer_h | streamer, |
int | time, | ||
bool | accurate, | ||
media_streamer_position_changed_cb | callback, | ||
void * | user_data | ||
) |
Changes playback position to the defined time value, asynchronously.
- Since :
- 3.0
- Parameters:
-
[in] streamer Media streamer handle [in] time Time in millisecond [in] accurate If true
, it will seek to the accurate position, but this might be considerably slower for some formats, otherwisefalse
, it will seek to the nearest keyframe[in] callback The callback function to register [in] user_data The user data to be passed to the callback function
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation MEDIA_STREAMER_ERROR_SEEK_FAILED Seek operation failure
- Precondition:
- The media streamer state must be one of these: MEDIA_STREAMER_STATE_PAUSED, or MEDIA_STREAMER_STATE_PLAYING.
- Postcondition:
- It invokes media_streamer_set_play_position() when seek operation completes, if you set a callback.
- See also:
- media_streamer_get_play_position()
int media_streamer_set_state_change_cb | ( | media_streamer_h | streamer, |
media_streamer_state_changed_cb | callback, | ||
void * | user_data | ||
) |
Sets a callback that will be triggered after media streamer state is changed.
- Since :
- 3.0
- Parameters:
-
[in] streamer Media streamer handle [in] callback Callback function pointer [in] user_data The user data passed from the code where media_streamer_set_state_change_cb() was invoked This data will be accessible from media_streamer_state_changed_cb
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- Create a media streamer handle by calling media_streamer_create() function
- Postcondition:
- media_streamer_state_changed_cb() will be invoked.
- See also:
- media_streamer_unset_state_change_cb()
- media_streamer_state_change_cb()
int media_streamer_sink_set_data_ready_cb | ( | media_streamer_node_h | sink, |
media_streamer_sink_data_ready_cb | callback, | ||
void * | user_data | ||
) |
Sets a callback function to be called when the custom sink is ready for data processing.
This function can be called only for MEDIA_STREAMER_NODE_SINK_TYPE_CUSTOM sink type
- Since :
- 3.0
- Parameters:
-
[in] sink Media streamer sink node handle [in] callback Callback function pointer [in] user_data The user data passed from the code where media_streamer_sink_set_data_ready_cb() was invoked This data will be accessible from media_streamer_sink_data_ready_cb
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- Create a media streamer sink handle by calling media_streamer_node_create_sink() function
- Add created media streamer sink node to media streamer by calling media_streamer_node_add() function
- Postcondition:
- media_streamer_sink_data_ready_cb() will be invoked.
int media_streamer_sink_set_eos_cb | ( | media_streamer_node_h | sink, |
media_streamer_sink_eos_cb | callback, | ||
void * | user_data | ||
) |
Sets a callback function to be called when custom sink detect the end-of-stream.
- Since :
- 3.0
- Parameters:
-
[in] sink Media streamer sink node handle [in] callback Callback function pointer [in] user_data The user data passed from the code where media_streamer_sink_set_eos_cb() was invoked. This data will be accessible from media_streamer_sink_eos_cb
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- Create a media streamer sink handle by calling media_streamer_node_create_sink() function
- Add created media streamer sink node to media streamer by calling media_streamer_node_add() function
- Postcondition:
- media_streamer_sink_eos_cb() will be invoked.
Unsets the sink data ready callback function.
- Since :
- 3.0
- Parameters:
-
[in] sink Media streamer sink node handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
Unsets the sink end-of-stream callback function.
- Since :
- 3.0
- Parameters:
-
[in] sink Media streamer sink node handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- See also:
- media_streamer_sink_set_eos_cb()
int media_streamer_src_set_buffer_status_cb | ( | media_streamer_node_h | source, |
media_streamer_custom_buffer_status_cb | callback, | ||
void * | user_data | ||
) |
Sets a callback function to be invoked when buffer underrun or overflow is occurred.
This function can be called only for MEDIA_STREAMER_NODE_SRC_TYPE_CUSTOM source type
- Since :
- 3.0
- Remarks:
- This function is used for media stream playback only.
- Parameters:
-
[in] source Media streamer source node handle [in] callback The buffer status callback function to register [in] user_data The user data passed from the code where media_streamer_src_set_buffer_status_cb() was invoked This data will be accessible from media_streamer_custom_buffer_status_cb()
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- Create a media streamer source node handle by calling media_streamer_node_create_src() function
- Add created media streamer source node to media streamer by calling media_streamer_node_add() function
- Postcondition:
- media_streamer_custom_buffer_status_cb() will be invoked.
Unsets the src buffer status callback function.
- Since :
- 3.0
- Parameters:
-
[in] source Media streamer source node handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
int media_streamer_stop | ( | media_streamer_h | streamer | ) |
Stops the media streamer.
- Since :
- 3.0
- Parameters:
-
[in] streamer Media streamer handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- The media streamer state must be set to MEDIA_STREAMER_STATE_PLAYING by calling media_streamer_play() or set to MEDIA_STREAMER_STATE_PAUSED by calling media_streamer_pause().
- Postcondition:
- The media streamer state will be MEDIA_STREAMER_STATE_READY.
int media_streamer_unprepare | ( | media_streamer_h | streamer | ) |
Sets media streamer state to MEDIA_STREAMER_STATE_IDLE.
The most recently used media is reset and no longer associated with the media streamer.
- Since :
- 3.0
- Parameters:
-
[in] streamer Media streamer handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_STATE Invalid state MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- The media streamer state should be higher than MEDIA_STREAMER_STATE_IDLE.
- Postcondition:
- The media streamer state will be MEDIA_STREAMER_STATE_IDLE.
- See also:
- media_streamer_prepare()
int media_streamer_unset_error_cb | ( | media_streamer_h | streamer | ) |
Unsets the error callback function.
- Since :
- 3.0
- Parameters:
-
[in] streamer Media streamer handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- See also:
- media_streamer_error_cb()
int media_streamer_unset_interrupted_cb | ( | media_streamer_h | streamer | ) |
Unsets the callback function.
- Since :
- 3.0
- Parameters:
-
[in] streamer Media streamer handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- See also:
- media_streamer_set_interrupted_cb()
int media_streamer_unset_state_change_cb | ( | media_streamer_h | streamer | ) |
Unsets the state changed callback function.
- Since :
- 3.0
- Parameters:
-
[in] streamer Media streamer handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
MEDIA_STREAMER_ERROR_NONE Successful MEDIA_STREAMER_ERROR_INVALID_PARAMETER Invalid parameter MEDIA_STREAMER_ERROR_INVALID_OPERATION Invalid operation
- See also:
- media_streamer_set_state_change_cb()