[linux-dvb] Re: SAA7146 DMA buffer overflow

maillist maillist at boilerbots.com
Sun Feb 19 13:43:42 CET 2006

Ingo Schneider wrote:
> Hi !
> That's why I'm making sure that the buffer width is a multiple of 376 
> and the buffer height is a multiple of 256.
> Without that, I got corrupted data !
> I tried some different widths (376, 752, 3760, but only 376, 752 are 
> used with that algorithm)
> and some heights (1024, 1280, 2048, 2816, 3840) and with that it 
> always worked (for my cards, off course).
> DMA buffer bigger than 4 MB doesn't work - and it also makes no sense 
> to use more buffer than needed under high load.
> In the "refactored patch" with the recommendations of Oliver I keep 
> the buffer size as it was before (because it's untested for other card 
> types),
> and only change the buffer layout if module parameter is set, so there 
> should be no new problems with that.
> With the buffer warnings we'll see if other people have problems with 
> a too small buffer, too.
> With a buffer size of 470k (376x1280) I now get a perfect TS stream 
> (good data, no TS continuity problems),
> even under very high I/O load conditions.
> Now the best thing to do is to integrate it and see if I'm the only 
> one having problems with too small DMA buffer.
> Regards,
> Ingo Schneider.
I have to say that I am also having issues with to small of a DMA 
buffer. This is using a saa7135 with the nxt2004 processor on my Kworld 

I would experiment with increasing the buffer size for the driver my 
card uses but I think there are other issues in software that are 
contributing to my problems. Everything works nice and smooth under 
windows but under Linux my sound studders a lot and mplayer says there 
are crc errors. If I simply disable the DMA channel for sound then 
everything is smooth and no CRC errors. The audio is very minimal 
compared with the video so I think there is a setup issue in my case.


More information about the linux-dvb mailing list