Передача транскодированного видео на лету для вставки результатов http без использования панели поиска

Я пытаюсь найти простое домашнее решение для потоковой передачи / транскодирования видео на низкокачественную машину, которая не может правильно воспроизвести файл.

Я пытаюсь сделать это с ffmpeg (как ffserver будет прекращено) Я узнал, что ffmpeg имеет встроенный http-сервер, который можно использовать для этого.

Приложение, которое я тестирую с (для seekbar) VLC

Я, вероятно, делаю что-то здесь не так (или пытаюсь сделать что-то, что другие делают с другими приложениями)

Мой код ffmpeg, который я использую:

d: \ ffmpeg \ bin \ ffmpeg.exe -r 24 -i "D: \ test.mkv" -потоки 2 -vf scale=1280:720 -c:v libx264 -preset medium -crf 20 -maxrate 1000k -bufsize 2000k -c:ac3 -поиск 1 -мовфлагов faststart -listen 1 -f mpegts http://127.0.0.1:8080/test.mpegts

Этот код также дает мне возможность начать смотреть его, когда я захочу (в отличие от использования rtmp через udp, который будет запускать видео, как только он перекодирует его)

Я читал о переезде atoom вещь в начале файла, которая должна быть обработана movflags faststart

Я также проверил -re вариант без удачи, -r 25 это просто подавить Past duration 0.xx too large предупреждение, которое я читаю, это нормальная вещь. Тестовый файл один из многих с разными настройками кодера и т. д.

Настройки выше дают мне seekbar но это не работает и никакой общей продолжительности (и без индикатора выполнения), когда я переключаюсь с mpegts на matroska/mkv, я вижу длительность видео (и прогресс), но не панель поиска.

Если это возможно только с ffmpeg, я бы предпочел использовать его как автономное решение без дополнительных серверов rtmp/others.

1 ответ

Решение

Через некоторое время я добираюсь до точки, где:

Панель поиска - это вещь на стороне игрока, hls в версии v6 поддерживает указание на стартовый элемент, так как v3 стартует, где бы он ни находился (не более 3 предметов из конца списка)

Воспроизведение и поиск основаны на проигрывателе (Safari на ios поддерживает его, но не поддерживает), а также ffserver не нужен для загрузки содержимого.

В конце концов, он отлично работает без поиска, и, если требуется, поддержите его с помощью player/js.player или через промежуточное ПО, например прокси-сервер видео.

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