More casts

This commit is contained in:
twinaphex 2020-02-03 00:29:34 +01:00
parent 5f631b3499
commit 5ceb73c1cf

View File

@ -3177,8 +3177,8 @@ static float audio_driver_rate_control_delta = 0.0f;
static float audio_driver_input = 0.0f; static float audio_driver_input = 0.0f;
static float audio_driver_volume_gain = 0.0f; static float audio_driver_volume_gain = 0.0f;
static float *audio_driver_input_data = NULL; static void *audio_driver_input_data = NULL;
static float *audio_driver_output_samples_buf = NULL; static void *audio_driver_output_samples_buf = NULL;
static double audio_source_ratio_original = 0.0f; static double audio_source_ratio_original = 0.0f;
static double audio_source_ratio_current = 0.0f; static double audio_source_ratio_current = 0.0f;
@ -18802,7 +18802,7 @@ static bool audio_driver_init_internal(bool audio_cb_inited)
if (!aud_inp_data) if (!aud_inp_data)
goto error; goto error;
audio_driver_input_data = aud_inp_data; audio_driver_input_data = (float*)aud_inp_data;
audio_driver_data_ptr = 0; audio_driver_data_ptr = 0;
retro_assert(settings->uints.audio_out_rate < retro_assert(settings->uints.audio_out_rate <
@ -18875,12 +18875,13 @@ static void audio_driver_flush(const int16_t *data, size_t samples,
src_data.data_out = NULL; src_data.data_out = NULL;
src_data.output_frames = 0; src_data.output_frames = 0;
convert_s16_to_float(audio_driver_input_data, data, samples, convert_s16_to_float((float*)audio_driver_input_data, data, samples,
audio_volume_gain); audio_volume_gain);
src_data.data_in = audio_driver_input_data; src_data.data_in = (float*)audio_driver_input_data;
src_data.input_frames = samples >> 1; src_data.input_frames = samples >> 1;
/* TODO/FIXME - not available in fixed integer mode */
if (audio_driver_dsp) if (audio_driver_dsp)
{ {
struct retro_dsp_data dsp_data; struct retro_dsp_data dsp_data;
@ -18890,7 +18891,7 @@ static void audio_driver_flush(const int16_t *data, size_t samples,
dsp_data.output = NULL; dsp_data.output = NULL;
dsp_data.output_frames = 0; dsp_data.output_frames = 0;
dsp_data.input = audio_driver_input_data; dsp_data.input = (float*)audio_driver_input_data;
dsp_data.input_frames = (unsigned)(samples >> 1); dsp_data.input_frames = (unsigned)(samples >> 1);
retro_dsp_filter_process(audio_driver_dsp, &dsp_data); retro_dsp_filter_process(audio_driver_dsp, &dsp_data);
@ -18902,7 +18903,7 @@ static void audio_driver_flush(const int16_t *data, size_t samples,
} }
} }
src_data.data_out = audio_driver_output_samples_buf; src_data.data_out = (float*)audio_driver_output_samples_buf;
if (audio_driver_control) if (audio_driver_control)
{ {
@ -18941,13 +18942,15 @@ static void audio_driver_flush(const int16_t *data, size_t samples,
audio_driver_resampler->process(audio_driver_resampler_data, &src_data); audio_driver_resampler->process(audio_driver_resampler_data, &src_data);
#ifdef HAVE_AUDIOMIXER #ifdef HAVE_AUDIOMIXER
/* TODO/FIXME - provide an int16_t codepath for audio_mixer_mix too
* so we don't have to skip this here */
if (audio_mixer_active) if (audio_mixer_active)
{ {
bool override = audio_driver_mixer_mute_enable ? true : bool override = audio_driver_mixer_mute_enable ? true :
(audio_driver_mixer_volume_gain != 1.0f) ? true : false; (audio_driver_mixer_volume_gain != 1.0f) ? true : false;
float mixer_gain = !audio_driver_mixer_mute_enable ? float mixer_gain = !audio_driver_mixer_mute_enable ?
audio_driver_mixer_volume_gain : 0.0f; audio_driver_mixer_volume_gain : 0.0f;
audio_mixer_mix(audio_driver_output_samples_buf, audio_mixer_mix((float*)audio_driver_output_samples_buf,
src_data.output_frames, mixer_gain, override); src_data.output_frames, mixer_gain, override);
} }
#endif #endif