crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в быстрое выполнение ffmpeg
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
KuvshinoF Дата 15.1.2023, 21:30
  Есть программа - некие графические объекты перемещаются по экрану с темпом 10 раз в секунду. Задача в целом - записать в течении N-числа времени видео работы такой программы с минимальной !!! загрузкой CPU. Для такой задачи записи видео с экрана решил использовать ffmpeg:
ffmpeg -f x11grab -s 1280x1024 -r 10 -i :0.0+0,0 -vcodec libx264 -preset ultrafast source.avi;

В таком варианте команды ffmpeg загружает CPU аж до 50%, что очень много: эксперименты показали, что для снижения загрузки CPU надо писать видео с меньшим темпом (fps) - например 1 кадр в секунду (... -r 1 ...), но тогда на видео объекты будут перемещаться медленнее (наверное в те же 10 раз), чем в самой программе, что неверно.
Пробовал следующие варианты:
1. записать видео с fps=1 (... -r 1 ...), а потом его переконвертить с -r 10:
ffmpeg -i source.avi -r 10 result.avi

визуального эффекта это действие почему-то(???) не возымело (видео также "тормозит")
2. Разбивал видео на снимки
ffmpeg -i source.avi -r 1 %03d.jpeg

а потом обратно в видео
ffmpeg -framerate 10 -i %03d.jpeg result.avi

тоже нужного эффекта нет, с какими бы fps я не делал снимки, а затем видео (причем создание большого кол-ва снимков тоже сильно загружает CPU)
Так как же тогда решить такую задачу?
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 25.4.2024, 23:06