From a56a7594102ee5fe05383d8fb68826efd8a6cf9c Mon Sep 17 00:00:00 2001 From: Jean-Yves Avenard Date: Fri, 22 Jul 2011 19:02:56 +0200 Subject: [PATCH] Under some circumstances, using ALSA due to bad rounding, some audio samples would be lost. Should the number of frames for period_size returned by ALSA be an odd-number, some samples would be lost. Fix #9930. --- mythtv/libs/libmyth/audio/audiooutputalsa.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mythtv/libs/libmyth/audio/audiooutputalsa.cpp b/mythtv/libs/libmyth/audio/audiooutputalsa.cpp index b049c84b012..fe0f7524156 100644 --- a/mythtv/libs/libmyth/audio/audiooutputalsa.cpp +++ b/mythtv/libs/libmyth/audio/audiooutputalsa.cpp @@ -728,7 +728,7 @@ int AudioOutputALSA::SetParameters(snd_pcm_t *handle, snd_pcm_format_t format, /* set member variables */ soundcard_buffer_size = buffer_size * output_bytes_per_frame; - fragment_size = (period_size * output_bytes_per_frame) >> 1; + fragment_size = (period_size >> 1) * output_bytes_per_frame; /* get the current swparams */ err = snd_pcm_sw_params_current(handle, swparams);