OpenShot 4.0 – Open-source video editor
111–120 of 148 posts
Re: OpenShot 4.0 – Open-source video editor
#112I decided to have a quick, cursory, "first-glance" look at OpenShot's software architecture...
It apparently (and again, someone correct me if I am wrong here) uses FFmpeg (https://www.ffmpeg.org/ https://git.ffmpeg.org/ffmpeg.git https://github.com/FFmpeg/FFmpeg), more specifically the FFmpeg libraries (libavutil, libavcodec, libavformat, libavdevice, libavfilter, libswscale, libswresample).
Nothing wrong with that, countless video and video-related programs, most notably VLC -- use FFmpeg as their base software layer.
LibAv (https://github.com/libav/libav), a fork of FFmpeg, can also apparently be "swapped in" as the base layer, replacing FFmpeg if so desired.
FFmpeg/LibAv are written in C, primarily adhering to the C99 standard.
From there, building on top of that, we have libopenshot (https://github.com/OpenShot/libopenshot) which is a C++ "middle level" library generating/abstracting a higher-level API for video editing specifically, and containing bindings to C++, but perhaps more notably, additionally to Python and Ruby...
Then on top of that, we finally have OpenShot (more specifically 'openshot-qt': https://github.com/OpenShot/openshot-qt) which is written entirely in Python 3.x, which uses PyQt (which bind to Qt libraries which give the software its platform independence!).
And of course, there are some other libraries and repos for other things here: https://github.com/OpenShot, for example, libopenshot-audio for audio, etc.
Opinion: Let me start off by saying that I am NOT a Python guy! I'd rather program in Delphi/ObjectPascal, C, C++, x86 Assembler, Java, Lisp, Scheme, Racket, Clojure, Haskell, R, Odin, Zig, or, if someone put a gun to my head, JavaScript (without Typescript!) or Rust! (too large a compiler, too many imported dependencies in many libraries/crates -- the language itself I have nothing against!)
But, that being said (also, I'll say I've seen some truly great programs written in Rust, before the community tars and feathers me!), I have seen just how powerful a teaching tool for programming tool Python is!
This is not a simple Python "Hello World" program!
This program is powerful, quite powerful indeed!
It showcases what Python can do by coordinating and managing lower-level functionalities!
It's also an excellent program from the perspective of garnering GitHub community support (think about it, the barrier to "chip in" and offer help/assistance/bug fixes/functionality improvements is lower, way lower on a Python program than it is on say, a C++ program using all of the latest C++23 language features or on a LISP-derived language using many deep asymmetric recursive meta constructs...)
It's also a great example of a Python cross-platform program!
And I really like the way that the software is delivered in discrete layers, i.e., the C++ middle layer has its own dedicated GitHub repo (as opposed to being co-mingled with the Python higher level one), etc.
So, great job!
This is truly a Python exemplar program!
Some really good Software Engineering practices in this one!
Re: OpenShot 4.0 – Open-source video editor
#113If it had VST support I could use it instead of DaVinci Resolve.
If you publish to platforms like YT, DaVinci Resolve can actually prepare your audio so it remains intact during their compression shenanigans. I don't know of any FOSS programs that can automatically handle it cleanly. =3
Re: OpenShot 4.0 – Open-source video editor
#114I've supported OpenShot financially in the past, but I'm currently leaning towards LosslessCut and Shortcut. Most people want a video editor to splice and concatenate video files without any loss or transcoding. I believe this behavior (lossless) should be default on all of these editors.
> Most people want a video editor to splice and concatenate video files without any loss or transcoding You can do this with mpv. It's an open source cross platform media player. For example, here's how I set up a tiny Lua script extension[0] to be able to visually cut videos in an intuitive way. It does it in seconds without re-rendering the video by shelling out to ffmpeg. Years ago I did the same thing with a shel…
Re: OpenShot 4.0 – Open-source video editor
#115I've supported OpenShot financially in the past, but I'm currently leaning towards LosslessCut and Shortcut. Most people want a video editor to splice and concatenate video files without any loss or transcoding. I believe this behavior (lossless) should be default on all of these editors.
> Most people want a video editor to splice and concatenate video files without any loss or transcoding You can do this with mpv. It's an open source cross platform media player. For example, here's how I set up a tiny Lua script extension[0] to be able to visually cut videos in an intuitive way. It does it in seconds without re-rendering the video by shelling out to ffmpeg. Years ago I did the same thing with a shel…
I made a similar script to extract clips from a source, possibly multiple files, and compress the result.
Re: OpenShot 4.0 – Open-source video editor
#116Why does open source software tend to lack quality / usable design?
- Good design requires user interviews, which are less common in open source - The sorts of people who are most attracted to open source work are programmers, not designers - Open source software can get popular even with bad design; closed source software with bad design fails and shuts down
Re: OpenShot 4.0 – Open-source video editor
#117Earlier quoted context omitted.
> Most people want a video editor to splice and concatenate video files without any loss or transcoding You can do this with mpv. It's an open source cross platform media player. For example, here's how I set up a tiny Lua script extension[0] to be able to visually cut videos in an intuitive way. It does it in seconds without re-rendering the video by shelling out to ffmpeg. Years ago I did the same thing with a shel…
This is very cool! Do you have a similar workflow for stitching those cut clips together?
Not through mpv, but if all of the videos are the same resolution and codec you can use ffmpeg to concat them without needing to re-encode anything.
It could be worth making a little wrapper script for this, but the ffmpeg command itself isn't too crazy. You can Google for "ffmpeg concat multiple videos into a single video without re-encoding".
ffmpeg is super powerful, you can technically resize and alter videos into a consistent format and then encode a new video too.
Re: OpenShot 4.0 – Open-source video editor
#118Why does open source software tend to lack quality / usable design?
I don't work on open source but it could be: - Good design requires user interviews, which are less common in open source - The sorts of people who are most attracted to open source work are programmers, not designers - Open source software can get popular even with bad design; closed source software with bad design fails and shuts down
Re: OpenShot 4.0 – Open-source video editor
#119https://github.com/shotstack/shotstack-studio-sdk
More for embedding a video editor into your own application but may be of interest for those who like Openshot.
Re: OpenShot 4.0 – Open-source video editor
#120Earlier quoted context omitted.
The "open-x" product name inflation - how did that happen
"open-x" for anything not actually OSS/FOSS should be banned. Just like "engineer" is a reserved term in many jurisdictions, "open" should be too. At least in our industry. If a bakery wants to call itself "open", so be it. But if software calls itself "open", it had better be open. OpenAI, OpenRouter, OpenArt, OpenGov, OpenWeb, OpenText, ... this is all malarkey. The only instance where "open" isn't trying to pose a…
When AI was new, I definitely got fooled by "OpenAI" and thought it was an open source style AI company. Boy was I wrong there.
The straight abuse of language lately has become quite frustrating overall, but part of that gets political and I'll stray away from that to not get too off topic. When I see these words like "Open" used in the title so often, it just makes the word feel like it's tied to a new fad, and makes it harder for me to trust projects with those names.