Как я могу конвертировать FLV прямой эфир в HLS? - PullRequest
0 голосов
/ 18 мая 2018

Я хочу преобразовать живой поток FLV в HLS и воспроизвести поток HLS в моем приложении. Так как я могу преобразовать живой поток FLV в HLS?Есть ли инструменты для конвертирования FLV в HLS (конвертирование FLV в H264 в соответствии, H264 в соответствии с HLS) в реальном времени?Пожалуйста, помогите.

1 Ответ

0 голосов
/ 21 мая 2018

FLV - это формат контейнера, аналогичный, например, mp4, а HLS - это потоковый протокол, который может передавать видео-контейнер с сервера на клиент.

Проще говоря, просматривая необработанное видео икак он «оборачивается» или изменяется перед потоковой передачей:

«сырое» видео -> кодированное видео (egh264) -> контейнер (например, FLV, mp4) -> фрагментированный контейнер (например, фрагментированный MP4) -> протокол потоковой передачивключая индекс и сегменты или фрагменты видео (например, HLS, DASH)

Общий способ ffmpeg для преобразования из избранного в mp4:

ffmpeg -i yourVideo.flv yourVideo.mp4

Однако, если ваше FLV-видео установлено недавно и кодер имеет формат h.264, который, вероятно, является наиболее часто поддерживаемым кодеком, вам может потребоваться преобразовать только контейнер, а не кодировку.Это меньше обработки, так что, как правило, хорошая вещь.Вы можете указать ffmpeg сделать это, используя параметр 'copy' - пример здесь:

Вы также можете использовать ffmpeg для создания индекса HLSи сегментируйте файлы из mp4:

ffmpeg -I yourVideo.mp4 -c: v h264 -flags + cgop -g 30 -hls_time 1 yourVideo.m3u8

Подробнееподробности можно найти в документации ffmpeg здесь: http://ffmpeg.org/ffmpeg-all.html#hls-2

Стоит помнить, что даже если ваше видео имеет кодировку h.264, в спецификации h.264 есть разные профили и опции, поэтому вам все равно понадобитсячтобы проверить, поддерживает ли ваше целевое устройство (устройства) формат кодирования, используемый вашим видео.

...