Browse Source

aout: introduce aout_Hold() and aout_Release()

Type-safe replacements for vlc_object_hold() and vlc_object_release()
(as discussed during the last workshop).
pull/85/head
Rémi Denis-Courmont 7 years ago
parent
commit
d2c1bc4433
  1. 4
      include/vlc_input.h
  2. 13
      include/vlc_objects.h
  3. 2
      include/vlc_player.h
  4. 18
      lib/audio.c
  5. 2
      lib/media_player.c
  6. 2
      modules/control/hotkeys.c
  7. 4
      modules/control/oldrc.c
  8. 8
      modules/gui/macosx/menus/VLCMainMenu.m
  9. 26
      modules/gui/macosx/panels/VLCAudioEffectsWindowController.m
  10. 16
      modules/gui/qt/components/extended_panels.cpp
  11. 4
      modules/gui/qt/input_manager.cpp
  12. 4
      modules/gui/qt/menus.cpp
  13. 2
      modules/gui/skins2/src/vlcproc.cpp
  14. 4
      modules/gui/skins2/vars/equalizer.cpp
  15. 20
      modules/lua/libs/equalizer.c
  16. 12
      modules/lua/libs/objects.c
  17. 2
      src/input/decoder.c
  18. 4
      src/input/input.c
  19. 14
      src/input/player.c
  20. 2
      src/input/resource.c
  21. 12
      src/playlist_legacy/aout.c
  22. 2
      src/text/strings.c

4
include/vlc_input.h

