Git Product home page Git Product logo

vsrender's Introduction

VSRender

An addon for parallel rendering for video sequencer in blender.


logo


Requirements

  • Linux (This addon was tested on Linux Mint 19). Does not work on any other OS out of the box.
  • Blender 2.80 or above (This addon was tested in Blender 2.82)
  • [Optional] Ffmpeg must be installed and should be executable from anywhere in order to use the join video parts feature. (This addon was tested with ffmpeg 3.4.6)

Features

  • Splits the video sequencer render into many parts
  • Renders the parts separately in background, utilizing all cores on your machine
  • Joins the parts (if needed) using Ffmpeg

Intro

The current situation as far as the Blender Video Sequencer is concerned, is that it is awesome, but is extremely slow in rendering as it utilizes only one thread. Even if you have 16 cores, it does not help. VS is ok for small videos but the render times can go to many hours for long videos. So far many solutions were offered to solve this issue outside the main Blender dev community. I tried some, but unfortunately none worked well with the new versions (or on Linux). Many use the splitting method, and this addon uses the same approach. This addon is simple and very specific to my own needs. Hopefully it will be useful for you. It can be adapted for Windows etc by making some minor changes.

Intro Video

https://youtu.be/Y73kQxqMpew

Download and Installtion

Download the VSRender.py file from this repository. Or get the zip file from the releases page. https://github.com/oormicreations/VSRender/releases

Install from the Blender Menu > Edit > Preferences > Add-ons > Install. Pick this file. Enable this addon. You will find the UI in the Video Sequencer window when you press N.

Usage

Once you finish editing your awesome video. Click the the VSRender tab in the "N" panel. Set the number of Parts. It can be any number but will be typically the number of cores you have in your machine.

Click the Split button. The frame range is split into specified parts. The frame count of each part is shown below this button. The last part frame count includes the remaining frames. This action creates shell scripts that contain the command for launching Blender in background with render arguments for specified frames.

Click the Parallel Render button to start rendering all parts at once. Make sure that you have set a output render path in blender render settings in Output tab in properties window. If you wish to use the built in Join function, make sure that it does not contain a prefix for the file names or zero padding characters.

Before you click render, tick the Open Terminal check box if you like to see the progress of renders in terminal windows. If it causes problems try unchecking it. (Note: You can stop the renders by killing the process from System Monitor or from command line)

When the render is over, click the Join Parts button to join them. This is useful when you have rendered videos not image sequences. It uses ffmpeg to concatenate the parts. So it must be installed to use this feature. You can join them via cli also.

Out File Name is the name of the joined video. You can use a custom ffmpeg Command to join them. The default Extension is mkv, but you can change it here before joining the parts.

Help | Source | Updates brings you to this page on GitHub.

Known Issues

  • There is minimum error check at this point.
  • It uses bash scripts so is sensitive to your Linux flavor or settings.
  • If you find that the scripts are not executing, try setting the permissions. Linux Mint automatically sets the permissions somehow.
  • It uses gnome-terminal to display the output of scripts. If you use some other terminal, please edit the code suitably.
  • It uses the default 0 padding in frame numbers. If you changed it, it won't recognize the file part renders to join.
  • It will not recognize the parts if a file name prefix was set in the output render path, or if zero padding characters (e.g. ####) are set there.
  • Always save your stuff!

Misc Info

This plugin has been released under MIT license, which means it is free for any kind of use and modification, but has no warranties or liabilities. Please read the license before you download and use it.

About

A FOSS Project by Oormi Creations.

http://oormi.in

A limited support is available via email.

[email protected]

logo

April 2020.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.