2023-02-10 ffmpeg、ffplay 常用命令参数说明

ffmpeg:Hyper fast Audio and Video encoder(超快音视频编码器)

ffplay:Simple media player (简单媒体播放器)

ffprobe:Simple multimedia streams analyzer(简单多媒体流分析器)

ffmpeg基本信息及使用

 ffmpeg查看帮助文档:

基本信息:ffmpeg -h

高级信息:ffmpeg -h long

所有信息:ffmpeg -h full

输出信息到文件ffmpeg_h_full.log查看: ffmepg -h full > ffmpeg_h_full.log

查看具体分类所支持的参数 ffmepg -h type=name

比如

ffmpeg -h muxer=flv

ffmpeg -h filter=atempo (atempo调整音频播放速率)

ffmpeg -h encoder=libx264

ffmpeg命令分类查询

-version 显示版本

-bsfs 显示可用比特流filter

-buildconf 显示编译配置

-protocols 显示可用的协议

-formats 显示可用格式 (muxers+demuxers)

-filters 显示可用的过滤器

-pix_fmts 显示可用的像素格式

-muxers 显示可用复用器

-demuxers 显示可用解复用器

-layouts 显示标准声道名称

-sample_fmts 显示可用的音频采样格式

-codecs 显示可用编解码器 (decoders+encoders)

-decoders 显示可用解码器

-encoders 显示可用编码器

-colors 显示可用的颜色名称

ffmpeg基本使用案例:修改视频编码格式和分辨率

ffmpeg -i test_1920x1080.mp4 -acodec copy -vcodec libx264 -s 1280x720 test_1280x720.flv

ffmpeg -i test_1920x1080.mp4 -acodec copy -vcodec libx265 -s 1280x720 test_1280x720.mkv

ffplay播放器控制

q, ESC退出播放

t 循环切换字幕流

f 全屏切换

c 循环切换节目

p, SPC 暂停

w 循环切换过滤器或显示模式

m 静音切换

s 逐帧播放

9, 0 9减少音量,0增加音量

left/right 向后/向前拖动10秒

down/up 向后/向前拖动1分钟

a 循环切换音频流

鼠标右键单击:拖动与显示宽度对应百分比的文件进行播放

鼠标左键双击:全屏切换

v 循环切换视频流

ffplay命令选项

-x width 强制显示宽度。

-y height 强制显示高度。

-pixel_format format 格式设置像素格式。 

-video_size size帧尺寸 设置显示帧存储(WxH格式),仅适用于类似原始YUV等没有包含帧大小(WxH)的视频。

比如: ffplay -pixel_format yuv420p -video_size 320x240 -framerate 5 yuv420p_320x240.yuv

-fs 以全屏模式启动。

-an 禁用音频(不播放声音)

-vn 禁用视频(不播放视频)

-sn 禁用字幕(不显示字幕)

-ss pos 定位到某个时间点播放,注意时间单位:比如'55' 55seconds, '12:03:45' ,12 hours, 03 minutes and 45 seconds, '23.189' 23.189second

-t duration 设置播放视频/音频长度,时间单位如 -ss选项

-bytes 按字节进行定位拖动(0=off 1=on -1=auto)。

-seek_interval interval 自定义左/右键定位拖动间隔(以秒为单位),默认值为10秒(代码没有看到实现)

-nodisp 关闭图形化显示窗口,视频将不显示

-noborder 无边框窗口

-volume vol 设置起始音量。音量范围[0 ~100]

-f fmt 强制使用设置的格式进行解析。比如-f s16le

-window_title title 设置窗口标题(默认为输入文件名)

-loop number设置播放循环次数

-showmode mode 设置显示模式,可用的模式值:0 显示视频,1 显示音频波形,2 显示音频频谱。缺省为0,如果视频不存在则自动选择2

-vf filtergraph 设置视频滤镜

-af filtergraph 设置音频滤镜

-stats 打印多个回放统计信息,包括显示流持续时间,编解码器参数,流中的当前位置,以及音频/视频同步差值。默认情况下处于启用状态,要显式禁用它则需要指定-nostats。。

-fast 非标准化规范的多媒体兼容优化。

-genpts 生成pts。

