Unity VideoPlayer教程之 视频播放暂停切换
的有关信息介绍如下:Unity VideoPlayer教程之 视频播放暂停切换。本节介绍,在Unity开发中,使用VideoPlayer,进行视频的播放暂停,上一个先一个视频切换个的操作,具体如下
打开unity,新建一个空工程,的并导入俩视频文件,具体如下图
在场景中添加 RawImage 并全屏覆盖,然后添加三个按钮,分别为播放暂停、上一个、下一个,合理布局,具体如下图
在 RawImage 上添加组件 VideoPlayer,并添加 Video1 视频,具体如下图
在工程中新建一个脚本VideoController,双击进行编辑,具体如下图
VideoController 脚本具体代码和代码说明如下图
VideoController 脚本具体内容如下:
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.Video;
public class VideoController : MonoBehaviour {
//设置VideoPlayer、RawImage和当前播放视频索引参数
private VideoPlayer videoPlayer;
private RawImage rawImage;
private int currentClipIndex;
//设置相关文本和按钮参数以及视频列表
public Text text_PlayOrPause;
public Button button_PlayOrPause;
public Button button_Pre;
public Button button_Next;
public VideoClip[] videoClips;
// Use this for initialization
void Start () {
//获取VideoPlayer和RawImage组件,以及初始化当前视频索引
videoPlayer = this.GetComponent
rawImage = this.GetComponent
currentClipIndex = 0;
//设置相关按钮监听事件
button_PlayOrPause.onClick.AddListener(OnPlayOrPauseVideo);
button_Pre.onClick.AddListener(OnPreVideo);
button_Next.onClick.AddListener(OnNextVideo);
}
// Update is called once per frame
void Update () {
//没有视频则返回,不播放
if (videoPlayer.texture == null) {
return;
}
//渲染视频到UGUI上
rawImage.texture = videoPlayer.texture;
}
///
/// 播放和暂停当前视频
///
private void OnPlayOrPauseVideo() {
//判断视频播放情况,播放则暂停,暂停就播放,并更新相关文本
if (videoPlayer.isPlaying == true) {
videoPlayer.Pause();
text_PlayOrPause.text = "播放";
}
else {
videoPlayer.Play();
text_PlayOrPause.text = "暂停";
}
}
///
/// 切换上一个视频
///
private void OnPreVideo() {
//视频列表减一播放上一个视频,并进行避免越界操作
currentClipIndex -= 1;
if (currentClipIndex < 0) {
currentClipIndex = videoClips.Length - 1;
}
videoPlayer.clip = videoClips[currentClipIndex];
text_PlayOrPause.text = "暂停";
}
///
/// 切换下一个视频
///
private void OnNextVideo() {
//视频列表加一播放下一个视频,并进行避免越界操作
currentClipIndex += 1;
currentClipIndex = currentClipIndex % videoClips.Length;
videoPlayer.clip = videoClips[currentClipIndex];
text_PlayOrPause.text = "暂停";
}
}
脚本编译正确,回到 Unity,把脚本挂载到 RawImage 上,并对应赋值,具体如下图
运行场景,即可以通过按钮控制视频的暂停播放和视频切换,具体如下图