On 8/29/06, Joshua Boyd <jdboyd@xxxxxxxxxx> wrote:
On Mon, Aug 28, 2006 at 07:51:14PM +0100, Andrew Lyon wrote: > When playing media using mplayer or xine, and outputting using > ac3/dts passthru spdif, if I pause and resume playback, or seek, there > are brief, horrible clicking noises when playback resumes, I assume > this is because the stream is interrupted and resumes wherever it left > off, so it outputs some garbage data that causes the noises. > > Is there any way to prevent this? Perhaps it is possible to make alsa > dump the first 1/2 or even 1/4 second of audio that is played? That > would avoid the noises and I could live with a slight delay when > playback starts. It is in part a problem with your AC3/DTS decoder. I have a creative labs decoder (surround sound speaker set of some sort of built in AC3/DTS decoder), and it has terrible clicking/cracking/popping sounds. OTOH, the Dolby Digital decoder (Dolby DP564, a 2U reference decoder), generally does not have such trouble.
My decoder is a yamaha dsp home cinema amp, it has generally been fine with a range of sources, including spdif 5.1 sound from my windows 2003 server using onboard nforce audio, certainly ive not had the "noise" problem I describe.
You may be right about it being caused by garbage in the signal upon restart. At least, such garbage would cause such trouble. If so, just dumping the first 1/4 second or whatever won't automatically fix it, since that could be throwing away the garbage, then likely the start of the next AC3 or DTS packet as well. A better solution would be to intelligently not transmit incomplete AC3 packets, which means it isn't quite a true pass through anymore.
I see, and intelligently not transmiting incomplete packets could lead to delays and would make the passthru much more complicated, it does seem like a possible solution though.
I suggest you take this to the mplayer or xine mailing lists.
I will do so, thanks your response. Andy