fxtv

James M Rotenberry rotenber at alumni.caltech.edu
Tue Mar 4 17:18:46 UTC 2008


FXTV is a BSD application that provides TV-in-a-window and
image/audio/video capture capabilities for Brooktree-based tuner/capture
cards.

http://people.freebsd.org/~rhh/fxtv/

Most users have a powerful enough CPU to bypass FXTV and perform a video
capture using ffmpeg. My computer is not very powerful. After quite a
few experiments, I found that in the best case with my computer I can
create an AVI file with no more that 12 frames per second.

It is well known that the video capture code for FXTV is awkward, broken,
and requires a separate installation of sox, mpeg_musicin, mpeg_encode,
and mplex. However, the advantage of the FXTV video capture is that it
dumps the raw AV to a (huge) file and performs no real-time processing.
The processing is performed when the script generated by fxtv calls
the script fxtv_cnvt.sh.

To perform the video capture with no processing choose the
"MPEG Ready" pull-down option for the "Target" in FXTV.

Unfortunately, the script fxtv_cnvt.sh in the FXTV port is broken.
The patch file for fxtv_cnvt.sh appended below is a really ugly hack, but
it works for me. No changes were required to FXTV, sox, mpeg_musicin,
mpeg_encode, or mplex. The output is an *.mps (MPEG System Stream) file.
Wikipedia does not have an entry for the MPS file extension, but mplayer
will play these just fine on my Fedora 7 computer.

This hack is similar to one proposed for OpenBSD:

http://www.mail-archive.com/ports@openbsd.org/msg07601.html


JM Rotenberry


--- /usr/local/lib/X11/fxtv/fxtv_cnvt.sh.orig   Mon Feb 18 13:05:40 2008
+++ /usr/local/lib/X11/fxtv/fxtv_cnvt.sh        Mon Mar  3 14:18:25 2008
@@ -181,8 +181,8 @@

    # Do we need an intermediate file?
    if [ $mpeg_enc = YES ]; then
-      out_soxfn="$out_fnbase.aiff"
-      out_soxfmt="AIFF"
+      out_soxfn="$out_fnbase.wav"
+      out_soxfmt="WAV"
    else
       out_soxfn="$GAout_fn"
       out_soxfmt="$out_fmt"



More information about the freebsd-multimedia mailing list