当前位置 : 主页 > 网络编程 > c#编程 >

unity avprovideo插件的使用详解

来源:互联网 收集:自由互联 发布时间:2021-05-09
1、新建一个MediaPlayer组件 2、在canvas下新建一个AVProVideo组件 并将上一步新建的MediaPlayer组件赋值到avprovideo组件上的mediaplayer上 3、将需要播放的视频放在StreamingAssets文件夹下 接下来就是

1、新建一个MediaPlayer组件

这里写图片描述

2、在canvas下新建一个AVProVideo组件

并将上一步新建的MediaPlayer组件赋值到avprovideo组件上的mediaplayer上

这里写图片描述

这里写图片描述

3、将需要播放的视频放在StreamingAssets文件夹下

接下来就是用代码调用了

1、_mediaPlayer.OpenVideoFromFile(MediaPlayer.FileLocation.RelativeToStreamingAssetsFolder, 视频路径, 是否自动播放);//加载视频

2、_mediaPlayer.Control.Play();//播放视频

3、_mediaPlayer.Control.MuteAudio(是否静音);//是否静音

4、_mediaPlayer.Control.Pause();//暂停视频

5、_mediaPlayer.Control.Seek(进度);//进度条

6、_mediaPlayer.Control.SetVolume(音量大小);//设置音量

7、_mediaPlayer.Control.Rewind();//重播

8、

这里写图片描述

补充:Unity AvProVideo 实现当前视频播放完毕自动加载下一视频

AVProVideo是一款Unity3d使用的视频播放插件,不仅可以实现基础的播放功能,还能实现进度条拖放和速率调整,播放4K视频,360度全景视频等,并对不同的平台进行了优化。

以下脚本可实现当前视频播放完成,可自动加载播放下一视频

/** 
 *Copyright(C) 2017 by MMHD 
 *All rights reserved. 
 *FileName:     AVProManager.cs
 *Author:       Joel
 *Date:         2018.2.2 
 *Description:  AVProVideo 当前视频播放完毕自动播放下一视频
 *History: By307035570
*/
using RenderHeads.Media.AVProVideo;
using System.Collections;
using System.Collections.Generic;
using UnityEngine; 
public class AVProManager : MonoBehaviour { 
    public void OnVideoEvent(MediaPlayer mp, MediaPlayerEvent.EventType et, ErrorCode er)
    {
        switch (et)
        {
            case MediaPlayerEvent.EventType.ReadyToPlay:
                Debug.Log("ReadyToPlay");
                break;
            case MediaPlayerEvent.EventType.FirstFrameReady:
                Debug.Log("First frame ready");
                break;
            case MediaPlayerEvent.EventType.FinishedPlaying:
                {
                    transform.GetComponent<MediaPlayer>().m_VideoPath = "StreamingAssets/Video/video.mp4";
                    MediaPlayer media = (transform.GetComponent<MediaPlayer>()) as MediaPlayer;
                    media.OpenVideoFromFile(media.m_VideoLocation, media.m_VideoPath, media.m_AutoStart);
                }
                break;
            default:
                break;
        }
    }
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持自由互联。如有错误或未考虑完全的地方,望不吝赐教。

网友评论