分离视频音频流

ffmpeg -i input_file -vcodec copy -an output_file_video  #分离视频流 
ffmpeg -i input_file -acodec copy -vn output_file_audio  #分离音频流 

剪切视频

# -r 提取图像的频率,-ss 开始时间,-t 持续时间 
ffmpeg -ss 0:1:30 -t 0:0:20 -i input.avi -vcodec copy -acodec copy output.avi    //剪切视频 

提取gif

#  -t参数表示提取前10秒视频
# -s 表示按照 320x240的像素提取
ffmpeg -i capx.mp4 -t 10 -s 320x240 -pix_fmt rgb24 jidu1.gif

提取图片

# -r参数表示按照30帧的速度提取。
ffmpeg -i input.mp4 -r 3000 -f image2 foo-%05d.jpeg

注意,此处的帧数越大,表示提取的间隔越大,图片清晰度越小.例如帧数为1即1s种取一张图片.因此,如果想要提取图片作为壁纸,最好帧数越小越好.一般最好把帧数设为0.3比较合适…

玉子市场

  1. 生成了145张图片
ffmpeg -i yuzi.mp4 -r 0.1 -f image2 foo-%05d.jpeg
  1. 截自玉子市场第二集,生成了144张图片
ffmpeg -i yuzi02.mp4 -r 0.1 -f image2 yuzi-02-%05d.jpg

轻音少女

  1. 截自轻音少女第二季,生成了136张图片,选取了70张… 轻音少女不愧是随便截屏都是一张壁纸…
ffmpeg -i kon16.mkv -r 0.1 -f image2 kon-16-%05d.jpg

冰菓

  1. 截自冰菓第四集
ffmpeg -i Hyouka04.mkv -r 0.3 -f image2 Hyouka-16-%05d.jpg

紫罗兰永恒花园

  1. 截自第一季第一集
ffmpeg -i VL01.mp4 -r 10  -f image2 LV-01-%05d.jpg 
  1. 为了更好的选取图片,所以帧率要下降,最好和视频本身帧率一致,但这样就要控制时间,否则时间太长,图片也太多了.
ffmpeg -to 1 -i VL01.mp4 -f image2 LV-01-%05d.jpg 

注意ffmpeg的参数顺序很重要,应该是错误参数后面的都丢弃,因此尽量把-ss -to -t参数放在开头.

玉子爱情故事

ffmpeg -i yuzi-love-story.mkv -r 0.3  -f image2 yuzi-love-story-%05d.jpg 

由于时间太长,最后暂停了

frame=  791 fps=0.8 q=5.8 Lsize=N/A time=00:43:56.66 bitrate=N/A dup=0 drop=62315 speed=2.78x

附ffmpeg命令详细解释

语法

ffmpeg [global_options] {[input_file_options] -i input_url} ... {[output_file_options] output_url} ...

具体参数详见链接

参考链接

ffmpeg将mp4视频转换成多张jpg图片
简书
官方文档
知乎:FFmpeg视频抽帧那些事


我很好奇