]> git.sesse.net Git - vlc/commitdiff
Revert "Add new API to libvlc for persistent equalizer settings."
authorRémi Denis-Courmont <remi@remlab.net>
Fri, 21 Sep 2012 10:54:20 +0000 (13:54 +0300)
committerRémi Denis-Courmont <remi@remlab.net>
Fri, 21 Sep 2012 10:54:55 +0000 (13:54 +0300)
This reverts commit 32596ea810730f1d995ed7cb023de64cf1da6047.

NEWS
include/vlc/libvlc_media_player.h
lib/audio.c
lib/libvlc.sym
lib/media_player.c
lib/media_player_internal.h
modules/audio_filter/equalizer.c
modules/audio_filter/equalizer_presets.h
src/audio_output/common.c

diff --git a/NEWS b/NEWS
index b940efc3c5f4e4ae9f46bb3e13a106f335d20382..59795fbeb71cf4af0642505190fd4abfe0816092 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -113,7 +113,6 @@ libVLC:
    to replace the deprecated libvlc_audio_output_device_count, libvlc_audio_output_device_longname
    and libvlc_audio_output_device_id
  * new libvlc_log_subscribe and libvlc_log_unsubscribe function to register logging callbacks
- * new audio equalizer API
 
 Removed modules:
  * portaudio audio output: use the native audio output instead
index a9b02bf30e7bb6c556018cd0694a73b7aa38f6f0..aefef020fc72234c19d1929e9994a80fe7ce6a2b 100644 (file)
@@ -120,13 +120,6 @@ typedef enum libvlc_navigate_mode_t
     libvlc_navigate_right
 } libvlc_navigate_mode_t;
 
-/**
- * Opaque equalizer handle.
- *
- * Equalizer settings can be applied to a media player.
- */
-typedef struct libvlc_equalizer_t libvlc_equalizer_t;
-
 /**
  * Create an empty Media Player object
  *
@@ -1633,166 +1626,6 @@ LIBVLC_API int64_t libvlc_audio_get_delay( libvlc_media_player_t *p_mi );
  */
 LIBVLC_API int libvlc_audio_set_delay( libvlc_media_player_t *p_mi, int64_t i_delay );
 