-sync type 同步类型 将主时钟设置为audio(type=audio),video(type=video)或external(type=ext),默认是audio为主时钟。

-ast audio_stream_specifier 指定音频流索引,比如-ast 3,播放流索引为3的音频流

-vst video_stream_specifier指定视频流索引,比如-vst 4,播放流索引为4的视频流

-sst subtitle_stream_specifier 指定字幕流索引,比如-sst 5,播放流索引为5的字幕流

-autoexit 视频播放完毕后退出

-exitonkeydown 键盘按下任何键退出播放

-exitonmousedown 鼠标按下任何键退出播放

-codec:media_specifier codec_name 强制使用设置的多媒体解码器,media_specifier可用值为a(音频), v(视频)和s字幕。比如-codec:v h264_qsv 强制视频采用h264_qsv解码

-acodec codec_name 强制使用设置的音频解码器进行音频解码

-vcodec codec_name 强制使用设置的视频解码器进行视频解码

-scodec codec_name 强制使用设置的字幕解码器进行字幕解码

-autorotate 根据文件元数据自动旋转视频。值为0或1 ,默认为1。

-framedrop 如果视频不同步则丢弃视频帧。当主时钟非视频时钟时默认开启。若需禁用则使用 -noframedrop

-infbuf 不限制输入缓冲区大小。尽可能快地从输入中读取尽可能多的数据。播放实时流时默认启用,如果未及时读取数据,则可能会丢弃数据。此选项将不限制缓冲区的大小。若需禁用则使用-noinfbufffplay命

ffplay简单过滤器

视频旋转

ffplay -i test.mp4 -vf transpose=1

视频反转

ffplay test.mp4 -vf hflip

ffplay test.mp4 -vf vflip

视频旋转和反转

ffplay test.mp4 -vf hflip,transpose=1

音频变速播放

ffplay -i test.mp4 -af atempo=2

视频变速播放

ffplay -i test.mp4 -vf setpts=PTS/2

音视频同时变速

ffplay -i test.mp4 -vf setpts=PTS/2 -af atempo=2

ffmpeg 命令参数说明

主要参数:

◼ -i 设定输入流

◼ -f 设定输出格式(format)

◼ -ss 开始时间

◼ -t 时间长度

音频参数:

◼ -aframes 设置要输出的音频帧数

◼ -b:a 音频码率

◼ -ar 设定采样率

◼ -ac 设定声音的Channel数

◼ -acodec 设定声音编解码器,如果用copy表示原始编解码数据必须被拷贝。

◼ -an 不处理音频

◼ -af 音频过滤器

视频参数:

◼ -vframes 设置要输出的视频帧数

◼ -b 设定视频码率

◼ -b:v 视频码率

◼ -r 设定帧速率

◼ -s 设定画面的宽与高

◼ -vn 不处理视频

◼ -aspect aspect 设置横纵比 4:3 16:9 或 1.3333 1.7777

◼ -vcodec 设定视频编解码器,如果用copy表示原始编解码数据必须被拷贝。

◼ -vf 视频过滤器

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,313评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,369评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,916评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,333评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,425评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,481评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,491评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,268评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,719评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,004评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,179评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,832评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,510评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,153评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,402评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,045评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,071评论 2 352

推荐阅读更多精彩内容

  • FFMPEG是特别强大的专门用于处理音视频的开源库。你既可以使用它的API对音视频进行处理,也可以使用它提供的工具...
    小村医阅读 3,935评论 0 3
  • 编译旧版本的FFmpeg源代码,如果系统中包含SDL-1.2版本,会生成ffplay,如果不包含就无法生成ffpl...
    书文换酒钱阅读 16,111评论 0 3
  • FFMPEG常用命令 前言 [FFMPEG]是特别强大的专门用于处理音视频的开源库。你既可以使用它的API对音视频...
    JavaCodexPro阅读 624评论 0 0
  • 前言 FFMPEG是特别强大的专门用于处理音视频的开源库。你既可以使用它的API对音视频进行处理,也可以使用它提供...
    Peter杰阅读 1,353评论 0 1
  • FFmpeg常用命令主要分以下八类:1.基本信息查询2.录制命令3.分解及复用4.处理原始数据5.滤镜相关6.剪裁...
    andev009阅读 463评论 0 0