首先明确unity Editor下(平台Web),无法从服务器加载MP3类型音频进行播放,可以加载ogg和wav格式音频;
但是发布出来Web后,unity却又可以从服务器加载MP3类型音频进行播放,也可以加载wav格式,但是不能加载ogg格式,否则浏览器会报不支持:
“streaming of "ogg" on this platform is not supported”
接下来写一下怎么加载:
using System.Collections;
using UnityEngine;
using UnityEngine.Networking;
public class Test : MonoBehaviour
{
public AudioSource audioSource;
AudioClip _IntroduceClip;
string audioIntroducePath = "https://niuyeshuzi-carvideos.oss-cn-hangzhou.aliyuncs.com/CarAudio/DT0.mp3";
private void Start()
{
audioSource = transform.GetComponent<AudioSource>();
StartCoroutine(GetIntroduceAudioClip(audioIntroducePath, audioSource));
}
IEnumerator GetIntroduceAudioClip(string path, AudioSource _aud)
{
// MPEG:mp3 OGGVORBIS:ogg WAV:wav
AudioType audioType = AudioType.MPEG;
var uwr = UnityWebRequestMultimedia.GetAudioClip(path, audioType);
yield return uwr.SendWebRequest(); // 完成加载
if (uwr.isNetworkError && !uwr.isDone)
{
Debug.LogError(uwr.error);
}
else
{
//"样本给声音中"
_IntroduceClip = DownloadHandlerAudioClip.GetContent(uwr);
}
_aud.clip = _IntroduceClip; // 样本完成
_aud.Play();
}
}