MyTetra Share
Делитесь знаниями!
Как в Blender запустить рендеринг видео в несколько потоков
Время создания: 19.02.2019 14:56
Автор: xintrea
Текстовые метки: blender, рендеринг, конвертирование, создание, видео, видеоредактор, video, sequencer, редактирование, поток, ffmpeg
Раздел: Компьютер - Программное обеспечение - Blender
Запись: xintrea/mytetra_syncro/master/base/155057741646e1pp6lm4/text.html на raw.github.com

По-умолчанию Blender генерирует видео-файл из видео-секвенсора в один поток. Это происходит из-за того, что для создания видео-файла в Blender используется внешний конвертор видео ffmpeg. Казалось бы, в Blender есть настройка количества потоков:





Но она не влияет на рендеринг видео-файла. И поэтому при сохранении видео задействуется только одно ядро.


Однако есть решение. Вместо генерации одного видео-файла, можно в параллельных потоках сгенерировать несколько файлов, а потом их склеить в итоговый.


Для этого существует утилита pulverize:


https://github.com/sciactive/pulverize


Она имеет реализацию на PHP, Python и CMD. Она просто запускается в консоли. Для ее работы не нужен запущенный Blender. Она сама сформирует команды рендеринга, которые будут выполняться в консоли. Единственное что нужно учесть - бинарник blender должен быть прописан в стандартных путях, чтобы его можно было вызвать.


Версия для Python используется так:



usage: pulverize.py [-h]

[-w WORKERS]

[--concat-only]

[--render-only]

[--dry-run]

blenderFile.blend



То есть, через опцию -w указывается количество процессов, и затем имя blend-файла.


Каталог сохраняемого видео и прочие настройки будут браться из blend-файла:





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


В момент рендеринга можно мониторить происходящее.


Команда:


watch ls -la


в каталоге с формируюмыми файлами даст возможность смотреть как создаются куски видео.


А для получения размера всех файлов с видео в этом каталоге, можно дать команду:


ls -la | grep "\-rw" | awk '{ print $5 }' | awk '{s += $1} END {print s}'


Или просто:


du . -h


Итоговый видеофайл будет собран в том же каталоге, где и лежит blend-файл.


Так же в этом разделе:
 
MyTetra Share v.0.65
Яндекс индекс цитирования