[vlc-devel] libvlc API: Add equalizer to audio.c
Pierre d'Herbemont
pdherbemont at gmail.com
Tue Jul 28 18:42:22 CEST 2009
On Jul 31, 2009, at 5:38 AM, Cyril MATHE wrote:
> libvlc_audio_equalizer_t
> {
> libvlc_instance_t p_instance;
> float f_preamp;
> float f_band[BAND_NUMBER]
> int i_band;
> bool b_enable;
> }
This should not be part of the API, this structure has to be opaque.
> libvlc_audio_equalizer_t * libvlc_audio_equalizer_new(p_instance)
> void libvlc_audio_equalizer_set_preset( libvlc_audio_equalizer*, int
> i_presetID)
I would prefer to have the equalizer to be create as a copy of a preset.
ie
equalizer = equalizer_new_from_preset_name("jazz", instance);
equalizer_set_amplification_at_index(equalizer, 0.1, 0);
media_player_set_equalizer(media_player, equalizer);
// You are now using a modified version of the "jazz" equalizer when
playing audio in the media_player instance.
>
> bool libvlc_audio_equalizer_get_enable(libvlc_audio_equalizer*)
> void libvlc_audio_equalizer_set_enable(libvlc_audio_equalizer*, bool
> b_enable)
This shouldn't be needed. The equalizer should be enabled as soon as
media_player_set_equalizer(equlizer);
is called.
I would say:
media_player_set_equalizer(NULL);
Which could be equivalent to:
media_player_set_equalizer(Libvlc_DisabledEqualizer);
to disable it from a specified instance.
>
> void libvlc_media_player_get_equalizer(libvlc_audio_equalizer*)
>
> void libvlc_media_player_set_equalizer(libvlc_audio_equalizer*)
You need to take a libvlc_media_player_t as the first parameter.
Pierre.
More information about the vlc-devel
mailing list