Лишняя секунда в конце аудио
Подключаю как обычно аудио:
<audio controls ${(this.props.autoplay && 'autoplay') || ''}>
<source src="${this.props.src}" type="audio/wav">
<source src="${this.props.src}" type="audio/ogg">
<source src="${this.props.src}" type="audio/mpeg">
</audio>
И всё хорошо, кроме того что показывает длительность аудио 9:59, но когда аудио завершается то это время вместе с уже прошедшим временем превращаются в 10 минут. Т.е. вот слушаешь аудио и всё время видишь xx:xx/9:59, а в самом конце показывается 9:59/9:59, а потом превращается 10:00/10:00. Сразу скажу, что проблема только в FF, в Chrome показывается всегда 9:59
Пробовал тут в "Фрагмент кода" вставлять и просиходит тоже самое. К сожалению с самим файлом не могу поделиться, авторские права и т.д., но с другими файлами такого не просиходит
При отслеживании длины аудио такая же магия просиходит всё время показывает 599.134167, а после окончания хоп и показывает 600.02234. По экспериментам я так понял, что сайт или стили не виноваты. Пробовал следить за продолжительностью на других сайтах, других аудио и у них всё нормально - одно и то же число в начале и в конце. Возможно файл сам какой-то странный, других причин не нашёл. Сам файл формата mp3, так же пытался убрать autoplay и source-ы для wav и ogg - бесполезно. Скорее всего не важно, но так же пробовал не как строчку вставлять audio, а через document.createElement('audio') - тот же результат
Не могу понять, как с этим бороться. Меня устроит любой вариант, хоть пусть всегда показывает 9:59 хоть пусть показывает 10:00, главное чтобы было одно время всегда
Ответы (1 шт):
У аудиофайлов бывает, что реальная продолжительность не соответствует той, что значится в заголовке файла. Попробуйте открыть файл в каком-то десктопном аудиоредакторе типа Soundforge, Wavelab или т. п. Потом опять сохранить. Если открывается нормально, т. е. появляется волновой график аулиофайла, можно потом правильно сохранить средствами этого редактора. Возможно, эта лишняя секунда на графике будет отображаться в виде горизонтальной линии тишины и весь фрагмент с этой линией можно будет из файла вырезать и потом сохранить.