首先明确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();
    }
}

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