VLC 4.0.0-dev
|
Data Structures | |
union | vlc_player_metadata_cbs |
Player metadata callbacks. More... | |
Typedefs | |
typedef struct vlc_player_metadata_listener_id | vlc_player_metadata_listener_id |
Player metadata listener opaque structure. More... | |
Enumerations | |
enum | vlc_player_metadata_option { VLC_PLAYER_METADATA_LOUDNESS_MOMENTARY , VLC_PLAYER_METADATA_LOUDNESS_FULL } |
Player metadata option. More... | |
Functions | |
vlc_player_metadata_listener_id * | vlc_player_AddMetadataListener (vlc_player_t *player, enum vlc_player_metadata_option option, const union vlc_player_metadata_cbs *cbs, void *cbs_data) |
Add a metadata listener. More... | |
void | vlc_player_RemoveMetadataListener (vlc_player_t *player, vlc_player_metadata_listener_id *listener_id) |
Remove a metadata listener. More... | |
typedef struct vlc_player_metadata_listener_id vlc_player_metadata_listener_id |
Player metadata listener opaque structure.
This opaque structure is returned by vlc_player_AddMetadataListener() and can be used to remove the listener via vlc_player_RemoveMetadataListener().
vlc_player_metadata_listener_id * vlc_player_AddMetadataListener | ( | vlc_player_t * | player, |
enum vlc_player_metadata_option | option, | ||
const union vlc_player_metadata_cbs * | cbs, | ||
void * | cbs_data | ||
) |
Add a metadata listener.
player | locked player instance |
cbs | pointer to a vlc_player_metadata_cbs union, the structure must be valid during the lifetime of the player |
cbs_data | opaque pointer used by the callbacks |
References vlc_audio_meter_plugin_owner::cbs, vlc_player_metadata_listener_id::cbs, vlc_player_metadata_listener_id::cbs_data, vlc_player_t::metadata_listeners, vlc_player_t::metadata_listeners_lock, vlc_player_metadata_listener_id::node, vlc_player_metadata_listener_id::option, vlc_assert_unreachable, VLC_EGENERIC, vlc_list_append(), vlc_mutex_lock(), vlc_mutex_unlock(), vlc_player_AddMetadataLoudnessListener(), vlc_player_assert_locked(), VLC_PLAYER_METADATA_LOUDNESS_FULL, and VLC_PLAYER_METADATA_LOUDNESS_MOMENTARY.
void vlc_player_RemoveMetadataListener | ( | vlc_player_t * | player, |
vlc_player_metadata_listener_id * | listener_id | ||
) |
Remove a metadata listener.
player | player instance |
listener_id | listener id returned by vlc_player_AddMetadataListener() |
References vlc_player_t::metadata_listeners_lock, vlc_player_metadata_listener_id::node, vlc_player_metadata_listener_id::option, vlc_assert_unreachable, vlc_list_remove(), vlc_mutex_lock(), vlc_mutex_unlock(), vlc_player_assert_locked(), VLC_PLAYER_METADATA_LOUDNESS_FULL, VLC_PLAYER_METADATA_LOUDNESS_MOMENTARY, and vlc_player_RemoveMetadataLoudnessListener().