aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTrent Nelson <trent.a.b.nelson@gmail.com>2014-04-18 09:47:08 -0600
committerTrent Nelson <trent.a.b.nelson@gmail.com>2014-04-18 09:47:08 -0600
commit31fc69689d202ea5f0c5116f131b3bcf60b91fe0 (patch)
treef48b7b0772049a33c6075e9837a2e76b71acbecb
parent49d1cc3a9e760aead8368ec43e54f1b277f0d3fa (diff)
parent1990220ef00ab0e61547a428a47101a6a9d05323 (diff)
Merge pull request #4574 from FernetMenta/aefixes
ActiveAE: recreate sink buffers if frame size has changed
-rw-r--r--xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.cpp b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.cpp
index 3b7dbe1ad3..e2b3d28460 100644
--- a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.cpp
+++ b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.cpp
@@ -1169,7 +1169,9 @@ void CActiveAE::Configure(AEAudioFormat *desiredFmt)
// resample buffers for sink
if (m_sinkBuffers &&
- (!CompareFormat(m_sinkBuffers->m_format,m_sinkFormat) || !CompareFormat(m_sinkBuffers->m_inputFormat, sinkInputFormat)))
+ (!CompareFormat(m_sinkBuffers->m_format,m_sinkFormat) ||
+ !CompareFormat(m_sinkBuffers->m_inputFormat, sinkInputFormat) ||
+ m_sinkBuffers->m_format.m_frames != m_sinkFormat.m_frames))
{
m_discardBufferPools.push_back(m_sinkBuffers);
m_sinkBuffers = NULL;