Mailing List archive

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

[linux-dvb] Re: Nova card drops packets, but tuner reports 0 BER& 0 Uncorr blocks



mocm@metzlerbros.de wrote:

>Steve Brown writes:
> > 
> > Although the tuner reports a perfect signal, continuity count errors 
> > occur on the filtered pids. I doubt that the transmitter is actually 
> > dropping packets. The only other explanations seem to be either 
> > erroneous reporting from the tuner or the dvr read code dropping packets.
> > 
> > I'm pretty sure that the tuner is correctly reporting.  I experimented 
> > by misaligning the antenna and noticing that the BER goes up first and 
> > the uncorr block count later. When the antenna is repositioned, both 
> > values go back to zero.
> > 
> > The problem is also intermittent. Sometimes there are no cc errors and 
> > sometimes they return. In both cases, the tuner reports a perfect 
> > signal. Also, they are "real errors" as I can see pixelation in the 
> > decoded output when there are cc errors and none when the cc errors go 
> > away. The cvs and 0.9.4 drivers behave the same. Finally, it seems 
> > independent of transponder.
> > 
> > I distilled this down to a 12 line loop in a test program that audits 
> > the continuity count of selected pids. No errors are reported from the 
> > dvr read.
> > 
> > Has anybody seen this?
>
>Not that I know of.
>Could you describe exactly what you do and what kind of system you
>have. Also under what circumstances and how often the errors occur.
>
>Marcus
>
Marcus,

The overall project is to write a dvb plugin for xine. It is in this 
context that I am having the problem.

For testing, I eliminated xine and my code and am using dvbtune to set 
the tuner and report tuner status and a hacked test_dvr to audit the pid 
cc's. I have an 8k array for the cc's so I can audit the whole feed.

The filter parms are:

>   if (argc == 1)
>     pesFilterParams.pid = 0x2000;
>   else
>     pesFilterParams.pid = strtol(argv[1], NULL, 0);
>   pesFilterParams.input = DMX_IN_FRONTEND;
>   pesFilterParams.output = DMX_OUT_TS_TAP;
>   pesFilterParams.pesType = DMX_PES_OTHER;
>   pesFilterParams.flags = DMX_IMMEDIATE_START;
>   if (ioctl(fd_demux, DMX_SET_PES_FILTER, &pesFilterParams) < 0){
>     perror("demux error");
>     return(1);
>   }

I'm running this on a 1.7Ghz P4 with about 2% of cpu in test_dvr. Total 
cpu usage is ~5%.

The error rate is about 3 to 10 per second when filtering a typical 
video pid. The errors seem to occur at about this rate or not at all. If 
I hook the antenna to a commercial receiver (a Satcruiser DSR-101) I get 
perfect reception.

steve





-- 
Info:
To unsubscribe send a mail to listar@linuxtv.org with "unsubscribe linux-dvb" as subject.


Home | Main Index | Thread Index