27.06.2010 15:37, Oliver Endriss wrote: > Hi, > > On Sunday 27 June 2010 01:05:57 Jaroslav Klaus wrote: > >> Hi, >> >> I'm loosing TS packets in my dual CAM premium TT S-2300 card (av7110+saa7146). >> >> I use dvblast to select 4 TV channels (~ 16 PIDs) from multiplex, >> descramble them and stream them to network. Dvblast reports TS >> discontinuity across all video PIDs only (no audio) usually every >> 1-3 minutes ~80 packets. But sometimes it goes well for tens of >> minutes (up to 1-2hours). Everything seems to be ok with 3 TV channels. >> >> > The full-featured cards are not able to deliver the full bandwidth of a > transponder. It is a limitaion of the board design, not a firmware or > driver issue. > I noticed that saa7146 uses dvb_dmx_swfilter_packets(). I planned using of that function too for Mantis 16K buffer delivery, but I found out that hardware delivers sometimes additional bytes (corrupted partially lost packets?) between the full sized 204 byte packets: Jun 26 16:20:37 koivu kernel: demux: skipped 49 bytes at position 3379 Jun 26 16:20:37 koivu kernel: demux: skipped 18 bytes at position 9868 Jun 26 16:20:37 koivu kernel: demux: skipped 30 bytes at position 10090 Jun 26 16:20:38 koivu kernel: demux: skipped 14 bytes at position 7208 Jun 26 16:20:38 koivu kernel: demux: skipped 114 bytes at position 7426 So dvb_dmx_swfilter(_204)() is needed to skip these unwanted bytes. With simple usage of dvb_dmx_swfilter_packets() the rest of the buffer would have been lost. I wrote a faster version of these functions, also for 188 sized packets today: "Re: [PATCH] Avoid unnecessary data copying inside dvb_dmx_swfilter_204() function" CU Marko -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html