Video Rendering Software, DAW's Which one to go with?

So… That’s it. I’ve made up my mind and am going to finally do it. I’m going to start a Channel specifically for Programming. I’m going to cover Python, RustLang, Vim, Bash and some Database and Business Inteligence tools like SSRS, SSIS, Tableau, SQLite, MongoDB and AWS tools.

My problem is, Ive never used any rendering software on Linux aside from making cuts of family videos with FFMpeg.

What’s the most practical tools out there for rendering video with transitions and other simple things. I do want some production quality to this like 1080p60fps and I’ll be making thumbnails with GIMP or Inkscape.

I’ve started scripting intros and a layout of the first 30 videos of the topics I want to cover.

edit: ( I plan to use OBS to record )

So any tips would be appreciated !

1 Like

I use davinci resolve, and it works pretty great on Linux. It’s definitely worth getting a key fob for the h264 support as well.

I render to h264 masters, then re-encode to Youtube-friendly settings with ffmpeg.

2 Likes

I’m sorry, what do you mean a Key Fob? When I think of Key Fobs I think of security. Like YubiKeys etc. Why would i need a Key Fob for Davinci Resolve?

How time consuming is that? also, can that be scripted (Python/Bash)?

Davinci is one obvious one, but you can also take a look at Kdenlive or Blender.

It really depends how you define “simple things” and how advanced you want to eventually get.

I don’t know about Kdenlive, but you can automate a lot with Blender (Python based scripts IIRC).

I’ve worked with it before (probably overkill but I had the hard drive space so :woman_shrugging: ) . Screen recording in a lossless-format in OBS (I think it’s UT Video(?)), but since Blender didn’t support that format I transcoded to FFV1, which Blender works happily with. Can also set up Video Proxies in Blender as work files. I also played around with creating the proxie files before even starting a project in Blender, but I kinda lost interest because I didn’t need them anymore.

1 Like

So, transitions with graphics in the lower 3rd or upper to move from say,
“Here is the Standard Library Explanation” to “Here is a real world use case for this module/function”. Since I plan on doing things in sections I do want there to be a graphical appeal/break in each process.

Should be possible in Blender, and nicely integrated too.

Forgot to mention another one: Lightworks

The free version only allows export to 720p, but from what I can tell the whole workflow is available, so if you like it you can get a license and continue working as before.

1 Like

Hmm, I plan on 1080p60fps from the start. So I would have to use it for a period of time before going all in. I have Blender n a flatpak, and will be doing some typography for thumbnails and intro/outro. I’ve just not seen many people use Blender for video rendering/production

Yeah it’s not exactly known for it and granted it is surely not a tool for big movie productions, but for small things it’s adequate IMO.


Oh by the way, before I forget… You can also do transitions in OBS directly. So for just swapping from one scene to the other you don’t actually need to edit anything, you can just do it in OBS.

Here’s a tutorial from @eposvox , but there are more out there:

2 Likes

I’m not a content creator at all but am interested none the less. I happen to be subscribed to a rather new YT channel where the host is a long time Windows admin that had fairly recently (a year or so ago) switched to Linux and decided to document his journey and share it along the way.

One particular video you might be interested in would be his Linux workflow in creating a video here. Some of the software he uses has already been mentioned above. If anything, it might give you an outline or a detail you might not yet have considered.

Chris Titus Tech:

2 Likes

License key, but on a USB. That way when you distrohop, you don’t have to contact support to get the license reset.

Depends on how long the content is and your specs. The re-encode takes similar time to the initial render on my 1950x. And yes, it can be (and is) scripted.

1 Like

silly rabbit ! :laughing: You know I don’t distro hop ! I been on Fedora 7 yrs now. It’s dnf or flatpaks for me. I’ve only had to use apt-get for work on occasion. If I need to work on anything else it goes in a VM.

So my initial 30 videos will be 10-12 minutes MAX. It’s part of the series name to be quick and catchy. The “weekend” videos will eventually be longer and more indepth.

1 Like

Since you say that, just note that the Blender from the Fedora Repo doesn’t come with FFmpeg enabled, even if FFmpeg is installed from rpmfusion. So video editing is very much limitied (read: non-existent) when using the repo version. The zip download from the Blender website works fine though. I don’t know about the flatpak version you have.

1 Like

Ah ,I will have to look into that then. Thanks !

