Video Player
用法
注:此方法摘自百度经验以及https://blog.csdn.net/dark00800/article/details/70160463结合
创建节点,加入 Raw Image, Video Player, Play Video On UGUI,拖入资源,运行直接看得到效果
PlayVideoOnUGUI.cs脚本
using UnityEngine;
using UnityEngine.Video;
using UnityEngine.UI;
public class PlayVideoOnUGUI : MonoBehaviour {
//定义参数获取VideoPlayer组件和RawImage组件
private VideoPlayer videoPlayer;
private RawImage rawImage;
// Use this for initialization
void Start () {
//获取场景中对应的组件
videoPlayer = this.GetComponent <VideoPlayer> ();
rawImage = this.GetComponent <RawImage> ();
}
// Update is called once per frame
void Update () {
//如果videoPlayer没有对应的视频texture,则返回
if(videoPlayer.texture == null){
return;
}
//把VideoPlayerd的视频渲染到UGUI的RawImage
rawImage.texture = videoPlayer.texture;
}
}
Video Player常用参数
Play On Awake:脚本载入时自动播放。
Wait For First Frame:决定是否在第一帧加载完成后才播放,只有在Play On Awake被勾选是才有效。可以防止视频最前几帧被跳过。(使用过程中发现勾选后视频无法自动播放,原因不明)
Loop:循环。
Playback Speed:播放速度。
errorReceived: 错误监听到时被执行。
frameDropped :有丢帧发生时被执行。
frameReady :新的一帧准备好时被执行。
loopPointReached :播放结束或播放到循环的点时被执行。
prepareCompleted :视频准备完成时被执行。
seekCompleted :查询帧操作完成时被执行。
started:在Play方法调用之后立刻调用。
声音
就这么直接运行使用,会发现无声音。这时需要增加一个Audio Source组件,然后再Video Player组件下方的Audio Output Mode设置为Audio Source,Controlled Tracks设置为1,拖Audio Source组件加入。再运行一下就能听到视频文件的声音了。