You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-10 06:10:52 +02:00
- Updating docs....
Originally committed as revision 475 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
12
doc/TODO
12
doc/TODO
@@ -5,8 +5,8 @@ ffmpeg TODO list:
|
|||||||
|
|
||||||
Planned in next release:
|
Planned in next release:
|
||||||
|
|
||||||
- fix ffserver.
|
- fix ffserver (partially done)
|
||||||
- add raw h263 decoding support (see vivo streams)
|
- add raw h263 decoding support, see vivo streams (partially done)
|
||||||
- add qscale out.
|
- add qscale out.
|
||||||
- add format autodetect with content (for example to distinguish
|
- add format autodetect with content (for example to distinguish
|
||||||
mpegvideo/mpegmux).
|
mpegvideo/mpegmux).
|
||||||
@@ -20,9 +20,9 @@ BUGS:
|
|||||||
|
|
||||||
- fix audio/video synchro (including real player synchro bugs)
|
- fix audio/video synchro (including real player synchro bugs)
|
||||||
|
|
||||||
- Improve the bit rate control for video codecs.
|
- Improve the bit rate control for video codecs (done).
|
||||||
|
|
||||||
- see ov511.o YUV problem (420 instead of 420P).
|
- see ov511.o YUV problem (420 instead of 420P) (done?).
|
||||||
|
|
||||||
- fix file caching pb in windows (add correct headers)
|
- fix file caching pb in windows (add correct headers)
|
||||||
|
|
||||||
@@ -30,7 +30,7 @@ BUGS:
|
|||||||
|
|
||||||
- test/debug audio in flash format
|
- test/debug audio in flash format
|
||||||
|
|
||||||
- sort out ASF streaming pbs.
|
- sort out ASF streaming pbs (partially done)
|
||||||
|
|
||||||
- Improve psycho acoustic model for AC3 & mpeg audio.
|
- Improve psycho acoustic model for AC3 & mpeg audio.
|
||||||
|
|
||||||
@@ -51,4 +51,4 @@ FEATURES:
|
|||||||
|
|
||||||
- graphical user interface.
|
- graphical user interface.
|
||||||
|
|
||||||
- animated gif as output format
|
- animated gif as output format (done).
|
||||||
|
101
doc/ffmpeg.txt
101
doc/ffmpeg.txt
@@ -7,7 +7,7 @@
|
|||||||
files or from a live audio/video source.
|
files or from a live audio/video source.
|
||||||
|
|
||||||
The command line interface is designed to be intuitive, in the sense
|
The command line interface is designed to be intuitive, in the sense
|
||||||
that ffmpeg tries to figure out all the paramters, when
|
that ffmpeg tries to figure out all the parameters, when
|
||||||
possible. You have usually to give only the target bitrate you want.
|
possible. You have usually to give only the target bitrate you want.
|
||||||
|
|
||||||
FFmpeg can also convert from any sample rate to any other, and
|
FFmpeg can also convert from any sample rate to any other, and
|
||||||
@@ -16,7 +16,7 @@
|
|||||||
1) Video and Audio grabbing
|
1) Video and Audio grabbing
|
||||||
---------------------------
|
---------------------------
|
||||||
|
|
||||||
* ffmpeg can use a video4linux compatible video source and any Open
|
* FFmpeg can use a video4linux compatible video source and any Open
|
||||||
Sound System audio source:
|
Sound System audio source:
|
||||||
|
|
||||||
ffmpeg /tmp/out.mpg
|
ffmpeg /tmp/out.mpg
|
||||||
@@ -29,43 +29,72 @@
|
|||||||
2) Video and Audio file format convertion
|
2) Video and Audio file format convertion
|
||||||
-----------------------------------------
|
-----------------------------------------
|
||||||
|
|
||||||
* ffmpeg can use any supported file format and protocol as input :
|
* ffmpeg can use any supported file format and protocol as input:
|
||||||
|
|
||||||
examples:
|
Examples:
|
||||||
|
|
||||||
|
* You can input from YUV files:
|
||||||
|
|
||||||
ffmpeg -i /tmp/test%d.Y /tmp/out.mpg
|
ffmpeg -i /tmp/test%d.Y /tmp/out.mpg
|
||||||
|
|
||||||
If will use the files:
|
It will use the files:
|
||||||
/tmp/test0.Y, /tmp/test0.U, /tmp/test0.V,
|
/tmp/test0.Y, /tmp/test0.U, /tmp/test0.V,
|
||||||
/tmp/test1.Y, /tmp/test1.U, /tmp/test1.V, etc...
|
/tmp/test1.Y, /tmp/test1.U, /tmp/test1.V, etc...
|
||||||
|
|
||||||
The Y files use twice the resolution of the U and V files. They are
|
The Y files use twice the resolution of the U and V files. They are
|
||||||
raw files, without header. They can be generated by all decent video
|
raw files, without header. They can be generated by all decent video
|
||||||
decoders. You must specify the size of the image with the '-s' option
|
decoders. You must specify the size of the image with the '-s' option
|
||||||
if ffmpeg cannot guess it.
|
if ffmpeg cannot guess it.
|
||||||
|
|
||||||
|
* You can input from a RAW YUV420P file:
|
||||||
|
|
||||||
|
ffmpeg -i /tmp/test.yuv /tmp/out.avi
|
||||||
|
|
||||||
|
The RAW YUV420P is a file containing RAW YUV planar, for each frame first
|
||||||
|
come the Y plane followed by U and V planes, which are half vertical and
|
||||||
|
horizontal resolution.
|
||||||
|
|
||||||
|
* You can output to a RAW YUV420P file:
|
||||||
|
|
||||||
|
ffmpeg -i mydivx.avi -o hugefile.yuv
|
||||||
|
|
||||||
* You can set several input files and output files:
|
* You can set several input files and output files:
|
||||||
|
|
||||||
ffmpeg -i /tmp/a.wav -s 640x480 -i /tmp/a.yuv /tmp/a.mpg
|
ffmpeg -i /tmp/a.wav -s 640x480 -i /tmp/a.yuv /tmp/a.mpg
|
||||||
|
|
||||||
Convert the audio file a.wav and the raw yuv video file a.yuv to mpeg file a.mpg
|
Convert the audio file a.wav and the raw yuv video file a.yuv
|
||||||
|
to mpeg file a.mpg
|
||||||
|
|
||||||
* you can also do audio and video convertions at the same time:
|
* You can also do audio and video convertions at the same time:
|
||||||
|
|
||||||
ffmpeg -i /tmp/a.wav -ar 22050 /tmp/a.mp2
|
ffmpeg -i /tmp/a.wav -ar 22050 /tmp/a.mp2
|
||||||
|
|
||||||
Convert the sample rate of a.wav to 22050 Hz and encode it to MPEG audio.
|
Convert the sample rate of a.wav to 22050 Hz and encode it to MPEG audio.
|
||||||
|
|
||||||
* you can encode to several formats at the same time and define a
|
* You can encode to several formats at the same time and define a
|
||||||
mapping from input stream to output streams:
|
mapping from input stream to output streams:
|
||||||
|
|
||||||
ffmpeg -i /tmp/a.wav -ab 64 /tmp/a.mp2 -ab 128 /tmp/b.mp2 -map 0:0 -map 0:0
|
ffmpeg -i /tmp/a.wav -ab 64 /tmp/a.mp2 -ab 128 /tmp/b.mp2 -map 0:0 -map 0:0
|
||||||
|
|
||||||
convert a.wav to a.mp2 at 64 kbits and b.mp2 at 128 kbits. '-map
|
Convert a.wav to a.mp2 at 64 kbits and b.mp2 at 128 kbits. '-map
|
||||||
file:index' specify which input stream is used for each output
|
file:index' specify which input stream is used for each output
|
||||||
stream, in the order of the definition of output streams.
|
stream, in the order of the definition of output streams.
|
||||||
|
|
||||||
NOTE: to see the supported input formats, use 'ffmpeg -formats'.
|
* You can transcode decrypted VOBs
|
||||||
|
|
||||||
|
ffmpeg -i snatch_1.vob -f avi -vcodec mpeg4 -b 800 -g 300 -bf 2 -acodec
|
||||||
|
mp3 -ab 128 snatch.avi
|
||||||
|
|
||||||
|
This is a typicall DVD ripper example, input from a VOB file, output to
|
||||||
|
an AVI file with MPEG-4 video and MP3 audio, note that in this command we
|
||||||
|
use B frames so the MPEG-4 stream is DivX5 compatible, GOP size is 300
|
||||||
|
that means an INTRA frame every 10 seconds for 29.97 fps input video.
|
||||||
|
Also the audio stream is MP3 encoded so you need LAME support which is
|
||||||
|
enabled using '--enable-mp3lame' when configuring.
|
||||||
|
The mapping is particullary usefull for DVD transcoding to get the desired
|
||||||
|
audio language.
|
||||||
|
|
||||||
|
NOTE: to see the supported input formats, use 'ffmpeg -formats'.
|
||||||
|
|
||||||
2) Invocation
|
2) Invocation
|
||||||
-------------
|
-------------
|
||||||
@@ -87,17 +116,18 @@ NOTE: to see the supported input formats, use 'ffmpeg -formats'.
|
|||||||
|
|
||||||
* Main options are:
|
* Main options are:
|
||||||
|
|
||||||
|
-L show license
|
||||||
-h show help
|
-h show help
|
||||||
-formats show available formats, codecs and protocols
|
-formats show available formats, codecs, protocols, ...
|
||||||
-L print the LICENSE
|
-f fmt force format
|
||||||
-i filename input file name
|
-i filename input file name
|
||||||
-y overwrite output files
|
-y overwrite output files
|
||||||
-t duration set recording time in seconds
|
-t duration set the recording time
|
||||||
-f format set encoding format [guessed]
|
|
||||||
-title string set the title
|
-title string set the title
|
||||||
-author string set the author
|
-author string set the author
|
||||||
-copyright string set the copyright
|
-copyright string set the copyright
|
||||||
-comment string set the comment
|
-comment string set the comment
|
||||||
|
-b bitrate set video bitrate (in kbit/s)
|
||||||
|
|
||||||
* Video Options are:
|
* Video Options are:
|
||||||
|
|
||||||
@@ -105,6 +135,9 @@ NOTE: to see the supported input formats, use 'ffmpeg -formats'.
|
|||||||
-r fps set frame rate [25]
|
-r fps set frame rate [25]
|
||||||
-b bitrate set the video bitrate in kbit/s [200]
|
-b bitrate set the video bitrate in kbit/s [200]
|
||||||
-vn disable video recording [no]
|
-vn disable video recording [no]
|
||||||
|
-bt tolerance set video bitrate tolerance (in kbit/s)
|
||||||
|
-sameq use same video quality as source (implies VBR)
|
||||||
|
-ab bitrate set audio bitrate (in kbit/s)
|
||||||
|
|
||||||
* Audio Options are:
|
* Audio Options are:
|
||||||
|
|
||||||
@@ -113,18 +146,30 @@ NOTE: to see the supported input formats, use 'ffmpeg -formats'.
|
|||||||
-ac channels set the number of audio channels [1]
|
-ac channels set the number of audio channels [1]
|
||||||
-an disable audio recording [no]
|
-an disable audio recording [no]
|
||||||
|
|
||||||
Advanced options are:
|
* Advanced options are:
|
||||||
|
|
||||||
-map file:stream set input stream mapping
|
-map file:stream set input stream mapping
|
||||||
-g gop_size set the group of picture size [12]
|
-g gop_size set the group of picture size
|
||||||
-intra use only intra frames [no]
|
-intra use only intra frames
|
||||||
-qscale q use fixed video quantiser scale (VBR)
|
-qscale q use fixed video quantiser scale (VBR)
|
||||||
-c comment set the comment string
|
-qmin q min video quantiser scale (VBR)
|
||||||
-vd device set video4linux device name [/dev/video]
|
-qmax q max video quantiser scale (VBR)
|
||||||
-vcodec codec force audio codec
|
-qdiff q max difference between the quantiser scale (VBR)
|
||||||
|
-qblur blur video quantiser scale blur (VBR)
|
||||||
|
-qcomp compression video quantiser scale compression (VBR)
|
||||||
|
-vd device set video device
|
||||||
|
-vcodec codec force video codec
|
||||||
-me method set motion estimation method
|
-me method set motion estimation method
|
||||||
-ad device set audio device name [/dev/dsp]
|
-bf frames use 'frames' B frames (only MPEG-4)
|
||||||
|
-hq activate high quality settings
|
||||||
|
-4mv use four motion vector by macroblock (only MPEG-4)
|
||||||
|
-ad device set audio device
|
||||||
-acodec codec force audio codec
|
-acodec codec force audio codec
|
||||||
|
-deinterlace deinterlace pictures
|
||||||
|
-benchmark add timings for benchmarking
|
||||||
|
-hex dump each input packet
|
||||||
|
-psnr calculate PSNR of compressed frames
|
||||||
|
-vstats dump video coding statistics to file
|
||||||
|
|
||||||
The output file can be "-" to output to a pipe. This is only possible
|
The output file can be "-" to output to a pipe. This is only possible
|
||||||
with mpeg1 and h263 formats.
|
with mpeg1 and h263 formats.
|
||||||
|
Reference in New Issue
Block a user