That shouldn’t take more than 30 minutes per render pass on modern hardware. On something high end (lots of cores) , it’ll be much quicker.

And for the record, I’ve had good experiences with getting resolve installed on Fedora. (it only officially supports CentOS)

2 Likes

For future reference: He’s using Kdenlive
Was wondering about that when I couldn’t watch the video earlier.

Olive and KDenLive are pretty good. But if you want real production stuff, DaVinci resolve or Lightworks.

Also I’d use REAPER as my DAW

2 Likes

TIL Blender is on Steam, and it works just fine with FFmpeg.

Also, I just dug up an old project and tried out the proxy-generation ahead of time (i.e. outside of Blender), and it works as intended.

For reference, to get this working:

ffmpeg -i "<inputfilename>" -vf "scale=iw*.5:ih*.5" -an -c:v mjpeg -q 1 "$PWD/BL_proxy/<inputfilename>/proxy_50.avi"
  • -vf applies video filters, in this case scaling the image width iw and image height ih to 0.5 each.
  • -c:v mjpeg specifies MJPEG as the codec, as that’s what Blender uses (I haven’t tested if other formats like PNG work).
  • -q 1 supposedly sets the JPEG quality. In the Blender options below there’s a slider for that, 1 should correspond to 100%. I don’t know what FFmpeg uses by default, the output says q=2-31, but that shows whether I specify that option or not. The files do get bigger though so one would hope it’s also higher quality. edit: it’s actually showing q=1 while it’s encoding, but not in the output summary on top, no idea what the hell that’s about:
    Stream #0:0: Video: mjpeg (MJPG / 0x47504A4D), yuvj420p(pc), 1280x720, q=2-31, 200 kb/s, 60 fps, 60 tbn, 60 tbc (default)
[...]
frame= 1297 fps= 71 q=1.0 Lsize=  171340kB time=00:00:21.61 bitrate=64932.3kbits/s speed=1.18x  
  • -an strips audio because it’s pointless to have (audio is taken from the audio sequence in the VSE)

Note that the -i filename has to correspond to the subdirectories name if you’re using the “per strip” proxy storage option. There is also “per project”, but I haven’t played with that.

Then enable proxy usage in Blender:

Note that the checkbox on the bottom right has to be ticked, otherwise the proxy will not be used even when set in the proxy render size at the top. The checkboxes on the percentages in the Strip Proxy & Timecode panel are only used when generating proxies in Blender though.

Instead of proxy_50.avi you can also use 25, 75, and 100 depending on your needs, and change the proxy size on the top accordingly.

Also a note on proxies and framerates: I did not find a way of changing the framerate of the proxy files inside blender, they seem to be 30 25 fps and it’s unrelated to the Scene’s framerate (my project was set to 60 from the start, but the proxies were still 25???), so the FFmpeg transcode seems to be the only option there since it retains whatever the fps was in the source file (unless otherwise specified).

I’m also not sure what blender does to proxy files when the sources have an alpha channel, and I don’t have source material to test with. MJPEG doesn’t support alpha because it’s JPEG, so it probably uses PNG instead? But I haven’t found documentation on it. The VSE in general isn’t all that well documented IMO, and it doesn’t help that they revamped the interface in 2.80, which was a good change but makes video guides a little awkward to work with at times.

PS: There is amazingly little documentation for each codec’s specific options on the FFmpeg documentation, which is really annoying. You can either go to the codec’s homepage and hope the options correspond to what’s in FFmpeg in some shape or form, or google around for hours on end…

2 Likes

Damn, that’s a solid strategy.

Yeah, definitely less annoying then updating manually each time :smiley:

Sort of off-topic, but I don’t get why Blender in the Fedora repo is compiled without FFmpeg support in the first place though. I know it’s Fedoras policy to not include FFmpeg in the repos due to patent issues, but what’s keeping applications from using a library if it’s installed, and not using it if it’s not? Not sure how that would violate Fedoras policy…

1 Like

Updated my post above regarding proxy generation outside Blender since i had various mistakes in it, and added a few parameters.

Regarding the JPEG quality: the parameter actually works as can be seen here side-by-side:

Notice the slight artifacting on the left without the parameter…

edit:
Just thought to mention this, but I don’t know how true it is. So according to the steam reviews, when steam updates Blender, it apparently resets all the settings and preset you did. Not sure if that’s a general issue though since there’s only a handful of those reviews (just select negative).

1 Like