Как ограничить использование процессора ffmpeg

Я конвертирую mkv в mp4 с помощью ffmpeg.

ffmpeg -i input.mkv -vcodec copy outpup.mp4

И это требует всего моего процессора, и мой веб-сервер не отвечает во время процесса.

Можно ли ограничить использование процессора?

я пытался

cpulimit -l 20 ffmpeg [...]

Но после этого видео не читается..


person jibe    schedule 28.08.2020    source источник


Ответы (1)


Да, это может убить ваше веб-приложение из-за высокой загрузки ЦП. Вы можете использовать команду nice, которая настраивает уровень приоритета процесса, чтобы он выполнялся реже. Более того. полезно запускать задачу с интенсивным использованием ЦП в качестве фонового или пакетного задания.

nice ffmpeg -i input.mkv -vcodec copy outpup.mp4

Командный инструмент cpulimit ограничивает использование ЦП процессом, приостанавливая процесс через разные промежутки времени, чтобы удерживать его ниже определенного потолка. Это может нарушить преобразование видео. Вы можете попробовать увеличить -l до 50

cpulimit -l 50 ffmpeg -i input.mkv -vcodec copy outpup.mp4

Но вы не можете ограничить FFMpeg процентом использования ЦП. Вместо этого вы можете попытаться увеличить использование -thread или понизить приоритет вашего процесса FFMpeg с помощью команды nice, чтобы ваше веб-приложение могло отвечать.

person Fatih Şennik    schedule 28.08.2020