网淘吧来吧,欢迎您!

FFmpeg技能使用说明

2026-03-29 新闻来源:网淘吧 围观:14
电脑广告
手机广告

输入定位(主要差异)

  • -ss-i之前:快速定位,可能不准确——从最近的关键帧开始
  • -ss-i之后:帧级精确但速度慢——从起始位置解码
  • 两者结合:-ss 00:30:00 -i input.mp4 -ss 00:00:05——先快速定位再精确裁剪
  • 进行剪切时,添加-avoid_negative_ts make_zero以修复时间戳问题

流选择

  • 默认:第一个视频流 + 第一个音频流——可能非您所需
  • 显式选择:-map 0:v:0 -map 0:a:1——第一个视频流,第二个音频流
  • 某类型的所有流:-map 0:a——所有音频流
  • 复制特定流:-map 0 -c copy—所有流,无需重新编码
  • 排除:-map 0 -map -0:s—除字幕外的所有流

编码质量

  • CRF(恒定码率因子):数值越低 = 质量越好,文件越大—H.264编码通常使用18-23
  • -preset:从ultrafast到veryslow—速度越慢 = 相同质量下文件越小
  • 目标码率二次编码:第一遍分析,第二遍编码
  • -crf-b:v互斥—只能使用其中一个

容器与编解码器

  • 容器(MP4、MKV、WebM):容纳流的封装格式
  • 编解码器(H.264、VP9、AAC):流的压缩算法
  • 并非所有编解码器都适合所有容器—H.264适用于MP4/MKV,不适用于WebM;VP9适用于WebM/MKV,不适用于MP4
  • 将编解码器复制到新容器:-c copy—快速,无质量损失

滤镜语法

  • 简单:-vf "scale=1280:720"—单一滤镜链
  • 复杂:-filter_complex "[0:v]scale=1280:720[scaled]"—命名输出用于路由
  • 链式滤镜:-vf "scale=1280:720,fps=30"—逗号分隔
  • 滤镜顺序很重要—先缩放再裁剪与先裁剪再缩放的结果不同

常用滤镜

  • 缩放:scale=1280:720scale=-1:720用于自动计算宽度以保持宽高比
  • 裁剪:crop=640:480:100:50—宽度:高度:x:y 从左上角开始
  • 帧率:fps=30—更改帧率
  • 修剪:trim=start=10:end=20,setpts=PTS-STARTPTS—setpts用于重置时间戳
  • 叠加:overlay=10:10—相对于左上角的位置

音频处理

  • 采样率:-ar 48000—视频标准
  • 声道:-ac 2—立体声
  • 音频编解码器:-c:a aac -b:a 192k—192kbps的AAC编码
  • 标准化:-filter:a loudnorm—EBU R128响度标准化
  • 提取音频:-vn -c:a copy output.m4a—无视频,复制音频

拼接

  • 相同编解码器/参数:拼接解复用器—-f concat -safe 0 -i list.txt -c copy
  • 不同格式:concat 过滤器——-filter_complex "[0:v][0:a][1:v][1:a]concat=n=2:v=1:a=1"
  • list.txt 格式:file 'video1.mp4'每行——转义特殊字符
  • 不同分辨率:在 concat 过滤器之前缩放/填充以匹配

字幕

  • 烧录(硬编码):-vf "subtitles=subs.srt"——无法关闭
  • 混流为流:-c:s mov_text(MP4)或-c:s srt(MKV)——用户可切换
  • 从输入:-map 0:s——包含字幕流
  • 提取:-map 0:s:0 subs.srt——第一个字幕到文件

硬件加速

  • 解码:-hwaccel cuda-hwaccel videotoolbox(macOS)
  • 编码:-c:v h264_nvenc(NVIDIA),-c:v h264_videotoolbox(macOS)
  • 并非总是更快——存在设置开销;在长视频上才能体现出优势
  • 质量可能不同——软件编码通常能产生更好的质量

常见错误

  • 忘记-c copy当不需要重新编码时——默认会重新编码,速度慢且有损
  • -ss放在-i之后处理长视频——会花费很长时间进行搜索定位
  • 剪辑后音频不同步——使用-async 1-af aresample=async=1
  • 流复制时应用滤镜——滤镜需要重新编码;-c copy+-vf= 错误
  • 输出扩展名未设置编解码器——output.mp4未指定-c:v将使用默认值,可能不是H.264

免责申明
部分文章来自各大搜索引擎,如有侵权,请与我联系删除。
打赏
文章底部电脑广告
手机广告位-内容正文底部

相关文章

您是本站第327161名访客 今日有245篇新文章/评论