在此缅怀雷神:
1. 雷霄骅的博客
其它参考
2.1 ffmpeg
2.2 ffmpeg 音频那些事儿
2.3 ffmpeg 实现音频的重采样
命令参数
>常用参数介绍
- -i 跟输入文件
- -f 设置输出格式
- -y 输出文件已存在则覆盖该文件
- -fs 超过指定的文件大小则结束转换
- -ss 指定开始时间
- -t 从 -ss 时间开始转换的持续时间
- title 设置标题
- -temestamp 设置时间戳
- -vsync 增减frame使得影音同步
视频相关参数
- -b:v 设置视频流量,默认为200kbit/s
- -r: 设置帧率,默认为25
- -s: 设置画面的宽和高
- -aspect 设置画面的比例
- -vn 不处理视频,仅针对声音做处理时候使用
- -vcode(-c:v) 设置视频的编解码器,未设置时使用与输入文件相同的编解码器
音频相关参数
- -b:a设置每个通道的流量
- ar:设置采样率
- -ac:设置声音的通道数目
- -acodec: 设置音频的编解码器,未设置时使用与输入文件相同的编解码器
- -an:不处理声音,仅针对视频处理时候使用
- -vol:设置音量大小,256为标准音量。线性
常见用法
视频相关操作
- 查看视频信息
ffmpeg -i test.avi
ffmpeg -i test.mp3
- 将一组图片序列合成视频
ffmpeg -f image2 -i image%d.jpg output.mpg
# -i image%d.jpg 将当前目录下的image1.jpg、、、、包含
- 将视频分解成图片序列
ffmpeg -i test1.mpg image%d.jpg
- 将.mpg转换成.avi文件
ffmpeg -i demo1.mpg out.avi
- 从视频中抽出声音,存为.mp3文件
ffmpeg -i test.avi -vn -ar 44100 -ac 192 -f mp3 sound.mp3
音频相关操作
-
1、拼接多个音频
需求: 将test1.mp3和test2.mp3两个文件连接在一起。 ffmpeg -i "concat:123.mp3|124.mp3" -acodec copy output.mp3 # 其中 -acodec copy 表示重新编码并且复制到输出文件中。
-
2、 混合多个音频
需求: 将test1.mp3和test2.mp3混合成一个音频,以第一个文件的长度为准。 ffmpeg -i test1.mp3 -i test2.mp3 -filter_complex amix=inputs=2:duration=first:dropout_transition=2 -f mp3 output.mp3 #--filter_complex: ffmpeg的滤镜功能 #amix 表示混合多个音频到单个音频 #inputs=2:表示输入两个音频文件,可以多个 #duration:表示输出文件的长度 有多个参数 #- longest 最长 #- shortest 最短 #- first 第一个文件长度 #dropout_transition:声音淡出时间(以秒为单位)。 默认值为2秒
-
3、 截取一个音频
需求: 截取test1.mp3音频文件的开始一分钟 ffmpeg -i test1.mp3 -acodec copy -ss 00:00:00 -t 00:01:00 output.mp3 # -ss 开始截取的时间点 # -t 截取音频的时间长度
4、音频文件的格式转换
需求: 将test1.ape转换成test1.mp3格式
ffmpeg -i test1.ape -ar 4410 -ac 2 -ab 16k -vol 256 -f mp3 test1.mp3
# -ar 设置音频采样频率
# -ac 设置音频通道数
# -ab 设置声音比特率
# -vol 设置音量 256为标准音量。(要设置成两倍音量时则输入512,依此类推。)
网友评论