@ -705,7 +705,7 @@ static inline int input_UpdateViewpoint( input_thread_t *p_input,
* Return the audio output (if any) associated with an input.
* @param p_input an input thread
* @return NULL on error, or the audio output (which needs to be
* released with vlc_object_release()).
* released with aout_Release()).
*/
static inline audio_output_t *input_GetAout( input_thread_t *p_input )
{
@ -782,7 +782,7 @@ VLC_API void input_resource_Terminate( input_resource_t * );
/**
* \return the current audio output if any.
* Use vlc_object_release() to drop the reference.
* Use aout_Release() to drop the reference.
*/
VLC_API audio_output_t *input_resource_HoldAout( input_resource_t * );

13
include/vlc_objects.h

@ -197,6 +197,19 @@ static inline void vout_Release(vout_thread_t *vout)
vlc_object_release((vlc_object_t *)vout);
}
/* Here for backward compatibility. TODO: Move to <vlc_aout.h>! */
static inline audio_output_t *aout_Hold(audio_output_t *aout)
{
vlc_object_hold((vlc_object_t *)aout);
return aout;
}
static inline void aout_Release(audio_output_t *aout)
{
vlc_object_release((vlc_object_t *)aout);
}
/**
* @defgroup objres Object resources
*

2
include/vlc_player.h

@ -2449,7 +2449,7 @@ vlc_player_SetPauseOnCork(vlc_player_t *player, bool enabled);
/**
* Get the audio output
*
* @warning The returned pointer must be released with vlc_object_release().
* @warning The returned pointer must be released with aout_Release().
*
* @param player player instance
* @return a valid audio_output_t * or NULL (if there is no aouts)

18
lib/audio.c

@ -153,7 +153,7 @@ libvlc_audio_output_device_enum( libvlc_media_player_t *mp )
char **values, **texts;
int n = aout_DevicesList( aout, &values, &texts );
vlc_object_release( aout );
aout_Release(aout);
if( n < 0 )
goto err;
@ -256,7 +256,7 @@ void libvlc_audio_output_device_set( libvlc_media_player_t *mp,
return;
aout_DeviceSet( aout, devid );
vlc_object_release( aout );
aout_Release(aout);
}
char *libvlc_audio_output_device_get( libvlc_media_player_t *mp )
@ -267,7 +267,7 @@ char *libvlc_audio_output_device_get( libvlc_media_player_t *mp )
char *devid = aout_DeviceGet( aout );
vlc_object_release( aout );
aout_Release(aout);
return devid;
}
@ -287,7 +287,7 @@ int libvlc_audio_get_mute( libvlc_media_player_t *mp )
if( aout != NULL )
{
mute = aout_MuteGet( aout );
vlc_object_release( aout );
aout_Release(aout);
}
return mute;
}
@ -298,7 +298,7 @@ void libvlc_audio_set_mute( libvlc_media_player_t *mp, int mute )
if( aout != NULL )
{
mute = aout_MuteSet( aout, mute );
vlc_object_release( aout );
aout_Release(aout);
}
}
@ -310,7 +310,7 @@ int libvlc_audio_get_volume( libvlc_media_player_t *mp )
if( aout != NULL )
{
float vol = aout_VolumeGet( aout );
vlc_object_release( aout );
aout_Release(aout);
volume = lroundf( vol * 100.f );
}
return volume;
@ -330,7 +330,7 @@ int libvlc_audio_set_volume( libvlc_media_player_t *mp, int volume )
if( aout != NULL )
{
ret = aout_VolumeSet( aout, vol );
vlc_object_release( aout );
aout_Release(aout);
}
return ret;
}
@ -417,7 +417,7 @@ int libvlc_audio_get_channel( libvlc_media_player_t *mp )
return 0;
int val = var_GetInteger( p_aout, "stereo-mode" );
vlc_object_release( p_aout );
aout_Release(p_aout);
return val;
}
@ -437,7 +437,7 @@ int libvlc_audio_set_channel( libvlc_media_player_t *mp, int channel )
libvlc_printerr( "Audio channel out of range" );
ret = -1;
}
vlc_object_release( p_aout );
aout_Release(p_aout);
return ret;
}

2
lib/media_player.c

@ -2005,7 +2005,7 @@ int libvlc_media_player_set_equalizer( libvlc_media_player_t *p_mi, libvlc_equal
}
var_SetString( p_aout, "audio-filter", p_equalizer ? "equalizer" : "" );
vlc_object_release( p_aout );
aout_Release(p_aout);
}
return 0;

2
modules/control/hotkeys.c

@ -564,7 +564,7 @@ static int PutAction( intf_thread_t *p_intf, input_thread_t *p_input,
if( !aout_DeviceSet( p_aout, ids[idx] ) )
DisplayMessage( p_vout, _("Audio Device: %s"), names[idx] );
vlc_object_release( p_aout );
aout_Release(p_aout);
for( int i = 0; i < n; i++ )
{

4
modules/control/oldrc.c

@ -1643,7 +1643,7 @@ static int AudioDevice( vlc_object_t *obj, char const *cmd,
else
aout_DeviceSet( p_aout, cur.psz_string );
out:
vlc_object_release( p_aout );
aout_Release(p_aout);
(void) old; (void) dummy;
return VLC_SUCCESS;
}
@ -1688,7 +1688,7 @@ static int AudioChannel( vlc_object_t *obj, char const *cmd,
else
ret = var_SetInteger( p_aout, "stereo-mode", atoi( cur.psz_string ) );
out:
vlc_object_release( p_aout );
aout_Release(p_aout);
(void) old; (void) dummy;
return ret;
}

8
modules/gui/macosx/menus/VLCMainMenu.m

@ -579,7 +579,7 @@
[self setupVarMenuItem:_visual target: (vlc_object_t *)p_aout
var:"visual" selector: @selector(toggleVar:)];
vlc_object_release(p_aout);
aout_Release(p_aout);
}
vout_thread_t *p_vout = getVoutForActiveWindow();
@ -879,7 +879,7 @@
int n = aout_DevicesList(p_aout, &ids, &names);
if (n == -1) {
vlc_object_release(p_aout);
aout_Release(p_aout);
return;
}
@ -891,7 +891,7 @@
[_tmp setTarget:self];
[_tmp setTag:[[NSString stringWithFormat:@"%s", ids[x]] intValue]];
}
vlc_object_release(p_aout);
aout_Release(p_aout);
[[_audioDeviceMenu itemWithTag:[[NSString stringWithFormat:@"%s", currentDevice] intValue]] setState:NSOnState];
@ -924,7 +924,7 @@
if (returnValue != 0)
msg_Warn(getIntf(), "failed to set audio device %li", [sender tag]);
vlc_object_release(p_aout);
aout_Release(p_aout);
[self refreshAudioDeviceList];
}

26
modules/gui/macosx/panels/VLCAudioEffectsWindowController.m

@ -204,7 +204,7 @@
}
if (p_aout)
vlc_object_release(p_aout);
aout_Release(p_aout);
}
- (void)windowDidLoad
@ -618,7 +618,7 @@ static bool GetEqualizerStatus(intf_thread_t *p_custom_intf,
if (!psz_string)
psz_string = var_GetNonEmptyString(p_aout, "audio-filter");
vlc_object_release(p_aout);
aout_Release(p_aout);
if (!psz_string)
return false;
@ -658,7 +658,7 @@ static bool GetEqualizerStatus(intf_thread_t *p_custom_intf,
char *psz_preset_string = var_GetNonEmptyString(p_aout, "equalizer-preset");
currentPreset = toNSStr(psz_preset_string);
free(psz_preset_string);
vlc_object_release(p_aout);
aout_Release(p_aout);
}
NSUInteger currentPresetIndex = 0;
@ -759,7 +759,7 @@ static bool GetEqualizerStatus(intf_thread_t *p_custom_intf,
char const *psz_preset_values = [[self generatePresetString] UTF8String];
if (p_aout) {
var_SetString(p_aout, "equalizer-bands", psz_preset_values);
vlc_object_release(p_aout);
aout_Release(p_aout);
}
var_SetString(pl_Get(getIntf()), "equalizer-bands", psz_preset_values);
}
@ -778,7 +778,7 @@ static bool GetEqualizerStatus(intf_thread_t *p_custom_intf,
var_SetString(p_aout, "equalizer-bands", psz_eq_bands);
var_SetFloat(p_aout, "equalizer-preamp", f_eq_preamp);
var_SetString(p_aout, "equalizer-preset" , psz_eq_preset);
vlc_object_release(p_aout);
aout_Release(p_aout);
}
[_equalizerPreampSlider setFloatValue: f_eq_preamp];
@ -796,7 +796,7 @@ static bool GetEqualizerStatus(intf_thread_t *p_custom_intf,
audio_output_t *p_aout = getAout();
if (p_aout) {
var_SetFloat(p_aout, "equalizer-preamp", fPreamp);
vlc_object_release(p_aout);
aout_Release(p_aout);
}
var_SetFloat(pl_Get(getIntf()), "equalizer-preamp", fPreamp);
}
@ -808,7 +808,7 @@ static bool GetEqualizerStatus(intf_thread_t *p_custom_intf,
audio_output_t *p_aout = getAout();
if (p_aout) {
var_SetBool(p_aout, "equalizer-2pass", b_2p);
vlc_object_release(p_aout);
aout_Release(p_aout);
}
var_SetBool(pl_Get(getIntf()), "equalizer-2pass", b_2p);
@ -850,7 +850,7 @@ static bool GetEqualizerStatus(intf_thread_t *p_custom_intf,
audio_output_t *p_aout = getAout();
if (p_aout) {
var_SetString(p_aout, "equalizer-preset", psz_eq_preset);
vlc_object_release(p_aout);
aout_Release(p_aout);
}
var_SetString(pl_Get(getIntf()), "equalizer-preset", psz_eq_preset);
@ -949,7 +949,7 @@ static bool GetEqualizerStatus(intf_thread_t *p_custom_intf,
var_SetFloat(p_aout, "compressor-ratio", 8.000000);
var_SetFloat(p_aout, "compressor-knee", 2.500000);
var_SetFloat(p_aout, "compressor-makeup-gain", 7.000000);
vlc_object_release(p_aout);
aout_Release(p_aout);
}
[self resetCompressor];
}
@ -985,7 +985,7 @@ static bool GetEqualizerStatus(intf_thread_t *p_custom_intf,
audio_output_t *p_aout = getAout();
if (p_aout) {
var_SetFloat(p_aout, psz_property, f_value);
vlc_object_release(p_aout);
aout_Release(p_aout);
}
var_SetFloat(pl_Get(getIntf()), psz_property, f_value);
@ -1051,7 +1051,7 @@ static bool GetEqualizerStatus(intf_thread_t *p_custom_intf,
var_SetFloat(p_aout, "spatializer-wet", .4);
var_SetFloat(p_aout, "spatializer-dry", .5);
var_SetFloat(p_aout, "spatializer-damp", .5);
vlc_object_release(p_aout);
aout_Release(p_aout);
}
[self resetSpatializer];
}
@ -1083,7 +1083,7 @@ static bool GetEqualizerStatus(intf_thread_t *p_custom_intf,
audio_output_t *p_aout = getAout();
if (p_aout) {
var_SetFloat(p_aout, psz_property, f_value / 10.f);
vlc_object_release(p_aout);
aout_Release(p_aout);
}
var_SetFloat(pl_Get(getIntf()), psz_property, f_value / 10.f);
@ -1147,7 +1147,7 @@ static bool GetEqualizerStatus(intf_thread_t *p_custom_intf,
if (p_aout) {
var_SetFloat(p_aout, "norm-max-level", f_value);
vlc_object_release(p_aout);
aout_Release(p_aout);
}
var_SetFloat(pl_Get(getIntf()), "norm-max-level", f_value);

16
modules/gui/qt/components/extended_panels.cpp

@ -879,13 +879,13 @@ float FilterSliderData::initialValue()
{
if ( var_Type( p_aout, qtu(p_data->name) ) == 0 )
{
vlc_object_release( p_aout );
aout_Release(p_aout);
/* Not found, will try in config */
}
else
{
f = var_GetFloat( p_aout, qtu(p_data->name) );
vlc_object_release( p_aout );
aout_Release(p_aout);
return f;
}
}
@ -904,7 +904,7 @@ void FilterSliderData::onValueChanged( int i )
if ( p_aout )
{
var_SetFloat( p_aout, qtu(p_data->name), f );
vlc_object_release( p_aout );
aout_Release(p_aout);
}
writeToConfig();
}
@ -1025,7 +1025,7 @@ QStringList EqualizerSliderData::getBandsFromAout() const
free( psz_bands );
}
}
vlc_object_release( p_aout );
aout_Release(p_aout);
}
if ( bands.count() ) return bands;
@ -1066,7 +1066,7 @@ void EqualizerSliderData::onValueChanged( int i )
if ( p_aout )
{
var_SetString( p_aout, qtu(p_data->name), qtu(bands.join( " " )) );
vlc_object_release( p_aout );
aout_Release(p_aout);
}
writeToConfig();
}
@ -1228,7 +1228,7 @@ void Equalizer::build()
ui.eq2PassCheck->setChecked( var_InheritBool( p_aout, "equalizer-2pass" ) );
CONNECT( ui.eq2PassCheck, toggled(bool), this, enable2Pass(bool) );
if( p_aout )
vlc_object_release( p_aout );
aout_Release(p_aout);
}
void Equalizer::setCorePreset( int i_preset )
@ -1247,7 +1247,7 @@ void Equalizer::setCorePreset( int i_preset )
if( p_aout )
{
var_SetString( p_aout , "equalizer-preset" , preset_list[i_preset] );
vlc_object_release( p_aout );
aout_Release(p_aout);
}
emit configChanged( qfu( "equalizer-preset" ), QVariant( qfu( preset_list[i_preset] ) ) );
}
@ -1260,7 +1260,7 @@ void Equalizer::enable2Pass( bool b_enable )
if( p_aout )
{
var_SetBool( p_aout, "equalizer-2pass", b_enable );
vlc_object_release( p_aout );
aout_Release(p_aout);
}
emit configChanged( qfu( "equalizer-2pass" ), QVariant( b_enable ) );
}

