[mythtv-commits] mythtv/master commit: f8d2de08e by Jean-Yves Avenard (jyavenard)

MythTV noreply at mythtv.org
Thu Mar 15 10:33:24 UTC 2012


      Author:  Jean-Yves Avenard <jyavenard at mythtv.org>
 Change Date:  2012-03-15T03:31:05-07:00
   Push Date:  2012/03/15 03:33:16 -0700
  Repository:  mythtv
      Branch:  master
New Revision:  f8d2de08e982bd646d0a3e430ec8799f7494f8f8
   Changeset:  https://github.com/MythTV/mythtv/commit/f8d2de08e

Log:

Fully clear the audio ringbuffer when using AC3 re-encoder

When the audio buffer was reset, we could find ourselves in a situation where a full audio frame may not have fitted at the end of the ring buffer. This would have resulted in channels being shifted for a short period of time when we rollled over in the buffer.
This situation could only happen when using the AC3 encoder as we change the size of an audio frame half-way through.

When the AC3 re-encoder is in use, we now fully clear the audio buffer and fill it with zero. That way at worse we hear silence instead of crap and not have to worry about threading issues.

Add some extra logging that will clearly show an error should this condition occurs again. Will help troubleshoot should any issues remain.

Additionally, from Mark Spieth, fully reset any audio processing unit that could have cached old audio.

Should fix #10396
Thanks Mark for actually spotting what went wrong

Modified:

   mythtv/libs/libmyth/audio/audiooutputbase.cpp
   mythtv/libs/libmyth/audio/audiooutputdigitalencoder.cpp
   mythtv/libs/libmyth/audio/audiooutputdigitalencoder.h



More information about the mythtv-commits mailing list