首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使VP9编码速度更快,质量最好而不冻结图像

使VP9编码速度更快,质量最好而不冻结图像
EN

Stack Overflow用户
提问于 2017-12-24 03:04:15
回答 1查看 1.9K关注 0票数 1

我使用此代码将两个文件组合在一起(覆盖文件相对于原始文件):

代码语言:javascript
复制
ffmpeg -r 60 \
        -i originalfile.webm -i overlayfile.mov \
        -filter_complex " \
            [0:v]setpts=PTS-STARTPTS[base]; \
            [1:v]setpts=PTS-STARTPTS+0.5/TB, \
                 format=yuva420p,colorchannelmixer=aa=0.7[overlay]; \
             [base][overlay]overlay=x=(W-w)/2:y=0[v]" -map "[v]" -map 0:a -c:a copy -c:v libvpx-vp9 -lossless 1 -threads 4 -quality realtime -speed 8 -tile-columns 6 -frame-parallel 1 -vsync 1 -shortest resultfile.webm

编码速度不差,输出质量也不错,但经过一段时间后,视频画面可以冻结几秒钟,然后再播放就可以了,然后再冻结。

我如何优化这段代码,使最快的速度,尽可能高的质量作为原始文件,而不冻结图片?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-24 06:05:34

若要避免webm的重计时和从顶部和底部裁剪10%的覆盖,请运行

代码语言:javascript
复制
ffmpeg \
  -i originalfile.webm -i overlayfile.mov \
  -filter_complex " \
    [0:v]setpts=PTS-STARTPTS[base]; \
    [1:v]crop=iw:0.80*ih,setpts=PTS-STARTPTS+0.5/TB, \
         format=yuva420p,colorchannelmixer=aa=0.7[overlay]; \
   [base][overlay]overlay=x=(W-w)/2:y=0[v]" \
 -map "[v]" -map 0:a -c:a copy -c:v libvpx-vp9 -lossless 1 -threads 4 -quality realtime \
 -speed 8 -tile-columns 6 -frame-parallel 1 -vsync 2 -shortest resultfile.webm

在默认情况下,作物过滤器以作物窗口为中心,因此当裁剪到80%时,顶部和底部的10%将被切断。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47957757

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档