MediaSource API и MP4

Я последовал этому примеру с сайта Html5Rocks.com, который использует MediaSource API и видео.webm. Я попробовал пример с другим видео.webm, и он работал, но когда я попробовал с видео.mp4, он не работал. Возможно ли это как-то?

4 ответа

Обновление: поддержка MP4 (или более формально ISO BMFF) в Chrome Dev/Canary. Вам нужно будет сгенерировать ваши файлы MP4 способом, который соответствует спецификации Media Source. К счастью, Media Source был написан с учетом MPEG-DASH, поэтому любые DASH-совместимые файлы будут работать с Media Source. GPAC/MP4Box - отличный инструмент для этого:

MP4Box -dash 5000 -frag 5000 -rap some_file.mp4

... создаст 'some_file_dash.mp4', который должен быть совместим с Media Source. В ранее выпущенных версиях MP4Box есть некоторые ошибки, поэтому я рекомендую собирать из SVN.

Обновление: теперь поддерживается MP4-DASH.


MP4 пока не поддерживается в реализации Chrome API Media Source.

Мы планируем добавить поддержку, но это не будет сделано в течение пары месяцев. В настоящее время мы сосредоточены на обновлении существующей реализации, чтобы она соответствовала новой версии спецификации Media Source API, которая была недавно предложена W3C.

Вы можете следить за ходом обновления реализации, наблюдая за этой хромированной ошибкой.

Как уже упоминалось @Steven, используйте MP4Box для создания пунктирного файла MP4 и попробуйте сборку Chrome canary m23 (API-интерфейс медиа-источника включен). Вам необходимо позаботиться о следующем:

  1. Там должно быть один фрагмент на сегмент (-dash <ms> -frag <same ms>)
  2. Сегмент должен начинаться с SAP (-rap)
  3. Измените скрипт демо так, чтобы он добавлял сегмент за сегментом. Разделение на куски одинакового размера, как в случае с webm, не работает для ISO BMFF. Вы можете использовать файл mpd, сгенерированный MP4Box, чтобы узнать размеры отдельных сегментов.

Для воспроизведения в HTML5 с использованием MSE вам потребуются реализации проигрывателя на основе JS, такие как проигрыватель с открытым исходным кодом dash.js или проигрыватель bitdash MPEG-DASH.

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