Как я могу исправить ошибки appendBuffer, возникшие в результате следующих сценариев?
- отсутствуют данные
- данные не по порядку
Как я могу исправить ошибки appendBuffer, возникшие в результате следующих сценариев?
Здесь только догадки... Я бы предположил, что возможность восстановления не по порядку зависит от формата декодируемого медиаконтейнера (WebM, Ogg и т. д.). Функция браузера decodeAudioData
работала нормально при получении Ogg Opus файлы с явно неупорядоченными/отсутствующими страницами (созданы с помощью opus-file-splitter). Я бы предположил, что браузеры используют одну и ту же базовую реализацию декодирования потока как для буферов decodeAudioData
, так и для буферов MSE, поэтому MSE должен без проблем обрабатывать отсутствующие страницы/сегменты.
К сожалению, MSE не поддерживает audio/ogg codecs="opus"
, поэтому мои тестовые файлы нельзя сразу использовать для тестирования. Я еще не знаком с контейнером WebM, но в конечном итоге я буду проводить тесты с переупорядочением audio/webm codecs="opus"
файлов в MSE для другого проекта и могу сообщить вам результаты, когда это произойдет!
currentTime
в начало следующего диапазона и продолжите воспроизведение.SourceBuffer.mode
установлено значение segments
, что гарантирует сохранение временных меток сегментов.