Не удается воспроизвести аудиоблоки с сервера с помощью подключения через веб-сокет? - PullRequest
0 голосов
/ 25 сентября 2019

Я передаю данные аудио-буфера частичного фрагмента в аудио-тег, но не могу воспроизвести звук.Я попробовал то же самое для веб-аудио API, но он не работает.Пожалуйста, дайте мне несколько советов, как воспроизводить аудио с использованием данных чанка.

var createAudioElement = function () {
    audioElement = document.querySelector('video');

    if (window.MediaSource) {
        mediaSource = new MediaSource();
        audioElement.src = URL.createObjectURL(mediaSource);
        mediaSource.addEventListener('sourceopen', sourceOpen);
    } else {
        console.log("The Media Source Extensions API is not supported.")
    }
};

function sourceOpen(e) {


    var mime = 'video/mp4; codecs="avc1.42E01E, mp4a.40.2"';
    console.log(this.readyState);
    var mediaSource = this;
    if (mediaSource.readyState === 'open') {
        var sourceBuffer = mediaSource.addSourceBuffer(mime);

        sourceBuffer.addEventListener('updateend', function (e) {
            audioElement.play();
            if (!sourceBuffer.updating && mediaSource.readyState === 'open') {
                mediaSource.endOfStream();
            }
        });
        sourceBuffer.appendBuffer(data);
    }

};

data будет в чанке, поэтому я добавляю этот чанк в исходный буфер, но он не работает.

...