-/**
- * Get the number of equalizer presets.
- *
- * \return number of presets
- * \version LibVLC 2.1.0 or later
- */
-LIBVLC_API unsigned libvlc_audio_equalizer_get_preset_count( void );
-
-/**
- * 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.
- *
- * \param u_index index of the preset, counting from zero
- * \return preset name, or NULL if there is no such preset
- * \version LibVLC 2.1.0 or later
- */
-LIBVLC_API const char *libvlc_audio_equalizer_get_preset_name( unsigned u_index );
-
-/**
- * Get the number of distinct frequency bands for an equalizer.
- *
- * \return number of frequency bands
- * \version LibVLC 2.1.0 or later
- */
-LIBVLC_API unsigned libvlc_audio_equalizer_get_band_count( void );
-
-/**
- * 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.
- *
- * \param u_index index of the band, counting from zero
- * \return equalizer band frequency (Hz), or -1 if there is no such band
- * \version LibVLC 2.1.0 or later
- */
-LIBVLC_API float libvlc_audio_equalizer_get_band_frequency( unsigned u_index );
-
-/**
- * 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.
- *
- * \return opaque equalizer handle, or NULL on error
- * \version LibVLC 2.1.0 or later
- */
-LIBVLC_API libvlc_equalizer_t *libvlc_audio_equalizer_new( void );
-
-/**
- * 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.
- *
- * \param u_index index of the preset, counting from zero
- * \return opaque equalizer handle, or NULL on error
- * \version LibVLC 2.1.0 or later
- */
-LIBVLC_API libvlc_equalizer_t *libvlc_audio_equalizer_new_from_preset( unsigned u_index );
-
-/**
- * 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.
- *
- * \param p_equalizer opaque equalizer handle, or NULL
- * \version LibVLC 2.1.0 or later
- */
-LIBVLC_API void libvlc_audio_equalizer_release( libvlc_equalizer_t *p_equalizer );
-
-/**
- * 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().
- *
- * \param p_equalizer opaque equalizer handle
- * \param f_preamp preamp value (-20.0 to 20.0 Hz)
- * \return zero on success, -1 on error
- * \version LibVLC 2.1.0 or later
- */
-LIBVLC_API int libvlc_audio_equalizer_set_preamp( libvlc_equalizer_t *p_equalizer, float f_preamp );
-
-/**
- * Get the current pre-amplification value from an equalizer.
- *
- * \param p_equalizer opaque equalizer handle
- * \return preamp value (Hz)
- * \version LibVLC 2.1.0 or later
- */
-LIBVLC_API float libvlc_audio_equalizer_get_preamp( libvlc_equalizer_t *p_equalizer );
-
-/**
- * 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().
- *
- * \param p_equalizer opaque equalizer handle
- * \param f_amp amplification value (-20.0 to 20.0 Hz)
- * \param u_band index, counting from zero, of the frequency band to set
- * \return zero on success, -1 on error
- * \version LibVLC 2.1.0 or later
- */
-LIBVLC_API int libvlc_audio_equalizer_set_amp_at_index( libvlc_equalizer_t *p_equalizer, float f_amp, unsigned u_band );
-
-/**
- * Get the amplification value for a particular equalizer frequency band.
- *
- * \param p_equalizer opaque equalizer handle
- * \param u_band index, counting from zero, of the frequency band to get
- * \return amplification value (Hz); zero if there is no such frequency band
- * \version LibVLC 2.1.0 or later
- */
-LIBVLC_API float libvlc_audio_equalizer_get_amp_at_index( libvlc_equalizer_t *p_equalizer, unsigned u_band );
-
-/**
- * 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.
- *
- * \param p_mi opaque media player handle
- * \param p_equalizer opaque equalizer handle, or NULL to disable the equalizer for this media player
- * \return zero on success, -1 on error
- * \version LibVLC 2.1.0 or later
- */
-LIBVLC_API int libvlc_media_player_set_equalizer( libvlc_media_player_t *p_mi, libvlc_equalizer_t *p_equalizer );
-
 /** @} audio */
 
 /** @} media_player */
index dfe93547ce74cb0f486c8d282619506744bc043a..5a5ebd380b4f479b7edc35b56ff8b3308e6f2e79 100644 (file)
@@ -449,152 +449,3 @@ int libvlc_audio_set_delay( libvlc_media_player_t *p_mi, int64_t i_delay )
     }
     return ret;
 }
