update to bktrau driver (HDTV capture)

John-Mark Gurney gurney_j at resnet.uoregon.edu
Thu Dec 14 12:01:49 PST 2006


Earlier this week I discovered a bug in my bktrau driver that is used
for digital capture from a DViCo FusionHDTV5 Lite card.  I was returning
buffers that weren't completely written by the card yet, causing
corrupted output streams.

This has been fixed by making use of the status bits that are available
in the instruction set, but means that if effectively subdivides the
total buffers into 4 sets.  With this change, I now get perfect captures
(as far as I can tell.)  The bug was discovered while I was writing a
python wrapper for the card.

I have also updated the ioctl that gets the buffers to honor the
non-blocking flag that can be set on file descriptors, so it can
block in the ioctl for the next buffer.  The python wrappers include a
basic capture app, and uses zero copy so the driver dma's directly into
a buffer, which python can then write w/o having to copy it around.
This does mean that the buffer has a short life time though.

-- 
  John-Mark Gurney				Voice: +1 415 225 5579

     "All that I will do, has been done, All that I have, has not."


More information about the freebsd-multimedia mailing list