logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

mpegcat - Extracts structural information and PES streams from an MPEG2 video file

Author

       Kees Cook, <kees@outflux.net>

Description

mpegcat  dumps  detailed textual information about an MPEG2 file. It also has an option for writing out a
       particular Packetized Elementary Stream (PES) given its id.

       The original purpose of mpegcat was for debugging stream parsing issues in the  gopchop  cuts-only  MPEG2
       video editor, but it has more general utility.

Name

       mpegcat - Extracts structural information and PES streams from an MPEG2 video file

Options

GENERALOPTIONS-d,--debug
              Report debug info

       -D,--dvd-format
              Enable DVD packet extensions

       -h,-?,--help
              Help

       -w,--writeFILE,0xID[,0xSID]
              Write  PES  with  id ID (and subid SID) to FILE.  Sub Picture Unit (SPU) streams such as overlays,
              subtitles and DVD menus extracted using this option can be displayed using  the  companion  gtkspu
              utility.

              To find SPU streams in a .VOB ripped from a DVD:

                              $ mpegcat-iDaVTS_01_0.VOB|grepSPU
                                 131086: 0xBD:  DVD Audio 0x20 (SPU 0): 2028 bytes (next marker @ 133120)
                                 133134: 0xBD:  DVD Audio 0x20 (SPU 0): 2028 bytes (next marker @ 135168)
                                 137230: 0xBD:  DVD Audio 0x20 (SPU 0): 190 bytes (next marker @ 137426)
                                 ...

              To save a given stream:

                              $ mpegcat-iDawdump.spu,0xBD,0x20VTS_01_0.VOB>/dev/null

              (And to view the stream)

                              $ gtkspudump.spu1
                              $ gtkspudump.spu2
                              $ gtkspudump.spu3
                              ...

   PROCESSINGTOGGLES-V,--enter-video
              Process video packets (forced by -t option)

   GENERALDISPLAYTOGGLES-p,--pack
              Toggle Pack packet start display

       -v,--video
              Toggle video ES packet start display

       -a,--audio
              Toggle audio ES packet start display

       -o,--other
              Toggle other stream display (only show video & audio)

       -y,--system
              Toggle system header display

       -e,--errors
              Toggle packet errors

       -i,--invert
              Invert all display toggles

   VIDEODISPLAYTOGGLES-s,--slices
              Toggle slice starts (default off)

       -q,--sequence
              Toggle sequence header display

       -g,--GOPs
              Toggle GOP header display

       -f,--frames
              Toggle Picture header display

   SHORTCUTS-F,--just-frames
              Show only video frames (same as '-Vepvaoyq')

   FILEOFFSETOPTIONS-b,--begin=NUM
              Start reading at offset NUM-n,--num=NUM
              Stop after reading NUM bytes

       -t,--scan-stream
              Scan  every  byte  of the stream instead of using PES offsets (this can show erroneous 'start code
              emulation' codes)

See Also

gopchop(1), gtkspu(1)

                                                 28 October 2006                                      MPEGCAT(1)

Synopsis

mpegcat { options } { file }

See Also