Mythtranscode

From MythTV Official Wiki
Revision as of 18:11, 27 April 2006 by Steveadeff (talk | contribs) (lossless mpeg2)

Jump to: navigation, search

Mythtranscode is the internal process used by the front end to transcode MythTV recordings.

Usage

Usage: mythtranscode <--chanid <channelid>>
        <--starttime <starttime>> <--profile <profile>>
        [options]

        --mpeg2          or -m: Perform MPEG2 to MPEG2 transcode.
        --chanid         or -c: Takes a channel id. REQUIRED
        --starttime      or -s: Takes a starttime for the
                                recording. REQUIRED
        --infile         or -i: Input file (Alternative to -c and -s)
        --outfile        or -o: Output file
        --profile        or -p: Takes a profile number or 'autodetect'
                                recording profile. REQUIRED
        --honorcutlist   or -l: Specifies whether to use the cutlist.
        --allkeys        or -k: Specifies that the output file
                                should be made entirely of keyframes.
        --fifodir        or -f: Directory to write fifos to
                                If --fifodir is specified, 'audout' and 'vidout'

                                will be created in the specified directory
        --fifosync            : Enforce fifo sync
        --buildindex     or -b: Build a new keyframe index
                                (use only if audio and video fifos are read independantly)
        --showprogress        : Display status info to the stdout
        --verbose level  or -v: Use '-v help' for level info
        --help           or -h: Prints this help statement.

Choosing a Recording

Two methods are available to choose which recording to work on. The first is to specify the channelid and start time,

-c 1067 -s 20060424183000

Note the start time format is in YYYYMMDDHHMMSS.

The other method is to specify the file,

-i /MythTV/tv/1856_20060425200000.mpg

(Virtually) Lossless MPEG2 Transcode

--mpeg2

New in 0.19 is a virtually lossless MPEG2 transcode. What this does is let you select cut points and mythtranscode will only re-encode the frames that need to be, copying the rest directly from the stream. If you are using this to cut commercials and you cut at the black frames of a fade to black (or white of a fade to white), what you get is basically a perfect stream copy of the video with no loss to the frames that matter.

This also has some side benefits,

  • Converts the mpeg2 from a TS stream to a PS stream, possibly saving up to 20% of the file size!
  • Fixes Audio/Video sync issues in a similar fashion to ProjectX.