Classes | Defines | Enumerations | Functions

limoa backend
[LIM openmax application layer]

Classes

struct  omxil_spec_version_t
struct  ox_omix_t
struct  ox_omix_cb_t
struct  ox_ipc_t
struct  ox_session_t
struct  ox_player_t

Defines

#define OMXIL_SPEC_MAJOR   1
#define OMXIL_SPEC_MINOR   1
#define OMXIL_SPEC_REVISION   2
#define OMXIL_SPEC_STEP   0
#define deep_cp_data_sink(d, s, p, o)   deep_copy_data_sink(d, s, p, o)
#define deep_cp_data_source(d, s, p, o)   deep_copy_data_source(d, s, p, o)
#define ox_omxil_debug()   do {;} while(0)
#define PSF_INVALID   0x80000000
#define PSF_EOS_DETECTED   0x00000010
#define PSF_PAUSE   0x00000008
#define PSF_EXECUTING   0x00000004
#define PSF_IDLE   0x00000002
#define PSF_LOADED   0x00000001
#define PSF_PORT_ENABLED(p)   (1 << (p))
#define PSF_PORT_DISABLED(p)   (1 << ((p) + 8))
#define PSF_PORT_FLUSHED(p)   (1 << ((p) + 16))
#define PSF_PORT_SETTINGS_CHANGED(p)   (1 << ((p) + 24))
#define PSR_AUDIO_DECODER_OUTPUT_PORTSETTINGSCHANGED   0x00000001
#define PSR_VIDEO_DECODER_OUTPUT_PORTSETTINGSCHANGED   0x00010000
#define PSR_VIDEO_SCHEDULER_INPUT_PORTSETTINGSCHANGED   0x00020000
#define PSR_DECODER_OUTPUT_ENABLE   0x40000000
#define PSR_DEMUXER_EOS_DETECTED   0x80000000

Enumerations

enum  ox_player_sync_state_t { OPSS_INVALID, OPSS_IDLE, OPSS_STOP }

Functions

static void omxil_set_spec_version (void *obj, OMX_U32 bytes)
const char * omxil_state_name (int state)
int engine_parse_packet (ox_session_t *ox, ipc_packet_t *rqst, ipc_packet_t *rsps)
int omix_parse_packet (ox_session_t *ox, ipc_packet_t *rqst, ipc_packet_t *rsps)
XAresult ox_omix_realize (ox_omix_t *omix)
int ox_omix_destroy (ox_omix_t *omix)
int ox_omix_register_callback (ox_omix_t *omix, ox_omix_cb_t *omix_cb)
int ox_omix_unregister_callback (ox_omix_t *omix, ox_omix_cb_t *omix_cb)
int ox_parse_packet (ox_session_t *ox, ipc_packet_t *rqst, ipc_packet_t *rsps)
int ox_session_init (void *arg)
list_tox_session_list_head (void)
int ox_session_create (int fd)
void ox_session_destroy (ox_session_t *ox)
int ox_session_send_packet (ox_session_t *ox, ipc_packet_t *pkt)
int ox_session_parse_packet (ox_session_t *ox, ipc_packet_t *pkt, ipc_packet_t *rsps_pkt)
int player_parse_packet (ox_session_t *ox, ipc_packet_t *rqst, ipc_packet_t *rsps)
XAresult ox_player_realize (ox_player_t *player)
int ox_player_destroy (ox_player_t *player)
XAresult ox_player_play (ox_player_t *player)
XAresult ox_player_pause (ox_player_t *player)
XAresult ox_player_stop (ox_player_t *player)
XAresult ox_player_get_position (ox_player_t *player, XAmillisecond *pos)
XAresult ox_player_set_position (ox_player_t *player, XAmillisecond pos, XAuint32 seek_mode)

Define Documentation

#define deep_cp_data_sink (   d,
  s,
  p,
  o 
)    deep_copy_data_sink(d, s, p, o)
#define deep_cp_data_source (   d,
  s,
  p,
  o 
)    deep_copy_data_source(d, s, p, o)
#define OMXIL_SPEC_MAJOR   1

this dictates the engine OMXIL component version requirement.

#define OMXIL_SPEC_MINOR   1
#define OMXIL_SPEC_REVISION   2
#define OMXIL_SPEC_STEP   0
#define ox_omxil_debug (  )     do {;} while(0)
#define PSF_EOS_DETECTED   0x00000010
#define PSF_EXECUTING   0x00000004
#define PSF_IDLE   0x00000002
#define PSF_INVALID   0x80000000

player state bit-map flags.

#define PSF_LOADED   0x00000001
#define PSF_PAUSE   0x00000008
#define PSF_PORT_DISABLED (   p  )     (1 << ((p) + 8))
#define PSF_PORT_ENABLED (   p  )     (1 << (p))

player port state bit-map-flags.

#define PSF_PORT_FLUSHED (   p  )     (1 << ((p) + 16))
#define PSF_PORT_SETTINGS_CHANGED (   p  )     (1 << ((p) + 24))
#define PSR_AUDIO_DECODER_OUTPUT_PORTSETTINGSCHANGED   0x00000001

