mirror of
https://github.com/libretro/RetroArch
synced 2025-02-20 06:40:18 +00:00
Create more audio wrapper functions
This commit is contained in:
parent
4a3507adc1
commit
dc46785c14
@ -505,3 +505,26 @@ bool audio_driver_alive(void)
|
||||
return driver->audio->alive(driver->audio_data);
|
||||
return false;
|
||||
}
|
||||
|
||||
bool audio_driver_start(void)
|
||||
{
|
||||
driver_t *driver = driver_get_ptr();
|
||||
if (driver && driver->audio && driver->audio->start)
|
||||
return driver->audio->start(driver->audio_data);
|
||||
return false;
|
||||
}
|
||||
|
||||
bool audio_driver_stop(void)
|
||||
{
|
||||
driver_t *driver = driver_get_ptr();
|
||||
if (driver && driver->audio && driver->audio->stop)
|
||||
return driver->audio->stop(driver->audio_data);
|
||||
return false;
|
||||
}
|
||||
|
||||
void audio_driver_set_nonblock_state(bool toggle)
|
||||
{
|
||||
driver_t *driver = driver_get_ptr();
|
||||
if (driver && driver->audio && driver->audio->set_nonblock_state)
|
||||
driver->audio->set_nonblock_state(driver->audio_data, toggle);
|
||||
}
|
||||
|
@ -121,6 +121,12 @@ void audio_driver_readjust_input_rate(void);
|
||||
|
||||
bool audio_driver_alive(void);
|
||||
|
||||
bool audio_driver_start(void);
|
||||
|
||||
bool audio_driver_stop(void);
|
||||
|
||||
void audio_driver_set_nonblock_state(bool toggle);
|
||||
|
||||
/**
|
||||
* config_get_audio_driver_options:
|
||||
*
|
||||
|
3
driver.c
3
driver.c
@ -292,8 +292,7 @@ void driver_set_nonblock_state(bool enable)
|
||||
}
|
||||
|
||||
if (driver->audio_active && driver->audio_data)
|
||||
driver->audio->set_nonblock_state(driver->audio_data,
|
||||
settings->audio.sync ? enable : true);
|
||||
audio_driver_set_nonblock_state(settings->audio.sync ? enable : true);
|
||||
|
||||
global->audio_data.chunk_size = enable ?
|
||||
global->audio_data.nonblock_chunk_size :
|
||||
|
@ -2471,14 +2471,14 @@ bool rarch_main_command(unsigned cmd)
|
||||
if (!audio_driver_alive())
|
||||
return false;
|
||||
|
||||
driver->audio->stop(driver->audio_data);
|
||||
if (!audio_driver_stop())
|
||||
return false;
|
||||
break;
|
||||
case RARCH_CMD_AUDIO_START:
|
||||
if (!driver->audio_data || audio_driver_alive())
|
||||
return false;
|
||||
|
||||
if (!settings->audio.mute_enable
|
||||
&& !driver->audio->start(driver->audio_data))
|
||||
if (!settings->audio.mute_enable && !audio_driver_start())
|
||||
{
|
||||
RARCH_ERR("Failed to start audio driver. Will continue without audio.\n");
|
||||
driver->audio_active = false;
|
||||
@ -2619,8 +2619,7 @@ bool rarch_main_command(unsigned cmd)
|
||||
case RARCH_CMD_AUDIO_SET_NONBLOCKING_STATE:
|
||||
boolean = true; /* fall-through */
|
||||
case RARCH_CMD_AUDIO_SET_BLOCKING_STATE:
|
||||
if (driver->audio && driver->audio->set_nonblock_state)
|
||||
driver->audio->set_nonblock_state(driver->audio_data, boolean);
|
||||
audio_driver_set_nonblock_state(boolean);
|
||||
break;
|
||||
case RARCH_CMD_OVERLAY_SET_SCALE_FACTOR:
|
||||
#ifdef HAVE_OVERLAY
|
||||
|
Loading…
x
Reference in New Issue
Block a user