[mythtvnz] Frame buffer ver Hardware Cards

Stephen Worthington stephen_agent at jsw.gen.nz
Tue Oct 4 14:54:42 BST 2011


On Wed, 05 Oct 2011 00:00:49 +1300, you wrote:

>From what I understand Hardware cards convert the video stream to MPEG-4
>But freeveiw is already in MPEG-4 format. So is there an advantage in
>having a hardware card
>
>http://www.mythtv.org/wiki/Video_capture_card#caveats

A frame buffer card is for recording analogue signals - it does not do
DVB-T for FreeviewHD (terrestrial) or DVB-S for Freeview (satellite).
You need to get the right card to record the right signal.  The only
things you use a frame buffer card for these days are to record from a
Sky decoder (the only way to record Sky if you do not want to use
Sky's MySky boxes), or to convert your old VHS or S-VHS tapes to
digital recordings.  But it is better to use a hardware encoder card
for both those jobs.

The DVB-T signals for FreeviewHD are digital H.264 encoded - all the
DVB-T tuner has to do is the RF (radio frequency) processing to
present the resulting MPEG2 TS format bitstream to the CPU.  The MPEG2
TS bitstream contains multiple H.264 (MPEG4) video streams, audio
streams and other streams such as Teletext for the multiple channels
broadcast on one DVB-T multiplex.  MythTV just picks out the right
stream(s) of bits for one or more TV channels and stores them to hard
disk.  That is a pretty straightforward process that does not take
much processing at all.

Frame buffer cards take the RF signal and process it down to a normal
analogue TV signal, then convert that to a raw digital format and pass
it over to the CPU for compression to a format that is suitable to be
stored to disk.  The raw format is a full frame of data with all
pixels represented by luminance and colour signals.  Recording that
directly to disk would take about 1.2 Gibytes per minute, so
compression is necessary to make the recordings a reasonable size.
Compression to MPEG2 video format is possible in real time with a
reasonable CPU, as long as it is not doing much else.  Compression to
MPEG4 H.264 video format in real time takes too much CPU to be done
reliably even with a dual core 3 GHz CPU.

Hardware encoder cards do the same as frame buffer cards to get a raw
digital format then in hardware convert that to an MPEG2 PS digital
format and present that to the CPU.  The MPEG2 PS digital data
contains the video and audio and possibly Teletext streams for just
one TV channel.  The video and audio streams are encoded in MPEG2
video and audio format, typically in a similar size and quality to
what is on a standard DVD.  Since the hardware on the card has done
all the hard work of compression, the CPU can then just store the
resulting data to disk without much effort.

There may be some hardware encoder cards that encode to H.264 video
data, but I have not met one.  H.264 video encoding is a much more
difficult job than MPEG2 video encoding, and takes a much more
expensive chip.  By the time the chips to do the job were cheap
enough, it was clear that analogue TV did not have long to live and it
was not worth the effort to create hardware encoder cards that encoded
to H.264 because they would never sell enough of them to make a good
profit before the analogue TV transmitters were shut down.

Note that MPEG2 video and audio stream formats are different from
MPEG2 TS or MPEG2 PS container formats.  This is very confusing
terminology to beginners, especially as the TS and PS part is often
dropped and expected to be understood from the context.  MPEG2 TS and
MPEG2 PS are formats for digital data streams containing one or more
digital video, audio or auxiliary data streams.  PS = Program Stream,
and TS = Transport Stream (which contains extra data to allow for
error recovery).  The data streams inside a container stream can be
many different formats, with video data typically MPEG4 H.264 format
or MPEG2 format and the corresponding audio in AAC and MP2 formats
respectively.

Other container formats you meet frequently are AVI and MP4 - again,
these container formats can contain many different types of streams
inside them, with AVI typically containing XviD or DivX video data,
and MP4 containing H.264 video data.  Microsoft, of course, had to
invent their own container format ASF, which you meet now in the form
of .wmv files.  The latest .wmv files typically contain VC-1 or VC-2
video data, but can contain other older Microsoft video formats.  And
so on, there are lots of container formats and many more types of the
streams contained in them.



More information about the mythtvnz mailing list