4
modules/gui/qt/input_manager.cpp

@ -565,7 +565,7 @@ bool InputManager::hasVisualisation()
return false;
char *visual = var_InheritString( aout, "visual" );
vlc_object_release( aout );
aout_Release( aout );
if( !visual )
return false;
@ -1238,7 +1238,7 @@ void MainInputManager::menusUpdateAudio( const QString& data )
if( aout != NULL )
{
aout_DeviceSet( aout, qtu(data) );
vlc_object_release( aout );
aout_Release(aout);
}
}

4
modules/gui/qt/menus.cpp

@ -266,7 +266,7 @@ static int AudioAutoMenuBuilder( input_thread_t *p_input,
PUSH_VAR( "visual" );
if( p_object )
vlc_object_release( p_object );
aout_Release( p_object );
return VLC_SUCCESS;
}
@ -636,7 +636,7 @@ QMenu *VLCMenuBar::AudioMenu( intf_thread_t *p_intf, QMenu * current )
if( p_aout )
{
vlc_object_release( p_aout );
aout_Release(p_aout);
}
return Populate( current, varnames, objects );

2
modules/gui/skins2/src/vlcproc.cpp

@ -797,7 +797,7 @@ void VlcProc::init_equalizer()
pVarPreamp->set( (preamp + 20.0) / 40.0 );
if( pAout )
vlc_object_release( pAout);
aout_Release(pAout);
}
void VlcProc::setFullscreenVar( bool b_fullscreen )

