
Defines | |
| #define | VLM_RET(p, ret) |
| #define | VLM_CHANGE(psz_error, code) |
| #define | VLM_CHANGE_CODE { p_media->b_enabled = b_enabled; } |
| #define | VLM_CHANGE_CODE { p_media->broadcast.b_loop = b_loop; } |
| #define | VLM_CHANGE_CODE |
| #define | VLM_CHANGE_CODE |
| #define | VLM_CHANGE_CODE |
| #define | VLM_CHANGE_CODE |
| #define | VLM_CHANGE_CODE |
Functions | |
| static int | VlmEvent (vlc_object_t *p_this, const char *name, vlc_value_t old_val, vlc_value_t newval, void *param) |
| static void | libvlc_vlm_release_internal (libvlc_instance_t *p_instance) |
| static int | libvlc_vlm_init (libvlc_instance_t *p_instance) |
| void | libvlc_vlm_release (libvlc_instance_t *p_instance) |
| Release the vlm instance related to the given libvlc_instance_t. | |
| static vlm_media_instance_t * | libvlc_vlm_get_media_instance (libvlc_instance_t *p_instance, const char *psz_name, int i_minstance_idx) |
| static char * | recurse_answer (vlm_message_t *p_answer, const char *psz_delim, const int i_list) |
| const char * | libvlc_vlm_show_media (libvlc_instance_t *p_instance, const char *psz_name) |
| Return information about the named media as a JSON string representation. | |
| int | libvlc_vlm_add_broadcast (libvlc_instance_t *p_instance, const char *psz_name, const char *psz_input, const char *psz_output, int i_options, const char *const *ppsz_options, int b_enabled, int b_loop) |
| Add a broadcast, with one input. | |
| int | libvlc_vlm_add_vod (libvlc_instance_t *p_instance, const char *psz_name, const char *psz_input, int i_options, const char *const *ppsz_options, int b_enabled, const char *psz_mux) |
| Add a vod, with one input. | |
| int | libvlc_vlm_del_media (libvlc_instance_t *p_instance, const char *psz_name) |
| Delete a media (VOD or broadcast). | |
| static vlm_media_t * | get_media (libvlc_instance_t *p_instance, vlm_t **restrict pp_vlm, const char *name) |
| int | libvlc_vlm_set_enabled (libvlc_instance_t *p_instance, const char *psz_name, int b_enabled) |
| Enable or disable a media (VOD or broadcast). | |
| int | libvlc_vlm_set_loop (libvlc_instance_t *p_instance, const char *psz_name, int b_loop) |
| Set a media's loop status. | |
| int | libvlc_vlm_set_mux (libvlc_instance_t *p_instance, const char *psz_name, const char *psz_mux) |
| Set a media's vod muxer. | |
| int | libvlc_vlm_set_output (libvlc_instance_t *p_instance, const char *psz_name, const char *psz_output) |
| Set the output for a media. | |
| int | libvlc_vlm_set_input (libvlc_instance_t *p_instance, const char *psz_name, const char *psz_input) |
| Set a media's input MRL. | |
| int | libvlc_vlm_add_input (libvlc_instance_t *p_instance, const char *psz_name, const char *psz_input) |
| Add a media's input MRL. | |
| int | libvlc_vlm_change_media (libvlc_instance_t *p_instance, const char *psz_name, const char *psz_input, const char *psz_output, int i_options, const char *const *ppsz_options, int b_enabled, int b_loop) |
| Edit the parameters of a media. | |
| int | libvlc_vlm_play_media (libvlc_instance_t *p_instance, const char *psz_name) |
| Play the named broadcast. | |
| int | libvlc_vlm_stop_media (libvlc_instance_t *p_instance, const char *psz_name) |
| Stop the named broadcast. | |
| int | libvlc_vlm_pause_media (libvlc_instance_t *p_instance, const char *psz_name) |
| Pause the named broadcast. | |
| int | libvlc_vlm_seek_media (libvlc_instance_t *p_instance, const char *psz_name, float f_percentage) |
| Seek in the named broadcast. | |
| float | libvlc_vlm_get_media_instance_position (libvlc_instance_t *p_instance, const char *psz_name, int i_instance) |
| Get vlm_media instance position by name or instance id. | |
| int | libvlc_vlm_get_media_instance_time (libvlc_instance_t *p_instance, const char *psz_name, int i_instance) |
| Get vlm_media instance time by name or instance id. | |
| int | libvlc_vlm_get_media_instance_length (libvlc_instance_t *p_instance, const char *psz_name, int i_instance) |
| Get vlm_media instance length by name or instance id. | |
| int | libvlc_vlm_get_media_instance_rate (libvlc_instance_t *p_instance, const char *psz_name, int i_instance) |
| Get vlm_media instance playback rate by name or instance id. | |
| libvlc_event_manager_t * | libvlc_vlm_get_event_manager (libvlc_instance_t *p_instance) |
| Get libvlc_event_manager from a vlm media. | |
| #define VLM_CHANGE | ( | psz_error, | ||
| code | ||||
| ) |
do { \ vlm_t *p_vlm; \ vlm_media_t *p_media = get_media( p_instance, &p_vlm, psz_name ); \ if( p_media != NULL ) { \ code; \ if( vlm_Control( p_vlm, VLM_CHANGE_MEDIA, p_media ) ) \ p_vlm = NULL; \ vlm_media_Delete( p_media ); \ if( p_vlm != NULL ) \ return 0; \ } \ libvlc_printerr( psz_error, psz_name ); \ return -1; \ } while(0)
Referenced by libvlc_vlm_add_input(), libvlc_vlm_change_media(), libvlc_vlm_set_enabled(), libvlc_vlm_set_input(), libvlc_vlm_set_loop(), libvlc_vlm_set_mux(), and libvlc_vlm_set_output().
| #define VLM_CHANGE_CODE |
{ int n; \
p_media->b_enabled = b_enabled; \
p_media->broadcast.b_loop = b_loop; \
while( p_media->i_input > 0 ) \
free( p_media->ppsz_input[--p_media->i_input] ); \
if( psz_input ) \
TAB_APPEND( p_media->i_input, p_media->ppsz_input, strdup(psz_input) ); \
free( p_media->psz_output ); \
p_media->psz_output = psz_output ? strdup( psz_output ) : NULL; \
while( p_media->i_option > 0 ) \
free( p_media->ppsz_option[--p_media->i_option] ); \
for( n = 0; n < i_options; n++ ) \
TAB_APPEND( p_media->i_option, p_media->ppsz_option, \
strdup(ppsz_options[n]) ); \
}
| #define VLM_CHANGE_CODE { p_media->broadcast.b_loop = b_loop; } |
| #define VLM_CHANGE_CODE |
{ while( p_media->i_input > 0 ) \
free( p_media->ppsz_input[--p_media->i_input] );\
TAB_APPEND( p_media->i_input, p_media->ppsz_input, \
strdup(psz_input) ); }
| #define VLM_CHANGE_CODE |
{ free( p_media->psz_output ); \
p_media->psz_output = strdup( psz_output ); }
| #define VLM_CHANGE_CODE |
{ if( p_media->b_vod ) { \
free( p_media->vod.psz_mux ); \
p_media->vod.psz_mux = psz_mux \
? strdup( psz_mux ) : NULL; \
} }
| #define VLM_CHANGE_CODE |
{ TAB_APPEND( p_media->i_input, p_media->ppsz_input, \
strdup(psz_input) ); }
| #define VLM_CHANGE_CODE { p_media->b_enabled = b_enabled; } |
| #define VLM_RET | ( | p, | ||
| ret | ||||
| ) |
do { \ if( libvlc_vlm_init( p_instance ) ) \ return (ret); \ (p) = p_instance->libvlc_vlm.p_vlm; \ } while(0)
Referenced by get_media(), libvlc_vlm_add_broadcast(), libvlc_vlm_add_vod(), libvlc_vlm_del_media(), libvlc_vlm_get_event_manager(), libvlc_vlm_get_media_instance(), libvlc_vlm_pause_media(), libvlc_vlm_play_media(), libvlc_vlm_seek_media(), libvlc_vlm_show_media(), and libvlc_vlm_stop_media().
| static vlm_media_t* get_media | ( | libvlc_instance_t * | p_instance, | |
| vlm_t **restrict | pp_vlm, | |||
| const char * | name | |||
| ) | [static] |
References vlm_Control(), VLM_GET_MEDIA, VLM_GET_MEDIA_ID, and VLM_RET.
| static vlm_media_instance_t* libvlc_vlm_get_media_instance | ( | libvlc_instance_t * | p_instance, | |
| const char * | psz_name, | |||
| int | i_minstance_idx | |||
| ) | [static] |
References libvlc_printerr(), TAB_CLEAN, TAB_REMOVE, vlm_Control(), VLM_GET_MEDIA_ID, VLM_GET_MEDIA_INSTANCES, vlm_media_instance_Delete(), and VLM_RET.
Referenced by libvlc_vlm_get_media_instance_length(), libvlc_vlm_get_media_instance_position(), libvlc_vlm_get_media_instance_rate(), and libvlc_vlm_get_media_instance_time().
| static int libvlc_vlm_init | ( | libvlc_instance_t * | p_instance | ) | [static] |
References libvlc_event_manager_new(), libvlc_event_manager_register_event_type(), libvlc_printerr(), libvlc_instance_t::libvlc_vlm, libvlc_VlmMediaAdded, libvlc_VlmMediaChanged, libvlc_VlmMediaInstanceStarted, libvlc_VlmMediaInstanceStatusEnd, libvlc_VlmMediaInstanceStatusError, libvlc_VlmMediaInstanceStatusInit, libvlc_VlmMediaInstanceStatusOpening, libvlc_VlmMediaInstanceStatusPause, libvlc_VlmMediaInstanceStatusPlaying, libvlc_VlmMediaInstanceStopped, libvlc_VlmMediaRemoved, libvlc_vlm_t::p_event_manager, libvlc_instance_t::p_libvlc_int, libvlc_vlm_t::p_vlm, libvlc_vlm_t::pf_release, unlikely, var_AddCallback, vlm_New, and VlmEvent().
| static void libvlc_vlm_release_internal | ( | libvlc_instance_t * | p_instance | ) | [static] |
| static char* recurse_answer | ( | vlm_message_t * | p_answer, | |
| const char * | psz_delim, | |||
| const int | i_list | |||
| ) | [static] |
References asprintf(), vlm_message_t::child, vlm_message_t::i_child, vlm_message_t::psz_name, vlm_message_t::psz_value, and strdup().
Referenced by libvlc_vlm_show_media().
| static int VlmEvent | ( | vlc_object_t * | p_this, | |
| const char * | name, | |||
| vlc_value_t | old_val, | |||
| vlc_value_t | newval, | |||
| void * | param | |||
| ) | [static] |
References END_S, ERROR_S, INIT_S, libvlc_event_send(), OPENING_S, vlc_value_t::p_address, PAUSE_S, PLAYING_S, libvlc_event_t::type, libvlc_event_t::u, VLC_UNUSED, VLM_EVENT_MEDIA_ADDED, VLM_EVENT_MEDIA_CHANGED, VLM_EVENT_MEDIA_INSTANCE_STARTED, VLM_EVENT_MEDIA_INSTANCE_STATE, VLM_EVENT_MEDIA_INSTANCE_STOPPED, VLM_EVENT_MEDIA_REMOVED, and libvlc_event_t::vlm_media_event.
Referenced by libvlc_vlm_init(), and libvlc_vlm_release_internal().
1.7.1