В настоящее время я играю с ffmpeg + libx264, но я не смог найти способ ограничить обратную зависимость между кодированными кадрами.Как ограничить обратную зависимость между закодированными кадрами в ffmpeg/x264
Позвольте мне объяснить, что я имею в виду: я хочу, чтобы закодированные фреймы содержали только ссылки, скажем, 5 кадров в будущем. В результате ни один кадр не должен «ждать» более чем 5 кадров для кодирования (имеет смысл для приложений с низкой задержкой).
Мне известно о варианте -tune zerolatency
, но это не то, что я хочу; Я все еще хочу двунаправленное предсказание.
или, возможно, ограничить I-кадры (опция GOP)? https://trac.ffmpeg.org/wiki/StreamingGuide#Latency – rogerdpack
Это очень интересный артикул, спасибо за это =) Однако он фокусируется на приложениях с очень низкой задержкой, что намного ниже того, что мне нужно (и имеет более высокий битрейт компромисс, чем я хочу). Я попробую B-кадровую вещь завтра (вопрос в том, будет ли x264 делать предсказание через P-кадры в B-кадрах. Что касается ограничения размера gop: я могу, конечно, ограничить обратную зависимость через это, но есть огромный битратный компромисс со всеми I-кадрами. – Bastian35022
Пока это работает, хотя в документации не гарантировано, поэтому я пойду с этим подходом. Спасибо за вашу помощь =) – Bastian35022