4
modules/gui/skins2/vars/equalizer.cpp

@ -113,7 +113,7 @@ void EqualizerBands::onUpdate( Subject<VarPercent> &rBand, void *arg )
}
if( pAout )
vlc_object_release( pAout );
aout_Release(pAout);
}
@ -144,5 +144,5 @@ void EqualizerPreamp::set( float percentage, bool updateVLC )
}
if( pAout )
vlc_object_release( pAout );
aout_Release(pAout);
}

20
modules/lua/libs/equalizer.c

@ -67,13 +67,13 @@ static int vlclua_preamp_get( lua_State *L )
if( !psz_af || strstr ( psz_af, "equalizer" ) == NULL )
{
free( psz_af );
vlc_object_release( p_aout );
aout_Release(p_aout);
return 0;
}
free( psz_af );
lua_pushnumber( L, var_GetFloat( p_aout, "equalizer-preamp") );
vlc_object_release( p_aout );
aout_Release(p_aout);
return 1;
}
@ -92,13 +92,13 @@ static int vlclua_preamp_set( lua_State *L )
if( !psz_af || strstr ( psz_af, "equalizer" ) == NULL )
{
free( psz_af );
vlc_object_release( p_aout );
aout_Release(p_aout);
return 0;
}
free( psz_af );
var_SetFloat( p_aout, "equalizer-preamp", luaL_checknumber( L, 1 ) );
vlc_object_release( p_aout );
aout_Release(p_aout);
return 1;
}
@ -132,7 +132,7 @@ static int vlclua_equalizer_get( lua_State *L )
if( !psz_af || strstr ( psz_af, "equalizer" ) == NULL )
{
free( psz_af );
vlc_object_release( p_aout );
aout_Release(p_aout);
return 0;
}
free( psz_af );
@ -141,7 +141,7 @@ static int vlclua_equalizer_get( lua_State *L )
psz_bands_origin = psz_bands = var_GetNonEmptyString( p_aout, "equalizer-bands" );
if( !psz_bands )
{
vlc_object_release( p_aout );
aout_Release(p_aout);
return 0;
}
@ -175,7 +175,7 @@ static int vlclua_equalizer_get( lua_State *L )
uselocale (oldloc);
freelocale (loc);
}
vlc_object_release( p_aout );
aout_Release(p_aout);
return error ? 0 : 1;
}
@ -198,7 +198,7 @@ static int vlclua_equalizer_set( lua_State *L )
if( !psz_af || strstr ( psz_af, "equalizer" ) == NULL )
{
free( psz_af );
vlc_object_release( p_aout );
aout_Release(p_aout);
return 0;
}
free( psz_af );
@ -233,7 +233,7 @@ static int vlclua_equalizer_set( lua_State *L )
freelocale (loc);
}
free( bands );
vlc_object_release( p_aout );
aout_Release(p_aout);
return 0;
}
@ -259,7 +259,7 @@ static int vlclua_equalizer_setpreset( lua_State *L )
ret = 1;
}
free( psz_af );
vlc_object_release( p_aout );
aout_Release(p_aout);
return ret;
}

