美文网首页
ffmpeg转场效果

ffmpeg转场效果

作者: 旁界001 | 来源:发表于2019-05-19 16:57 被阅读0次

想实现多个视频或者图片之间的转场效果的,因为用到ffmpeg的很多功能,比如混音,拼接,截取等一大堆都是用ffmpeg实现的,所以想着转场也用ffmepg来实现, 后来找到实现是通过ffmpeg的抠图(chromakey)功能实现转场的效果,不过淡入淡入是ffmpeg的fade指令。不过这个转场的效果需要自己去合成转场视频,然后相当于于一个转场视频和其他视频拼接起来。

不过最后面没有采用这个方案┭┮﹏┭┮,改成是opengl实现转场功能了,因为ffmpeg实现的转场功能需要合成转场视频,这个过程很费时,然后我用opengl实现的转场通过滤镜,是实时的效果。不过还是把这个ffmpeg转场功能记录一下。
废话不多说,执行的的指令如下:
ffmpeg -i jpg/last_frame.jpg -i second.mp4-i gif_temp.gif -filter_complex "[1:v] [2:v] overlay [cmask];[cmask] format = rgba,chromakey = 0x0000FF:0.3 [ckout]; [0:v] [ckout] overlay" -t 2 -y two_imag_transition.mp4

该指令的意思是,-filter_complex "[1:v] [2:v] overlay [cmask] 视频的一帧和动态图gif合成遮罩图,然后根据chromakey功能,把gif上面 0x0000FF蓝色的覆盖部分用视频[1:v]进行替换,最后[0:v] [ckout]再和前一个视频的最后一帧图片进行合成转场视频。

1、第一步是合成转场需要的gif,这个是一个纯蓝色的移动动画,底片是扣空的,不是白色的,如下:


left.gif

2、second.mp4-i gif_temp.gif -filter_complex "[1:v] [2:v] overlay [cmask];[cmask] format = rgba,chromakey = 0x0000FF:0.3 [ckout]; 这部分的功能执行之后,就可以输出一个视频从右移动的效果了

3、如果是上移动,下移动或者其他效果,可以制作不一样的gif效果便可,比如百叶窗、旋转等。gif是纯色空白底就行。

如果是淡入淡入的效果,ffmpeg有线程的指令,合成速度很快,指令如下:
ffmpeg -loop 1 -i input1.jpg -r 30 -filter_complex "[0:v] fade=in:0:60" -c:v libx264 -pix_fmt yuv420p -t 2 -y test.mp4

ffmpeg最终实现方案是需要合成一个转场视频,然后才能查看效果,比起opengl来说,就差很多,说一下opengl的实现方案:
播放分为视频和图片:
视频播放需要通过mediaplayer和surfaceTexture绑定,然后通过surfaceTexture.updateTexImage()来推动更新,转场默认是两秒,所以这时候视频的播放适合opengl一起运行,把视频的帧作为opengl的纹理进行输入,然后经过opengl的动画效果,输出动画。
图片则直接是手动推动onDrawFrame的更新,直接以图片做纹理输入opengl输出动画。
下一个文章具体介绍opengl的转场实现。

相关文章

  • ffmpeg转场效果

    想实现多个视频或者图片之间的转场效果的,因为用到ffmpeg的很多功能,比如混音,拼接,截取等一大堆都是用ffmp...

  • opengl转场效果

    前提上一篇文章说到ffmpeg合成转场效果,后来发现这样的方案行不通的,一是合成时间太慢,而是需要实时的查看转场的...

  • shotcut-转场效果

    在属性设置转场效果,转场越长重叠越多

  • OpenGL 实现视频编辑中的转场效果

    转场介绍 转场效果是什么? 转场效果,简单来说就是两段视频之间的衔接过渡效果。 现在拍摄 vlog 的玩家越来越多...

  • PR第六部分

    转场,在效果面板里面的视频过渡里面,或者直接搜索。 转场是一种过渡效果 转场可以加在出场,剪辑之间,入点。 转场可...

  • 基于UIPresentationController的封装

    效果图 简单介绍 基于UIPresentationController的封装,支持多种转场效果,还可轻松自定义转场...

  • iOS-动画属性详解

    释义 常用转场效果 释义

  • Flutter - 页面转场动画

    一、页面转场动画效果

  • iOS 自定义转场动画

    本文记录分享下自定义转场动画的实现方法,具体到动画效果:新浪微博图集浏览转场效果、手势过渡动画、网易音乐启动屏转场...

  • 带你使用Vegas制作拉镜转场效果

    在专业视频剪辑软件-Vegas里转场效果有很多,除了自带的转场特效和插件之外,我们也可以自己做出拉镜转场的效果,这...

网友评论

      本文标题:ffmpeg转场效果

      本文链接:https://www.haomeiwen.com/subject/dnofzqtx.html