You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何使用单个FFmpeg命令完成视频分辨率调整、片段截取、音频移除及格式转换

解决FFmpeg单命令完成视频裁剪、缩放、去音频并转AVI的问题

我来帮你搞定这个问题!你之前的命令有几个小细节没处理对,导致无法达到预期效果。咱们直接上可行的命令,再拆解下每个参数的作用:

正确的FFmpeg命令

ffmpeg -i input.mp4 -vf "trim=start=17:end=27,scale=640:480" -an -c:v libxvid -q:v 4 output.avi

参数解释

  • -i input.mp4:指定你的输入视频文件
  • -vf "trim=start=17:end=27,scale=640:480":使用视频滤镜链依次完成两个操作:
    • trim=start=17:end=27:截取从第17秒到第27秒的视频片段(也可以用duration=10替代end=27,效果完全一致)
    • scale=640:480:将视频分辨率调整为640x480
  • -an:直接移除所有音频流,这是最简洁的去音频方式
  • -c:v libxvid:指定AVI格式常用的Xvid编码器,能保证在多数设备上的兼容性
  • -q:v 4:控制视频质量,数值范围1-31,数值越小质量越高,4是兼顾体积和清晰度的不错选择
  • output.avi:指定输出文件为AVI格式,FFmpeg会自动适配对应的封装规范

你之前命令的问题分析

  1. 第一个命令:输出格式是MP4而非你需要的AVI,且用-filter_complex处理单视频流有点大材小用(单流场景下-vf更简洁直观)
  2. 第二个命令-filter_complex中没有给滤镜输出标记(比如[out]),导致-map [out]无法找到对应流,同时也没修改输出格式为AVI

内容的提问来源于stack exchange,提问作者Faith Sawyer

火山引擎 最新活动