unity使用videoplayer组件播放视频黑屏问题解决方案

1、视频使用动态加载方式

    self.videoPlayer = self.RawImage:GetComponent(UnityType.VideoPlayer)
    self.rawImage = self.RawImage:GetComponent(UnityType.RawImage)
    if is_nil(self.videoPlayer) then
        self:closeCG(0)
    end
    local videoClip = CS.UnityEngine.Resources.Load("Video/video1")
    if is_nil(videoClip) then
        self:closeCG(0)
    end
    self.videoPlayer.clip = videoClip

    self.videoState = GameEnum.VideoState.Load
    self.videoPlayer:Prepare()

2、资源需要放到resource文件夹下,不能被打成ab

3、资源打包的时候不能被压缩,在android打包文件设置成不压缩

  build.gradle文件:

 aaptOptions {
        noCompress = ['.resource']
    }

可能出现的问题:

导出的Android版本播放视频只用声音没有画面,初始化VideoPlayer组件时,Android平台的报错提示是:E/Unity: Could not find material Hidden/VideoDecodeAndroid

解决办法:在Unity的Graphics Settings中的Always Included Shaders设置中添加"Hidden/VideoDecodeAndroid" shader,Unity有时会自动添加这个Shader,但有时不会,如果没有添加此Shader会导致播放视频时没有画面只有声音

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值