Unity WebGL: почему при использовании загруженного файла Mp3 или OGG звук не воспроизводится? - PullRequest
0 голосов
/ 15 мая 2019

Мне нужно скачать аудио (OGG, Mp3 или wav) с URL и воспроизвести его.

В редакторе работает нормально, а также в автономной сборке.

Но не в сборке WebGL .. У меня возникла ошибка или (зависит от формата) это:

Потоковая передача 'mpeg' на этой платформе не поддерживается.audioURL ... WWW data = new WWW (audioURL);данные о доходности;AudioClip downloadClip = data.GetAudioClipCompressed (false, AudioType.OGGVORBIS) как AudioClip;if (downloadClip! = null) {_audio.clip = downloadClip;} ...

    public void PlayAudio() {
        // Here clip is play
                if (_audio.clip != null && _audio.isPlaying == false)
                    _audio.Play();
                else
                    Debug.Log("Background music not present!");
                _audio.loop = true;
    }

To download clip i've used also (instead first code part):


     using (UnityWebRequest www2 = UnityWebRequestMultimedia.GetAudioClip(audioURL, AudioType.OGGVORBIS))
            {
                yield return www2.SendWebRequest();

                if (www2.isHttpError)
                {
                    Debug.Log(www2.error);
                    LogAdd(www.error, true);
                }
                else
                {
                    AudioClip downloadedClip = DownloadHandlerAudioClip.GetContent(www2);                
                    _audio.clip = downloadedClip;
                }
            }

По какой-то причине звук в webgl не воспроизводится.

EDIT 1: при загрузке MP3 ошибка (также в редакторе):

Потоковая передача mpeg на этой платформе не поддерживается. UnityEngine.Networking.DownloadHandlerAudioClip: GetContent (UnityWebRequest)

Ответы [ 3 ]

1 голос
/ 16 мая 2019

В документе Unity упоминается, что аудиоформат должен изначально поддерживаться браузером, вы можете проверить состояние поддержки по этой ссылке:

https://developer.mozilla.org/en-US/docs/Web/HTML/Supported_media_formats

Или просто используйте аудио тег для проверки файла.

Как я тестировал ранее, ogg подходит для Chrome и Firefox, а mp3 - для Safari

0 голосов
/ 30 июня 2019

«Mp3» - сокращение от MPEG-3; и действительно, если вы посмотрите на AudioTypes в Unity, он явно определяет MPEG AudioType как «MP2 / MP3 MPEG».

Так что в основном: попробуйте использовать не-mp3 файл.

0 голосов
/ 20 мая 2019

Я решил обновить до 2018.4.

Теперь он работает с MP3 без проблем.

...