12
modules/lua/libs/objects.c

@ -140,6 +140,16 @@ static int vlclua_get_vout( lua_State *L )
lua_pushnil( L );
return 1;
}
static int vlclua_aout_release(lua_State *L)
{
vlc_object_t **pp = luaL_checkudata(L, 1, "vlc_object");
lua_pop(L, 1);
aout_Release((audio_output_t *)*pp);
return 0;
}
static int vlclua_get_aout( lua_State *L )
{
playlist_t *p_playlist = vlclua_get_playlist_internal( L );
@ -147,7 +157,7 @@ static int vlclua_get_aout( lua_State *L )
if( p_aout != NULL )
{
vlclua_push_vlc_object(L, (vlc_object_t *)p_aout,
vlclua_object_release);
vlclua_aout_release);
return 1;
}
lua_pushnil( L );

2
src/input/decoder.c

@ -2551,7 +2551,7 @@ void input_DecoderGetObjects( decoder_t *p_dec,
vout_Hold(p_owner->p_vout) : NULL;
if( pp_aout )
*pp_aout = p_dec->fmt_in.i_cat == AUDIO_ES && p_owner->p_aout ?
vlc_object_hold( p_owner->p_aout ) : NULL;
aout_Hold(p_owner->p_aout) : NULL;
vlc_mutex_unlock( &p_owner->lock );
}

