一、視頻播放
Unity自帶了兩種播放API
(1) MovieTexture(視頻紋理)
優(yōu)點(diǎn):簡單,高效的快速完成播放
缺點(diǎn):此種方法無法應(yīng)用于移動端。movietexture只能播放OGG和OVG格式的。
(2)Handheld
缺點(diǎn):
可操作性非常差,幾乎達(dá)不到我們想要的結(jié)果,而且也僅支持全屏的普通視頻的播放。
注意點(diǎn):
將視頻文件放置在Assets/StreamingAssets/路徑下,經(jīng)測試.MP4可用。
(3)視頻播放插件
第三方插件:進(jìn)行播放
GitHub有大量的視頻播放插件,自己去搜索.
EasyMovieTexture
MobileMovieTexture
MobilePlayer
Mobile movie texture for android :利用開源視頻編解碼庫Theora進(jìn)行視頻解碼,然后通過Unity Texture實(shí)現(xiàn)顯示
Unity標(biāo)準(zhǔn)接口,支持的播放視頻格式有.mov、.mpg、.mpeg、.mp4、.avi和.asf。僅支持PC端的本地視頻播放。
官方文檔給出的方式是將需要視頻放在Quickime上播放一遍,其實(shí)本質(zhì)就是將.mp4 , .mov 等視頻格式轉(zhuǎn)成.ogv,Unity才能直接識別,可以使用格式轉(zhuǎn)化工具Theora Converter .NET、ffmpeg等直接將視頻轉(zhuǎn)成.ogv.
1、MovieTexture(視頻紋理)
首先我們先來看下第一中視頻播放的API(MovieTexture(視頻紋理))我們先把一個(gè)視頻轉(zhuǎn)換成ogv的格式。轉(zhuǎn)換格式的軟件(Theora Converter .NET).

轉(zhuǎn)換后直接將ogv格式導(dǎo)入u3D中就好可以在u3D中播放了.

public GameObject obj;
public MovieTexture Moviel;
void Start ()
{
obj.GetComponent<Renderer>().material.mainTexture = Moviel;
//設(shè)置視頻播放模式為循環(huán)
Moviel.loop = true;
}
void OnGUI()
{
if (GUILayout.Button("播放/繼續(xù)"))
{
if (!Moviel.isPlaying)
{
Moviel.Play();
}
}
if (GUILayout.Button("暫停播放"))
{
Moviel.Pause();
}
if (GUILayout.Button("停止播放"))
{
Moviel.Stop();
}
最后再將Plan(平面)和視頻紋理賦值,最后來看看效果,點(diǎn)擊播放效果還是不錯的.

2、Unity標(biāo)準(zhǔn)的視頻播放接口-Handheld 掌型
首先在U3D中創(chuàng)建空文件夾并命名為StreamingAssets,將視頻文件放置在Assets/StreamingAssets/路徑下

void OnGUI()
{
if (GUI.Button(new Rect(20, 10, 200, 50), "PLAY ControlMode.CancelOnTouch"))
{
Handheld.PlayFullScreenMovie("test.mp4", Color.black, FullScreenMovieControlMode.CancelOnInput);
}
if (GUI.Button(new Rect(20, 90, 200, 25), "PLAY ControlMode.Full"))
{
Handheld.PlayFullScreenMovie("test.mp4", Color.black, FullScreenMovieControlMode.Full);
}
if (GUI.Button(new Rect(20, 170, 200, 25), "PLAY ControlMode.Hidden"))
{
Handheld.PlayFullScreenMovie("test.mp4", Color.black, FullScreenMovieControlMode.Hidden);
}
if (GUI.Button(new Rect(20, 250, 200, 25), "PLAY ControlMode.Minimal"))
{
Handheld.PlayFullScreenMovie("test.mp4", Color.black, FullScreenMovieControlMode.Minimal);
}
}
我們發(fā)布到安卓手機(jī)上運(yùn)行下。


二、安卓的發(fā)布
首先部署安卓環(huán)境,安裝SDK和JDK。
下載Jdk:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

下載SDK: http://tools.android-studio.org/index.php/sdk/










這時(shí)候我們就能夠Switch platform(轉(zhuǎn)換平臺)了,轉(zhuǎn)換后我們就要將SDK和JDK的文件位置導(dǎo)入U(xiǎn)3D中了選擇



設(shè)置好這些后可以直接點(diǎn)擊Build發(fā)布我們安卓機(jī)的項(xiàng)目了.
