ffmpeg选项

为君一笑 提交于 2019-12-30 12:08:36

命令语法

ffmpeg [全局选项] {[输入文件选项] -i 输入文件} … {[输出文件选项] 输出文件} …

流拷贝

流拷贝(Stream copy)是一种对指定流数据仅仅进行复制的拷贝(copy)模式。这种情况下ffmpeg不会对指定流进行解码和编码步骤,而仅仅是分离和混合数据包。

常规选项

常规选项也可以用在ffmpeg项目中其他ff*工具,例如ffplayer
-re:按视频帧率的速度读取输入
-c copy:直接将输入流拷贝到输出,仅涉及解复用和复用,不涉及解码和编码
-vcodec codec: 强制使用codec编解码方式。如果用copy表示原始编解码数据必须被拷贝
-h:显示帮助,一个附加选项可以指定帮助显示的模式,如果没有参数,则是基本选项

  • long:在基本选项说明基础上增加高级选项说明
  • full:输出完整的选项列表,包括编(解)码器,分离器混合器以及滤镜等等的共享和私有选项
  • decoder=decoder_name:输出指定解码器名的详细信息。-decoders来获取支持的所有解码器名
  • encoder=encoder_name:输出指定编码器名的详细信息。-encoders来获取支持的所有编码器名
  • demuxer=demuxer_name:输出指定分离器名详细信息。-formats来获取支持的所有分离器和混合器
  • muxer=muxer_name:输出指定混合器名详细信息。
  • filter=filter_name:输出指定滤镜名的详细信息。-filters来获取支持的所有滤镜

-devices:显示有效设备
-protocols:显示支持的协议
-pix_fmts:显示有效的像素(pixel)格式
-sample_fmts:显示有效的采样格式
-layouts:显示信道名字和信道布局
-v loglevel :设置日志层次。日志层级是一个字符串或数值,有以下可能值

  • quiet,-8,什么都不输出,是无声的
  • panic,0,仅显示造成进程失败的致命错误,它当前不能使用
  • fatal,8,仅仅显示致命错误,这些错误使得处理不能继续
  • error,16,显示所有的错误,包括可以回收的错误(进程还可以继续的)
  • warning,24,显示所有警告和错误,任何错误或者意外事件相关信息均被显示
  • info,32,显示过程中的信息,还包括警告和错误,则是默认值
  • verbose,40,类似info,但更冗长
  • debug,48,显示所有,包括调试信息
  • trace,56

-report:复制所有命令行和控制台输出到当前目录下名为program-YYYMMDD-HHMMSS.log文件中。这常用于报告bug,所以一般会同时设置-v loglevel

AV选项

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!