VLC 4.0.0-dev
|
Typedefs | |
typedef enum libvlc_audio_output_stereomode_t | libvlc_audio_output_stereomode_t |
Audio stereo modes. | |
typedef enum libvlc_audio_output_mixmode_t | libvlc_audio_output_mixmode_t |
Audio mix modes. | |
typedef enum libvlc_media_player_role | libvlc_media_player_role_t |
Media player roles. | |
Enumerations | |
enum | libvlc_audio_output_stereomode_t { libvlc_AudioStereoMode_Unset = 0 , libvlc_AudioStereoMode_Stereo = 1 , libvlc_AudioStereoMode_RStereo = 2 , libvlc_AudioStereoMode_Left = 3 , libvlc_AudioStereoMode_Right = 4 , libvlc_AudioStereoMode_Dolbys = 5 , libvlc_AudioStereoMode_Mono = 7 } |
Audio stereo modes. More... | |
enum | libvlc_audio_output_mixmode_t { libvlc_AudioMixMode_Unset = 0 , libvlc_AudioMixMode_Stereo = 1 , libvlc_AudioMixMode_Binaural = 2 , libvlc_AudioMixMode_4_0 = 3 , libvlc_AudioMixMode_5_1 = 4 , libvlc_AudioMixMode_7_1 = 5 } |
Audio mix modes. More... | |
enum | libvlc_media_player_role { libvlc_role_None = 0 , libvlc_role_Music , libvlc_role_Video , libvlc_role_Communication , libvlc_role_Game , libvlc_role_Notification , libvlc_role_Animation , libvlc_role_Production , libvlc_role_Accessibility } |
Media player roles. More... | |
Functions | |
LIBVLC_API libvlc_audio_output_t * | libvlc_audio_output_list_get (libvlc_instance_t *p_instance) |
Gets the list of available audio output modules. | |
LIBVLC_API void | libvlc_audio_output_list_release (libvlc_audio_output_t *p_list) |
Frees the list of available audio output modules. | |
LIBVLC_API int | libvlc_audio_output_set (libvlc_media_player_t *p_mi, const char *psz_name) |
Selects an audio output module. | |
LIBVLC_API libvlc_audio_output_device_t * | libvlc_audio_output_device_enum (libvlc_media_player_t *mp) |
Gets a list of potential audio output devices. | |
LIBVLC_API void | libvlc_audio_output_device_list_release (libvlc_audio_output_device_t *p_list) |
Frees a list of available audio output devices. | |
LIBVLC_API int | libvlc_audio_output_device_set (libvlc_media_player_t *mp, const char *device_id) |
Configures an explicit audio output device. | |
LIBVLC_API char * | libvlc_audio_output_device_get (libvlc_media_player_t *mp) |
Get the current audio output device identifier. | |
LIBVLC_API void | libvlc_audio_toggle_mute (libvlc_media_player_t *p_mi) |
Toggle mute status. | |
LIBVLC_API int | libvlc_audio_get_mute (libvlc_media_player_t *p_mi) |
Get current mute status. | |
LIBVLC_API void | libvlc_audio_set_mute (libvlc_media_player_t *p_mi, int status) |
Set mute status. | |
LIBVLC_API int | libvlc_audio_get_volume (libvlc_media_player_t *p_mi) |
Get current software audio volume. | |
LIBVLC_API int | libvlc_audio_set_volume (libvlc_media_player_t *p_mi, int i_volume) |
Set current software audio volume. | |
LIBVLC_API libvlc_audio_output_stereomode_t | libvlc_audio_get_stereomode (libvlc_media_player_t *p_mi) |
Get current audio stereo-mode. | |
LIBVLC_API int | libvlc_audio_set_stereomode (libvlc_media_player_t *p_mi, libvlc_audio_output_stereomode_t mode) |
Set current audio stereo-mode. | |
LIBVLC_API libvlc_audio_output_mixmode_t | libvlc_audio_get_mixmode (libvlc_media_player_t *p_mi) |
Get current audio mix-mode. | |
LIBVLC_API int | libvlc_audio_set_mixmode (libvlc_media_player_t *p_mi, libvlc_audio_output_mixmode_t mode) |
Set current audio mix-mode. | |
LIBVLC_API int64_t | libvlc_audio_get_delay (libvlc_media_player_t *p_mi) |
Get current audio delay. | |
LIBVLC_API int | libvlc_audio_set_delay (libvlc_media_player_t *p_mi, int64_t i_delay) |
Set current audio delay. | |
LIBVLC_API unsigned | libvlc_audio_equalizer_get_preset_count (void) |
Get the number of equalizer presets. | |
LIBVLC_API const char * | libvlc_audio_equalizer_get_preset_name (unsigned u_index) |
Get the name of a particular equalizer preset. | |
LIBVLC_API unsigned | libvlc_audio_equalizer_get_band_count (void) |
Get the number of distinct frequency bands for an equalizer. | |
LIBVLC_API float | libvlc_audio_equalizer_get_band_frequency (unsigned u_index) |
Get a particular equalizer band frequency. | |
LIBVLC_API libvlc_equalizer_t * | libvlc_audio_equalizer_new (void) |
Create a new default equalizer, with all frequency values zeroed. | |
LIBVLC_API libvlc_equalizer_t * | libvlc_audio_equalizer_new_from_preset (unsigned u_index) |
Create a new equalizer, with initial frequency values copied from an existing preset. | |
LIBVLC_API void | libvlc_audio_equalizer_release (libvlc_equalizer_t *p_equalizer) |
Release a previously created equalizer instance. | |
LIBVLC_API int | libvlc_audio_equalizer_set_preamp (libvlc_equalizer_t *p_equalizer, float f_preamp) |
Set a new pre-amplification value for an equalizer. | |
LIBVLC_API float | libvlc_audio_equalizer_get_preamp (libvlc_equalizer_t *p_equalizer) |
Get the current pre-amplification value from an equalizer. | |
LIBVLC_API int | libvlc_audio_equalizer_set_amp_at_index (libvlc_equalizer_t *p_equalizer, float f_amp, unsigned u_band) |
Set a new amplification value for a particular equalizer frequency band. | |
LIBVLC_API float | libvlc_audio_equalizer_get_amp_at_index (libvlc_equalizer_t *p_equalizer, unsigned u_band) |
Get the amplification value for a particular equalizer frequency band. | |
LIBVLC_API int | libvlc_media_player_set_equalizer (libvlc_media_player_t *p_mi, libvlc_equalizer_t *p_equalizer) |
Apply new equalizer settings to a media player. | |
LIBVLC_API int | libvlc_media_player_get_role (libvlc_media_player_t *p_mi) |
Gets the media role. | |
LIBVLC_API int | libvlc_media_player_set_role (libvlc_media_player_t *p_mi, unsigned role) |
Sets the media role. | |
LIBVLC_API void | libvlc_media_player_record (libvlc_media_player_t *p_mi, bool enable, const char *dir_path) |
Start/stop recording. | |
Audio mix modes.
Audio stereo modes.
typedef enum libvlc_media_player_role libvlc_media_player_role_t |
Media player roles.
See libvlc_media_player_set_role()
LIBVLC_API float libvlc_audio_equalizer_get_amp_at_index | ( | libvlc_equalizer_t * | p_equalizer, |
unsigned | u_band | ||
) |
Get the amplification value for a particular equalizer frequency band.
p_equalizer | valid equalizer handle, must not be NULL |
u_band | index, counting from zero, of the frequency band to get |
LIBVLC_API unsigned libvlc_audio_equalizer_get_band_count | ( | void | ) |
Get the number of distinct frequency bands for an equalizer.
LIBVLC_API float libvlc_audio_equalizer_get_band_frequency | ( | unsigned | u_index | ) |
Get a particular equalizer band frequency.
This value can be used, for example, to create a label for an equalizer band control in a user interface.
u_index | index of the band, counting from zero |
LIBVLC_API float libvlc_audio_equalizer_get_preamp | ( | libvlc_equalizer_t * | p_equalizer | ) |
Get the current pre-amplification value from an equalizer.
p_equalizer | valid equalizer handle, must not be NULL |
LIBVLC_API unsigned libvlc_audio_equalizer_get_preset_count | ( | void | ) |
Get the number of equalizer presets.
LIBVLC_API const char * libvlc_audio_equalizer_get_preset_name | ( | unsigned | u_index | ) |
Get the name of a particular equalizer preset.
This name can be used, for example, to prepare a preset label or menu in a user interface.
u_index | index of the preset, counting from zero |
LIBVLC_API libvlc_equalizer_t * libvlc_audio_equalizer_new | ( | void | ) |
Create a new default equalizer, with all frequency values zeroed.
The new equalizer can subsequently be applied to a media player by invoking libvlc_media_player_set_equalizer().
The returned handle should be freed via libvlc_audio_equalizer_release() when it is no longer needed.
LIBVLC_API libvlc_equalizer_t * libvlc_audio_equalizer_new_from_preset | ( | unsigned | u_index | ) |
Create a new equalizer, with initial frequency values copied from an existing preset.
The new equalizer can subsequently be applied to a media player by invoking libvlc_media_player_set_equalizer().
The returned handle should be freed via libvlc_audio_equalizer_release() when it is no longer needed.
u_index | index of the preset, counting from zero |
LIBVLC_API void libvlc_audio_equalizer_release | ( | libvlc_equalizer_t * | p_equalizer | ) |
Release a previously created equalizer instance.
The equalizer was previously created by using libvlc_audio_equalizer_new() or libvlc_audio_equalizer_new_from_preset().
It is safe to invoke this method with a NULL p_equalizer parameter for no effect.
p_equalizer | opaque equalizer handle, or NULL |
LIBVLC_API int libvlc_audio_equalizer_set_amp_at_index | ( | libvlc_equalizer_t * | p_equalizer, |
float | f_amp, | ||
unsigned | u_band | ||
) |
Set a new amplification value for a particular equalizer frequency band.
The new equalizer settings are subsequently applied to a media player by invoking libvlc_media_player_set_equalizer().
The supplied amplification value will be clamped to the -20.0 to +20.0 range.
p_equalizer | valid equalizer handle, must not be NULL |
f_amp | amplification value (-20.0 to 20.0 Hz) |
u_band | index, counting from zero, of the frequency band to set |
LIBVLC_API int libvlc_audio_equalizer_set_preamp | ( | libvlc_equalizer_t * | p_equalizer, |
float | f_preamp | ||
) |
Set a new pre-amplification value for an equalizer.
The new equalizer settings are subsequently applied to a media player by invoking libvlc_media_player_set_equalizer().
The supplied amplification value will be clamped to the -20.0 to +20.0 range.
p_equalizer | valid equalizer handle, must not be NULL |
f_preamp | preamp value (-20.0 to 20.0 Hz) |
LIBVLC_API int64_t libvlc_audio_get_delay | ( | libvlc_media_player_t * | p_mi | ) |
Get current audio delay.
p_mi | media player |
LIBVLC_API libvlc_audio_output_mixmode_t libvlc_audio_get_mixmode | ( | libvlc_media_player_t * | p_mi | ) |
Get current audio mix-mode.
p_mi | media player |
LIBVLC_API int libvlc_audio_get_mute | ( | libvlc_media_player_t * | p_mi | ) |
Get current mute status.
p_mi | media player |
LIBVLC_API libvlc_audio_output_stereomode_t libvlc_audio_get_stereomode | ( | libvlc_media_player_t * | p_mi | ) |
Get current audio stereo-mode.
p_mi | media player |
LIBVLC_API int libvlc_audio_get_volume | ( | libvlc_media_player_t * | p_mi | ) |
Get current software audio volume.
p_mi | media player |
LIBVLC_API libvlc_audio_output_device_t * libvlc_audio_output_device_enum | ( | libvlc_media_player_t * | mp | ) |
Gets a list of potential audio output devices.
See also libvlc_audio_output_device_set().
mp | media player |
LIBVLC_API char * libvlc_audio_output_device_get | ( | libvlc_media_player_t * | mp | ) |
Get the current audio output device identifier.
This complements libvlc_audio_output_device_set().
It is possible that the selected audio output device changes (an external change) without a call to libvlc_audio_output_device_set. That may make this method unsuitable to use if a LibVLC application is attempting to track dynamic audio device changes as they happen.
mp | media player |
LIBVLC_API void libvlc_audio_output_device_list_release | ( | libvlc_audio_output_device_t * | p_list | ) |
Frees a list of available audio output devices.
p_list | list with audio outputs for release |
LIBVLC_API int libvlc_audio_output_device_set | ( | libvlc_media_player_t * | mp, |
const char * | device_id | ||
) |
Configures an explicit audio output device.
A list of adequate potential device strings can be obtained with libvlc_audio_output_device_enum().
Some audio output modules require further parameters (e.g. a channels map in the case of ALSA).
mp | media player |
device_id | device identifier string (see libvlc_audio_output_device_t::psz_device) |
LIBVLC_API libvlc_audio_output_t * libvlc_audio_output_list_get | ( | libvlc_instance_t * | p_instance | ) |
Gets the list of available audio output modules.
p_instance | libvlc instance |
LIBVLC_API void libvlc_audio_output_list_release | ( | libvlc_audio_output_t * | p_list | ) |
Frees the list of available audio output modules.
p_list | list with audio outputs for release |
LIBVLC_API int libvlc_audio_output_set | ( | libvlc_media_player_t * | p_mi, |
const char * | psz_name | ||
) |
Selects an audio output module.
p_mi | media player |
psz_name | name of audio output, use psz_name of |
LIBVLC_API int libvlc_audio_set_delay | ( | libvlc_media_player_t * | p_mi, |
int64_t | i_delay | ||
) |
Set current audio delay.
The audio delay will be reset to zero each time the media changes.
p_mi | media player |
i_delay | the audio delay (microseconds) |
LIBVLC_API int libvlc_audio_set_mixmode | ( | libvlc_media_player_t * | p_mi, |
libvlc_audio_output_mixmode_t | mode | ||
) |
Set current audio mix-mode.
By default (libvlc_AudioMixMode_Unset), the audio output will keep its original channel configuration (play stereo as stereo, or 5.1 as 5.1). Yet, the OS and Audio API might refuse a channel configuration and asks VLC to adapt (Stereo played as 5.1 or vice-versa).
This function allows to force a channel configuration, it will only work if the OS and Audio API accept this configuration (otherwise, it won't have any effects). Here are some examples:
p_mi | media player |
mode | the audio mix-mode, |
LIBVLC_API void libvlc_audio_set_mute | ( | libvlc_media_player_t * | p_mi, |
int | status | ||
) |
Set mute status.
p_mi | media player |
status | If status is true then mute, otherwise unmute |
LIBVLC_API int libvlc_audio_set_stereomode | ( | libvlc_media_player_t * | p_mi, |
libvlc_audio_output_stereomode_t | mode | ||
) |
Set current audio stereo-mode.
p_mi | media player |
mode | the audio stereo-mode, |
LIBVLC_API int libvlc_audio_set_volume | ( | libvlc_media_player_t * | p_mi, |
int | i_volume | ||
) |
Set current software audio volume.
p_mi | media player |
i_volume | the volume in percents (0 = mute, 100 = 0dB) |
LIBVLC_API void libvlc_audio_toggle_mute | ( | libvlc_media_player_t * | p_mi | ) |
Toggle mute status.
p_mi | media player |
LIBVLC_API int libvlc_media_player_get_role | ( | libvlc_media_player_t * | p_mi | ) |
Gets the media role.
p_mi | media player |
LIBVLC_API void libvlc_media_player_record | ( | libvlc_media_player_t * | p_mi, |
bool | enable, | ||
const char * | dir_path | ||
) |
Start/stop recording.
p_mi | media player |
enable | true to start recording, false to stop |
dir_path | path of the recording directory or NULL (use default path), has only an effect when first enabling recording. |
LIBVLC_API int libvlc_media_player_set_equalizer | ( | libvlc_media_player_t * | p_mi, |
libvlc_equalizer_t * | p_equalizer | ||
) |
Apply new equalizer settings to a media player.
The equalizer is first created by invoking libvlc_audio_equalizer_new() or libvlc_audio_equalizer_new_from_preset().
It is possible to apply new equalizer settings to a media player whether the media player is currently playing media or not.
Invoking this method will immediately apply the new equalizer settings to the audio output of the currently playing media if there is any.
If there is no currently playing media, the new equalizer settings will be applied later if and when new media is played.
Equalizer settings will automatically be applied to subsequently played media.
To disable the equalizer for a media player invoke this method passing NULL for the p_equalizer parameter.
The media player does not keep a reference to the supplied equalizer so it is safe for an application to release the equalizer reference any time after this method returns.
p_mi | opaque media player handle |
p_equalizer | opaque equalizer handle, or NULL to disable the equalizer for this media player |
LIBVLC_API int libvlc_media_player_set_role | ( | libvlc_media_player_t * | p_mi, |
unsigned | role | ||
) |
Sets the media role.
p_mi | media player |
role | the media player role (libvlc_media_player_role_t) |