4
src/input/input.c

@ -1762,7 +1762,7 @@ static void ViewpointApply( input_thread_t *p_input )
/* This variable can only be read from callbacks */
var_Change( p_aout, "viewpoint", VLC_VAR_SETVALUE,
(vlc_value_t) { .p_address = NULL } );
vlc_object_release( p_aout );
aout_Release(p_aout);
}
}
@ -1845,7 +1845,7 @@ static void ControlNav( input_thread_t *p_input, int i_type )
if( p_aout )
{
aout_VolumeUpdate( p_aout, vol_direction, NULL );
vlc_object_release( p_aout );
aout_Release(p_aout);
}
}
}

14
src/input/player.c

@ -3081,7 +3081,7 @@ vlc_player_aout_GetVolume(vlc_player_t *player)
if (!aout)
return -1.f;
float vol = aout_VolumeGet(aout);
vlc_object_release(aout);
aout_Release(aout);
return vol;
}
@ -3093,7 +3093,7 @@ vlc_player_aout_SetVolume(vlc_player_t *player, float volume)
if (!aout)
return -1;
int ret = aout_VolumeSet(aout, volume);
vlc_object_release(aout);
aout_Release(aout);
return ret;
}
@ -3105,7 +3105,7 @@ vlc_player_aout_IncrementVolume(vlc_player_t *player, int steps, float *result)
if (!aout)
return -1;
int ret = aout_VolumeUpdate(aout, steps, result);
vlc_object_release(aout);
aout_Release(aout);
return ret;
}
@ -3117,7 +3117,7 @@ vlc_player_aout_IsMuted(vlc_player_t *player)
if (!aout)
return -1;
int ret = aout_MuteGet(aout);
vlc_object_release(aout);
aout_Release(aout);
return ret;
}
@ -3129,7 +3129,7 @@ vlc_player_aout_Mute(vlc_player_t *player, bool mute)
if (!aout)
return -1;
int ret = aout_MuteSet (aout, mute);
vlc_object_release(aout);
aout_Release(aout);
return ret;
}
@ -3142,7 +3142,7 @@ vlc_player_aout_EnableFilter(vlc_player_t *player, const char *name, bool add)
if (!aout)
return -1;
aout_EnableFilter(aout, name, add);
vlc_object_release(aout);
aout_Release(aout);
return 0;
}
@ -3469,7 +3469,7 @@ vlc_player_Delete(vlc_player_t *player)
var_DelCallback(aout, "volume", vlc_player_AoutCallback, player);
var_DelCallback(aout, "mute", vlc_player_AoutCallback, player);
var_DelCallback(player, "corks", vlc_player_CorkCallback, NULL);
vlc_object_release(aout);
aout_Release(aout);
}
input_resource_Release(player->resource);
if (player->renderer)