-
-/*****************************************************************************
- * libvlc_audio_equalizer_get_preset_count : Get the number of equalizer presets
- *****************************************************************************/
-unsigned libvlc_audio_equalizer_get_preset_count( void )
-{
-    return NB_PRESETS;
-}
-
-/*****************************************************************************
- * libvlc_audio_equalizer_get_preset_name : Get the name for a preset
- *****************************************************************************/
-const char *libvlc_audio_equalizer_get_preset_name( unsigned u_index )
-{
-    if ( u_index >= NB_PRESETS )
-        return NULL;
-
-    return preset_list_text[ u_index ];
-}
-
-/*****************************************************************************
- * libvlc_audio_equalizer_get_band_count : Get the number of equalizer frequency bands
- *****************************************************************************/
-unsigned libvlc_audio_equalizer_get_band_count( void )
-{
-    return EQZ_BANDS_MAX;
-}
-
-/*****************************************************************************
- * libvlc_audio_equalizer_get_band_frequency : Get the frequency for a band
- *****************************************************************************/
-float libvlc_audio_equalizer_get_band_frequency( unsigned u_index )
-{
-    if ( u_index >= EQZ_BANDS_MAX )
-        return -1.f;
-
-    return f_vlc_frequency_table_10b[ u_index ];
-}
-
-/*****************************************************************************
- * libvlc_audio_equalizer_new : Create a new audio equalizer with zeroed values
- *****************************************************************************/
-libvlc_equalizer_t *libvlc_audio_equalizer_new( void )
-{
-    libvlc_equalizer_t *p_equalizer;
-
-    p_equalizer = malloc( sizeof( *p_equalizer ) );
-    if ( unlikely( p_equalizer == NULL ) )
-        return NULL;
-
-    p_equalizer->f_preamp = 0.f;
-
-    for ( unsigned i = 0; i < EQZ_BANDS_MAX; i++ )
-        p_equalizer->f_amp[ i ] = 0.f;
-
-    return p_equalizer;
-}
-
-/*****************************************************************************
- * libvlc_audio_equalizer_new_from_preset : Create a new audio equalizer based on a preset
- *****************************************************************************/
-libvlc_equalizer_t *libvlc_audio_equalizer_new_from_preset( unsigned u_index )
-{
-    libvlc_equalizer_t *p_equalizer;
-
-    if ( u_index >= NB_PRESETS )
-        return NULL;
-
-    p_equalizer = malloc( sizeof( *p_equalizer ) );
-    if ( unlikely( p_equalizer == NULL ) )
-        return NULL;
-
-    p_equalizer->f_preamp = eqz_preset_10b[ u_index ].f_preamp;
-
-    for ( unsigned i = 0; i < EQZ_BANDS_MAX; i++ )
-        p_equalizer->f_amp[ i ] = eqz_preset_10b[ u_index ].f_amp[ i ];
-
-    return p_equalizer;
-}
-
-/*****************************************************************************
- * libvlc_audio_equalizer_release : Release a previously created equalizer
- *****************************************************************************/
-void libvlc_audio_equalizer_release( libvlc_equalizer_t *p_equalizer )
-{
-    free( p_equalizer );
-}
-
-/*****************************************************************************
- * libvlc_audio_equalizer_set_preamp : Set the preamp value for an equalizer
- *****************************************************************************/
-int libvlc_audio_equalizer_set_preamp( libvlc_equalizer_t *p_equalizer, float f_preamp )
-{
-    if ( !p_equalizer )
-        return -1;
-
-    if ( f_preamp < -20.0f )
-        f_preamp = -20.0f;
-    else if ( f_preamp > 20.0f )
-        f_preamp = 20.0f;
-
-    p_equalizer->f_preamp = f_preamp;
-    return 0;
-}
-
-/*****************************************************************************
- * libvlc_audio_equalizer_get_preamp : Get the preamp value for an equalizer
- *****************************************************************************/
-float libvlc_audio_equalizer_get_preamp( libvlc_equalizer_t *p_equalizer )
-{
-    if ( !p_equalizer )
-        return 0.f;
-
-    return p_equalizer->f_preamp;
-}
-
-/*****************************************************************************
- * libvlc_audio_equalizer_set_amp_at_index : Set the amplification value for an equalizer band
- *****************************************************************************/
-int libvlc_audio_equalizer_set_amp_at_index( libvlc_equalizer_t *p_equalizer, float f_amp, unsigned u_band )
-{
-    if ( !p_equalizer )
-        return -1;
-
-    if ( u_band >= EQZ_BANDS_MAX )
-        return -1;
-
-    if ( f_amp < -20.0f )
-        f_amp = -20.0f;
-    else if ( f_amp > 20.0f )
-        f_amp = 20.0f;
-
-    p_equalizer->f_amp[ u_band ] = f_amp;
-    return 0;
-}
-
-/*****************************************************************************
- * libvlc_audio_equalizer_get_amp_at_index : Get the amplification value for an equalizer band
- *****************************************************************************/
-float libvlc_audio_equalizer_get_amp_at_index( libvlc_equalizer_t *p_equalizer, unsigned u_band )
-{
-    if ( !p_equalizer )
-        return 0.f;
-
-    if ( u_band >= EQZ_BANDS_MAX )
-        return 0.f;
-
-    return p_equalizer->f_amp[ u_band ];
-}
index 7c1874f548efc352c86d9df1e182cf846a2fc2a3..42dad5cf9fbe8889619fc9624d810f1e7c1e419a 100644 (file)
@@ -3,17 +3,6 @@ libvlc_clearerr
 libvlc_printerr
 libvlc_vprinterr
 libvlc_add_intf
