mplex man page on aLinux

Man page or keyword search:  
man Server   7435 pages
apropos Keyword Search (all sections)
Output format
aLinux logo
[printable version]

mplex(1)		      MJPEG tools manual		      mplex(1)

NAME
       mplex - MPEG 1/2 program/system stream multiplexer

SYNOPSIS
       mplex   [-f|--format   format_code]   [-i|--vdr-index]	index_pathname
       [-v|--verbose num] [-b|--video-buffer video_buffer_size_kB[, video_buf‐
       fer_size_kB...]]	 [-L|--lpcm-params  params[,  params...]] [-r|--muxed-
       bitrate	muxed_bitrate_kbps]  [-l|--mux-limit  num]   [-O|--sync-offset
       num[ms|s|pts]]  [-R|--run-in  num]  [-V|--vbr] [-C|--cbr] [-s|--sector-
       size sector_size_B] [-p|--packets-per-pack  num]	 [-h|--system-headers]
       [-S|--max-segment-size output_filesize_limit_MB] [-M|--split-segment]

       [-?|--help] -o|--output output_pathname_pattern input_file...

DESCRIPTION
       Mplex  is  a general-purpose audio/video multiplexer for MPEG-1/MPEG-2.
       It accepts one or more MPEG-1/2 video stream, MPEG layer I/II/III, DTS,
       AC3  and	 LPCM  audio streams and multiplexes them into a combined pro‐
       gram/system stream according to the constraints specified.   Many  dif‐
       ferent  types  of output structure are supported along with presets for
       standard VCD and SVCD streams.  These latter can be burned to CD	 using
       tools such as vcdimager(1) and played in stand-alone players.

       It  is  also  capable of automatically splitting the output stream into
       chunks  of  a  specified	 size  either  independently  or  at  sequence
       end/start points in the input video stream.

GENERAL FUNCTION LETTERS
       -o|--output output_filename_pattern
	      This mandatory option sets the pattern for the name(s) of output
	      files.

	      An integer format code (e.g. %d) in the name is replaced by  the
	      number of the file generated (see printf(3)).

       -v|--verbose num
	      Set verbosity level to num:
	       0 - warnings and errors only,
	       1 - information as well,
	       2 - really verbose.

       -?|--help
	      Display a synopsis of the command syntax.

