
Functions | |
| static void * | Thread (void *data) |
| Run the main control thread itself. | |
| void | playlist_Activate (playlist_t *p_playlist) |
| Create the main playlist threads. | |
| void | playlist_Deactivate (playlist_t *p_playlist) |
| static int | InputEvent (vlc_object_t *p_this, char const *psz_cmd, vlc_value_t oldval, vlc_value_t newval, void *p_data) |
| static void | UpdateActivity (playlist_t *p_playlist, int i_delta) |
| static void | ResyncCurrentIndex (playlist_t *p_playlist, playlist_item_t *p_cur) |
| Synchronise the current index of the playlist to match the index of the current item. | |
| static void | ResetCurrentlyPlaying (playlist_t *p_playlist, playlist_item_t *p_cur) |
| static int | PlayItem (playlist_t *p_playlist, playlist_item_t *p_item) |
| Start the input for an item. | |
| static playlist_item_t * | NextItem (playlist_t *p_playlist) |
| Compute the next playlist item depending on the playlist course mode (forward, backward, random, view,...). | |
| static int | LoopInput (playlist_t *p_playlist) |
| static void | LoopRequest (playlist_t *p_playlist) |
| static int InputEvent | ( | vlc_object_t * | p_this, | |
| char const * | psz_cmd, | |||
| vlc_value_t | oldval, | |||
| vlc_value_t | newval, | |||
| void * | p_data | |||
| ) | [static] |
References vlc_value_t::i_int, INPUT_EVENT_DEAD, INPUT_EVENT_STATE, pl_priv, vlc_cond_signal(), and VLC_UNUSED.
Referenced by LoopInput(), and PlayItem().
| static int LoopInput | ( | playlist_t * | p_playlist | ) | [static] |
References input_thread_t::b_dead, input_thread_t::b_die, input_thread_t::b_eof, input_thread_t::b_error, playlist_private_t::b_request, DEFAULT_INPUT_ACTIVITY, input_Close(), input_resource_TerminateSout(), input_Stop(), InputEvent(), playlist_private_t::p_input, playlist_private_t::p_input_resource, PL_DEBUG, pl_priv, playlist_private_t::request, UpdateActivity(), var_CreateGetBool, var_DelCallback, and vlc_object_alive.
Referenced by Thread().
| static void LoopRequest | ( | playlist_t * | p_playlist | ) | [static] |
References playlist_private_t::b_request, playlist_private_t::i_status, input_resource_HasVout(), input_resource_TerminateVout(), libvlc_Quit(), playlist_private_t::lock, msg_Dbg, msg_Info, NextItem(), playlist_private_t::p_input, playlist_private_t::p_input_resource, playlist_t::p_libvlc, pl_priv, PlayItem(), PLAYLIST_STOPPED, playlist_private_t::request, playlist_private_t::signal, playlist_private_t::status, var_GetBool, vlc_cond_wait(), and vlc_object_alive.
Referenced by Thread().
| static playlist_item_t* NextItem | ( | playlist_t * | p_playlist | ) | [static] |
Compute the next playlist item depending on the playlist course mode (forward, backward, random, view,...).
| p_playlist | the playlist object |
References ARRAY_VAL, playlist_private_t::b_request, playlist_private_t::b_reset_currently_playing, playlist_t::current, get_current_status_item(), get_current_status_node(), playlist_item_t::i_children, playlist_t::i_current_index, playlist_item_t::i_flags, playlist_item_array_t::i_size, playlist_private_t::i_skip, playlist_t::items, msg_Dbg, msg_Info, playlist_private_t::p_item, playlist_private_t::p_node, playlist_item_t::p_parent, PL_DEBUG, pl_priv, playlist_GetNextLeaf(), PLAYLIST_SKIP_FLAG, PLI_NAME, playlist_private_t::request, ResetCurrentlyPlaying(), ResyncCurrentIndex(), set_current_status_node(), and var_GetBool.
Referenced by LoopRequest().
| static int PlayItem | ( | playlist_t * | p_playlist, | |
| playlist_item_t * | p_item | |||
| ) | [static] |
Start the input for an item.
| p_playlist | the playlist object | |
| p_item | the item to play |
References ALBUM_ART_WHEN_PLAYED, DEFAULT_INPUT_ACTIVITY, EMPTY_STR, input_item_t::i_nb_played, playlist_private_t::i_status, input_Create, input_item_GetArtURL, input_item_GetName(), input_item_GetURI(), input_resource_New(), input_Start(), InputEvent(), msg_Dbg, playlist_private_t::p_input, playlist_item_t::p_input, playlist_private_t::p_input_resource, PL_DEBUG, pl_priv, playlist_AskForArtEnqueue(), psz_name, set_current_status_item(), playlist_private_t::status, UpdateActivity(), var_AddCallback, var_GetInteger, var_SetAddress, VLC_OBJECT, and vlc_object_release.
Referenced by LoopRequest().
| static void ResetCurrentlyPlaying | ( | playlist_t * | p_playlist, | |
| playlist_item_t * | p_cur | |||
| ) | [static] |
FIXME: this is *slow*
References ARRAY_APPEND, ARRAY_RESET, ARRAY_VAL, playlist_private_t::b_reset_currently_playing, playlist_t::current, playlist_t::i_current_index, playlist_item_array_t::i_size, playlist_private_t::p_node, PL_DEBUG, pl_priv, playlist_GetNextLeaf(), PLI_NAME, playlist_private_t::status, var_GetBool, and vlc_lrand48().
Referenced by NextItem(), and Thread().
| static void ResyncCurrentIndex | ( | playlist_t * | p_playlist, | |
| playlist_item_t * | p_cur | |||
| ) | [static] |
Synchronise the current index of the playlist to match the index of the current item.
| p_playlist | the playlist structure | |
| p_cur | the current playlist item |
References ARRAY_VAL, playlist_t::current, playlist_t::i_current_index, playlist_item_array_t::i_size, PL_DEBUG, and PLI_NAME.
Referenced by NextItem().
| static void * Thread | ( | void * | data | ) | [static] |
Run the main control thread itself.
References playlist_private_t::b_reset_currently_playing, get_current_status_item(), playlist_private_t::last_rebuild_date, playlist_private_t::lock, LoopInput(), LoopRequest(), mdate(), playlist_private_t::p_input, pl_priv, playlist_Lock(), playlist_Unlock(), ResetCurrentlyPlaying(), playlist_private_t::signal, vlc_cond_wait(), and vlc_object_alive.
Referenced by playlist_Activate().
| static void UpdateActivity | ( | playlist_t * | p_playlist, | |
| int | i_delta | |||
| ) | [static] |
References var_GetInteger, and var_SetInteger.
Referenced by LoopInput(), and PlayItem().
1.7.1