-libvlc_audio_equalizer_get_amp_at_index
-libvlc_audio_equalizer_get_band_count
-libvlc_audio_equalizer_get_band_frequency
-libvlc_audio_equalizer_get_preamp
-libvlc_audio_equalizer_get_preset_count
-libvlc_audio_equalizer_get_preset_name
-libvlc_audio_equalizer_new
-libvlc_audio_equalizer_new_from_preset
-libvlc_audio_equalizer_release
-libvlc_audio_equalizer_set_amp_at_index
-libvlc_audio_equalizer_set_preamp
 libvlc_audio_output_device_count
 libvlc_audio_output_device_id
 libvlc_audio_output_device_list_get
@@ -161,7 +150,6 @@ libvlc_media_player_release
 libvlc_media_player_retain
 libvlc_media_player_set_agl
 libvlc_media_player_set_chapter
-libvlc_media_player_set_equalizer
 libvlc_media_player_set_hwnd
 libvlc_media_player_set_media
 libvlc_media_player_set_nsobject
index b9b2a1108f4988c0e1314ae2b4c62405fb7b9ec7..a41b8c7cc764a424456a967277089999735e13c2 100644 (file)
@@ -34,7 +34,6 @@
 #include <vlc_input.h>
 #include <vlc_vout.h>
 #include <vlc_keys.h>
-#include <vlc_aout_intf.h>
 
 #include "libvlc_internal.h"
 #include "media_internal.h" // libvlc_media_set_state()
@@ -483,9 +482,6 @@ libvlc_media_player_new( libvlc_instance_t *instance )
     var_Create (mp, "amem-rate", VLC_VAR_INTEGER | VLC_VAR_DOINHERIT);
     var_Create (mp, "amem-channels", VLC_VAR_INTEGER | VLC_VAR_DOINHERIT);
 
-    var_Create (mp, "equalizer-preamp", VLC_VAR_FLOAT);
-    var_Create (mp, "equalizer-bands", VLC_VAR_STRING);
-
     mp->p_md = NULL;
     mp->state = libvlc_NothingSpecial;
     mp->p_libvlc_instance = instance;
@@ -750,10 +746,6 @@ int libvlc_media_player_play( libvlc_media_player_t *p_mi )
     }
     p_mi->input.p_thread = p_input_thread;
     unlock_input(p_mi);
-
-    if( strlen( var_GetString( p_mi, "equalizer-bands" ) ) > 0 )
-        aout_EnableFilter( p_mi, "equalizer", true );
-
     return 0;
 }
 
@@ -1417,33 +1409,3 @@ void libvlc_media_player_next_frame( libvlc_media_player_t *p_mi )
         vlc_object_release( p_input_thread );
     }
 }
-
-int libvlc_media_player_set_equalizer( libvlc_media_player_t *p_mi, libvlc_equalizer_t *p_equalizer )
-{
-    if ( !p_equalizer )
-    {
-        aout_EnableFilter( p_mi, "equalizer", false );
-        var_SetString( p_mi, "equalizer-bands", NULL );
-        return 0;
-    }
-
-    var_SetFloat( p_mi, "equalizer-preamp", p_equalizer->f_preamp );
-
-    char *psz_bands = NULL;
-    for ( int i = 0; i < EQZ_BANDS_MAX; i++ )
-    {
-        char *psz;
-        if ( asprintf( &psz, "%s %.07f", psz_bands ? psz_bands : "", p_equalizer->f_amp[i] ) == -1 )
-        {
-            free( psz_bands );
-            return -1;
-        }
-        free( psz_bands );
-        psz_bands = psz;
-    }
-    var_SetString( p_mi, "equalizer-bands", psz_bands );
-    free( psz_bands );
-
-    aout_EnableFilter( p_mi, "equalizer", true );
-    return 0;
-}
index 27fbf1ff9185e5d4665e91363de08916d0d125fa..185f183e9bd3ce70ea3fb6744e0eb79c4780d8da 100644 (file)
@@ -34,8 +34,6 @@
 #include <vlc/libvlc_media.h>
 #include <vlc_input.h>
 
