mirror of
https://github.com/RPCSX/rpcsx.git
synced 2026-04-04 22:19:02 +00:00
cellAudio: Implement application based downmix settings
This commit is contained in:
parent
422246825b
commit
d47f1ef406
8 changed files with 152 additions and 74 deletions
|
|
@ -66,19 +66,7 @@ void cell_audio_config::reset(bool backend_changed)
|
|||
|
||||
const AudioFreq freq = AudioFreq::FREQ_48K;
|
||||
const AudioSampleSize sample_size = raw.convert_to_s16 ? AudioSampleSize::S16 : AudioSampleSize::FLOAT;
|
||||
const AudioChannelCnt ch_cnt = [&]()
|
||||
{
|
||||
switch (raw.downmix)
|
||||
{
|
||||
case audio_downmix::no_downmix: return AudioChannelCnt::SURROUND_7_1;
|
||||
case audio_downmix::downmix_to_5_1: return AudioChannelCnt::SURROUND_5_1;
|
||||
case audio_downmix::downmix_to_stereo: return AudioChannelCnt::STEREO;
|
||||
case audio_downmix::use_application_settings: return AudioChannelCnt::STEREO; // TODO
|
||||
default:
|
||||
fmt::throw_exception("Unknown audio channel mode %s (%d)", raw.downmix, static_cast<int>(raw.downmix));
|
||||
}
|
||||
}();
|
||||
|
||||
const AudioChannelCnt ch_cnt = AudioBackend::get_channel_count(raw.downmix);
|
||||
const f64 cb_frame_len = backend->Open(freq, sample_size, ch_cnt) ? backend->GetCallbackFrameLen() : 0.0;
|
||||
|
||||
audio_channels = static_cast<u32>(ch_cnt);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue