Unity AVPro 使用
创始人
2024-01-29 06:15:24
0

AVPro

感觉我写的没多大用处,后面看看文档再完善一些。目前的东西是可以满足一些简单的需求的。

说明

标题名称内容
Unity版本Unity 2021 .1.18f1c1
AVPro 版本AVPro Video - Ultra Edition 2.5.6
IDEVS2022
系统版本Win 10 1909
撰写日期2022 11月15日晚

需要注意的地方

文档137页,看的累了,就不看了。

使用之前需要注意的地方

Legacy support removed wecan focus on the modern features
Removed support for Unity 4.x, Unity 5.xand Unity 2017.x
Windows
Removed support for legacy Windows Metro (Phoneand 8.1)
Removed support for Windows XP
macOS
Minimum version changed to 10.12
Dropped OpenGL support
iOS / tvOS
Dropped 32-bit support
Dropped OpenGLES support
Minimum version changed to 11.0
Direct3D12 support requires minimum Unity 2019.3
Only in the Ultra Edition
WebGL plugin still included, but we do not support it (see WebGL platform notes)
10-bitvideo support has someelements that only work in the Ultra Edition and has other limitations as documented

来自有道翻译

传统支持被移除,我们可以专注于现代功能
移除对Unity 4的支持。x,单位5。xand Unity 2017.x
窗户
移除对遗留Windows Metro (phone和8.1)的支持
移除对Windows XP的支持
macOS
最低版本更改为10.12
放弃对OpenGL的支持
iOS / tvOS
放弃32位支持
放弃对OpenGLES的支持
最低版本更改为11.0
支持Direct3D12需要最低Unity 2019.3
只有Ultra版本
**仍然包含WebGL插件,但我们不支持它(参见WebGL平台说明)。**
10位视频支持有一些元素只在超版本中工作,并有其他限制文件

不支持的平台

在这里插入图片描述

不支持的平台
Linux桌面
卢明(Magic Leap)
电视平台(Tizen、三星TV等)
游戏机(XBox*、PlayStation、Switch等)
* XBox One可能支持使用UWP构建选项。不过我们还没有对此进行测试。

编码支持

在这里插入图片描述

Hap编解码器仅支持Windows和macOS平台。
NotchLC编解码器仅支持Windows平台。
空间音频仅支持Windows和Android平台。
10位纹理仅支持Windows, macOS, iOS和tvOS平台。
缓存仅支持Android和iOS平台。
实验功能。只能在Windows上使用。

目的

通过这篇博客可以学会什么

  1. 使用AVPro播放视频
  2. 使用AVPro播放多个视频
  3. 了解AVPro的一些的事件

使用AVPro播放视频

  1. 导入插件
    在这里插入图片描述

  2. 创建MediaReference(媒体引用)
    在这里插入图片描述

  3. 选择媒体引用的来源的路径类型,当前选择的是来自于StreramingAssets Foder
    在这里插入图片描述

  4. 选择文件
    在这里插入图片描述

  5. 创建MediaPlayer 源播放器
    在这里插入图片描述
    设置MediaPlayer然后为Media Reference赋值
    在这里插入图片描述是否自动播放视频是否自动播放视频。

  6. 创建一个Canvas
    在这里插入图片描述

  7. 创建一个AVPro Video
    在这里插入图片描述

  8. 添加Media Player

在这里插入图片描述

播放多个视频

我看的官方包中是使用的Playlist Media Player,我看了一下代码,很多,我就没在看下去了。然后我就自己想办法搞了一个。
MediaPlayer好像是不能作为预制体进行保存的。
在这里插入图片描述像这样进行布局之后,创建一个脚本clAVProTest然后将脚本挂在到AVPro Video上面。

在这里插入图片描述需要将MediaPlayerauto play设置为false
附加上极其敷衍的代码。

using System.Collections;
using System.Collections.Generic;
using RenderHeads.Media.AVProVideo;
using UnityEngine;
using UnityEngine.UI;public class clAVProTest : MonoBehaviour
{public DisplayUGUI display;//播放器public MediaPlayer mediaPlayer1;public MediaPlayer mediaPlayer2;public MediaPlayer mediaPlayer3;public MediaPlayer mediaPlayer4;//public Button btnA;public Button btnB;public Button btnC;public Button btnD;//播放的按钮public Button btnStop;//停止public Button btnPause;//暂停public Button btnPlay;//播放void Start(){btnA.onClick.AddListener(() =>{display.CurrentMediaPlayer.Control.Stop();display.CurrentMediaPlayer = mediaPlayer1;display.CurrentMediaPlayer.Control.Play();});btnB.onClick.AddListener(() =>{display.CurrentMediaPlayer.Control.Stop();display.CurrentMediaPlayer = mediaPlayer2;display.CurrentMediaPlayer.Control.Play();});btnC.onClick.AddListener(() =>{display.CurrentMediaPlayer.Control.Stop();display.CurrentMediaPlayer = mediaPlayer3;display.CurrentMediaPlayer.Control.Play();});btnD.onClick.AddListener(() =>{display.CurrentMediaPlayer.Control.Stop();display.CurrentMediaPlayer = mediaPlayer4;display.CurrentMediaPlayer.Control.Play();});btnStop.onClick.AddListener(() =>{display.CurrentMediaPlayer.Control.Stop();});btnPause.onClick.AddListener(() =>{display.CurrentMediaPlayer.Control.Pause();});btnPlay.onClick.AddListener(() =>{display.CurrentMediaPlayer.Control.Play();});}
}

播放事件

using System.Collections;
using System.Collections.Generic;
using RenderHeads.Media.AVProVideo;
using UnityEngine;
using UnityEngine.UI;public class clAVProTest : MonoBehaviour
{public DisplayUGUI display;//播放器public MediaPlayer mediaPlayer1;void Start(){display.CurrentMediaPlayer = mediaPlayer1;mediaPlayer1.Events.AddListener(OnMediaPlayerEvent);mediaPlayer1.Play();}/// /// AVPro事件管理/// /// /// /// void OnMediaPlayerEvent(MediaPlayer mp, MediaPlayerEvent.EventType et, ErrorCode errorCode){switch (et){case MediaPlayerEvent.EventType.Started:Debug.Log("StartEvent");OnMediaPlayerStarted(mp);break;case MediaPlayerEvent.EventType.FinishedPlaying:Debug.Log("FinishEvent");OnMediaPlayerFinished(mp);break;}}/// /// 开始事件触发/// /// void OnMediaPlayerStarted(MediaPlayer mp){Debug.Log("视频开始播放。");}/// /// 结束事件触发/// /// void OnMediaPlayerFinished(MediaPlayer mp){Debug.Log("视频播放完毕。");}}

其他事件

  • [跳转到视频的某一秒钟]
  • [为视频的某一秒添加事件]
  • [添加获取视频的总时长]

其他

问题1

使用Unity的VideoPlayer 在Win 7 SP1的上可能不能播放视频,使用AVPro可以解决。

上一篇:PyQt5 QLabel标签

下一篇:Mysql常用函数

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
一帆风顺二龙腾飞三阳开泰祝福语... 本篇文章极速百科给大家谈谈一帆风顺二龙腾飞三阳开泰祝福语,以及一帆风顺二龙腾飞三阳开泰祝福语结婚对应...
美团联名卡审核成功待激活(美团... 今天百科达人给各位分享美团联名卡审核成功待激活的知识,其中也会对美团联名卡审核未通过进行解释,如果能...