Улучшение использования процессора ffmpeg за счет снижения качества
Я использую FFMpeg для захвата экрана. Я ищу инструмент захвата экрана, который будет работать на 1000 виртуальных машин (Windows и Mac). Виртуальные машины имеют ограниченный ЦП (1 ядро) и 2 ГБ оперативной памяти и без графического процессора.
В настоящее время я вызываю ffmpeg с
ffmpeg -y -framerate 8 -f dshow -f gdigrab -i "desktop" -c:v libx264 -crf 0 -preset ultrafast -threads 0 temp.mkv
Я использую gdigrab для захвата экрана? Есть ли лучшие варианты, которые могут уменьшить использование процессора? или меняя кодировщик или формат?
Я стремлюсь к сокращению использования процессора на 4-5%.
заранее спасибо
2 ответа
С помощью -profile baseline
и позволяющий -tune zerolatency
Поворот некоторых дополнительных функций должен немного помочь. В противном случае вам нужно будет использовать кодек, отличный от h.264.
Какое разрешение вашего источника? Если он большой (например, 1080p или 720p), рассматривали ли вы сначала уменьшение до 480p / 404p?
В противном случае лучше просто поменять кодек. Я бы посоветовал вам сначала попробовать "-c:v mpeg4". Если он все еще слишком медленный, перейдите к "-c:v mpeg2video".