ffmpeg使用方法

1. 合并,提取音视频

(1)单独提取视频(不含音频流)

ffmpeg -i video.mp4 -vcodec copy -an video_silent.mp4

-an:表示不输出音频
(2)单独提取音频(不含视频流)

ffmpeg -i input.mp4 -vn -ar 44100 -ac 2 -b:a 192k output.mp3

-vn:表示不输出视频 -ar 44100:采样率为 44.1kHz -ac 2:立体声 -b:a 192k:码率为 192kbps
具备多个音频流的,如
Stream #0:2[0x81]:Audio:ac3,48000Hz,5.1,s16,384kb/s
Stream #0:3[0x82]:Audio:ac3,48000Hz,5.1,s16,384kb/s
Stream #0:4[0x80]:Audio:ac3,48000Hz,5.1,s16,448kb/s
针对性的单一的提取,例如提取第2条,用指令: -map 0:3
(3)合并音视频

ffmpeg -i video_novideo.m4a -i video_silent.mp4 -c copy video_merge.mp4

2. 分割、连接音视频

(1)分割

ffmpeg -ss [开始时间] -i [输入文件名] -to [结束时间] -c copy [输出文件名]

ffmpeg -i music.mp3 -ss 00:00:30 -to 00:02:00 -acodec copy music_cutout.mp3

截取60秒

ffmpeg -i music.mp3 -ss 00:00:30 -t 60 -acodec copy music_cutout60s.mp3

-sseof : 从媒体末尾开始截取

ffmpeg -i in.mp4 -ss 00:01:00 -to 00:01:10 -c copy out.mp4
ffmpeg -ss 00:01:00 -i in.mp4 -to 00:01:10 -c copy out.mp4
ffmpeg -ss 00:01:00 -i in.mp4 -to 00:01:10 -c copy -copyts out.mp4

把-ss放到-i之前,启用了关键帧技术,加速操作。但截取的时间段不一定准确。可用最后一条指令,保留时间戳,保证时间准确。

(2)连接音视频

ffmpeg -i "concat:01.mp4|02.mp4|03.mp4" -c copy out.mp4

3. m4a转换为mp3

ffmpeg -i "input.m4a" -y -acodec libmp3lame -aq 0 "output.mp3"

注:当使用libmp3lame时,-aq 参数映射到 LAME的 -V 参数 ,参数范围0-9,0代表最高质量,9代表最低质量。

4. flac 音频无损转换mp3

ffmpeg -i music.flac -acodec libmp3lame -ar 44100 -ab 320k -ac 2 music.mp3
  • acodec:audio Coder Decoder 音频编码解码器
  • libmp3lame:mp3解码器
  • ar:audio rate:音频采样率
  • 44100:设置音频的采样率44100。若不输入,默认用原音频的采样率
  • ab:audio bit rate 音频比特率
  • 320k:设置音频的比特率。若不输入,默认128K
  • ac: aduio channels 音频声道
  • 2:声道数。若不输入,默认采用源音频的声道数

5.视频转码

ffmpeg -i video.mp4 -s 1920x1080 -pix_fmt yuv420p -vcodec libx264 -preset medium -profile:v high -level:v 4.1 -crf 23 -acodec aac -ar 44100 -ac 2 -b:a 128k video.avi
  • -s 1920x1080:缩放视频新尺寸(size)
  • -pix_fmt yuv420p:pixel format,用来设置视频颜色空间。参数查询:ffmpeg -pix_fmts
  • -vcodec libx264:video Coder Decoder,视频编码解码器
  • -preset medium: 编码器预设。参数:ultrafast,superfast,veryfast,faster,fast,medium,slow,slower,veryslow,placebo
  • -profile:v high :编码器配置,与压缩比有关。实时通讯-baseline,流媒体-main,超清视频-high
  • -level:v 4.1 :对编码器设置的具体规范和限制,权衡压缩比和画质。
  • -crf 23 :设置码率控制模式。constant rate factor-恒定速率因子模式。范围051,默认23。数值越小,画质越高。一般在828做出选择。
  • -r 30 :设置视频帧率
  • -acodec aac :audio Coder Decoder-音频编码解码器
  • -b:a 128k :音频比特率.大多数网站限制音频比特率128k,129k

6.视频添加字幕

ffmpeg -i input.mp4 -vf subtitles=字幕文件 output.mp4
posted @ 2022-05-03 10:38  华小电  阅读(170)  评论(0编辑  收藏  举报