Неожиданно большие файлы HLS TS

Иногда кажется, что сегментирование HLS не работает должным образом для нескольких потоков. Мой файл TS растет до тех пор, пока диск не будет заполнен, сегментирование не происходит. Большинство моих потоков работают отлично в течение нескольких недель (с той же линией cmdline).

Что я знаю об одном из моих проблемных исходных потоков (вывод FFPROBE): https://justpaste.it/5d0px

Моя команда выглядит следующим образом:

/root/bin/ffmpeg -loglevel 16 -probesize 10M -analyzeduration 10M -i http://host/streams/stream.m3u8 -map 0:1 -map 0:0 -c:a copy -c:v copy -f hls -hls_time 10 -hls_flags delete_segments -hls_base_url http://host/ts/ -hls_segment_filename /var/media/ts/stream_%03d.ts /var/media/playlist/stream.m3u8

Я регистрирую действия FFMPEG в файл журнала, и я увидел только одну ошибку, когда мой диск был заполнен:

av_interleaved_write_frame (): на устройстве не осталось места

Ошибка записи трейлера /var/media/playlist/stream.m3u8: на устройстве не осталось места

Я пробовал эти версии FFMPEG: N-93765-gfcc01ba, 4.1.3

Файл HLS m3u8 выглядит нормально, с продолжительностью все в порядке, но последние файлы TS увеличиваются, пока мой диск не заполнится. Использование Ramdrive для хранения файлов TS.

Редактировать: Некоторое обновление: Запуск FFMPEG на весь день с уровнем логики 48:

  • Файл журнала Огромный ~790MB, поэтому я собираюсь поделиться только ошибкой, которую я получаю. Конечно, если вам нужно, я буду загружать его.
  • Сегментация остановлена ​​на 9538-м сегментном файле (см. Настройки HLS выше). Я вижу только эту ошибку, когда сегментирование остановлено:

Немонотонный DTS в выходном потоке 0:0; предыдущий: 8584618042, текущий: 307231408; меняется на 8584618043. Это может привести к неправильным временным меткам в выходном файле.

На моем производственном сервере, где работает большинство моих потоков, я создал простой скрипт на Python, который определяет, превышает ли размер файла TS 20 МБ (файлы TS обычно максимально 2 мегабайта)

Вот мои результаты:

2019-05-21 08:02:02: /var/media/ts/tlc_9538.ts больше 20 МБ

2019-05-21 08:02:03: /var/media/ts/eurosport_9538.ts больше 20 МБ

2019-05-21 08:02:04: /var/media/ts/digi_sport1_9538.ts больше 20 МБ

2019-05-21 09:27:01: /var/media/ts/travel_9538.ts больше 20 МБ

2019-05-21 09:48:01: /var/media/ts/digi_sport2_9538.ts больше 20 МБ

2019-05-21 11:21:01: /var/media/ts/digi_world_9538.ts больше 20 МБ

2019-05-21 11:22:01: /var/media/ts/history_9538.ts больше 20 МБ

2019-05-21 12:39:01: /var/media/ts/viasat_history_9538.ts больше 20 МБ

Как видите, это событие происходит в 9538-м файле TS. Есть ли причина для этого?

0 ответов

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