Re: Re: SAA7146 DMA buffer overflow

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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 card.

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.

Curt


_______________________________________________

linux-dvb@xxxxxxxxxxx
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

[Index of Archives]     [Linux Media]     [Video 4 Linux]     [Asterisk]     [Samba]     [Xorg]     [Xfree86]     [Linux USB]

  Powered by Linux