You've already forked FFmpeg
							
							
				mirror of
				https://github.com/FFmpeg/FFmpeg.git
				synced 2025-10-30 23:18:11 +02:00 
			
		
		
		
	Signed-off-by: Kirill Savkov <k.savkov@inventos.ru> Signed-off-by: Marton Balint <cus@passwd.hu>
		
			
				
	
	
		
			365 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			365 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| @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
 | |
| 
 | |
| @section libdav1d
 | |
| 
 | |
| dav1d AV1 decoder.
 | |
| 
 | |
| libdav1d allows libavcodec to decode the AOMedia Video 1 (AV1) codec.
 | |
| Requires the presence of the libdav1d headers and library during configuration.
 | |
| You need to explicitly configure the build with @code{--enable-libdav1d}.
 | |
| 
 | |
| @subsection Options
 | |
| 
 | |
| The following options are supported by the libdav1d wrapper.
 | |
| 
 | |
| @table @option
 | |
| 
 | |
| @item framethreads
 | |
| Set amount of frame threads to use during decoding. The default value is 0 (autodetect).
 | |
| 
 | |
| @item tilethreads
 | |
| Set amount of tile threads to use during decoding. The default value is 0 (autodetect).
 | |
| 
 | |
| @item filmgrain
 | |
| Apply film grain to the decoded video if present in the bitstream. Defaults to the
 | |
| internal default of the library.
 | |
| 
 | |
| @item oppoint
 | |
| Select an operating point of a scalable AV1 bitstream (0 - 31). Defaults to the
 | |
| internal default of the library.
 | |
| 
 | |
| @item alllayers
 | |
| Output all spatial layers of a scalable AV1 bitstream. The default value is false.
 | |
| 
 | |
| @end table
 | |
| 
 | |
| @section libdavs2
 | |
| 
 | |
| AVS2-P2/IEEE1857.4 video decoder wrapper.
 | |
| 
 | |
| This decoder allows libavcodec to decode AVS2 streams with davs2 library.
 | |
| 
 | |
| @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 flac
 | |
| 
 | |
| FLAC audio decoder.
 | |
| 
 | |
| This decoder aims to implement the complete FLAC specification from Xiph.
 | |
| 
 | |
| @subsection FLAC Decoder options
 | |
| 
 | |
| @table @option
 | |
| 
 | |
| @item -use_buggy_lpc
 | |
| The lavc FLAC encoder used to produce buggy streams with high lpc values
 | |
| (like the default value). This option makes it possible to decode such streams
 | |
| correctly by using lavc's old buggy lpc logic for decoding.
 | |
| 
 | |
| @end table
 | |
| 
 | |
| @section ffwavesynth
 | |
| 
 | |
| Internal wave synthesizer.
 | |
| 
 | |
| 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 libaribb24
 | |
| 
 | |
| ARIB STD-B24 caption decoder.
 | |
| 
 | |
| Implements profiles A and C of the ARIB STD-B24 standard.
 | |
| 
 | |
| @subsection libaribb24 Decoder Options
 | |
| 
 | |
| @table @option
 | |
| 
 | |
| @item -aribb24-base-path @var{path}
 | |
| Sets the base path for the libaribb24 library. This is utilized for reading of
 | |
| configuration files (for custom unicode conversions), and for dumping of
 | |
| non-text symbols as images under that location.
 | |
| 
 | |
| Unset by default.
 | |
| 
 | |
| @item -aribb24-skip-ruby-text @var{boolean}
 | |
| Tells the decoder wrapper to skip text blocks that contain half-height ruby
 | |
| text.
 | |
| 
 | |
| Enabled by default.
 | |
| 
 | |
| @end table
 | |
| 
 | |
| @section dvbsub
 | |
| 
 | |
| @subsection Options
 | |
| 
 | |
| @table @option
 | |
| @item compute_clut
 | |
| @table @option
 | |
| @item -1
 | |
| Compute clut if no matching CLUT is in the stream.
 | |
| @item 0
 | |
| Never compute CLUT
 | |
| @item 1
 | |
| Always compute CLUT and override the one provided in the stream.
 | |
| @end table
 | |
| @item dvb_substream
 | |
| Selects the dvb substream, or all substreams if -1 which is default.
 | |
| 
 | |
| @end table
 | |
| 
 | |
| @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 commas, 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. Pages that do not match the specified
 | |
| list are dropped. You may use the special @code{*} string to match all pages,
 | |
| or @code{subtitle} to match all subtitle pages.
 | |
| Default value is *.
 | |
| @item txt_default_region
 | |
| Set default G0 character set used for decoding, a value between 0 and 80 (see
 | |
| ETS 300 706, Section 15, Table 32). Default value is -1, which does not
 | |
| override the libzvbi default. This option is needed for some legacy level 1.0
 | |
| transmissions which cannot signal the proper charset.
 | |
| @item txt_chop_top
 | |
| Discards the top teletext line. Default value is 1.
 | |
| @item txt_format
 | |
| Specifies the format of the decoded subtitles.
 | |
| @table @option
 | |
| @item bitmap
 | |
| The default format, you should use this for teletext pages, because certain
 | |
| graphics and colors cannot be expressed in simple text or even ASS.
 | |
| @item text
 | |
| Simple text based output without formatting.
 | |
| @item ass
 | |
| Formatted ASS output, subtitle pages and teletext pages are returned in
 | |
| different styles, subtitle pages are stripped down to text, but an effort is
 | |
| made to keep the text alignment and the formatting.
 | |
| @end table
 | |
| @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 characters.
 | |
| Default value is 1.
 | |
| @item txt_duration
 | |
| Sets the display duration of the decoded teletext pages or subtitles in
 | |
| milliseconds. Default value is -1 which means infinity or until the next
 | |
| subtitle event comes.
 | |
| @item txt_transparent
 | |
| Force transparent background of the generated teletext bitmaps. Default value
 | |
| is 0 which means an opaque background.
 | |
| @item txt_opacity
 | |
| Sets the opacity (0-255) of the teletext background. If
 | |
| @option{txt_transparent} is not set, it only affects characters between a start
 | |
| box and an end box, typically subtitles. Default value is 0 if
 | |
| @option{txt_transparent} is set, 255 otherwise.
 | |
| 
 | |
| @end table
 | |
| 
 | |
| @c man end SUBTILES DECODERS
 |