FUNCTION LETTERS
       -f|--format format_code
	      This  command allows one of a number of convenient preset output
	      formats or generic MPEG1 or MPEG2 output to be selected. For the
	      generic  formats	other  function letters can be used to control
	      many aspects of the multiplexed stream.  For  VCD/SVCD/DVD  com‐
	      pliant  output  the  corresponding  formats  must be used as the
	      standards require the multiplexer to enforce a variety  of  spe‐
	      cial constraints on the structure of the output stream.

	       0  - Generic MPEG1.  A simple general-purpose MPEG1 format pri‐
	      marily suitable for software decoders.   Buffer  sizes  and  VBR
	      must be specified.  Bit-rate can be auto-detected.
	       1 - VCD.	 Standard VCD.	Overrides other option settings.
	       2 - User VCD.  VCD format but buffer size, bit rate and VBR can
	      be set manually.
	       3 - Generic MPEG2.  Like 0 except MPEG2.
	       4 - SVCD.  Standard SVCD.  Overrides other option settings.
	       5 - User-rate SVCD.  SVCD format but buffer size bit  rate  and
	      VBR can be set.
	       6  - VCD Stills stream (mixed mode with hi-res and standard-res
	      image streams	  multiplexed are supported).
	       7 - SVCD Stills stream.
	       8 - DVD (with NAV sectors). Don't get  too  excited.   This  is
	      really a
	       very  minimal  mux  format.   It includes empty versions of the
	      peculiar
	       VOBU start sectors DVD VOB's include.  This is enough  to  per‐
	      suade some
	       hardware players to play the stream but is a long way from full
	      DVD authoring.
	       9 - DVD.	 As above but without the empty VOBU sectors.

       -W|--workarounds workaround_flag [,workaround_flag...]
	      A comma-seperated list of flags that  set	 special  work-arounds
	      for what are suspected to be parser Bugs in widely used players.
	      No workarounds are (currently) implemented but history  suggests
	      this  may	 change quickly ;-) -i|--vdr-index index_pathname This
	      tells mplex to generate an index file for the output in the for‐
	      mat  used	 by the 'vdr' (video disk recorder package). Useful if
	      you want to write output into  vdr's  recordings	directory  for
	      playback on your video recorder PC. This probably only useful in
	      combination with -f 9.

       -r|--mux-bitrate num
	      The total (non VBR) / peak (VBR) bit-rate of the	output	stream
	      in  k  Bits/sec.	If  unspecified	 and not set by a preset it is
	      automatically calculated from the input stream.

       -b|--video-buffer numlist
	      A comma-seperateed list of video decoder buffer sizes in KB  for
	      the  video  streams (given in the order the video streams appear
	      on the command line).  The default is 46KB the (tiny) size spec‐
	      ified  for  VCD.	 The size to use for SVCD is the (more reason‐
	      able) 230KB.  If you are encoding	 for  a	 half-decent  software
	      decoder it makes sense to push this up to 500K or more.

       -L|--lpcm-params
	      samples_per_sec:channels:bits_per_sample
	      [, samples_per_sec:channels:bits_per_sample
	      A	 comma-seperated  list	of  paramter  sets  for the lpcm audio
	      streams (given in the order the lpcm streams appear on the  com‐
	      mand  line).   Each parameter set comprises the sampling rate in
	      Hz, the number of channels, and the number of  bits  per	sample
	      seperated by colons.  For example, the default 48kHz two-channel
	      16-bit audio would be specified as 48000:2:16.

	      Note: these parameters are necessary because mplex  expects  raw
	      LPCM  audio  data without any headers.  That is: for each sample
	      point a group of 16,20, or 24 bit amplitude values, one for each
	      channel.	Amplitude values are signed with the constituent bytes
	      in big-endian (most significant bytes first) order.  For 20  bit
	      samples  I  am  not  sure but what documentation I have suggests
	      such samples are padded at the lsb end so that  they  byte-align
	      at the most significant bits.

       -l|--mux-limit num
	      Multiplex	 limit.	  Multiplex  only the specified number of sec‐
	      onds.  Useful for tuning and debugging.

       -O|--sync-offset num[ms|s|0
	      Set the presentation timestamp offset  of	 video	stream	w.r.t.
	      audio  stream (video-audio) in mSec.   This flag is used to pro‐
	      duce a stream with  synchronised	audio/video  when  one	stream
	      started before/after the other.  This is common when transcoding
	      as the synchronisation information is typically lost during  the
	      (seperate) decoding/encoding of audio and video.

	      By appending 's', 'ms' or 'mpt' the offset can given in seconds,
	      milliseconds or MPEG clock ticks (1/90000th of a second) respec‐
	      tively.  If no suffix is given milliseconds are assumed.

       -R|--run-in num
	      Set  a  non-default run-in (the time data is preloaded into buf‐
	      fers before decoding is scheduled) at the start of each sequence
	      in  video	 frame	intervals.   By	 default a run-in matching the
	      specified size of the video and audio buffers in the decoder and
	      the  type	 of  multiplexing  (constant  or variable bit-rate) is
	      selected automatically.

       -V|--vbr
	      Force variable bit rate multiplexing even	 if  selected  profile
	      defaults to constant-bit-rate.

       -C||-cbr
	      Force  constant  bit  rate multiplexing even if selected profile
	      defaults to variable bit-rate.

       -s|--sector-size num
	      This option specifies the sector size of the  output  stream  in
	      bytes.

       -p|--packets-per-pack num
	      This option specifies the number of packets per pack in the out‐
	      put stream.

       -S|--max-segment-size num
	      This option specifies the maximum size of output files in MBytes
	      (2^10)  When  the	 limit is reached a  new file is started.  The
	      default is (0) unlimited.

	      Note: This option is not for splitting a long video across  mul‐
	      tiple VCD's or SVCD's.

	      It  simply splits a single long sequence into in a way that pre‐
	      vents bits of a video GOP(group  of  pictures)  or  audio	 frame
	      being  split between chunks.  This is fine for formats like that
	      used for DVDs where all  stream  parameters  appear  every  GOP.
	      However, for VCD / SVCD it won't work as the players expect each
	      file to start a new MPEG sequence.

	      For VCD / SVCD a different technique is used.  If mplex  encoun‐
	      ters  a  sequence	 break (sequence end followed by start) in the
	      input video stream it starts a new output stream and file at the
	      sequence	start.	Thus to split a long video across VCD's/SVCD's
	      you have to get the MPEG video  encoder  to  introduce  sequence
	      splits  at  the right points (see mpeg2enc(1) for details of how
	      to do this).

       -M|--ignore-seqend-markers
	      This flag makes mplex ignore sequence end	 markers  embedded  in
	      the  first  video	 stream	 instead  of switching to a new output
	      file.  This is sometimes useful splitting a long stream in files
	      based  on	 a  -S	limit  that doesn't need a run-in/run-out like
	      (S)VCD.

       -h|--system-headers
	      A system header is generated in every pack rather than  just  in
	      the first.

DIAGNOSTIC OUTPUT
       When  multiplexing  using  mplex	 you may get warning or error messages
       complaining about buffer underflow.  This means that the	 bit-rate  you
       have  specified	is  simply too low to permit the video and audio to be
       played back without skipping.  The fix is to either  reduce  the	 data-
       rate of the input material or increased the output stream bit-rate.

BUGS
       The multiplexer should handle MPEG(5.1) audio.

AUTHOR
       This man page was written by Andrew Stevens.
       If  you	have  questions, remarks, problems or you just want to contact
       the developers, the main mailing list for the MJPEG-tools is:
	 mjpeg-users@lists.sourceforge.net

       For more info, see our website at
	 http://mjpeg.sourceforge.net

SEE ALSO
       mpeg2enc(1), mp2enc(1), lavrec(1), lavplay(1), lav2yuv(1),  lav2wav(1),
       yuvscaler(1)

MJPEG Tools Team		  2 June 2001			      mplex(1)
[top]

List of man pages available for aLinux

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net