| @chapter Decoders |
| @c man begin DECODERS |
| |
| Decoders are configured elements in FFmpeg which allow the decoding of |
| multimedia streams. |
| |
| When you configure your FFmpeg build, all the supported native decoders |
| are enabled by default. Decoders requiring an external library must be enabled |
| manually via the corresponding @code{--enable-lib} option. You can list all |
| available decoders using the configure option @code{--list-decoders}. |
| |
| You can disable all the decoders with the configure option |
| @code{--disable-decoders} and selectively enable / disable single decoders |
| with the options @code{--enable-decoder=@var{DECODER}} / |
| @code{--disable-decoder=@var{DECODER}}. |
| |
| The option @code{-decoders} of the ff* tools will display the list of |
| enabled decoders. |
| |
| @c man end DECODERS |
| |
| @chapter Video Decoders |
| @c man begin VIDEO DECODERS |
| |
| A description of some of the currently available video decoders |
| follows. |
| |
| @section rawvideo |
| |
| Raw video decoder. |
| |
| This decoder decodes rawvideo streams. |
| |
| @subsection Options |
| |
| @table @option |
| @item top @var{top_field_first} |
| Specify the assumed field type of the input video. |
| @table @option |
| @item -1 |
| the video is assumed to be progressive (default) |
| @item 0 |
| bottom-field-first is assumed |
| @item 1 |
| top-field-first is assumed |
| @end table |
| |
| @end table |
| |
| @c man end VIDEO DECODERS |
| |
| @chapter Audio Decoders |
| @c man begin AUDIO DECODERS |
| |
| A description of some of the currently available audio decoders |
| follows. |
| |
| @section ac3 |
| |
| AC-3 audio decoder. |
| |
| This decoder implements part of ATSC A/52:2010 and ETSI TS 102 366, as well as |
| the undocumented RealAudio 3 (a.k.a. dnet). |
| |
| @subsection AC-3 Decoder Options |
| |
| @table @option |
| |
| @item -drc_scale @var{value} |
| Dynamic Range Scale Factor. The factor to apply to dynamic range values |
| from the AC-3 stream. This factor is applied exponentially. |
| There are 3 notable scale factor ranges: |
| @table @option |
| @item drc_scale == 0 |
| DRC disabled. Produces full range audio. |
| @item 0 < drc_scale <= 1 |
| DRC enabled. Applies a fraction of the stream DRC value. |
| Audio reproduction is between full range and full compression. |
| @item drc_scale > 1 |
| DRC enabled. Applies drc_scale asymmetrically. |
| Loud sounds are fully compressed. Soft sounds are enhanced. |
| @end table |
| |
| @end table |
| |
| @section ffwavesynth |
| |
| Internal wave synthetizer. |
| |
| This decoder generates wave patterns according to predefined sequences. Its |
| use is purely internal and the format of the data it accepts is not publicly |
| documented. |
| |
| @section libcelt |
| |
| libcelt decoder wrapper. |
| |
| libcelt allows libavcodec to decode the Xiph CELT ultra-low delay audio codec. |
| Requires the presence of the libcelt headers and library during configuration. |
| You need to explicitly configure the build with @code{--enable-libcelt}. |
| |
| @section libgsm |
| |
| libgsm decoder wrapper. |
| |
| libgsm allows libavcodec to decode the GSM full rate audio codec. Requires |
| the presence of the libgsm headers and library during configuration. You need |
| to explicitly configure the build with @code{--enable-libgsm}. |
| |
| This decoder supports both the ordinary GSM and the Microsoft variant. |
| |
| @section libilbc |
| |
| libilbc decoder wrapper. |
| |
| libilbc allows libavcodec to decode the Internet Low Bitrate Codec (iLBC) |
| audio codec. Requires the presence of the libilbc headers and library during |
| configuration. You need to explicitly configure the build with |
| @code{--enable-libilbc}. |
| |
| @subsection Options |
| |
| The following option is supported by the libilbc wrapper. |
| |
| @table @option |
| @item enhance |
| |
| Enable the enhancement of the decoded audio when set to 1. The default |
| value is 0 (disabled). |
| |
| @end table |
| |
| @section libopencore-amrnb |
| |
| libopencore-amrnb decoder wrapper. |
| |
| libopencore-amrnb allows libavcodec to decode the Adaptive Multi-Rate |
| Narrowband audio codec. Using it requires the presence of the |
| libopencore-amrnb headers and library during configuration. You need to |
| explicitly configure the build with @code{--enable-libopencore-amrnb}. |
| |
| An FFmpeg native decoder for AMR-NB exists, so users can decode AMR-NB |
| without this library. |
| |
| @section libopencore-amrwb |
| |
| libopencore-amrwb decoder wrapper. |
| |
| libopencore-amrwb allows libavcodec to decode the Adaptive Multi-Rate |
| Wideband audio codec. Using it requires the presence of the |
| libopencore-amrwb headers and library during configuration. You need to |
| explicitly configure the build with @code{--enable-libopencore-amrwb}. |
| |
| An FFmpeg native decoder for AMR-WB exists, so users can decode AMR-WB |
| without this library. |
| |
| @section libopus |
| |
| libopus decoder wrapper. |
| |
| libopus allows libavcodec to decode the Opus Interactive Audio Codec. |
| Requires the presence of the libopus headers and library during |
| configuration. You need to explicitly configure the build with |
| @code{--enable-libopus}. |
| |
| An FFmpeg native decoder for Opus exists, so users can decode Opus |
| without this library. |
| |
| @c man end AUDIO DECODERS |
| |
| @chapter Subtitles Decoders |
| @c man begin SUBTILES DECODERS |
| |
| @section dvdsub |
| |
| This codec decodes the bitmap subtitles used in DVDs; the same subtitles can |
| also be found in VobSub file pairs and in some Matroska files. |
| |
| @subsection Options |
| |
| @table @option |
| @item palette |
| Specify the global palette used by the bitmaps. When stored in VobSub, the |
| palette is normally specified in the index file; in Matroska, the palette is |
| stored in the codec extra-data in the same format as in VobSub. In DVDs, the |
| palette is stored in the IFO file, and therefore not available when reading |
| from dumped VOB files. |
| |
| The format for this option is a string containing 16 24-bits hexadecimal |
| numbers (without 0x prefix) separated by comas, for example @code{0d00ee, |
| ee450d, 101010, eaeaea, 0ce60b, ec14ed, ebff0b, 0d617a, 7b7b7b, d1d1d1, |
| 7b2a0e, 0d950c, 0f007b, cf0dec, cfa80c, 7c127b}. |
| |
| @item ifo_palette |
| Specify the IFO file from which the global palette is obtained. |
| (experimental) |
| |
| @item forced_subs_only |
| Only decode subtitle entries marked as forced. Some titles have forced |
| and non-forced subtitles in the same track. Setting this flag to @code{1} |
| will only keep the forced subtitles. Default value is @code{0}. |
| @end table |
| |
| @section libzvbi-teletext |
| |
| Libzvbi allows libavcodec to decode DVB teletext pages and DVB teletext |
| subtitles. Requires the presence of the libzvbi headers and library during |
| configuration. You need to explicitly configure the build with |
| @code{--enable-libzvbi}. |
| |
| @subsection Options |
| |
| @table @option |
| @item txt_page |
| List of teletext page numbers to decode. You may use the special * string to |
| match all pages. Pages that do not match the specified list are dropped. |
| Default value is *. |
| @item txt_chop_top |
| Discards the top teletext line. Default value is 1. |
| @item txt_format |
| Specifies the format of the decoded subtitles. The teletext decoder is capable |
| of decoding the teletext pages to bitmaps or to simple text, you should use |
| "bitmap" for teletext pages, because certain graphics and colors cannot be |
| expressed in simple text. You might use "text" for teletext based subtitles if |
| your application can handle simple text based subtitles. Default value is |
| bitmap. |
| @item txt_left |
| X offset of generated bitmaps, default is 0. |
| @item txt_top |
| Y offset of generated bitmaps, default is 0. |
| @item txt_chop_spaces |
| Chops leading and trailing spaces and removes empty lines from the generated |
| text. This option is useful for teletext based subtitles where empty spaces may |
| be present at the start or at the end of the lines or empty lines may be |
| present between the subtitle lines because of double-sized teletext charactes. |
| Default value is 1. |
| @item txt_duration |
| Sets the display duration of the decoded teletext pages or subtitles in |
| miliseconds. Default value is 30000 which is 30 seconds. |
| @item txt_transparent |
| Force transparent background of the generated teletext bitmaps. Default value |
| is 0 which means an opaque (black) background. |
| @end table |
| |
| @c man end SUBTILES DECODERS |