Adjusted default chunk sizes to correctly support number of channels.

pull/657/head
Kevin 10 months ago
parent 0e7aadbbfa
commit 156147b83d
  1. 14
      src/config.cpp
  2. 2
      src/minidexed.cpp

@ -41,15 +41,22 @@ void CConfig::Load (void)
m_SoundDevice = m_Properties.GetString ("SoundDevice", "pwm");
m_nSampleRate = m_Properties.GetNumber ("SampleRate", 48000);
m_bQuadDAC8Chan = m_Properties.GetNumber ("QuadDAC8Chan", 0) != 0;
if (m_SoundDevice == "hdmi") {
m_nChunkSize = m_Properties.GetNumber ("ChunkSize", 384*6);
}
else
{
#ifdef ARM_ALLOW_MULTI_CORE
m_nChunkSize = m_Properties.GetNumber ("ChunkSize", m_SoundDevice == "hdmi" ? 384*6 : 256);
m_nChunkSize = m_Properties.GetNumber ("ChunkSize", m_bQuadDAC8Chan ? 1024 : 256); // 128 per channel
#else
m_nChunkSize = m_Properties.GetNumber ("ChunkSize", m_SoundDevice == "hdmi" ? 384*6 : 1024);
m_nChunkSize = m_Properties.GetNumber ("ChunkSize", 1024);
#endif
}
m_nDACI2CAddress = m_Properties.GetNumber ("DACI2CAddress", 0);
m_bChannelsSwapped = m_Properties.GetNumber ("ChannelsSwapped", 0) != 0;
unsigned newEngineType = m_Properties.GetNumber ("EngineType", 1);
unsigned newEngineType = m_Properties.GetNumber ("EngineType", 1);
if (newEngineType == 2) {
m_EngineType = MKI;
} else if (newEngineType == 3) {
@ -85,7 +92,6 @@ void CConfig::Load (void)
m_bMIDIAutoVoiceDumpOnPC = m_Properties.GetNumber ("MIDIAutoVoiceDumpOnPC", 0) != 0;
m_bHeaderlessSysExVoices = m_Properties.GetNumber ("HeaderlessSysExVoices", 0) != 0;
m_bExpandPCAcrossBanks = m_Properties.GetNumber ("ExpandPCAcrossBanks", 1) != 0;
m_bQuadDAC8Chan = m_Properties.GetNumber ("QuadDAC8Chan", 0) != 0;
m_bLCDEnabled = m_Properties.GetNumber ("LCDEnabled", 0) != 0;
m_nLCDPinEnable = m_Properties.GetNumber ("LCDPinEnable", 4);

@ -279,7 +279,7 @@ bool CMiniDexed::Initialize (void)
Channels = 2; // 16-bit Stereo
}
#endif
if (!m_pSoundDevice->AllocateQueueFrames (Channels * m_pConfig->GetChunkSize ()))
if (!m_pSoundDevice->AllocateQueueFrames (m_pConfig->GetChunkSize () / Channels))
{
LOGERR ("Cannot allocate sound queue");

Loading…
Cancel
Save