【音视频】ffmpeg命令参数说明

一、 ffmpeg命令参数说明

1.1 主要参数

  • -i:设定输入流
  • -f:设定输出格式

比如下面的命令表示将mp4文件转为flv输出,使用-codec copy 避免重新编码

shell 复制代码
ffmpeg -i 1.mp4 -f -codec copy flv 1_flv.flv

使用ffplay播放后看到,格式已经转换为了flv

实际上如果不指定-f,可以通过后缀名来推断,-y表示覆盖原文件:

shell 复制代码
ffmpeg -i 1.mp4 -codec copy 1_flv.flv -y

如果使用的后缀与指定的-f 格式不一样,使用的是-y 的格式,例如

shell 复制代码
ffmpeg -i 1.mp4 -codec copy 1_flv.mp4 -y

虽然后缀是.mp4,实际上还是flv

同样,及时不存在后缀也是可以的,例如:

shell 复制代码
ffmpeg -i 1.mp4 -f flv -codec copy 1_flv
  • -ss:设定开始时间
  • -t:设置时间长度

比如截取原来的视频时间的1min - 1min10s 进行输出

shell 复制代码
ffmpeg -i 1.mp4 -codec copy  -ss "10" -t "10" 1_10s.mp4 

可以发现输出的视频时间为10s,稍有点误差也是正常的

1.2 音频参数

  • -aframes:设置要输出的音频总数
  • -b:a 音频码率
  • -ar:设定采样率
  • -ac:设定声音的channel数
  • -acodec:设定声音的编码器,copy表示按原始编码器拷贝
  • -an:不处理音频
  • -af 使用音频过滤器

新版本的-ac已经不可用了,改为-ch_layout

下面的命令就是将视频中的音频提取出来,使用libmp3lame编码器重新编码,采样率为48K,码率为192K,通道格式为stereo,从第10s持续10s,通过atempo滤镜改变速度(这里设置1没改变)

shell 复制代码
 ffmpeg -i mv.mp4 -acodec libmp3lame -ar 48000 -b:a 192k  -ch_layout stereo -ss "10" -t "30" -af atempo=1 mv.wav

使用ffprobe参看音频参数,与设置的参数一样

1.3 视频参数

  • -vframes:设置要输出的视频总帧数
  • -b 设定视频码率
  • -b:v 设置视频码率另一种方法
  • -r 设定帧速率
  • -vn 不处理视频
  • -s 设定视频宽高
  • -vcodec 指定视频编解码器,copy表示拷贝原来的编解码
  • aspect 设置宽高比
  • -vf 使用视频过滤器

这里的代码就是重新指定libx265编码器和libmp3lame重新编码视频,设置相应的视频和音频码率,设置分辨率为1920x1080,宽高比为16:9,使用音频滤镜和视频滤镜进行倍数

shell 复制代码
 ffmpeg -i mv.mp4 -vcodec libx265 -acodec libmp3lame -ss "10" -t "01:00" -r 30 -b:v 1024k -b:a 192k -s 1920x1080 -aspect 16:9 -vf "setpts=PTS/2"  -af "atempo=2.0" mv_1920_1080.mkv

下面是使用ffplay播放的效果

相关推荐
水中加点糖9 分钟前
RagFlow实现多模态搜索(文、图、视频)与(关键字/相似度)搜索原理(二)
python·ai·音视频·knn·ragflow·多模态搜索·相似度搜索
小Tomkk9 分钟前
⭐️ StarRocks Web 使用介绍与实战指南
前端·ffmpeg
却道天凉_好个秋13 分钟前
音视频学习(八十二):mp4v
学习·音视频·mp4v
winfredzhang34 分钟前
从零构建:基于 Node.js 的全栈视频资料管理系统开发实录
css·node.js·html·音视频·js·收藏,搜索,缩略图
行业探路者14 小时前
二维码标签是什么?主要有线上生成二维码和文件生成二维码功能吗?
学习·音视频·语音识别·二维码·设备巡检
Android系统攻城狮18 小时前
Android16音频之获取Record状态AudioRecord.getState:用法实例(一百七十七)
音视频·android16·音频进阶
liefyuan19 小时前
【RV1106】rkipc:分析(一)
音视频
aqi0021 小时前
FFmpeg开发笔记(九十八)基于FFmpeg的跨平台图形用户界面LosslessCut
android·ffmpeg·kotlin·音视频·直播·流媒体
广州服务器托管21 小时前
比较优秀的视频音频播放器PotPlayer64-v1.7.22764绿色版
运维·windows·计算机网络·电脑·音视频·可信计算技术
jbk33111 天前
批量给视频添加字幕,并实现多样式可选的功能
音视频