HTMLMediaElement.duration для файлов .ogg несовместим - PullRequest
0 голосов
/ 06 ноября 2019

Я пытаюсь установить точную синхронизацию аудиофайлов с помощью HTMLMediaElement.duration. Но в Chrome при воспроизведении файла .ogg за последние пару секунд звука значение длительности меняется. Вот упрощенный пример, который продемонстрировал проблему. Я сгенерировал 5-секундный файл розового шума в формате .ogg, используя Audacity, и использовал его в качестве источника.

<audio id="audio" controls>
    <source src="./noise.ogg" type="audio/ogg">
</audio>

Затем записал продолжительность каждого события timeupdate.

audio.addEventListener('timeupdate', function() {
    console.log(audio.duration);
})

Сначала онвыдает «5» 10 раз, но затем меняется на «5.000997» еще 11 раз. Другой файл вывел «31.318662» и «31.320816». Что вызывает это?

Связано: Несоответствующая длительность HTMLMediaElement

...