Re: Re: Recommended kernel patches for video capture

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



> This is not "applicable".
>
> I've had frame dropping issues myself with a SAA7134 card, so I
> investigated the driver and the card itself (on register level).
>
> First: every PCI TV-card works using PCI bus mastering (DMA). So for the
> actual capturing of the frames close to no CPU cycles are involved at
> all. You can have a system running at 100% load and still receive all
> frames without drops. Of course you will need to do something with the
> captured frames, like raw writing to disk or encoding.
>
> The reason in general for frames being dropped are:
>  - the capturing card not being able to transfer frames over the PCI
> bus, e.g. because of high usage and high latency of other cards; if this
> is for a short time, you will notice distortion in the picture, for
> longer times it shows as dropped frames.
>  - the user application not gathering the captured frames quick enough,
> causing the PCI busmaster buffers to overrun. Most drivers will cease
> capturing though at all, then.
>
> The SAA7134 has an additional issue, and that is that it drops frames
> with no good reason. To be clear: the frames are not dropped by the
> driver nor the application. It's just the SAA7134 that decides not to
> forward a frame. It looks like it's a synchronisation issue, as the
> frame dropping occurs more often when reception is poor.
>
> BTW you can never trust the synchronisation of TV cards. Therefore
> capturing programs should always explicitely keep/fix a/v
> synchronisation. Mencoder does something like that, transcode (cvs) v4l2
> import module and nvrec do it too. The video capturing feature of other
> programs (like ffmpeg, transcode using v4l, mjpegtools) are actually not
> suitable for capturing video directly.
>
> BTW2 a Pentium II should be sufficient to capture full resolution to
> mjpeg. You don't need top-level hardware at all.

I'm currently usually using ffv1rec which is based on nvrec and does a
great job at keeping things in sync.

Take a look at the avidemux.sf.net project for a copy.

If I attempt to capture in MJPEG/MPEG4/XVID at full D1 PAL i'm usually ok
with zero or 1 frame drop over a capture, If I switch to HUFFYUV then
there are problems which probably relate to disk i/o. Also when the HD
gets too full i'm in trouble.

Steve






[Index of Archives]     [Linux DVB]     [Video Disk Recorder]     [Asterisk]     [Photo]     [DCCP]     [Netdev]     [Xorg]     [Util Linux NG]     [Xfree86]     [Free Photo Albums]     [Fedora Users]     [Fedora Women]     [ALSA Users]     [ALSA Devel]     [Linux USB]

Powered by Linux