From f5b8b6ac126d8cef3860db16d3db8e72507a2258 Mon Sep 17 00:00:00 2001 From: Rudolf Polzer Date: Fri, 14 Sep 2012 17:51:26 +0200 Subject: encode: video encoding now supported using mencoder-like options --- DOCS/man/en/changes.rst | 1 + DOCS/man/en/encode.rst | 134 +++++++++++++++++++++++++++++++ DOCS/man/en/mplayer-old.1 | 196 +++++++++++++++++++++++++++++++++++++++++++++- DOCS/man/en/mplayer.rst | 2 + 4 files changed, 329 insertions(+), 4 deletions(-) create mode 100644 DOCS/man/en/encode.rst (limited to 'DOCS/man') diff --git a/DOCS/man/en/changes.rst b/DOCS/man/en/changes.rst index e4f331e807..c4fc3a0812 100644 --- a/DOCS/man/en/changes.rst +++ b/DOCS/man/en/changes.rst @@ -63,6 +63,7 @@ General changes for mplayer2 to mplayer3 * Do not lose settings when playing a new file in the same player instance * New location for config files, new name for the binary. (Planned change.) * Slave mode compatibility broken (see below) +* Encoding functionality (replacement for mencoder) * General code cleanups * Many more changes diff --git a/DOCS/man/en/encode.rst b/DOCS/man/en/encode.rst new file mode 100644 index 0000000000..7ebd8e6c01 --- /dev/null +++ b/DOCS/man/en/encode.rst @@ -0,0 +1,134 @@ +.. _encode: + +ENCODING +======== + +You can encode files from one format/codec to another using this facility. + +-o + Enables encoding mode and specifies the output file name. + +--of= + Specifies the output format (overrides autodetection by the extension of + the file specified by -o). + See --of=help for a full list of supported formats. + +--ofopts= + Specifies the output format options for libavformat. + See --ofopts=help for a full list of supported options. + + Options are managed in lists. There are a few commands to manage the + options list. + + --ofopts-add= + Appends the options given as arguments to the options list. + + --ofopts-pre= + Prepends the options given as arguments to the options list. + + --ofopts-del= + Deletes the options at the given indexes. Index numbers start at 0, + negative numbers address the end of the list (-1 is the last). + + --ofopts-clr + Completely empties the options list. + +--ofps= + Specifies the output format time base (default: 24000). Low values like 25 + limit video fps by dropping frames. + +--oautofps + Sets the output format time base to the guessed frame rate of the input + video (simulates mencoder behaviour, useful for AVI; may cause frame + drops). Note that not all codecs and not all formats support VFR + encoding, and some which do have bugs when a target bitrate is + specified - use --ofps or --oautofps to force CFR encoding in these + cases. + +--oharddup + If set, the frame rate given by --ofps is attained not by skipping time + codes, but by duplicating frames (constant frame rate mode). + +--oneverdrop + If set, frames are never dropped. Instead, time codes of video are + readjusted to always increase. This may cause AV desync, though; to + work around this, use a high-fps time base using --ofps and absolutely + avoid --oautofps. + +--oac= + Specifies the output audio codec. + See --oac=help for a full list of supported codecs. + +--oaoffset= + Shifts audio data by the given time (in seconds) by adding/removing + samples at the start. + +--oacopts= + Specifies the output audio codec options for libavcodec. + See --oacopts=help for a full list of supported options. + + EXAMPLE: "--oac=libmp3lame --oacopts=b=128000" selects 128kbps MP3 + encoding. + + Options are managed in lists. There are a few commands to manage the + options list. + + --oacopts-add= + Appends the options given as arguments to the options list. + + --oacopts-pre= + Prepends the options given as arguments to the options list. + + --oacopts-del= + Deletes the options at the given indexes. Index numbers start at 0, + negative numbers address the end of the list (-1 is the last). + + --oacopts-clr + Completely empties the options list. + +--ovc= + Specifies the output video codec. + See --ovc=help for a full list of supported codecs. + +--ovoffset= + Shifts video data by the given time (in seconds) by shifting the pts + values. + +--ocopyts + Copies input pts to the output video (not supported by some output + container formats, e.g. avi). Discontinuities are still fixed. + By default, audio pts are set to playback time and video pts are + synchronized to match audio pts, as some output formats do not support + anything else. + +--orawts + Copies input pts to the output video (not supported by some output + container formats, e.g. avi). In this modem discontinuities are not fixed + and all pts are passed through as-is. Never seek backwards or use multiple + input files in this mode! + +--ovcopts + Specifies the output video codec options for libavcodec. + See --ovcopts=help for a full list of supported options. + + EXAMPLE: "--ovc=mpeg4 --oacopts=qscale=5" selects constant quantizer scale + 5 for MPEG-4 encoding. + + EXAMPLE: "--ovc=libx264 --ovcopts=crf=23" selects VBR quality factor 23 for + H.264 encoding. + + Options are managed in lists. There are a few commands to manage the + options list. + + --ovcopts-add= + Appends the options given as arguments to the options list. + + --ovcopts-pre= + Prepends the options given as arguments to the options list. + + --ovcopts-del= + Deletes the options at the given indexes. Index numbers start at 0, + negative numbers address the end of the list (-1 is the last). + + --ovcopts-clr + Completely empties the options list. diff --git a/DOCS/man/en/mplayer-old.1 b/DOCS/man/en/mplayer-old.1 index 477244cc58..92592c7f27 100644 --- a/DOCS/man/en/mplayer-old.1 +++ b/DOCS/man/en/mplayer-old.1 @@ -6707,7 +6707,7 @@ This will give much better results for material that has undergone heavy editing after telecine was applied, but as a result it is not as forgiving of noisy input, for example TV capture. The optional parameter (ivtc=1) corresponds to the dr=1 option for the -detc filter, and should not be used with MPlayer. +detc filter, and should not be used for playback. Further development on ivtc has stopped, as the pullup and filmdint filters appear to be much more accurate. . @@ -6765,9 +6765,6 @@ access to the field-flags set by the MPEG-2 decoder. Depending on the source MPEG, you may be fine ignoring this advice, as long as you do not see lots of "Bottom-first field" warnings. With no options it does normal inverse telecine. -When this filter is used with MPlayer, it will result in an uneven -framerate during playback, but it is still generally better than using -pp=lb or no deinterlacing at all. Multiple options can be specified separated by /. .RSs .IPs crop=::: @@ -7510,6 +7507,197 @@ Using this filter together with any sort of seeking (including -ss and EDLs) may make demons fly out of your nose. .RE . +.\" -------------------------------------------------------------------------- +.\" encoding +.\" -------------------------------------------------------------------------- +. +.SH ENCODING OPTIONS +. +.TP +.B \-o +Enable encoding mode and specify the output file name. +.RE +. +.TP +.B \-of +Specify the output format (overrides autodetection by the extension of the file specified by \-o). +See \-of help for a full list of supported formats. +.RE +. +.TP +.B \-ofopts +Specify the output format options for libavformat. +See \-ofopts help for a full list of supported options. +.RE +.PP +.I NOTE: +To get a full list of available format options, see \-ofopts help. +.sp 1 +Options are managed in lists. +There are a few commands to manage the options list. +. +.TP +.B \-ofopts\-add +Appends the options given as arguments to the options list. +. +.TP +.B \-ofopts\-pre +Prepends the options given as arguments to the options list. +. +.TP +.B \-ofopts\-del +Deletes the options at the given indexes. +Index numbers start at 0, negative numbers address the end of the +list (\-1 is the last). +. +.TP +.B \-ofopts\-clr +Completely empties the options list. +. +.RE +. +.TP +.B \-ofps +Specifies the output format time base (default: 24000). Low values like 25 limit video fps by dropping frames. +.RE +. +.TP +.B \-oautofps +Sets the output format time base to the guessed frame rate of the input video (simulates mencoder behaviour, useful for AVI; may cause frame drops). Note that not all codecs and not all formats support VFR encoding, and some which do have bugs when a target bitrate is specified - use +.B \-ofps +or +.B \-oautofps +to force CFR encoding in these cases. +.RE +. +.TP +.B \-oharddup +If set, the frame rate given by +.B \-ofps +is attained not by skipping time codes, but by duplicating frames (constant frame rate mode). +.RE +. +.TP +.B \-oneverdrop +If set, frames are never dropped. Instead, time codes of video are readjusted +to always increase. This may cause AV desync, though; to work around this, +use a high-fps time base using +.B \-ofps +and absolutely avoid +.B \-oautofps +.RE +. +.TP +.B \-oac +Specify the output audio codec. +See \-oac help for a full list of supported codecs. +.RE +. +.TP +.B \-oaoffset +Shifts audio data by the given time (in seconds) by adding/removing samples at the start. +.RE +. +.TP +.B \-oacopts +Specify the output audio codec options for libavcodec. +See \-oacopts help for a full list of supported options. +.RE +.PP +.I EXAMPLE: +.B \-oac libmp3lame \-oacopts b=128000 +selects 128kbps MP3 encoding. +.PP +.I NOTE: +To get a full list of available audio codec options, see \-oacopts help. +.sp 1 +Options are managed in lists. +There are a few commands to manage the options list. +. +.TP +.B \-oacopts\-add +Appends the options given as arguments to the options list. +. +.TP +.B \-oacopts\-pre +Prepends the options given as arguments to the options list. +. +.TP +.B \-oacopts\-del +Deletes the options at the given indexes. +Index numbers start at 0, negative numbers address the end of the +list (\-1 is the last). +. +.TP +.B \-oacopts\-clr +Completely empties the options list. +. +.TP +.B \-ovc +Specify the output video codec. +See \-ovc help for a full list of supported codecs. +.RE +. +.TP +.B \-ovoffset +Shifts video data by the given time (in seconds) by shifting the pts values. +.RE +. +.TP +.B \-ocopyts +Copies input pts to the output video (not supported by some output container formats, e.g. avi). +By default, audio pts are set to playback time and video pts are synchronized to match audio pts, as some output formats do not support anything else. +.RE +. +.TP +.B \-ovcopts +Specify the output video codec options for libavcodec. +See \-ovcopts help for a full list of supported options. +.RE +.PP +.I EXAMPLE: +.B \-ovc mpeg4 \-ovcopts qscale=5 +selects constant quantizer scale 5 for MPEG-4 encoding. +.PP +.B \-ovc libx264 \-ovcopts crf=23 +selects VBR quality factor 23 for H.264 encoding. +.I NOTE: +To get a full list of available video codec options, see \-ovcopts help. +.PP +.sp 1 +Options are managed in lists. +There are a few commands to manage the options list. +. +.TP +.B \-ovcopts\-add +Appends the options given as arguments to the options list. +. +.TP +.B \-ovcopts\-pre +Prepends the options given as arguments to the options list. +. +.TP +.B \-ovcopts\-del +Deletes the options at the given indexes. +Index numbers start at 0, negative numbers address the end of the +list (\-1 is the last). +. +.TP +.B \-ovcopts\-clr +Completely empties the options list. +. +.PP +.I NOTE for \-ovc libx264: +The x264 codec provides a set of presets/tunings/profiles which can be included with the ovcopts. +.PP +Available presets: preset=ultrafast, preset=superfast, preset=veryfast, preset=faster, preset=fast, preset=medium, preset=slow, preset=slower, preset=veryslow, preset=placebo (default: preset=medium) +.PP +Available tunings: tune=film, tune=animation, tune=grain, tune=stillimage, tune=psnr, tune=ssim, tune=fastdecode, tune=zerolatency (default: none) +.PP +Available profiles: profile=baseline, profile=main, profile=high (default: profile=high) +.PP +.I EXAMPLE: +.B mplayer \-o \-ovc libx264 \-ovcopts preset=veryslow,crf=23,tune=animation,profile=main \-oac aac \-oacopts b=128000 . .\" -------------------------------------------------------------------------- .\" environment variables diff --git a/DOCS/man/en/mplayer.rst b/DOCS/man/en/mplayer.rst index 8485ee7064..89b03737c3 100644 --- a/DOCS/man/en/mplayer.rst +++ b/DOCS/man/en/mplayer.rst @@ -407,6 +407,8 @@ OPTIONS .. include:: vf.rst +.. include:: encode.rst + Taking screenshots ================== -- cgit v1.2.3