MPEG-TS сегментирует потоковую передачу по HTTP

Я пытаюсь чередовать сегменты MPEG-TS, но не удается. Один набор сегментов был фактически захвачен встроенной камерой ноутбука, а затем закодирован с помощью FFMPEG с помощью следующей команды:

ffmpeg -er 4 -y -f video4linux2 -s 640x480 -r 30 -i %s -isync -f mpegts -acodec libmp3lame -ar 48000 -ab 64k -s 640x480 -vcodec libx264 -fflags +genpts -b 386k -coder 0 -me_range 16 -keyint_min 25 -i_qfactor 0.71 -bt 386k -maxrate 386k -bufsize 386k -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -aspect 640:480

А другой файл AVI, который был закодирован с помощью следующей команды:

fmpeg -er 4 -y -f avi -s 640x480 -r 30 -i ./DSCF2021.AVI -vbsf dump_extra -f mpegts -acodec libmp3lame -ar 48000 -ab 64k -s 640x480 -vcodec libx264 -fflags +genpts -b 386k -coder 0 -me_range 16 -keyint_min 25 -i_qfactor 0.71 -bt 386k -maxrate 386k -bufsize 386k -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -aspect 640:480

Затем выходные данные сегментируются на сегменты ts с использованием сегментатора с открытым исходным кодом.

Если оба исходят из одного и того же источника (оба из камеры), они работают нормально. Однако в этом случае второй набор сегментов зависает. Время идет, но видео не движется .. Так что я думаю, что это проблема кодирования. Итак, мой вопрос, как я должен изменить команду ffmpeg, чтобы это работало?

Под чередованием я подразумеваю наличие списка воспроизведения с первым набором сегментов и другого списка воспроизведения с другим набором сегментов, а также то, чтобы клиент вызывал один, а затем другой (HTTP Live Streaming)

Вывод ffprobe одного из первого набора сегментов:

Input #0, mpegts, from 'live1.ts':
  Duration: 00:00:09.76, start: 1.400000, bitrate: 281 kb/s
  Program 1 Service01
    Metadata:
      name            : Service01
      provider_name   : FFmpeg
    Stream #0.0[0x100]: Video: h264, yuv420p, 640x480 [PAR 1:1 DAR 4:3], 29.92 fps, 29.92 tbr, 90k tbn, 59.83 tbc
    Stream #0.1[0x101]: Audio: aac, 48000 Hz, stereo, s16, 111 kb/s

Вывод ffprobe одного из второго набора сегментов:

Input #0, mpegts, from 'ad1.ts':
  Duration: 00:00:09.64, start: 1.400000, bitrate: 578 kb/s
  Program 1 Service01
    Metadata:
      name            : Service01
      provider_name   : FFmpeg
    Stream #0.0[0x100]: Video: h264, yuv420p, 640x480 [PAR 1:1 DAR 4:3], 25 fps, 25 tbr, 90k tbn, 50 tbc
    Stream #0.1[0x101]: Audio: aac, 48000 Hz, stereo, s16, 22 kb/s

Спасибо,

Ответы на вопрос(1)

Ваш ответ на вопрос