По умолчанию FFmpeg попытается переустановить вход, даже если вы не используете какие-либо параметры, связанные с кодировкой.
Если вы хотите просто скопировать поток, как есть, вы должны попробовать функцию копирование потока:
-c:v copy -c:a copy
При копировании входящих потоков, вы можете пропустить процесс кодирования полностью. Так что ваша команда будет выглядеть следующим образом:
ffmpeg -thread_queue_size 32768 -i "http://xx/636.m3u8" -f hls -c:v copy -c:a copy -hls_time 5 -hls_list_size 5 -hls_allow_cache 0 -hls_flags delete_segments -segment_list_flags +live -hls_base_url "../ts/" -hls_segment_filename "C:\nginx\html\ts\lig-%random%%random%-%%3d.svgz" -y "C:\nginx\html\hls\lig1.m3u8" > log.txt
(. Не уверен, что если он будет работать, хотя)
Когда вам нужно перекодировать входной поток, вы должны рассмотреть вопрос о добавьте в команду некоторые параметры кодирования. По умолчанию ffmpeg пытается сопоставить исходные параметры и качество, что не всегда является самым оптимальным в реальных приложениях.
«Очень быстрая, сверхбыстрая и сверхбыстрая» пресетов h264 - это хорошее начало для повышения производительности.
-c:v h264 -preset:v ultrafast
Вы также можете играть с ХПН (Constant Rate Factor) кодирования, более высокие битрейтов и т.д. Подробнее о H264 Кодировку: https://trac.ffmpeg.org/wiki/Encode/H.264
Этот вопрос не имеет ничего общего с программированием и принадлежит SuperUser.com. – Brad