Отличается ли HLS от DASH-MPEG из-за типа видеофайла?
Надеюсь, что кто-то не возражает против этого вопроса, потому что это не вопрос, основанный на кодировании.
Я создаю HTML5 Video Player, который может переключать видео, аудио и субтитры. Я создал видеоплеер, используя Media Source Extension API. Но мой видеопроигрыватель не работает на устройстве IOS (iPhone 6s Plus с последним обновлением IOS) через все веб-браузеры (Safari, Chrome и т. Д.). Я видел, что API Media Source Extension не совместим с устройствами IOS ( https://developer.mozilla.org/en-US/docs/Web/API/MediaSource). Я исследовал и обнаружил, что устройства IOS могут воспроизводить веб-видео только с помощью метода HLS. Я также обнаружил, что HLS использует API Media Source Extension, поэтому мой проигрыватель, созданный с помощью Media Source Extension, не работает.
Таким образом, я не понимаю, почему мой медиаплеер не работает. Я предполагаю, что проблема связана с совместимостью типов файлов. Мой созданный видеоплеер использует MP4
тип видеофайла. В то время как устройства HLS или IOS используют m3u8
и использует .ts
сегменты.
Пожалуйста, помогите мне понять проблему совместимости, с которой я сталкиваюсь. В общем, я просто хочу знать, почему не работает мой созданный видеоплеер Media Source Extension. Это из-за типов файлов? Или другая причина?
Если вопрос не был правильно понят... прокомментируйте ниже.
HLS Demo
: https://videojs.github.io/videojs-contrib-hls/
Media Source Extension API Demo
<- doesn't work on IOS device
: http://nickdesaulniers.github.io/netfix/demo/bufferAll.html
1 ответ
HLS может использовать fMP4 или TS. Да, это требует манифеста m3u8. Ни одна iOS не поддерживает расширения медиаисточников. MSE может играть только в FMP4.