mirror of
				https://github.com/nyanmisaka/ffmpeg-rockchip.git
				synced 2025-10-30 04:02:04 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			109 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			109 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| @chapter Demuxers
 | |
| @c man begin DEMUXERS
 | |
| 
 | |
| Demuxers are configured elements in FFmpeg which allow to read the
 | |
| multimedia streams from a particular type of file.
 | |
| 
 | |
| When you configure your FFmpeg build, all the supported demuxers
 | |
| are enabled by default. You can list all available ones using the
 | |
| configure option "--list-demuxers".
 | |
| 
 | |
| You can disable all the demuxers using the configure option
 | |
| "--disable-demuxers", and selectively enable a single demuxer with
 | |
| the option "--enable-demuxer=@var{DEMUXER}", or disable it
 | |
| with the option "--disable-demuxer=@var{DEMUXER}".
 | |
| 
 | |
| The option "-formats" of the ff* tools will display the list of
 | |
| enabled demuxers.
 | |
| 
 | |
| The description of some of the currently available demuxers follows.
 | |
| 
 | |
| @section image2
 | |
| 
 | |
| Image file demuxer.
 | |
| 
 | |
| This demuxer reads from a list of image files specified by a pattern.
 | |
| 
 | |
| The pattern may contain the string "%d" or "%0@var{N}d", which
 | |
| specifies the position of the characters representing a sequential
 | |
| number in each filename matched by the pattern. If the form
 | |
| "%d0@var{N}d" is used, the string representing the number in each
 | |
| filename is 0-padded and @var{N} is the total number of 0-padded
 | |
| digits representing the number. The literal character '%' can be
 | |
| specified in the pattern with the string "%%".
 | |
| 
 | |
| If the pattern contains "%d" or "%0@var{N}d", the first filename of
 | |
| the file list specified by the pattern must contain a number
 | |
| inclusively contained between 0 and 4, all the following numbers must
 | |
| be sequential. This limitation may be hopefully fixed.
 | |
| 
 | |
| The pattern may contain a suffix which is used to automatically
 | |
| determine the format of the images contained in the files.
 | |
| 
 | |
| For example the pattern "img-%03d.bmp" will match a sequence of
 | |
| filenames of the form @file{img-001.bmp}, @file{img-002.bmp}, ...,
 | |
| @file{img-010.bmp}, etc.; the pattern "i%%m%%g-%d.jpg" will match a
 | |
| sequence of filenames of the form @file{i%m%g-1.jpg},
 | |
| @file{i%m%g-2.jpg}, ..., @file{i%m%g-10.jpg}, etc.
 | |
| 
 | |
| The size, the pixel format, and the format of each image must be the
 | |
| same for all the files in the sequence.
 | |
| 
 | |
| The following example shows how to use @command{ffmpeg} for creating a
 | |
| video from the images in the file sequence @file{img-001.jpeg},
 | |
| @file{img-002.jpeg}, ..., assuming an input frame rate of 10 frames per
 | |
| second:
 | |
| @example
 | |
| ffmpeg -i 'img-%03d.jpeg' -r 10 out.mkv
 | |
| @end example
 | |
| 
 | |
| Note that the pattern must not necessarily contain "%d" or
 | |
| "%0@var{N}d", for example to convert a single image file
 | |
| @file{img.jpeg} you can employ the command:
 | |
| @example
 | |
| ffmpeg -i img.jpeg img.png
 | |
| @end example
 | |
| 
 | |
| @section applehttp
 | |
| 
 | |
| Apple HTTP Live Streaming demuxer.
 | |
| 
 | |
| This demuxer presents all AVStreams from all variant streams.
 | |
| The id field is set to the bitrate variant index number. By setting
 | |
| the discard flags on AVStreams (by pressing 'a' or 'v' in ffplay),
 | |
| the caller can decide which variant streams to actually receive.
 | |
| The total bitrate of the variant that the stream belongs to is
 | |
| available in a metadata key named "variant_bitrate".
 | |
| 
 | |
| @section sbg
 | |
| 
 | |
| SBaGen script demuxer.
 | |
| 
 | |
| This demuxer reads the script language used by SBaGen
 | |
| @url{http://uazu.net/sbagen/} to generate binaural beats sessions. A SBG
 | |
| script looks like that:
 | |
| @example
 | |
| -SE
 | |
| a: 300-2.5/3 440+4.5/0
 | |
| b: 300-2.5/0 440+4.5/3
 | |
| off: -
 | |
| NOW      == a
 | |
| +0:07:00 == b
 | |
| +0:14:00 == a
 | |
| +0:21:00 == b
 | |
| +0:30:00    off
 | |
| @end example
 | |
| 
 | |
| A SBG script can mix absolute and relative timestamps. If the script uses
 | |
| either only absolute timestamps (including the script start time) or only
 | |
| relative ones, then its layout is fixed, and the conversion is
 | |
| straightforward. On the other hand, if the script mixes both kind of
 | |
| timestamps, then the @var{NOW} reference for relative timestamps will be
 | |
| taken from the current time of day at the time the script is read, and the
 | |
| script layout will be frozen according to that reference. That means that if
 | |
| the script is directly played, the actual times will match the absolute
 | |
| timestamps up to the sound controller's clock accuracy, but if the user
 | |
| somehow pauses the playback or seeks, all times will be shifted accordingly.
 | |
| 
 | |
| @c man end INPUT DEVICES
 | 
