Unity播放透明视频的几种方式

您所在的位置:网站首页 pr编码hap Unity播放透明视频的几种方式

Unity播放透明视频的几种方式

2023-03-14 16:20| 来源: 网络整理| 查看: 265

在unity中呈现透明视频播放主要有一下几种方式:

利用Unity自带的VideoPlayer 播放透明视频 利用AVpro插件播放格式为Hap alpha或者Hap Q alpha 的.mov或.avi 利用Avpro播放通道分离的.MP4 视频 利用shader 分离进行透明分离(暂不讨论)

本文最后会介绍一个自己做的小工具用于转换透明视频

利用Unity自带的VideoPlayer组件播放透明视频

​ unity在5.6版本增加了播放视频的的功能,对应的就是VideoPlayer组件. 在Unity中暂时支持两种透明格式的视频,链接说明

.webm 是Google基于 以 Matroska(就是我们熟知的 MKV)容器格式为基础开发的新容器格式,里面包括了 VP8 视频和 Ogg Vorbis 音轨 . apple prores 4444 视频格式,此格式不太熟,具体看官方说明 ,附上一个apple prores 4444 视频说明

将导入的.webm视频放入unity中查看

如上,那么这个视频就是支持透明通道了 接着只要按照寻常的方法用VideoPlayer组件对其进行播放即可

制作webm视频

一般在pr或者 Media Encoder 中制作视频导出的时候 没有是webm格式,这个时候就需要下载插件,插件链接

导出的时候(搬图)

注意: 一般webm视频 我们不需要其他的一些操作就可以支持透明视频,在android平台上面 需要一些操作

在官方文档中也有说明

也就是我们要手动对其进行转码

利用Avpro 播放编码格式为Hap alpha或者Hap Q alpha 的.mov或.avi

hap codec格式支持Windows和mac os x平台 ,并且有以下几处优点:

CPU使用率极低 GPU解压缩 内存使用率低 支持非常高分辨率 支持alpha通道透明

缺点:

文件过大

Avpro支持AVI 和MOV 但是更加推荐Mov.

hap codec 有至少四种编码 hap hap alpha hapq(高质量) hapq alpha

然后在 AvPro中选择 DirectShow

导出mov文件Quick time Hap

导出hap alpha 格式的mov视频可以下载quick time 然后下载编码格式插件

导出的时候设置:

直接在PR或者Media Encoder中导出

如果觉得麻烦,可以直接在pr中导出hap alpha 编码格式,插件下载链接

然后在pr 或者media encoder 中导出选择hap 编码格式为hap alpha 或者 hap q alpha

利用ffmpeg 转换 ffmpeg -i input.mov -vcodec hap -format hap output-hap.mov ffmpeg -i input.mov -vcodec hap -format hap_alpha output-hap.mov ffmpeg -i input.mov -vcodec hap -format hap_q output-hap.mov

注意:

可以添加 -chunks 4 将解码添加到多线程中 加快视频解码过程 视频长宽必须是4的倍数 利用AVpro 播放通道分离的mp4视频

这算是一种通用方法了,几乎平台都支持,唯一的缺点就是会增加视频的分辨率 这将会导致一些播放硬件的不支持

在Avpro的demo场景Demo_Transparency 就有两个透明龙视频 一个是左右分离 一个是上下分离

可以在AE软件中直接制作 也可以直接 用ffmpeg 转换

在用ffmpeg转换中 导出的mov编码要是 rgb+a

透明视频工具

这是基于FFmpeg 写的视频转换工具 主要就是调用ffmpeg命令

工具我上传到了GitHub

参考

https://blog.csdn.net/lvcoc/article/details/86303249

题外话

2020年的春节注定是难忘的,新型冠状病毒从武汉爆发衍生到全国各地 ,为了隔离病毒,防止蔓延,大多数地方封城,封村.希望全国上下齐心协力战胜这次灾难!!!

​ ————— 在家躺尸n天的我



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3