player synchronization request bit-map flags.

#define PSR_DECODER_OUTPUT_ENABLE   0x40000000
#define PSR_DEMUXER_EOS_DETECTED   0x80000000
#define PSR_VIDEO_DECODER_OUTPUT_PORTSETTINGSCHANGED   0x00010000
#define PSR_VIDEO_SCHEDULER_INPUT_PORTSETTINGSCHANGED   0x00020000

Enumeration Type Documentation

player synchronization thread state.

Enumerator:
OPSS_INVALID 
OPSS_IDLE 
OPSS_STOP 

Function Documentation

int engine_parse_packet ( ox_session_t ox,
ipc_packet_t rqst,
ipc_packet_t rsps 
)
int omix_parse_packet ( ox_session_t ox,
ipc_packet_t rqst,
ipc_packet_t rsps 
)
static void omxil_set_spec_version ( void *  obj,
OMX_U32  bytes 
) [inline, static]

omxil spec version helper macro.

const char* omxil_state_name ( int  state  ) 
int ox_omix_destroy ( ox_omix_t omix  ) 

destroy backend output mix object.

Parameters:
omix output mix object pointer.
Returns:
0 if successful, non-zero otherwise.
XAresult ox_omix_realize ( ox_omix_t omix  ) 

create backend output mix object.

Parameters:
omix output mix object pointer.
Returns:
OpenMAXAL object realize error code.
int ox_omix_register_callback ( ox_omix_t omix,
ox_omix_cb_t omix_cb 
)

register output mix callbacks.

Parameters:
omix output mix object pointer.
omix_cb output mix callback.
Returns:
0 if successful, non-zero otherwise.
int ox_omix_unregister_callback ( ox_omix_t omix,
ox_omix_cb_t omix_cb 
)

unregister output mix callbacks.

Parameters:
omix output mix object pointer.
omix_cb output mix callback.
Returns:
0 if successful, non-zero otherwise.
int ox_parse_packet ( ox_session_t ox,
ipc_packet_t rqst,
ipc_packet_t rsps 
)

limox packet parse entry point.

Parameters:
rqst request message from client.
rsps response going back to client.
Returns:
0 if request is successfully fulfilled, non-zero otherwise.
int ox_player_destroy ( ox_player_t player  ) 

destroy backend player object.

Parameters:
player player object pointer.
Returns:
0 if successful, non-zero otherwise.
XAresult ox_player_get_position ( ox_player_t player,
XAmillisecond *  pos 
)

player interface get position.

Parameters:
player player object pointer.
pos current playback position in millisecond.
Returns:
OpenMAXAL error code.
XAresult ox_player_pause ( ox_player_t player  ) 

player interface pause playing.

Parameters:
player player object pointer.
Returns:
OpenMAXAL error code.
XAresult ox_player_play ( ox_player_t player  ) 

player interface start playing.

Parameters:
player player object pointer.
Returns:
OpenMAXAL error code.
XAresult ox_player_realize ( ox_player_t player  ) 

create backend player object.

Parameters:
player player object pointer.
Returns:
OpenMAXAL object realize error code.
XAresult ox_player_set_position ( ox_player_t player,
XAmillisecond  pos,
XAuint32  seek_mode 
)

player seek interface set position.

Parameters:
player player object pointer.
pos target playback position in millisecond.
seek_mode seek mode.
Returns:
OpenMAXAL error code.
XAresult ox_player_stop ( ox_player_t player  ) 

player interface stop playing.

Parameters:
player player object pointer.
Returns:
OpenMAXAL error code.
int ox_session_create ( int  fd  ) 

create new session.

Parameters:
fd connection socket file descriptor.
Returns:
0 if successful, non-zero otherwise.
void ox_session_destroy ( ox_session_t ox  ) 

destroy session.

Parameters:
ox session session descriptor.
int ox_session_init ( void *  arg  ) 

initialize limox session control.

Parameters:
arg frontend uses this to pass in the engine ipc handle when linked with backend.
Returns:
0 if successful, non-zero otherwise.
list_t* ox_session_list_head ( void   ) 

return limox session list head.

Returns:
session list head.
int ox_session_parse_packet ( ox_session_t ox,
ipc_packet_t pkt,
ipc_packet_t rsps_pkt 
)

parse session IPC packet from client.

Parameters:
ox session descriptor.
pkt IPC packet.
rsps_pkt IPC response packet if non-NULL.
Returns:
0 if packet successfully parsed, non-zero error code otherwise.
int ox_session_send_packet ( ox_session_t ox,
ipc_packet_t pkt 
)

send session packet to client.

Parameters:
ox session descriptor.
pkt IPC packet.
Returns:
number of bytes sent upon successful, 0 or negative value otherwise.
int player_parse_packet ( ox_session_t ox,
ipc_packet_t rqst,
ipc_packet_t rsps 
)
LIMOpenMAX Implementation API Reference - Generated by doxygen