-#include "../modules/audio_filter/equalizer_presets.h"
-
 struct libvlc_media_player_t
 {
     VLC_COMMON_MEMBERS
@@ -64,13 +62,4 @@ libvlc_track_description_t * libvlc_get_track_description(
         libvlc_media_player_t *p_mi,
         const char *psz_variable );
 
-/**
- * Internal equalizer structure.
- */
-struct libvlc_equalizer_t
-{
-    float f_preamp;
-    float f_amp[EQZ_BANDS_MAX];
-};
-
 #endif
index c4226aa3499406074e8cfe2e932812a37ee94e0c..41a89eba680523bc1588436151bf924c32e7f9ed 100644 (file)
@@ -232,6 +232,17 @@ typedef struct
 
 } eqz_config_t;
 
+/* The frequency tables */
+static const float f_vlc_frequency_table_10b[EQZ_BANDS_MAX] =
+{
+    60, 170, 310, 600, 1000, 3000, 6000, 12000, 14000, 16000,
+};
+
+static const float f_iso_frequency_table_10b[EQZ_BANDS_MAX] =
+{
+    31.25, 62.5, 125, 250, 500, 1000, 2000, 4000, 8000, 16000,
+};
+
 /* Equalizer coefficient calculation function based on equ-xmms */
 static void EqzCoeffs( int i_rate, float f_octave_percent,
                        bool b_use_vlc_freqs,
index f0830ad3c864840dd9d2e47e12efd251545e2186..0c0c81215b776d1d5ab494c6f7a2f0327d1ee19b 100644 (file)
@@ -21,9 +21,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
  *****************************************************************************/
 
-#ifndef _EQUALIZER_PRESETS_H
-#define _EQUALIZER_PRESETS_H 1
-
 /*****************************************************************************
  * Equalizer presets
  *****************************************************************************/
 
 #define EQZ_BANDS_MAX 10
 
-/* The frequency tables */
-static const float f_vlc_frequency_table_10b[EQZ_BANDS_MAX] =
-{
-    60, 170, 310, 600, 1000, 3000, 6000, 12000, 14000, 16000,
-};
-
-static const float f_iso_frequency_table_10b[EQZ_BANDS_MAX] =
-{
-    31.25, 62.5, 125, 250, 500, 1000, 2000, 4000, 8000, 16000,
-};
-
 #define NB_PRESETS 18
 static const char *const preset_list[NB_PRESETS] = {
     "flat", "classical", "club", "dance", "fullbass", "fullbasstreble",
@@ -146,5 +132,3 @@ static const eqz_preset_t eqz_preset_10b[NB_PRESETS] =
         { 8, 5.6, -1.11022e-15, -5.6, -4.8, -1.11022e-15, 8, 9.6, 9.6, 8.8 }
     },
 };
-
-#endif
index 949d3b5e92e41e02df08de698bef8542bf179851..c4775c0d05d355c459c76b97bb964827658a07f5 100644 (file)
@@ -177,15 +177,6 @@ audio_output_t *aout_New( vlc_object_t * p_parent )
                             &val, &text);
         }
 
-    if (var_Type (p_parent, "equalizer-bands"))
-    {
-        var_Create (aout, "equalizer-preamp", VLC_VAR_FLOAT | VLC_VAR_DOINHERIT);
-        var_Create (aout, "equalizer-bands", VLC_VAR_STRING | VLC_VAR_DOINHERIT);
-
-        var_AddCallback (p_parent, "equalizer-preamp", var_Copy, aout);
-        var_AddCallback (p_parent, "equalizer-bands", var_Copy, aout);
-    }
-
     return aout;
 }
 
@@ -199,13 +190,6 @@ void aout_Destroy (audio_output_t *aout)
     var_DelCallback (aout, "mute", var_Copy, aout->p_parent);
     var_SetFloat (aout, "volume", -1.f);
     var_DelCallback (aout, "volume", var_Copy, aout->p_parent);
-
-    if (var_Type (aout->p_parent, "equalizer-bands"))
-    {
-        var_DelCallback (aout->p_parent, "equalizer-preamp", var_Copy, aout);
-        var_DelCallback (aout->p_parent, "equalizer-bands", var_Copy, aout);
-    }
-
     vlc_object_release (aout);
 }