[KLUG Members] more on 8mm transfer

Bryan-TheBS-Smith members@kalamazoolinux.org
Thu, 27 Dec 2001 10:52:34 -0500


Russell Yonkers wrote:
> Just need to get this ATI card working for video
> capture etc now.

Ouch!  I guess I'm just used to using Matrox Marvel (G200, G400, RR
G-series, but *NOT* the e450TV), IOMega Buz (in Linux, largely
incompatible in Windows) and Pinacle Micro (various models, but not most
of them) hardware MJPEG capture boards.  There is a world of difference
in the quality, and you won't lose frames at 704x480@30fps.  I have both
an ATI All-in-Wonder AGP as well as a 3dfx Voodoo3 3500TV and their
software MPEG-2 capture just can't handle the datarate over the AGP bus,
to memory, to CPU and back to memory -- even on a 1GHz+ Athlon.

For those that don't know, here are your different capture options:

- Pure software (ATI, 3dfx, newer Matrox, most capture cards)

Again, the problem with software is that the data rate is excessive. 
You are taking the raw pixels (640x480@16-bit@30fps =~ 20MBps) on the
video card, pumping them to memory, having the CPU work on them (and
thrashing to memory continously when it does -- which is where the
frameloss comes in), then put it back to memory (although it is now
reduced to ~1MBps, and then to disk).  That's a _lot_ of traffic in the
first few steps -- not to mention the CPU utilization!

- MPEG-2 hardware (Marvel RT2000/2500, others)

MPEG involves a two-step compression process.  First it must compress
the individual frames, then compress all frames together.  This
seriously reduces the data rate to ~1-2MBps, plus it's already done
everything so the CPU needs to do nothing (and the data can go to
disk).  For editing purposes, you might not want to compress quite as
much, so the rate could be ~5MBps -- but your not bothering the CPU
during capture, so there is no problem in handling the flow.  Note, this
takes some _serious_horsepower_ -- about 50x what MPEG-2 decoding does,
enough to cost thousands of dollars.  Do *NOT* confuse "decoding" with
"encoding" -- video chips that can MPEG-2 "decode" (most of which are
just "motion compensation") can *NOT* do _squat_ for encoding.  The only
"cheap" real-time MPEG-2 hardware codec I've seen is the Matrox Marvel
RT2000/2500 series, which runs ~$1,000.  It also only works in Windows.

- MJPEG hardware (Marvel G200/400/RRG-series, IOMega Buz, some Pinacle)

MJPEG is just the first part of the MPEG processs, the compression of
individual frames.  This is much easier to do, and can be done with a
~$25-50 codec like the popular ones from Zoran (which are
_well_supported_ in Linux ;-).  The compression of individual frames
gets the data rate coming out of the card down to about 3-5MBps.  Most
of the time, you'll just write this to disk, and not bother the CPU,
coming back to it laster for editing and further compression into MPEG-2
for publication.  In fact, having MJPEG at editing time can be better --
especially versus the crappy MPEG-2 output you'll get from software-only
capture.  The only downside to MJPEG is the size -- upto 5x the size of
MPEG-2.  But after editing is done, you'll usually compress down to
MPEG-2 for distribution.

You can still get PCI MJPEG capture cards for <$200 that work great with
your normal AGP video card in Linux (although Windows can be a bit more
"finiky").  I also saw the Matrox Marvel G200-TV new on PriceWatch for
$62 AGP, $99 PCI (ignore the idiot advertising the "Marvel G550" -- it
doesn't exist).  You can use that sucker to capture and edit on even a
lowly PII-300MHz (thanx to the MJPEG codec).

-- TheBS

P.S.  This is the reason I bought a DVD-RAM drive back in 1998.  To
store the raw MJPEG captures I made on my Marvel G200.

-- 
Bryan "TheBS" Smith     mailto:b.j.smith@ieee.org    chat:thebs413
Engineer   AbsoluteValue Systems, Inc.   http://www.linux-wlan.org
President     SmithConcepts, Inc.     http://www.SmithConcepts.com
------------------------------------------------------------------
Linux strives to solve computing issues, not ones Windows created.