On Friday 22 February 2008 03:12:45 Andy Walls wrote:
> I ran a little experiment with blocking reads (like cat or mplayer
> perform) to see exactly how well the cx18 driver driving my HVR-1600
> 74041 LF responds to constant requests for data compared to the ivtv
> driver driving my PVR-150MCE.
>
> The result is that the ivtv and PVR-150MCE have one outlier delay at
> startup and then some consistent delay "quanta".  The cx18 driver has
> some consistent delay "quanta" as well, but also outlier delays that
> occur often.

What sort of values do you get? For cx18 the maximum value I get is 
around 0.1 second, which is perfectly OK. Yes, it is a bit higher 
compared to ivtv, but that doesn't really surprise me given the fact 
that the DMA engine is completely different. The timeout in MythTV is 
as far as I can see set at 5 seconds, which is WAY higher than the 
worst delay in cx18.

I did some more detailed debugging and it is clear that the interrupts 
simply arrive a bit more erratic than with ivtv, but this is only the 
case for MPEG streaming: PCM and YUV streaming is perfectly regular. It 
might well be that the firmware combines small frames before outputting 
them, which would lead to a correct stream but somewhat erratic 
interrupt behavior.

Regards,

        Hans

> Here's how you can see for yourself (/dev/video0 is ivtv, /dev/video1
> is cx18 in my setup):
>
>
> $ strace -o vid0-trace -e trace=read -T cat /dev/video0 > /dev/null
>    --- After 60 seconds in another window
>    $ ps axf
>    $ kill -9 ...
> $ strace -o vid1-trace -e trace=read -T cat /dev/video1 > /dev/null
>    --- After 60 seconds in another window
>    $ ps axf
>    $ kill -9 ...
> $ wc -l vid*-trace
> $ sed -e 's/^.*<//' -e 's/>$//' vid0-trace >vid0-interval
> $ sed -e 's/^.*<//' -e 's/>$//' vid1-trace >vid1-interval
> $ tail -n 2 vid*-interval
>    --- Make both files the same length omitting the last 2 lines
>    --- from the shortest file
> $ head -n 11648 vid0-interval > vid0-int
> $ head -n 11648 vid1-interval > vid1-int
> $ gnuplot
> gnuplot> plot [0:11650] [0:*] 'vid0-int'
> gnuplot> replot 'vid1-int'
> gnuplot> plot [0:11650] [0:0.2] 'vid0-int'
> gnuplot> replot 'vid1-int'
>
> The ivtv data set for me has one delay "way out there",
> The cx18 data set for me has 37 delays "way out there",
> both were take over the course of 60 seconds.
>
> R,
> Andy
>
>
>
> _______________________________________________
> ivtv-devel mailing list
> [email protected]
> http://ivtvdriver.org/mailman/listinfo/ivtv-devel



_______________________________________________
ivtv-devel mailing list
[email protected]
http://ivtvdriver.org/mailman/listinfo/ivtv-devel

Reply via email to