2
src/input/resource.c

@ -299,7 +299,7 @@ audio_output_t *input_resource_HoldAout( input_resource_t *p_resource )
vlc_mutex_lock( &p_resource->lock_hold );
p_aout = p_resource->p_aout;
if( p_aout != NULL )
vlc_object_hold( p_aout );
aout_Hold(p_aout);
vlc_mutex_unlock( &p_resource->lock_hold );
return p_aout;

12
src/playlist_legacy/aout.c

@ -51,7 +51,7 @@ float playlist_VolumeGet (playlist_t *pl)
if (aout != NULL)
{
volume = aout_VolumeGet (aout);
vlc_object_release (aout);
aout_Release(aout);
}
return volume;
}
@ -64,7 +64,7 @@ int playlist_VolumeSet (playlist_t *pl, float vol)
if (aout != NULL)
{
ret = aout_VolumeSet (aout, vol);
vlc_object_release (aout);
aout_Release(aout);
}
return ret;
}
@ -82,7 +82,7 @@ int playlist_VolumeUp (playlist_t *pl, int value, float *volp)
if (aout != NULL)
{
ret = aout_VolumeUpdate (aout, value, volp);
vlc_object_release (aout);
aout_Release(aout);
}
return ret;
}
@ -95,7 +95,7 @@ int playlist_MuteGet (playlist_t *pl)
if (aout != NULL)
{
mute = aout_MuteGet (aout);
vlc_object_release (aout);
aout_Release(aout);
}
return mute;
}
@ -108,7 +108,7 @@ int playlist_MuteSet (playlist_t *pl, bool mute)
if (aout != NULL)
{
ret = aout_MuteSet (aout, mute);
vlc_object_release (aout);
aout_Release(aout);
}
return ret;
}
@ -119,6 +119,6 @@ void playlist_EnableAudioFilter (playlist_t *pl, const char *name, bool add)
if (aout)
{
aout_EnableFilter(aout, name, add);
vlc_object_release (aout);
aout_Release(aout);
}
}

2
src/text/strings.c

@ -771,7 +771,7 @@ char *vlc_strfinput(input_thread_t *input, input_item_t *item, const char *s)
if (aout != NULL)
{
vol = aout_VolumeGet(aout);
vlc_object_release(aout);
aout_Release(aout);
}
}
if (vol >= 0.f)

Loading…
Cancel
Save