在Unity 5.5 Personal Edition中播放视频

时间:2017-03-18 19:55:20

标签: c# unity3d

我查看了MovieTexture类,使用Unity的C#脚本播放视频,但MovieTexture适用于Unity Pro,而且我没有专业版。

我还看了PlayFullScreenMovie,播放视频,但只有当我将视频作为Unity项目文件夹中的资源导入时才有效。

我的问题是:有没有办法在Unity个人版中播放视频,而无需将视频作为资源导入?比如,我可以使用计算机中的视频文件位置(文件路径)作为播放视频的源网址吗?感谢。

1 个答案:

答案 0 :(得分:2)

  

我查看了MovieTexture类来播放Unity C#中的视频   脚本,但MovieTexture适用于Unity Pro,我没有Pro   版本

不正确。在Unity 5.0发布之后,Unity中只有API和工具才能在所有版本的Unity中使用。您可以在Unity 5.5中使用MovieTexture

  

我还看了PlayFullScreenMovie来播放视频但是有效   仅当我将视频作为Unity的项目文件夹中的资源导入

如果您的目标是播放来自互联网,网址,本地网络或文件夹的视频,请忘记PlayFullScreenMovie。它不是为此而做的。

  

我可以像在电脑中一样使用视频的文件位置(文件路径)   从哪个源网址播放视频?

您可以使用MovieTexture执行此操作。请注意MovieTexture存在很大的限制。例如,我以前从未见过它播放.mp4视频。它播放.ogg电影。由于您不想使用Unity 5.6,因此您对MovieTexture可以执行的操作非常有限。它无法在移动设备上播放视频。

MovieTexture movieTexture;
AudioSource vidAudio;
public RawImage rawImage;

void Start()
{
    WWW www = new WWW("http://techslides.com/demos/sample-videos/small.ogv");
    movieTexture = www.GetMovieTexture();
    rawImage.texture = movieTexture;

    vidAudio = gameObject.AddComponent<AudioSource>();
    vidAudio.clip = movieTexture.audioClip;
}

void Update()
{
    if (movieTexture.isReadyToPlay && !movieTexture.isPlaying)
    {
        movieTexture.Play();
        vidAudio.Play();
    }

    if (movieTexture.isPlaying)
    {
        rawImage.texture = movieTexture;
    }
}

剩下的选择是购买视频插件或制作一个。这些是非常昂贵的,所以这里是顶级的工作。 AVPro VideoEasy Movie Texture