Несовместимая длительность HTMLMediaElement - PullRequest
0 голосов
/ 01 ноября 2018

У меня возникла проблема с моим видеопроигрывателем, когда продолжительность видео, возвращенная из HTMLMediaElement.duration , не соответствует. Я настроил следующего слушателя, чтобы помочь проиллюстрировать:

video.addEventListener('timeupdate', function(e) {
    console.log('Duration: ' + video.duration);
    if ( video.currentTime === video.duration ) {
        console.log( video.currentTime + ' === ' + video.duration )
    }
});

Когда я ищу весь конец видео, это событие возвращает другое (более точное) значение. Ниже я приведу пример моих журналов:

Duration: NaN
Duration: 135.8357
Duration: 135.8357
Duration: 135.8357
Duration: 135.8357
Duration: 135.8357
Duration: 135.8357
...

.. Я стремлюсь к концу видео ..

...
Duration: 135.8357
135.8357 === 135.8357
Duration: 135.952833

Я ищу весь путь до конца видео, текущее время равно длительности, а затем продолжительность обновляется до другого времени. Поиск до конца видео не вызывает событие ended (если только видео не возобновляется и не достигает новой конечной точки 135.952833).

Есть ли у кого-нибудь понимание этой проблемы или мысли о возможном решении?

...