Unity2020Video player发布后无法播放视频问题

我也是小白,用Unity过程中也是遇到很多草蛋问题,我在做demo的时候第一次用到Unity的video player,听说ogv格式能直接播放,我就把视频转了ogv格式,然后放到clip里,编辑器里运行完全没问题,发布打包后就播放不了,黑屏都没有,直接视频没了,百度搜的绝对路径说是放到streamingAssets里,但是放进去文件又读不到,实在没辙,一个一个东西瞎调,后来发现把视频编码器从auto改成VP8就正常了,不过因为视频渲染成源图像的原因,最后几帧会丢掉,没办法又只能把视频后面加长一秒orz

Unity 中,你可以使用 VideoPlayer 组件来播放视频。要动态加载并播放视频,可以按照以下步骤进行: 1. 创建一个空的 GameObject,并将 VideoPlayer 组件添加到该 GameObject 上。 2. 在代码中获取该 GameObject,并获取 VideoPlayer 组件的引用,例如: ```csharp using UnityEngine; using UnityEngine.Video; public class VideoPlayerLoader : MonoBehaviour { public GameObject videoPlayerObject; private VideoPlayer videoPlayer; void Start() { videoPlayer = videoPlayerObject.GetComponent<VideoPlayer>(); } } ``` 这个代码创建了一个名为 VideoPlayerLoader 的脚本,并在其中获取了名为 videoPlayerObject 的 GameObject 的 VideoPlayer 组件的引用。 3. 加载视频文件。Unity 支持从本地文件、URL、网络流等多种方式加载视频文件。下面是一个从本地文件夹加载视频的例子: ```csharp void LoadVideo(string path) { videoPlayer.source = VideoSource.Url; videoPlayer.url = "file://" + path; videoPlayer.Prepare(); } ``` 这个代码定义了一个名为 LoadVideo 的方法,用于加载视频文件。该方法将 VideoPlayer 组件的 source 属性设置为 Url,将 url 属性设置为视频文件的路径,并调用 Prepare() 方法准备视频文件的播放。 4. 播放视频。视频文件加载完成后,你可以通过调用 Play() 方法开始播放视频。例如: ```csharp void Start() { videoPlayer = videoPlayerObject.GetComponent<VideoPlayer>(); LoadVideo("path/to/video.mp4"); videoPlayer.Play(); } ``` 这个代码在 Start() 方法中调用了 LoadVideo() 方法加载视频文件,并在加载完成后调用 Play() 方法开始播放视频。 需要注意的是,在安卓平台上,需要在 AndroidManifest.xml 文件中添加相关权限,例如: ```xml <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> ``` 这个权限用于读取外部存储器上的视频文件。
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值