我试图在WebGL构建的运行时加载OGG格式的一些声音到我的游戏中。我使用WWW类来获取具有"。然后我调用www.audioClip
来获取下载的文件。这可以在其他平台上工作,但在WebGL中失败。
Unity抛出此错误消息:"在此平台上不支持'ogg'流"。奇怪的是,因为我没有尝试流式传输,我已经尝试显式调用GetAudioClip(false, false, AudioType.OGGVORBIS)
并得到相同的结果。
我已经尝试将我的OGG文件转换为AAC(带有M4A和MP4扩展名)并使用www.audioClip
(错误,它无法从URL确定文件类型)和www.GetAudioClip(false, false, AudioType.MPEG)
(没有错误,但也没有声音)加载此文件。我在网上看到的最接近的解决方案是用MP3代替,但我不想这样做,因为许可的原因。
WebGL在Unity的限制音频资产是内置到应用程序?
try:
WWW data = new WWW (url); yield return data;
AudioClip ac = data.GetAudioClipCompressed(false, AudioType.AUDIOQUEUE) as AudioClip;
if(ac != null)
{
ac.name = "mySoundFile.ogg";
gameObject.GetComponent<AudioSource> ().clip = ac;
}
else
{
gameObject.GetComponent<AudioSource> ().clip = null;
Debug.Log("no audio found.");
}
适用于。ogg文件