VLC 4.0.0-dev
|
Functions | |
static void * | Manage (void *) |
static void | player_on_state_changed (vlc_player_t *player, enum vlc_player_state new_state, void *data) |
vlm_t * | vlm_New (libvlc_int_t *libvlc, const char *psz_vlmconf) |
void | vlm_Delete (vlm_t *p_vlm) |
int | vlm_ExecuteCommand (vlm_t *p_vlm, const char *psz_command, vlm_message_t **pp_message) |
static vlm_media_sys_t * | vlm_ControlMediaGetById (vlm_t *p_vlm, int64_t id) |
static vlm_media_sys_t * | vlm_ControlMediaGetByName (vlm_t *p_vlm, const char *psz_name) |
static int | vlm_MediaDescriptionCheck (vlm_t *p_vlm, vlm_media_t *p_cfg) |
static int | vlm_OnMediaUpdate (vlm_t *p_vlm, vlm_media_sys_t *p_media) |
static int | vlm_ControlMediaChange (vlm_t *p_vlm, vlm_media_t *p_cfg) |
static int | vlm_ControlMediaAdd (vlm_t *p_vlm, vlm_media_t *p_cfg, int64_t *p_id) |
static int | vlm_ControlMediaDel (vlm_t *p_vlm, int64_t id) |
static int | vlm_ControlMediaGets (vlm_t *p_vlm, vlm_media_t ***ppp_dsc, int *pi_dsc) |
static int | vlm_ControlMediaClear (vlm_t *p_vlm) |
static int | vlm_ControlMediaGet (vlm_t *p_vlm, int64_t id, vlm_media_t **pp_dsc) |
static int | vlm_ControlMediaGetId (vlm_t *p_vlm, const char *psz_name, int64_t *p_id) |
static vlm_media_instance_sys_t * | vlm_ControlMediaInstanceGetByName (vlm_media_sys_t *p_media, const char *psz_id) |
static vlm_media_instance_sys_t * | vlm_MediaInstanceNew (vlm_media_sys_t *p_media, const char *psz_name) |
static void | vlm_MediaInstanceDelete (vlm_t *p_vlm, int64_t id, vlm_media_instance_sys_t *p_instance, vlm_media_sys_t *p_media) |
static int | vlm_ControlMediaInstanceStart (vlm_t *p_vlm, int64_t id, const char *psz_id, int i_input_index) |
static int | vlm_ControlMediaInstanceStop (vlm_t *p_vlm, int64_t id, const char *psz_id) |
static int | vlm_ControlMediaInstancePause (vlm_t *p_vlm, int64_t id, const char *psz_id) |
static int | vlm_ControlMediaInstanceGetTimePosition (vlm_t *p_vlm, int64_t id, const char *psz_id, int64_t *pi_time, double *pd_position) |
static int | vlm_ControlMediaInstanceSetTimePosition (vlm_t *p_vlm, int64_t id, const char *psz_id, int64_t i_time, double d_position) |
static int | vlm_ControlMediaInstanceGets (vlm_t *p_vlm, int64_t id, vlm_media_instance_t ***ppp_idsc, int *pi_instance) |
static int | vlm_ControlMediaInstanceClear (vlm_t *p_vlm, int64_t id) |
static int | vlm_ControlScheduleClear (vlm_t *p_vlm) |
static int | vlm_vaControlInternal (vlm_t *p_vlm, int i_query, va_list args) |
int | vlm_ControlInternal (vlm_t *p_vlm, int i_query,...) |
int | vlm_Control (vlm_t *p_vlm, int i_query,...) |
Variables | |
static vlc_mutex_t | vlm_mutex = { .value = ATOMIC_VAR_INIT(0), .recursion = ATOMIC_VAR_INIT(0), .owner = ATOMIC_VAR_INIT(0), } |
|
static |
References vlm_schedule_sys_t::b_enabled, vlm_media_t::b_loop, vlm_media_t::broadcast, vlm_media_sys_t::cfg, vlm_schedule_sys_t::command, vlm_schedule_sys_t::date, ExecuteCommand(), vlm_t::exiting, vlm_schedule_sys_t::i_command, vlm_media_instance_sys_t::i_index, vlm_media_t::i_input, vlm_media_sys_t::i_instance, vlm_t::i_media, vlm_schedule_sys_t::i_repeat, vlm_t::i_schedule, vlm_media_t::id, vlm_t::input_state_changed, vlm_media_sys_t::instance, vlm_t::lock, vlm_t::lock_manage, vlm_t::media, vlm_schedule_sys_t::period, vlm_media_instance_sys_t::player, vlm_media_instance_sys_t::psz_name, vlm_t::schedule, strdup(), TAB_APPEND, TAB_REMOVE, vlc_cond_timedwait_daytime(), vlc_cond_wait(), vlc_mutex_lock(), vlc_mutex_unlock(), vlc_player_IsStarted(), vlc_player_Lock(), vlc_player_Unlock(), vlc_thread_set_name(), vlm_ControlInternal(), vlm_MessageDelete(), VLM_START_MEDIA_BROADCAST_INSTANCE, VLM_STOP_MEDIA_INSTANCE, and vlm_t::wait_manage.
Referenced by vlm_New().
|
static |
References vlm_media_sys_t::cfg, vlm_media_sys_t::i_instance, vlm_media_t::id, vlm_t::input_state_changed, vlm_media_sys_t::instance, libvlc_priv(), vlm_t::lock_manage, libvlc_priv_t::p_vlm, vlm_media_instance_sys_t::player, vlm_media_t::psz_name, vlm_media_instance_sys_t::psz_name, vlc_assert_unreachable, vlc_cond_signal(), vlc_mutex_lock(), vlc_mutex_unlock(), vlc_object_instance, vlc_player_GetError(), VLC_PLAYER_STATE_PAUSED, VLC_PLAYER_STATE_PLAYING, VLC_PLAYER_STATE_STARTED, VLC_PLAYER_STATE_STOPPED, VLC_PLAYER_STATE_STOPPING, VLM_END_S, VLM_ERROR_S, VLM_INIT_S, VLM_OPENING_S, VLM_PAUSE_S, VLM_PLAYING_S, vlm_SendEventMediaInstanceState(), and vlm_t::wait_manage.
Referenced by vlm_MediaInstanceNew().
int vlm_ControlInternal | ( | vlm_t * | p_vlm, |
int | i_query, | ||
... | |||
) |
References vlm_vaControlInternal().
Referenced by Manage(), vlm_ControlMediaDel(), and vlm_Delete().
|
static |
References _, asprintf(), vlm_media_sys_t::cfg, vlm_t::i_id, vlm_media_sys_t::i_instance, vlm_t::i_media, vlm_media_t::id, vlm_media_sys_t::instance, vlc_object_t::logger, vlm_t::media, msg_Err, vlm_media_sys_t::obj, vlm_media_t::psz_name, TAB_APPEND, TAB_INIT, vlc_custom_create, VLC_EGENERIC, VLC_ENOMEM, vlc_LogHeaderCreate(), VLC_OBJECT, vlc_object_delete, vlm_ControlMediaGetByName(), vlm_media_Copy(), vlm_MediaDescriptionCheck(), vlm_OnMediaUpdate(), and vlm_SendEventMediaAdded().
Referenced by vlm_vaControlInternal().
|
static |
References vlm_media_sys_t::cfg, vlm_media_t::id, VLC_EGENERIC, vlm_ControlMediaGetById(), vlm_media_Clean(), vlm_media_Copy(), vlm_MediaDescriptionCheck(), and vlm_OnMediaUpdate().
Referenced by vlm_vaControlInternal().
|
static |
References vlm_media_sys_t::cfg, vlm_t::i_media, vlm_media_t::id, vlm_t::media, VLC_SUCCESS, and vlm_ControlMediaDel().
Referenced by vlm_vaControlInternal().
|
static |
References vlm_media_sys_t::cfg, vlm_media_sys_t::i_instance, vlm_t::i_media, vlm_media_sys_t::instance, vlc_object_t::logger, vlm_t::media, vlm_media_sys_t::obj, vlm_media_t::psz_name, vlm_media_instance_sys_t::psz_name, TAB_REMOVE, VLC_EGENERIC, vlc_LogDestroy(), vlc_object_delete, VLC_SUCCESS, vlm_ControlInternal(), vlm_ControlMediaGetById(), vlm_media_Clean(), vlm_SendEventMediaRemoved(), and VLM_STOP_MEDIA_INSTANCE.
Referenced by vlm_ControlMediaClear(), and vlm_vaControlInternal().
|
static |
References vlm_media_sys_t::cfg, VLC_EGENERIC, VLC_SUCCESS, vlm_ControlMediaGetById(), and vlm_media_Duplicate().
Referenced by vlm_vaControlInternal().
|
static |
References vlm_media_sys_t::cfg, vlm_t::i_media, vlm_media_t::id, and vlm_t::media.
Referenced by vlm_ControlMediaChange(), vlm_ControlMediaDel(), vlm_ControlMediaGet(), vlm_ControlMediaInstanceClear(), vlm_ControlMediaInstanceGets(), vlm_ControlMediaInstanceGetTimePosition(), vlm_ControlMediaInstancePause(), vlm_ControlMediaInstanceSetTimePosition(), vlm_ControlMediaInstanceStart(), and vlm_ControlMediaInstanceStop().
|
static |
References vlm_media_sys_t::cfg, vlm_t::i_media, vlm_t::media, vlm_media_t::psz_name, and psz_name.
Referenced by vlm_ControlMediaAdd(), and vlm_ControlMediaGetId().
|
static |
References vlm_media_sys_t::cfg, vlm_media_t::id, psz_name, VLC_EGENERIC, VLC_SUCCESS, and vlm_ControlMediaGetByName().
Referenced by vlm_vaControlInternal().
|
static |
References vlm_media_sys_t::cfg, vlm_t::i_media, vlm_t::media, TAB_APPEND, TAB_INIT, VLC_SUCCESS, and vlm_media_Duplicate().
Referenced by vlm_vaControlInternal().
|
static |
|
static |
References vlm_media_sys_t::i_instance, vlm_media_sys_t::instance, and vlm_media_instance_sys_t::psz_name.
Referenced by vlm_ControlMediaInstanceGetTimePosition(), vlm_ControlMediaInstancePause(), vlm_ControlMediaInstanceSetTimePosition(), vlm_ControlMediaInstanceStart(), and vlm_ControlMediaInstanceStop().
|
static |
References vlm_media_instance_t::b_paused, vlm_media_instance_t::d_position, vlm_media_instance_t::f_rate, vlm_media_sys_t::i_instance, vlm_media_instance_t::i_length, vlm_media_instance_t::i_time, vlm_media_sys_t::instance, vlm_media_instance_sys_t::player, vlm_media_instance_t::psz_name, vlm_media_instance_sys_t::psz_name, strdup(), TAB_APPEND, TAB_INIT, US_FROM_VLC_TICK, VLC_EGENERIC, vlc_player_GetLength(), vlc_player_GetPosition(), vlc_player_GetRate(), vlc_player_GetTime(), vlc_player_IsPaused(), vlc_player_Lock(), vlc_player_Unlock(), VLC_SUCCESS, vlm_ControlMediaGetById(), and vlm_media_instance_New().
Referenced by vlm_vaControlInternal().
|
static |
|
static |
|
static |
|
static |
References asprintf(), vlm_media_t::b_enabled, vlm_media_sys_t::cfg, vlm_media_instance_sys_t::i_index, vlm_media_t::i_input, vlm_media_sys_t::i_instance, vlm_media_t::i_option, input_item_AddOption(), input_item_SetURI(), vlm_media_sys_t::instance, vlm_media_instance_sys_t::p_item, vlm_media_instance_sys_t::player, vlm_media_t::ppsz_input, vlm_media_t::ppsz_option, vlm_media_t::psz_name, vlm_media_t::psz_output, TAB_APPEND, VLC_EGENERIC, VLC_ENOMEM, VLC_INPUT_OPTION_TRUSTED, vlc_path2uri(), vlc_player_GetCurrentMedia(), vlc_player_IsPaused(), vlc_player_Lock(), vlc_player_Resume(), vlc_player_SetCurrentMedia(), vlc_player_Start(), vlc_player_Stop(), vlc_player_Unlock(), VLC_SUCCESS, vlm_ControlMediaGetById(), vlm_ControlMediaInstanceGetByName(), vlm_MediaInstanceNew(), vlm_SendEventMediaInstanceStarted(), and vlm_SendEventMediaInstanceStopped().
Referenced by vlm_vaControlInternal().
|
static |
References VLC_EGENERIC, VLC_SUCCESS, vlm_ControlMediaGetById(), vlm_ControlMediaInstanceGetByName(), and vlm_MediaInstanceDelete().
Referenced by vlm_ControlMediaInstanceClear(), and vlm_vaControlInternal().
|
static |
References vlm_t::i_schedule, vlm_t::schedule, VLC_SUCCESS, and vlm_ScheduleDelete().
Referenced by vlm_vaControlInternal().
|
static |
References vlm_media_sys_t::cfg, vlm_t::i_media, vlm_media_t::id, vlm_t::media, vlm_media_t::psz_name, VLC_EGENERIC, and VLC_SUCCESS.
Referenced by vlm_ControlMediaAdd(), and vlm_ControlMediaChange().
|
static |
References vlm_media_sys_t::cfg, vlm_media_sys_t::i_instance, input_item_Release(), vlm_media_sys_t::instance, vlm_media_instance_sys_t::listener, vlm_media_instance_sys_t::p_item, vlm_media_instance_sys_t::p_parent, vlm_media_instance_sys_t::player, vlm_media_t::psz_name, vlm_media_instance_sys_t::psz_name, TAB_REMOVE, vlc_object_delete, vlc_player_Delete(), vlc_player_GetCurrentMedia(), vlc_player_Lock(), vlc_player_RemoveListener(), vlc_player_Stop(), vlc_player_Unlock(), and vlm_SendEventMediaInstanceStopped().
Referenced by vlm_ControlMediaInstanceStop().
|
static |
References vlm_media_instance_sys_t::i_index, input_item_New, input_item_Release(), vlm_media_instance_sys_t::listener, vlc_player_cbs::on_state_changed, vlm_media_instance_sys_t::p_item, vlm_media_instance_sys_t::p_parent, vlm_media_instance_sys_t::player, player_on_state_changed(), vlm_media_instance_sys_t::psz_name, psz_name, strdup(), vlc_object_create, vlc_object_delete, vlc_player_AddListener(), vlc_player_Delete(), vlc_player_Lock(), VLC_PLAYER_LOCK_NORMAL, vlc_player_New(), and vlc_player_Unlock().
Referenced by vlm_ControlMediaInstanceStart().
|
static |
References vlm_media_sys_t::cfg, vlm_media_t::id, vlm_media_t::psz_name, VLC_SUCCESS, and vlm_SendEventMediaChanged().
Referenced by vlm_ControlMediaAdd(), and vlm_ControlMediaChange().
|
static |
References msg_Err, VLC_EGENERIC, VLM_ADD_MEDIA, VLM_CHANGE_MEDIA, VLM_CLEAR_MEDIA_INSTANCES, VLM_CLEAR_MEDIAS, VLM_CLEAR_SCHEDULES, vlm_ControlMediaAdd(), vlm_ControlMediaChange(), vlm_ControlMediaClear(), vlm_ControlMediaDel(), vlm_ControlMediaGet(), vlm_ControlMediaGetId(), vlm_ControlMediaGets(), vlm_ControlMediaInstanceClear(), vlm_ControlMediaInstanceGets(), vlm_ControlMediaInstanceGetTimePosition(), vlm_ControlMediaInstancePause(), vlm_ControlMediaInstanceSetTimePosition(), vlm_ControlMediaInstanceStart(), vlm_ControlMediaInstanceStop(), vlm_ControlScheduleClear(), VLM_DEL_MEDIA, VLM_GET_MEDIA, VLM_GET_MEDIA_ID, VLM_GET_MEDIA_INSTANCE_POSITION, VLM_GET_MEDIA_INSTANCE_TIME, VLM_GET_MEDIA_INSTANCES, VLM_GET_MEDIAS, VLM_PAUSE_MEDIA_INSTANCE, VLM_SET_MEDIA_INSTANCE_POSITION, VLM_SET_MEDIA_INSTANCE_TIME, VLM_START_MEDIA_BROADCAST_INSTANCE, and VLM_STOP_MEDIA_INSTANCE.
Referenced by vlm_Control(), and vlm_ControlInternal().
|
static |
Referenced by vlm_Delete(), and vlm_New().