Отличается ли 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.

Другие вопросы по тегам