录屏幕
ffmpeg -f x11grab -s 686×448 -r 10 -i :0.0+92,120 ~/Desktop/test.avi
使用xwininfo -frame得到窗口坐标
===============================================================
mplayer录制电影
mkfifo /dev/shm/xfifo
mplayer mms://218.106.96.24/cctv1 -dumpstream -dumpfile /dev/shm/xfifo
cat /dev/shm/xfifo |tee /tmp/x.avi |mplayer -cache 8192 –
================================================================
用ffmpeg压缩电影 转h264 这个比rmvb要好呀
ffmpeg -threads 2 -i "Ass For Free.wmv" -r 29.97 -vcodec libx264 -s 720×404 -flags +loop -cmp +chroma -deblockalpha 0 -deblockbeta 0 -crf 24 -bt 256k -refs 1 -coder 0 -me_method umh -me_range 16 -subq 5 -partitions +parti4x4+parti8x8+partp8x8 -g 250 -keyint_min 25 -level 30 -qmin 10 -qmax 51 -trellis 2 -sc_threshold 40 -i_qfactor 0.71 -acodec wmav2 -ab 128k -ar 44100 -ac 2 "Ass For Free.avi"
音频不要用acc,0.0.5的版本acc有问题,压出的电影时间变长
=================================================================
用mplayer录制视频
mplayer mms://202.***.***.***/t1.asf -dumpstream -dumpfile MyMovie.asf
==================================================================
把mplayer可以播放的文件转化为avi格式
mencoder yourfile.rm -ovc copy -oac copy -o testOut.avi
================================================================
把所有音视频文件转化为mp3文件
mplayer -vo null -ao pcm music.wmv lame -h audiodump.wav music.mp3
================================================================
以下是官方的参数说明:
通用选项
-L license
-h 帮助
-fromats 显示可用的格式,编解码的,协议的
-f fmt 强迫采用格式fmt
-I filename 输入文件
-y 覆盖输出文件
-t duration 设置纪录时间 hh:mm:ss[.xxx]格式的记录时间也支持
-ss position 搜索到指定的时间 [-]hh:mm:ss[.xxx]的格式也支持
-title string 设置标题
-author string 设置作者
-copyright string 设置版权
-comment string 设置评论
-target type 设置目标文件类型(vcd,svcd,dvd) 所有的格式选项(比特率,编解码以及缓冲区大小)自动设置 ,只需要输入如下的就可以了:
ffmpeg -i myfile.avi -target vcd /tmp/vcd.mpg
-hq 激活高质量设置
-itsoffset offset 设置以秒为基准的时间偏移,该选项影响所有后面的输入文件。该偏移被加到输入文件的时戳,定义一个正偏移意味着相应的流被延迟了 offset秒。 [-]hh:mm:ss[.xxx]的格式也支持
[编辑] 视频选项
-b bitrate 设置比特率,缺省200kb/s
-r fps 设置帧频 缺省25 (15 or 29.97)
-s size 设置帧大小 格式为WXH 缺省160X128.下面的简写也可以直接使用:
Sqcif 128X96 qcif 176X144 cif 252X288 4cif 704X576
-aspect aspect 设置横纵比 4:3 16:9 或 1.3333 1.7777
-croptop size 设置顶部切除带大小 像素单位
-cropbottom size –cropleft size –cropright size
-padtop size 设置顶部补齐的大小 像素单位
-padbottom size –padleft size –padright size –padcolor color 设置补齐条颜色(hex,6个16进制的数,红:绿:兰排列,比如 000000代表黑色)
-vn 不做视频记录
-bt tolerance 设置视频码率容忍度kbit/s
-maxrate bitrate设置最大视频码率容忍度
-minrate bitreate 设置最小视频码率容忍度
-bufsize size 设置码率控制缓冲区大小
-vcodec codec 强制使用codec编解码方式。 如果用copy表示原始编解码数据必须被拷贝
-sameq 使用同样视频质量作为源(VBR)
-pass n 选择处理遍数(1或者2)。两遍编码非常有用。第一遍生成统计信息,第二遍生成精确的请求的码率
-passlogfile file 选择两遍的纪录文件名为file
[编辑] 高级视频选项
-g gop_size 设置图像组大小
-intra 仅适用帧内编码
-qscale q 使用固定的视频量化标度(VBR)
-qmin q 最小视频量化标度(VBR)
-qmax q 最大视频量化标度(VBR)
-qdiff q 量化标度间最大偏差 (VBR)
-qblur blur 视频量化标度柔化(VBR)
-qcomp compression 视频量化标度压缩(VBR)
-rc_init_cplx complexity 一遍编码的初始复杂度
-b_qfactor factor 在p和b帧间的qp因子
-i_qfactor factor 在p和i帧间的qp因子
-b_qoffset offset 在p和b帧间的qp偏差
-i_qoffset offset 在p和i帧间的qp偏差
-rc_eq equation 设置码率控制方程 默认tex^qComp
-rc_override override 特定间隔下的速率控制重载
-me method 设置运动估计的方法 可用方法有 zero phods log x1 epzs(缺省) full
-dct_algo algo 设置dct的算法 可用的有
0 FF_DCT_AUTO 缺省的DCT 1 FF_DCT_FASTINT 2 FF_DCT_INT 3 FF_DCT_MMX 4 FF_DCT_MLIB 5 FF_DCT_ALTIVEC
-idct_algo algo 设置idct算法。可用的有
0 FF_IDCT_AUTO 缺省的IDCT 1 FF_IDCT_INT 2 FF_IDCT_SIMPLE 3 FF_IDCT_SIMPLEMMX 4 FF_IDCT_LIBMPEG2MMX 5 FF_IDCT_PS2 6 FF_IDCT_MLIB 7 FF_IDCT_ARM 8 FF_IDCT_ALTIVEC 9 FF_IDCT_SH4 10 FF_IDCT_SIMPLEARM
-er n 设置错误残留为n
1 FF_ER_CAREFULL 缺省 2 FF_ER_COMPLIANT 3 FF_ER_AGGRESSIVE 4 FF_ER_VERY_AGGRESSIVE
-ec bit_mask 设置错误掩蔽为bit_mask,该值为如下值的位掩码
1 FF_EC_GUESS_MVS (default=enabled) 2 FF_EC_DEBLOCK (default=enabled)
-bf frames 使用frames B 帧,支持mpeg1,mpeg2,mpeg4 -mbd mode 宏块决策
0 FF_MB_DECISION_SIMPLE 使用mb_cmp 1 FF_MB_DECISION_BITS 2 FF_MB_DECISION_RD
-4mv 使用4个运动矢量 仅用于mpeg4
-part 使用数据划分 仅用于mpeg4
-bug param 绕过没有被自动监测到编码器的问题
-strict strictness 跟标准的严格性
-aic 使能高级帧内编码 h263+
-umv 使能无限运动矢量 h263+
-deinterlace 不采用交织方法
-interlace 强迫交织法编码 仅对mpeg2和mpeg4有效。当你的输入是交织的并且你想要保持交织以最小图像损失的时候采用该选项。可选的方法是不交织,但是损失更大
-psnr 计算压缩帧的psnr
-vstats 输出视频编码统计到vstats_hhmmss.log
-vhook module 插入视频处理模块 module 包括了模块名和参数,用空格分开
[编辑] 音频选项
-ab bitrate 设置音频码率
-ar freq 设置音频采样率
-ac channels 设置通道 缺省为1
-an 不使能音频纪录
-acodec codec 使用codec编解码
[编辑] 音频/视频捕获选项
-vd device 设置视频捕获设备。比如/dev/video0
-vc channel 设置视频捕获通道 DV1394专用
-tvstd standard 设置电视标准 NTSC PAL(SECAM)
-dv1394 设置DV1394捕获
-av device 设置音频设备 比如/dev/dsp
注:仅在Linux下有效。
[编辑] 高级选项
-map file:stream 设置输入流映射
-debug 打印特定调试信息
-benchmark 为基准测试加入时间
-hex 倾倒每一个输入包
-bitexact 仅使用位精确算法 用于编解码测试
-ps size 设置包大小,以bits为单位
-re 以本地帧频读数据,主要用于模拟捕获设备
-loop 循环输入流。只工作于图像流,用于ffserver测试
===========================================================
Ffmp
eg使用语法
ffmpeg [[options][`-i' input_file]]… {[options] output_file}…
如果没有输入文件,那么视音频捕捉(只在Linux下有效,因为Linux下把音视频设备当作文件句柄来处理)就会起作用。作为通用的规则,选项一般用于下一个特定的文件。如果你给 –b 64选项,改选会设置下一个视频速率。对于原始输入文件,格式选项可能是需要的。缺省情况下,ffmpeg试图尽可能的无损转换,采用与输入同样的音频视频参数来输出。
ffmpeg转换所涉及到的选项较多,可参考ffmpeg选项详解。
ffmpeg支持多种文件格式和多种音频、视频编码器,可参考ffmepg格式详解,(附:常见视频文件格式详解)
[编辑] 视频文件截图
* 截取一张352×240尺寸大小的,格式为jpg的图片
ffmpeg -i test.asf -y -f image2 -t 0.001 -s 352×240 a.jpg
* 把视频的前30帧转换成一个Animated Gif
ffmpeg -i test.asf -vframes 30 -y -f gif a.gif
* 截取指定时间的缩微图
ffmpeg -i test.avi -y -f image2 -ss 8 -t 0.001 -s 350×240 test.jpg
-ss后跟的时间单位为秒
* 转换文件为3GP格式
ffmpeg -y -i test.mpeg -bitexact -vcodec h263 -b 128 -r 15 -s 176×144
-acodec aac -ac 2 -ar 22500 -ab 24 -f 3gp test.3gp
或
ffmpeg -y -i test.wmv -ac 1 -acodec libamr_nb -ar 8000 -ab 12200 -s 176×144 -b 128 -r 15 test.3gp
[编辑] 视频格式转换
* 如何使用 ffmpeg 编码得到高质量的视频
ffmpeg.exe -i "D:VideoFearlessFearless.avi" -target film-dvd -s 720×352
-padtop 64 -padbottom 64 -maxrate 7350000 -b 3700000 -sc_threshold 1000000000
-trellis -cgop -g 12 -bf 2 -qblur 0.3 -qcomp 0.7 -me full -dc 10 -mbd 2
-aspect 16:9 -pass 2 -passlogfile "D:Videoffmpegencode" -an -f mpeg2video "D:Fearless.m2v"
* 转换指定格式文件到FLV格式
ffmpeg.exe -i test.mp3 -ab 56 -ar 22050 -b 500 -r 15 -s 320×240 f:test.flv
ffmpeg.exe -i test.wmv -ab 56 -ar 22050 -b 500 -r 15 -s 320×240 f:test.flv
* 转码解密的VOB
ffmpeg -i snatch_1.vob -f avi -vcodec mpeg4 -b 800 -g 300 -bf 2 -acodec mp3 -ab 128 snatch.avi
上面的命令行将vob的文件转化成avi文件,mpeg4的视频和mp3的音频。注意命令中使用了B帧,所以mpeg4流是divx5兼容的。GOP大小是300意味着29.97帧频下每10秒就有INTRA帧。该映射在音频语言的DVD转码时候尤其有用。
* 同时编码到几种格式并且在输入流和输出流之间建立映射
ffmpeg -i /tmp/a.wav -ab 64 /tmp/a.mp2 -ab 128 /tmp/b.mp2 -map 0:0 -map 0:0
上面的命令行转换一个64Kbits 的a.wav到128kbits的a.mp2 ‘-map file:index’在输出流的顺序上定义了哪一路输入流是用于每一个输出流的。
* 转换文件为3GP格式
ffmpeg -i test.avi -y -b 20 -s sqcif -r 10 -acodec amr_wb -ab 23.85 -ac 1 -ar 16000 test.3gp
注:如果要转换为3GP格式,则ffmpeg在编译时必须加上–enable-amr_nb –enable-amr_wb,详细内容可参考:转换视频为3GPP格式
* 转换文件为MP4格式(支持iPhone/iTouch)
ffmpeg -y -i input.wmv -f mp4 -async 1-s 480×320 -acodec libfaac -vcodec libxvid -qscale 7 -dts_delta_threshold 1 output.mp4
ffmpeg -y -i source_video.avi input -acodec libfaac -ab 128000 -vcodec mpeg4 -b 1200000 -mbd 2 -flags +4mv+trell -aic 2 -cmp 2 -subcmp 2 -s 320×180 -title X final_video.mp4
* 将一段音频与一段视频混合
ffmpeg -i son.wav -i video_origine.avi video_finale.mpg
* 将一段视频转换为DVD格式
ffmpeg -i source_video.avi -target pal-dvd -ps 2000000000 -aspect 16:9 finale_video.mpeg
注:target pal-dvd : Output format ps 2000000000 maximum size for the output file, in bits (here, 2 Gb) aspect 16:9 : Widescreen
* 转换一段视频为DivX格式
ffmpeg -i video_origine.avi -s 320×240 -vcodec msmpeg4v2 video_finale.avi
* Turn X images to a video sequence
ffmpeg -f image2 -i image%d.jpg video.mpg
注:This command will transform all the images from the current directory (named image1.jpg, image2.jpg, etc…) to a video file named video.mpg.
* Turn a video to X images
ffmpeg -i video.mpg image%d.jpg
注:This command will generate the files named image1.jpg, image2.jpg, …
The following image formats are also availables : PGM, PPM, PAM, PGMYUV, JPEG, GIF, PNG, TIFF, SGI.
[编辑] 屏幕录制
* 使用ffmpeg录像屏幕
ffmpeg -vcodec mpeg4 -b 1000 -r 10 -g 300 -vd x11:0,0 -s 1024×768 ~/test.avi
:其中,-vd x11:0,0 指录制所使用的偏移为 x=0 和 y=0,-s 1024×768 指录制视频的大小为 1024×768。录制的视频文件为 test.avi,将保存到用户主目录中
如果你只想录制一个应用程序窗口或者桌面上的一个固定区域,那么可以指定偏移位置和区域大小。使用xwininfo -frame命令可以完成查找上述参数。
* 重新调整视频尺寸大小
ffmpeg -vcodec mpeg4 -b 1000 -r 10 -g 300 -i ~/test.avi -s 800×600 ~/test-800-600.avi
注:ffmpeg的屏幕录制功能只能在Linux环境下有效。
[编辑] 视频采集
* 把摄像头的实时视频录制下来,存储为文件
ffmpeg -f video4linux -s 320*240 -r 10 -i /dev/video0 test.asf
=====================================================================
有些参数官方列表里没有,下面是我个人的参数说明
usage: ffmpeg [[infile options] -i infile]… {[outfile options] outfile}…
Hyper fast Audio and Video encoder
Main options:
-L show license 显示许可证
-h show help 帮助
-version show version 版本
-formats show available formats, codecs, protocols, … 显示可用的格式,编解码器,协议,…
-f fmt force format 福莫特罗力格式
-i filename input file name 输入文件名
-y overwrite output files 覆盖输出文件
-t duration record or transcode "duration" seconds of audio/video 记录或转码“时间”秒的音频/视频
-fs limit_size set the limit file size in bytes 字节为单位设置文件大小限制
-ss time_off set the start time offset 设置开始时间偏移
-itsoffset time_off set the input ts offset 设置输入TS偏移
-itsscale stream:scale set the input ts scale 规模设置输入TS规模
-timestamp time set the timestamp ('now' to set the current time) 时间戳设置时间戳
-metadata string=string add metadata 字符串添加元数据
-dframes number set the number of data frames to record 数据帧的数量来记录
-v number set ffmpeg verbosity level FFmpeg的冗赘级别
-loglevel loglevel set libav* logging level 设置libav *日志记录级别
-target type specify target file type ("vcd", "svcd", "dvd", "dv", "dv50", "pal-vcd", "ntsc-svcd", …) 指定目标文件类型
-xerror exit on error 关于错误退出
Advanced options:
-map file:stream[:syncfile:syncstream] set input stream mapping 设置输入流映射
-map_meta_data outfile:infile set meta data information of outfile from infile infile集的元数据指向OutFile信息infile
-benchmark add timings for benchmarking 添加基准计时
-dump
dump each input packet 转储每个输入包
-hex when dumping packets, also dump the payload 倾销包时,有效载荷也转储
-re read input at native frame rate 在本地读取输入帧速率
-loop_input loop (current only works with images) 循环(目前只适用于与图像)
-loop_output number of times to loop output in formats that support looping (0 loops forever) 次数循环的格式,支持循环(0循环永远输出)
-threads count thread count 线程数
-vsync video sync method 视频同步方法
-async audio sync method 异步音频同步方法
-adrift_threshold threshold audio drift threshold 阈值音频漂移
-vglobal video global header storage type 视频全球头存储类型
-copyts copy timestamps 复制时间戳
-shortest finish encoding within shortest input 最短完成输入编码
-dts_delta_threshold threshold timestamp discontinuity delta threshold 阈值增量连续时间戳
-programid desired program number 所需的程序数目
-copyinkf copy initial non-keyframes 复制初始非关键帧
-muxdelay seconds set the maximum demux-decode delay 秒设置最大的分离器,解码延迟
-muxpreload seconds set the initial demux-decode delay 秒设置初始分离器,解码延迟
Video options:
-b bitrate set bitrate (in bits/s) 以比特/设置码率
-vb bitrate set bitrate (in bits/s) 设置比特率(以比特/秒)
-vframes number set the number of video frames to record 设置视频帧的数量记录
-r rate set frame rate (Hz value, fraction or abbreviation) 设置帧速率(赫兹值,分数或缩写)
-s size set frame size (WxH or abbreviation) 设置帧大小(WxH或缩写)
-aspect aspect set aspect ratio (4:3, 16:9 or 1.3333, 1.7777) 设置长宽比(4:3,16:9或者1.3333,1.7777)
-croptop size set top crop band size (in pixels) 顶盒作物带大小
-cropbottom size set bottom crop band size (in pixels) 设置底部作物带大小
-cropleft size set left crop band size (in pixels) 设置左作物带大小
-cropright size set right crop band size (in pixels) 设置权作物带大小
-padtop size set top pad band size (in pixels) 机顶盒垫带大小
-padbottom size set bottom pad band size (in pixels) 设置底垫带大小
-padleft size set left pad band size (in pixels) 设置左垫带大小
-padright size set right pad band size (in pixels) 设置权垫带大小
-padcolor color set color of pad bands (Hex 000000 thru FFFFFF) 设置垫带颜色(十六进制000000通过000000)
-vn disable video 禁用视频
-vcodec codec force video codec ('copy' to copy stream) 编解码器视频编解码器('拷贝'复制流)
-sameq use same video quality as source (implies VBR) 使用相同的视频质量作为源(意味着VBR)
-pass n select the pass number (1 or 2) 选择的遍数
-passlogfile prefix select two pass log file name prefix 选择两个阶段使用的日志文件名前缀
-newvideo add a new video stream to the current output stream 添加一个新的视频流电流输出流
Advanced Video options:
-pix_fmt format set pixel format, 'list' as argument shows all the pixel formats supported 设置像素格式,'名单参数'显示所有受支持的像素格式
-intra use only intra frames 只使用内部帧
-vdt n discard threshold 丢弃门槛
-qscale q use fixed video quantizer scale (VBR) 使用固定的视频量化表
-rc_override override rate control override for specific intervals 覆盖率为特定的时间间隔控制重写
-me_threshold threshold motion estimaton threshold 阈值的议案
-deinterlace deinterlace pictures 隔行扫描的图片
-psnr calculate PSNR of compressed frames 计算压缩帧的信噪比
-vstats dump video coding statistics to file 转储视频编码统计到文件
-vstats_file file dump video coding statistics to file 转储文件的视频编码统计到文件
-intra_matrix matrix specify intra matrix coeffs 矩阵指定内部矩阵coeffs
-inter_matrix matrix specify inter matrix coeffs 矩阵除指定矩阵coeffs
-top top=1/bottom=0/auto=-1 field first
-dc precision intra_dc_precision 直流精度
-vtag fourcc/tag force video tag/fourcc 标签力量视频标签/ fourcc值
-qphist show QP histogram 显示量化直方图
-force_fps force the selected framerate, disable the best supported framerate selection 选定的帧率,禁用支持帧率最好的选择
-vbsf bitstream_filter
-vpre preset set the video options to the indicated preset 预置设置视频选项指定的预设
Audio options:
-ab bitrate set bitrate (in bits/s) 设置比特率(以比特/秒)
-aframes number set the number of audio frames to record 设置音频帧的数量来记录
-aq quality set audio quality (codec-specific) 设置音频质量(编解码器专用)
-ar rate set audio sampling rate (in Hz) 设置音频采样率(以赫兹)
-ac channels set number of audio channels 设置的音频通道数
-an disable audio 禁用音频
-acodec codec force audio codec ('copy' to copy stream) 音频编解码器编解码器('拷贝'复制流)
-vol volume change audio volume (256=normal) 变化音量(256 =正常)
-newaudio add a new audio stream to the current output stream 添加一个新的音频流到当前输出流
-alang code set the ISO 639 language code (3 letters) of the current audio stream 代码集的ISO 639语言代码(3字母当前音频流)
Advanced Audio options:
-atag fourcc/tag force audio tag/fourcc 标签力量音频标签
-sample_fmt format set sample format, 'list' as argument shows all the sample formats supported 设置采样格式,'名单参数'显示所有样本格式的支持
-absf bitstream_filter
-apre preset set the audio options to the indicated preset 预置设置音频选项指定的预设
Subtitle options:
-sn disable subtitle 禁用字幕
-scodec codec force subtitle codec ('copy' to copy stream) 添加一个新的字幕流到当前输出流
-newsubtitle add a new subtitle stream to the current output stream 编解码器的字幕解码器('拷贝'复制流)
-slang code set the ISO 639 language code (3 letters) of the current subtitle stream 代码集的ISO 639语言代码(3字母当前字幕流)
-stag fourcc/tag force subtitle tag/fourcc 标签力量字幕标签/ fourcc值
-sbsf bitstream_filter
-spre preset set the subtitle options to the indicated preset 预置设置字幕选项指定的预设
Audio/Video grab options:
-vc channel set video grab channel (DV1394 only) 设置视频抓斗通道(DV1394只)
-tvstd standard set television standard (NTSC, PAL (SECAM)) 设置电视标准(支持NTSC,PAL(SECAM制式))
-isync sync read on input 同步输入
AVCodecContext AVOptions:
-b <int> E.V.. set bitrate (in bits/s) 设置比特率
-ab <int> E..A. set bitrate (in bits/s) 设置比特率
-bt <int> E.V.. set video bitrate tolerance (in bits/s)
-flags <flags>
EDVA. 标志
mv4 E.V.. use four motion vector by macroblock (mpeg4)
obmc E.V.. use overlapped block motion compensation (h263+)
qpel E.V.. use 1/4 pel motion compensation
loop E.V.. use loop filter
gmc E.V.. use gmc
mv0 E.V.. always try a mb with mv=<0,0>
part E.V.. use data partitioning
gray EDV.. only decode/encode grayscale
psnr E.V.. error[?] variables will be set during encoding
naq E.V.. normalize adaptive quantization
ildct E.V.. use interlaced dct
low_delay EDV.. force low delay
alt E.V.. enable alternate scantable (mpeg2/mpeg4)
global_header E.VA. place global headers in extradata instead of every keyframe
bitexact EDVAS use only bitexact stuff (except (i)dct)
aic E.V.. h263 advanced intra coding / mpeg4 ac prediction
umv E.V.. use unlimited motion vectors
cbp E.V.. use rate distortion optimization for cbp
qprd E.V.. use rate distortion optimization for qp selection
aiv E.V.. h263 alternative inter vlc
slice E.V..
ilme E.V.. interlaced motion estimation
scan_offset E.V.. will reserve space for svcd scan offset user data
cgop E.V.. closed gop
-me_method <int> E.V.. set motion estimation method
zero E.V.. zero motion estimation (fastest)
full E.V.. full motion estimation (slowest)
epzs E.V.. EPZS motion estimation (default)
esa E.V.. esa motion estimation (alias for full)
tesa E.V.. tesa motion estimation
dia E.V.. dia motion estimation (alias for epzs)
log E.V.. log motion estimation
phods E.V.. phods motion estimation
x1 E.V.. X1 motion estimation
hex E.V.. hex motion estimation
umh E.V.. umh motion estimation
iter E.V.. iter motion estimation
-g <int> E.V.. set the group of picture size
-cutoff <int> E..A. set cutoff bandwidth
-frame_size <int> E..A.
-qcomp <float> E.V.. video quantizer scale compression (VBR)
-qblur <float> E.V.. video quantizer scale blur (VBR)
-qmin <int> E.V.. min video quantizer scale (VBR)
-qmax <int> E.V.. max video quantizer scale (VBR)
-qdiff <int> E.V.. max difference between the quantizer scale (VBR)
-bf <int> E.V.. use 'frames' B frames
-b_qfactor <float> E.V.. qp factor between p and b frames
-rc_strategy <int> E.V.. ratecontrol method
-b_strategy <int> E.V.. strategy to choose between I/P/B-frames
-hurry_up <int> .DV..
-ps <int> E.V.. rtp payload size in bytes
-bug <flags> .DV.. workaround not auto detected encoder bugs
autodetect .DV..
old_msmpeg4 .DV.. some old lavc generated msmpeg4v3 files (no autodetection)
xvid_ilace .DV.. Xvid interlacing bug (autodetected if fourcc==XVIX)
ump4 .DV.. (autodetected if fourcc==UMP4)
no_padding .DV.. padding bug (autodetected)
amv .DV..
ac_vlc .DV.. illegal vlc bug (autodetected per fourcc)
qpel_chroma .DV..
std_qpel .DV.. old standard qpel (autodetected per fourcc/version)
qpel_chroma2 .DV..
direct_blocksize .DV.. direct-qpel-blocksize bug (autodetected per fourcc/version)
edge .DV.. edge padding bug (autodetected per fourcc/version)
hpel_chroma .DV..
dc_clip .DV..
ms .DV.. workaround various bugs in microsofts broken decoders
-lelim <int> E.V.. single coefficient elimination threshold for luminance (negative values also consider dc coefficient)
-celim <int> E.V.. single coefficient elimination threshold for chrominance (negative values also consider dc coefficient)
-strict <int> EDVA. how strictly to follow the standards
very EDV.. strictly conform to a older more strict version of the spec or reference software
strict EDV.. strictly conform to all the things in the spec no matter what consequences
normal EDV..
inofficial EDV.. allow inofficial extensions
experimental EDV.. allow non standardized experimental things
-b_qoffset <float> E.V.. qp offset between P and B frames
-er <int> .DVA. set error detection aggressivity
careful .DV..
compliant .DV..
aggressive .DV..
very_aggressive .DV..
-mpeg_quant <int> E.V.. use MPEG quantizers instead of H.263
-qsquish <float> E.V.. how to keep quantizer between qmin and qmax (0 = clip, 1 = use differentiable function)
-rc_qmod_amp <float> E.V.. experimental quantizer modulation
-rc_qmod_freq <int> E.V.. experimental quantizer modulation
-rc_eq <string> E.V.. set rate control equation
-maxrate <int> E.V.. set max video bitrate tolerance (in bits/s)
-minrate <int> E.V.. set min video bitrate tolerance (in bits/s)
-bufsize <int> E.VA. set ratecontrol buffer size (in bits)
-rc_buf_aggressivity <float> E.V.. currently useless
-i_qfactor <float> E.V.. qp factor between P and I frames
-i_qoffset <float> E.V.. qp offset between P and I frames
-rc_init_cplx <float> E.V.. initial complexity for 1-pass encoding
-dct <int> E.V.. DCT algorithm
auto E.V.. autoselect a good one (default)
fastint E.V.. fast integer
int E.V.. accurate integer
mmx E.V..
mlib E.V..
altivec E.V..
faan E.V.. floating point AAN DCT
-lumi_mask <float> E.V.. compresses bright areas stronger than medium ones
-tcplx_mask <float> E.V.. temporal complexity masking
-scplx_mask <float> E.V.. spatial complexity masking
-p_mask <float> E.V.. inter masking
-dark_mask <float> E.V.. compresses dark areas stronger than medium ones
-idct <int> EDV.. select IDCT implementation
auto EDV..
int EDV..
simple EDV..
simplemmx EDV..
libmpeg2mmx EDV..
ps2 EDV..
mlib EDV..
arm EDV..
altivec EDV..
sh4 EDV..
simplearm EDV..
simplearmv5te EDV..
simplearmv6 EDV..
simpleneon EDV..
simplealpha EDV..
h264 EDV..
vp3 EDV..
ipp EDV..
xvidmmx EDV..
faani EDV.. floating point AAN IDCT
-ec <flags> .DV.. set error concealment strategy
guess_mvs .DV.. iterative motion vector (MV) search (slow)
deblock .DV.. use strong deblock filter for damaged MBs
-pred <int> E.V.. prediction method
left E.V..
plane E.V..
median E.V..
-aspect <rational> E.V.. sample aspect ratio
-debug <flags> EDVAS print specific debug info
pict .DV.. picture info
rc E.V.. rate control
bitstream .DV..
mb_type .DV.. macroblock (MB) type
qp .DV.. per-block quantization parameter (QP)
mv .DV.. motion vector
dct_coeff .DV..
skip .DV..
startcode .DV..
pts .DV..
er .DV.. error recognition
mmco .DV.. memory management control operations (H.264)
bugs .DV..
vis_qp .DV.. visualize quantization parameter (QP), lower QP are tinted greener
vis_mb_type .DV.. visualize block types
buffers .DV.. picture buffer allocations
-vismv <int> .DV.. visualize motion vectors (MVs)
pf .DV.. forward predicted MVs of P-frames
bf .DV.. forward predicted MVs of B-frames
bb .DV.. backward predicted MVs of B-frames
-mb_qmin <int> E.V.. obsolete, use qmin
-mb_qmax <int> E.V.. obsolete, use qmax
-cmp <int> E.V.. full pel me compare function
sad E.V.. sum of absolute differences, fast (default)
sse E.V.. sum of squared errors
satd E.V.. sum of absolute Hadamard transformed differences
dct E.V.. sum of absolute DCT transformed differences
psnr E.V.. sum of squared quantization errors (avoid, low quality)
bit E.V.. number of bits needed for the block
rd E.V.. rate distortion optimal, slow
zero E.V.. 0
vsad E.V.. sum of absolute vertical differences
vsse E.V.. sum of squared vertical differences
nsse E.V.. noise preserving sum of squared differences
w53 E.V.. 5/3 wavelet, only used in snow
w97 E.V.. 9/7 wavelet, only used in snow
dctmax E.V..
chroma E.V..
-subcmp <int> E.V.. sub pel me compare function
sad E.V.. sum of absolute differences, fast (default)
sse E.V.. sum of squared errors
satd E.V.. sum of absolute Hadamard transformed differences
dct E.V.. sum of absolute DCT transformed differences
psnr E.V.. sum of squared quantization errors (avoid, low quality)
bit E.V.. number of bits needed for the block
rd E.V.. rate distortion optimal, slow
zero E.V.. 0
vsad E.V.. sum of absolute vertical differences
vsse E.V.. sum of squared vertical differences
nsse E.V.. noise preserving sum of squared differences
w53 E.V.. 5/3 wavelet, only used in snow
w97 E.V.. 9/7 wavelet, only used in snow
dctmax E.V..
chroma E.V..
-mbcmp <int> E.V.. macroblock compare function
sad E.V.. sum of absolute differences, fast (default)
sse E.V.. sum of squared errors
satd E.V.. sum of absolute Hadamard transformed differences
dct E.V.. sum of absolute DCT transformed differences
psnr E.V.. sum of squared quantization errors (avoid, low quality)
bit E.V.. number of bits needed for the block
rd E.V.. rate distortion optimal, slow
zero E.V.. 0
vsad E.V.. sum of absolute vertical differences
vsse E.V.. sum of squared vertical differences
nsse E.V.. noise preserving sum of squared differences
w53 E.V.. 5/3 wavelet, only used in snow
w97 E.V.. 9/7 wavelet, only used in snow
dctmax E.V..
chroma E.V..
-ildctcmp <int> E.V.. interlaced dct compare function
sad E.V.. sum of absolute differences, fast (default)
sse E.V.. sum of squared errors
satd E.V.. sum of absolute Hadamard transformed differences
dct E.V.. sum of absolute DCT transformed differences
psnr E.V.. sum of squared quantization errors (avoid, low quality)
bit E.V.. number of bits needed for the block
rd E.V.. rate distortion optimal, slow
zero E.V.. 0
vsad E.V.. sum of absolute vertical differences
vsse E.V.. sum of squared vertical differences
nsse E.V.. noise preserving sum of squared differences
w53 E.V.. 5/3 wavelet, only used in snow
w97 E.V.. 9/7 wavelet, only used in snow
dctmax E.V..
chroma E.V..
-dia_size <int> E.V.. diamond type & size for motion estimation
-last_pred <int> E.V.. amount of motion predictors from the previous frame
-preme <int> E.V.. pre motion estimation
-precmp <int> E.V.. pre motion estimation compare function
sad E.V.. sum of absolute differences, fast (default)
sse E.V.. sum of squared errors
satd E.V.. sum of absolute Hadamard transformed differences
dct E.V.. sum of absolute DCT transformed differences
psnr E.V.. sum of squared quantization errors (avoid, low quality)
bit E.V.. number of bits needed for the block
rd E.V.. rate distortion optimal, slow
zero E.V.. 0
vsad E.V.. sum of absolute vertical differences
vsse E.V.. sum of squared vertical differences
nsse E.V.. noise preserving sum of squared differences
w53 E.V.. 5/3 wavelet, only used in snow
w97 E.V.. 9/7 wavelet, only used in snow
dctmax E.V..
chroma E.V..
-pre_dia_size <int> E.V.. diamond type & size for motion estimation pre-pass
-subq <int> E.V.. sub pel motion estimation quality
-me_range <int> E.V.. limit motion vectors range (1023 for DivX player)
-ibias <int> E.V.. intra quant bias
-pbias
<int> E.V.. inter quant bias
-coder <int> E.V..
vlc E.V.. variable length coder / huffman coder
ac E.V.. arithmetic coder
raw E.V.. raw (no encoding)
rle E.V.. run-length coder
deflate E.V.. deflate-based coder
-context <int> E.V.. context model
-mbd <int> E.V.. macroblock decision algorithm (high quality mode)
simple E.V.. use mbcmp (default)
bits E.V.. use fewest bits
rd E.V.. use best rate distortion
-sc_threshold <int> E.V.. scene change threshold
-lmin <int> E.V.. min lagrange factor (VBR)
-lmax <int> E.V.. max lagrange factor (VBR)
-nr <int> E.V.. noise reduction
-rc_init_occupancy <int> E.V.. number of bits which should be loaded into the rc buffer before decoding starts
-inter_threshold <int> E.V..
-flags2 <flags> EDVA.
fast E.V.. allow non spec compliant speedup tricks
sgop E.V.. strictly enforce gop size
noout E.V.. skip bitstream encoding
local_header E.V.. place global headers at every keyframe instead of in extradata
bpyramid E.V.. allows B-frames to be used as references for predicting
wpred E.V.. weighted biprediction for b-frames (H.264)
mixed_refs E.V.. one reference per partition, as opposed to one reference per macroblock
dct8x8 E.V.. high profile 8×8 transform (H.264)
fastpskip E.V.. fast pskip (H.264)
aud E.V.. access unit delimiters (H.264)
skiprd E.V.. RD optimal MB level residual skipping
ivlc E.V.. intra vlc table
drop_frame_timecode E.V..
non_linear_q E.V.. use non linear quantizer
reservoir E..A. use bit reservoir
-error <int> E.V..
-antialias <int> .DV.. MP3 antialias algorithm
auto .DV..
fastint .DV..
int .DV..
float .DV..
-qns <int> E.V.. quantizer noise shaping
-threads <int> EDV..
-mb_threshold <int> E.V.. macroblock threshold
-dc <int> E.V.. intra_dc_precision
-nssew <int> E.V.. nsse weight
-skip_top <int> .DV.. number of macroblock rows at the top which are skipped
-skip_bottom <int> .DV.. number of macroblock rows at the bottom which are skipped
-profile <int> E.VA.
unknown E.VA.
aac_main E..A.
aac_low E..A.
aac_ssr E..A.
aac_ltp E..A.
-level <int> E.VA.
unknown E.VA.
-lowres <int> .DV.. decode at 1= 1/2, 2=1/4, 3=1/8 resolutions
-skip_threshold <int> E.V.. frame skip threshold
-skip_factor <int> E.V.. frame skip factor
-skip_exp <int> E.V.. frame skip exponent
-skipcmp <int> E.V.. frame skip compare function
sad E.V.. sum of absolute differences, fast (default)
sse E.V.. sum of squared errors
satd E.V.. sum of absolute Hadamard transformed differences
dct E.V.. sum of absolute DCT transformed differences
psnr E.V.. sum of squared quantization errors (avoid, low quality)
bit E.V.. number of bits needed for the block
rd E.V.. rate distortion optimal, slow
zero E.V.. 0
vsad E.V.. sum of absolute vertical differences
vsse E.V.. sum of squared vertical differences
nsse E.V.. noise preserving sum of squared differences
w53 E.V.. 5/3 wavelet, only used in snow
w97 E.V.. 9/7 wavelet, only used in snow
dctmax E.V..
chroma E.V..
-border_mask <float> E.V.. increases the quantizer for macroblocks close to borders
-mblmin <int> E.V.. min macroblock lagrange factor (VBR)
-mblmax <int> E.V.. max macroblock lagrange factor (VBR)
-mepc <int> E.V.. motion estimation bitrate penalty compensation (1.0 = 256)
-skip_loop_filter <int> .DV..
none .DV..
default .DV..
noref .DV..
bidir .DV..
nokey .DV..
all .DV..
-skip_idct <int> .DV..
none .DV..
default .DV..
noref .DV..
bidir .DV..
nokey .DV..
all .DV..
-skip_frame <int> .DV..
none .DV..
default .DV..
noref .DV..
bidir .DV..
nokey .DV..
all .DV..
-bidir_refine <int> E.V.. refine the two motion vectors used in bidirectional macroblocks
-brd_scale <int> E.V.. downscales frames for dynamic B-frame decision
-crf <float> E.V.. enables constant quality mode, and selects the quality (x264)
-cqp <int> E.V.. constant quantization parameter rate control method
-keyint_min <int> E.V.. minimum interval between IDR-frames (x264)
-refs <int> E.V.. reference frames to consider for motion compensation (Snow)
-chromaoffset <int> E.V.. chroma qp offset from luma
-bframebias <int> E.V.. influences how often B-frames are used
-trellis <int> E.VA. rate-distortion optimal quantization
-directpred <int> E.V.. direct mv prediction mode – 0 (none), 1 (spatial), 2 (temporal), 3 (auto)
-complexityblur <float> E.V.. reduce fluctuations in qp (before curve compression)
-deblockalpha <int> E.V.. in-loop deblocking filter alphac0 parameter
-deblockbeta <int> E.V.. in-loop deblocking filter beta parameter
-partitions <flags> E.V.. macroblock subpartition sizes to consider
parti4x4 E.V..
parti8x8 E.V..
partp4x4 E.V..
partp8x8 E.V..
partb8x8 E.V..
-sc_factor <int> E.V.. multiplied by qscale for each frame and added to scene_change_score
-mv0_threshold <int> E.V..
-b_sensitivity <int> E.V.. adjusts sensitivity of b_frame_strategy 1
-compression_level <int> E.VA.
-use_lpc <int> E..A. sets whether to use LPC mode (FLAC)
-lpc_coeff_precision <int> E..A. LPC coefficient precision (FLAC)
-min_prediction_order <int> E..A.
-max_prediction_order <int> E..A.
-prediction_order_method <int> E..A. search method for selecting prediction order
-min_partition_order <int> E..A.
-max_partition_order <int> E..A.
-timecode_frame_start <int64> E.V.. GOP timeco
de frame start number, in non drop frame format
-request_channels <int> .D.A. set desired number of audio channels
-drc_scale <float> .D.A. percentage of dynamic range compression to apply
-channel_layout <int64> ED.A.
-request_channel_layout <int64> .D.A.
-rc_max_vbv_use <float> E.V..
-rc_min_vbv_use <float> E.V..
-ticks_per_frame <int> EDVA.
-color_primaries <int> EDV..
-color_trc <int> EDV..
-colorspace <int> EDV..
-color_range <int> EDV..
-chroma_sample_location <int> EDV..
AVFormatContext AVOptions:
-probesize <int> .D… set probing size
-muxrate <int> E…. set mux rate
-packetsize <int> E…. set packet size
-fflags <flags> ED…
ignidx .D… ignore index
genpts .D… generate pts
-track <int> E…. set the track number
-year <int> E…. set the year
-analyzeduration <int> .D… how many microseconds are analyzed to estimate duration
-cryptokey <binary> .D… decryption key
-indexmem <int> .D… max memory used for timestamp index (per stream)
-rtbufsize <int> .D… max memory used for buffering real-time frames
-fdebug <flags> ED… print specific debug info
ts ED…
SWScaler AVOptions:
-sws_flags <flags> E.V.. scaler/cpu flags
fast_bilinear E.V.. fast bilinear
bilinear E.V.. bilinear
bicubic E.V.. bicubic
experimental E.V.. experimental
neighbor E.V.. nearest neighbor
area E.V.. averaging area
bicublin E.V.. luma bicubic, chroma bilinear
gauss E.V.. gaussian
sinc E.V.. sinc
lanczos E.V.. lanczos
spline E.V.. natural bicubic spline
print_info E.V.. print info
accurate_rnd E.V.. accurate rounding
mmx E.V.. MMX SIMD acceleration
mmx2 E.V.. MMX2 SIMD acceleration
3dnow E.V.. 3DNOW SIMD acceleration
altivec E.V.. AltiVec SIMD acceleration
bfin E.V.. Blackfin SIMD acceleration
full_chroma_int E.V.. full chroma interpolation
full_chroma_inp E.V.. full chroma input
bitexact E.V..