Unity之VideoPlayer播放透明视频

准备工作

  由于unity对视频格式的支持有限,因此如果想使用videoplayer播放透明视频需要对视频进行特殊处理;在unity中原生支持vp8编码的webm带透明通道的视频,所以我们需要将视频转成此格式;可以使用格式工厂将带透明通道的mov视频转换为webm格式的视频,然后在unity中使用。不过本文主要介绍另一种方式,使用ffmpeg将序列帧合成为带透明通道的视频。因此需要如下工具:
  ffmpeg3.4.2
  ReNamer图片批量重命名,提取码:k0sd

图片重命名

  打开ReNamer软件,将所有图片拖拽到软件下方提示的额空白处,然后添加一个名称移除规则和一个名称序列化规则,完成图片的重命名,如下图所示:

视频合成

  下载ffmpeg,进入到"…/bin/"目录下,然后按下键盘下的“shift”+“鼠标右键”,打开Powershell命令行窗口,输入类似如下命令:

  ./ffmpeg -y -r 25 -i 01/%3d.png -c:v libvpx -auto-alt-ref 0 -minrate 8500k -maxrate 8500k -b:v 8500k -quality best 1.webm
  说明:
  -r 表示视频帧率 -i 表示输入源 -c:v libvpx 表示视频编码格式,这里指明使用vp8编码格式(如果缺少此项,则默认使用vp9)
  下面两张图一个指定了编码格式,一个使用默认编码格式:

  FFmpeg说明文档

Unity操作

  在unity中添加一个GameObject,重命名为VideoPlayer,然后添加一个"VideoPlayer"组件,将视频拖拽到video clip上即可。Camera设置如下:

  最终效果如下:

博客效果视频

总结

  本次分享就到此结束。不过有时在实际的项目上我们会遇到需要播放大分辨的带透明通道的视频,此时还使用videoplayer播放,会发现合成的webm视频会模糊。有时可能还会有点卡顿。那么怎么解决呢?下一篇介绍另一种在unity播放透明视频的方法。

上述介绍的软件如有收费,请大家支持正版
本文如有侵权,请联系删除

原文链接:Unity之VideoPlayer播放透明视频

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

洛·枫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值