Skip to content
Home » Free Open Source Software for Content Creation & Live Streaming on Linux (Debian) – My Top Picks

Free Open Source Software for Content Creation & Live Streaming on Linux (Debian) – My Top Picks

free software content creators on Linux

Following on from installing Debian 12 on my NVidia desktop and getting Plasma Desktop working on Wayland, I’m now ready to start installing my favourite free / open source software (FOSS). We’re on Debian 12 (Linux) and so there’s a choice between installing from:

  • Default Debian Repositories (repos) – Ideally this is the way to go for me.
  • 3rd Party repos (e.g. how we installed the NVidia drivers) – Only when necessary
  • Download a .deb or .zip file from the web and install manually. – Only when necessary
  • Flatpak, which is a containerised software delivery/deployment/running system. – Mixed feelings
  • Git download and local build. – Not my first choice.
  • There is another situation which is that some software is pre-installed and ships with the distro.
SoftwareDebian Repos3rd Party ReposDownlaodFlatpakGit & MakePre-Installed
Ardour7.3.08.12.0
Audacity3.2.4+dfsg-1
Blender4.4
Brave Browser1.76.82
Davinci Resolve19.14
EasyTag2.4.3
Jitsi2.10.5550
KeePassXC2.7.4
LibreOffice7.4.7.2 40
OBS Studio29.0.2.1-1+b1
Waveform1313
Veracrypt1.26.20
VLC3.0.21
The version of the software installed is listed under the install method. Clicking on the name should take you to their website. Clicking on the version number should take you to the install instructions.

Install Veracrypt on Debian Linux

Veracrypt is a cross platform open source disk encryption utility. You can have an encrypted disk which you can use on windows, mac, and linux! I show you how to do this in the video below. As a content creator it’s really helpful to be able to move your media files and resource between your main desktop and your laptop when out in the field. For example I keep my OBS scene settings on a remote drive so I can replicate my setup on multiple machines. I also keep all my reusable assets like graphics templates on that drive. Having it encrypted gives me peace of mind in case I lose it or it is stolen. All my data is secure and wont fall into evil hands!

  1. Visit https://www.veracrypt.fr/en/Downloads.html and download the appropriate file.
    • veracrypt-<version>-Debian-12-<arch>.deb – This is the Graphical User Interface (GUI) version
    • veracrypt-console-<version>-Debian-12-<arch>.deb – This is the command line version.
  2. Go to the downloads folder in the file explorer (Dolphin) and double click on the file veracrypt-1.26….deb
  3. This opens the Discover program and you can click Install at the top right.
  4. Enter your password to authenticate if requested.
  5. That’s it! You’ll be able to launch VeraCrypt in the same way you launch other apps.

Install Audacity on Debian Linux

Audacity is an interesting one. It is tested on Ubuntu, which from memory is based on Debian, and their official Linux releases are for Ubuntu. To quote Audacity “Your Linux distribution (for example Debian…) may have an Audacity package as part of the repository. Generally, the version from a distribution’s repository is older … but it may be better integrated into your distribution.

My usage of Audacity as a step in my podcast creation process requires the core audacity functionality and doesn’t rely on any cutting edge features. Stability is however important and so I elect to install the repository based version, even if it is a bit older.

$ sudo apt install audacity

Install Jitsi on Debian 12

Jitsi provide (March 2025) their legacy desktop client for a host of Operating Systems including Debian, Ubuntu, Arch, Mac OS X and Windows. I don’t know if they will maintain this moving forwards but for now it is an option.

  1. Visit https://desktop.jitsi.org/Main/Download.html and download the Debian Package (or the right one for you).
  2. Go to the ~/Downloads folder and double click on the jitsi deb file. This will open it in Discover and you can click on the Install button top right.
  3. You will get a broken dependency issue and it will fail to install.

I ran it again from the console:

$ sudo apt install ~/Downloads/jitsi_2.10.5550-1_amd64.deb 
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Note, selecting 'jitsi' instead of '/home/mark/Downloads/jitsi_2.10.5550-1_amd64.deb'
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 jitsi : Depends: jitsi-archive-keyring but it is not installable
E: Unable to correct problems, you have held broken packages.

It seems like the jitsi-archive-keyring needs to be installed. After a bit of searching of the tinterweb I found this link:

https://download.jitsi.org/stable/jitsi-archive-keyring_1.0.1_all.deb <– Legacy package

Clicking on that will download the Debian package for the keyring.

$ sudo apt install ~/Downloads/jitsi-archive-keyring_1.0.1_all.deb 
...
N: Download is performed unsandboxed as root as file '/home/mark/Downloads/jitsi-archive-keyring_1.0.1_all.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)

$ sudo apt install ~/Downloads/jitsi_2.10.5550-1_amd64.deb 
...
N: Download is performed unsandboxed as root as file '/home/mark/Downloads/jitsi_2.10.5550-1_amd64.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)
## Note the warnings thrown.

OK so lets launch Jitsi legacy desktop and see what happens:

bob@Machine:~/Downloads$ jitsi 
Problem creating boot delegation class loader: java.lang.reflect.InaccessibleObjectException: Unable to make protected java.security.SecureClassLoader(java.lang.ClassLoader) accessible: module java.base does not "opens java.security" to unnamed module @2e39ef76
org.osgi.framework.BundleException: Unable to resolve bcprov [109](R 109.0): missing requirement [bcprov [109](R 109.0)] osgi.ee; (|(&(osgi.ee=JavaSE)(version=1.5.0))(&(osgi.ee=JavaSE)(version=1.6.0))(&(osgi.ee=JavaSE)(version=1.7.0))(&(osgi.ee=JavaSE)(version=1.8.0))(&(osgi.ee=JavaSE)(version=1.9.0))) Unresolved requirements: [[bcprov [109](R 109.0)] osgi.ee; (|(&(osgi.ee=JavaSE)(version=1.5.0))(&(osgi.ee=JavaSE)(version=1.6.0))(&(osgi.ee=JavaSE)(version=1.7.0))(&(osgi.ee=JavaSE)(version=1.8.0))(&(osgi.ee=JavaSE)(version=1.9.0)))]
        at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4111)
        at org.apache.felix.framework.Felix.startBundle(Felix.java:2117)
        at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1371)
        at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
        at java.base/java.lang.Thread.run(Thread.java:840)
... and about 500 lines of errors
## Clean up this mess using dpkg to uninstall locally installed deb files
$ sudo dpkg -r jitsi
(Reading database ... 274331 files and directories currently installed.)
Removing jitsi (2.10.5550-1) ...
Processing triggers for man-db (2.11.2-2) ...
Processing triggers for gnome-menus (3.36.0-1.1) ...
Processing triggers for desktop-file-utils (0.26-1) ...
Processing triggers for mailcap (3.70+nmu1) ...
$ sudo dpkg --purge jitsi
(Reading database ... 274151 files and directories currently installed.)
Purging configuration files for jitsi (2.10.5550-1) ...

$ sudo dpkg -r jitsi-archive-keyring
(Reading database ... 274151 files and directories currently installed.)
Removing jitsi-archive-keyring (1.0.1) ...
$ sudo dpkg --purge jitsi-archive-keyring
(Reading database ... 274148 files and directories currently installed.)
Purging configuration files for jitsi-archive-keyring (1.0.1) ...

Install OBS Studio on Debian 12 Linux

There are three ways to install OBS on Debian, and at the time of writing this (March 2025) they provide different versions.

  1. Via apt using the stock repos (version 29)
  2. Via the Debian multimedia repos – more complex (version 29)
  3. Via flathub (version 31.0.2)

OBS Studio Flatpak versus Distro Repo (apt) ?

As you can see the flatpak version on flathub is a lot more up-to-date. But, and there is a very big but…

Flatpaks are software bundles intended to run self-contained within a sort of sandbox. Such software is built and deployed so as not to interfere with other software or processes on your system. So what you deploy from a flatpak is meant to be stand alone. OBS however is served by a raft of community-built plugins and these are provided as flatpak, .debs, git pulls, or even zips. A flatpak program by its very nature isn’t intended to integrate well with disparate plugins. Even if you did get the plugins working then when you update your flatpak installed OBS, your plugins will break as there’s no little continuity between flatpak builds of the same software. Put simply Flatpak OBS doesn’t easily support most plugins.

So when deciding how to install OBS on Linux you have to consider your priorities and use case carefully. Ask yourself:

Q) Do I need the most up to date version of OBS Studio?
A) If “Yes” then Flatpak \ If “No” then Distro

Q) Am I happy being limited to only using those plugins which are flatpak deployed?
A) If “Yes” then Flatpak \ If “No” then Distro

Q) Do I want the features provided by traditional plugins like Move, Shadows & Borders, Better masks etc?
A) If “Yes” then Distro \ If “No” then Flatpak

Q2) Do I want a version of OBS Studio that is patched to work well with my Linux build (Stability)?
A) If “Yes” then Distro \ If “No” then Flatpak

For me personally, having tried all three ways of getting OBS I keep going back to option 1. via apt using stock repos.

$ sudo apt install v4l2loopback-dkms
Suggested packages:
  v4l2loopback-utils

$ sudo apt install ffmpeg

$ sudo apt install obs-studio
Suggested packages:
  vlc-plugin-fluidsynth vlc-plugin-jack vlc-plugin-pipewire vlc-plugin-svg

You’ll notice I’ve shown you the apt recommended “Suggested Packages”. I haven’t installed them (yet) but I’ve made a note of them here in case I need them later. v412loopback-utils is needed for the virtual camera to work,

You should now have a working version of OBS and straight away I’d do a test of the following: Note I’ve put [ ] checkboxes on them so you can print this off and use it as a checklist!

Can you connect your mic? [ ]
Can you connect your camera? [ ]
Can you screen share? [ ]
Can you use a plugin? [ ]
Can you monitor your mic or other sound sources? [ ]
Does the Virtual Camera exist and function? [ ]

This test of OBS repo install on Debian shows mics, audio monitoring, video capture and screen capture all tested. It took about 45 seconds to setup. But worth it and no point in progressing further unless OBS is working properly.

Handy Hint: if you do anything (remove, update, change) to pipewire, ffmpeg, NVidia Graphics Drivers, Jack, Pulse, or ALSA then come back and re-check OBS as a priority. It makes use of all of these things.

Installing OBS Via Debian Multimedia Repository

Although this isn’t the method I opted for I did test it. It yielded exactly the same OBS version as the default distro repo above. However here’s the basic instructions in case you want to try it for yourself:

$ sudo gpg --list-keys
$ sudo gpg --no-default-keyring --keyring /usr/share/keyrings/deb-multimedia.gpg --keyserver keyserver.ubuntu.com --recv-keys 5C808C2B65558117

$ echo "deb [signed-by=/usr/share/keyrings/deb-multimedia.gpg] \
https://www.deb-multimedia.org $(lsb_release -sc) main non-free" \
| sudo tee /etc/apt/sources.list.d/deb-multimedia.list

$ sudo vi /etc/apt/preferences.d/deb-multimedia-pin

Package: obs-studio obs-plugins libobs0
Pin: origin www.deb-multimedia.org
Pin-Priority: 900

Package: *
Pin: origin www.deb-multimedia.org
Pin-Priority: 1


$ sudo apt install obs-studio

Installing OBS Studio on Linux via Flathub

I also tried this approach but the resultant OBS install, though a newer version, was a nightmare when it came to using plugins. So I reverted to the default distro repo install.

$ sudo apt install flatpak
$ sudo apt install plasma-discover-backend-flatpak
$ flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

## Sort out the virtual camera
$ sudo apt install v4l2loopback-dkms
$ sudo apt install v4l2loopback-utils
$ sudo apt install linux-headers-$(uname -r)

## Launch OBS via command line:
$ flatpak run com.obsproject.Studio

Install Davinci Resolve 19 on Debian 12 Linux

Davinci Resolve 19 is an amazing suite for content creators. It is first and foremost an NLE (Non-Linear video Editor) but it also has compositing, grading, effect, titling, and sound engineering built in. Plus output to a vast range of formats. If you have an NVIDIA graphics card though then there’s a few steps you need to follow so we’ve put together a dedicated “How to install Davinci Resolve 19 on Debian 12 with NVIIDIA tutorial” here:

Install Blender on Debian 12 Linux

Blender is frankly an amazing piece of open source software for creatives. I used it extensively for my 2023 feature length Stonehenge: Into the Light documentary, creating a 3D model of Stonehenge, UFOs, and Higher Dimensional Beings! They have comprehensive Linux installation instructions which you’ll find here. It’s also available on Windows and Mac too. But be warned, there’s a steep learning curve. It took me months to get the basics in place. But well worth it.

I downloaded it and then manually installed it in /usr/local/ as per their instructions. This gave me version 4.4 at the time of writing this.

## Once you've downloaded it to ~/Downloads
$ pushd ~/Downloads 
$ ls blender*
blender-4.4.0-linux-x64.tar.xz
$  tar -xvf blender-4.4.0-linux-x64.tar.xz 
blender-4.4.0-linux-x64/
blender-4.4.0-linux-x64/blender.desktop
blender-4.4.0-linux-x64/blender-launcher
... edited out lots of lines ...
blender-4.4.0-linux-x64/license/license.md
blender-4.4.0-linux-x64/license/licenses.json
blender-4.4.0-linux-x64/blender-softwaregl
$ tree  -d -L 2 ./
./
├── blender-4.4.0-linux-x64
│   ├── 4.4
│   ├── lib
│   ├── license
│   ├── textures
│   └── usd
└── DaVinci_Resolve_19.1.4_Linux

$ sudo mv blender-4.4.0-linux-x64 /usr/local/blender-4.4.0
## Launch it:
$ /usr/local/blender-4.4.0/blender

Setting up Blender of Debian

Once Blender is installed on Debian 12 Bookworm there are a number of tweaks to make to the settings for better performance. Depending of course on your system. Here’s a few of the changes I make:

  1. Edit > Preferences
    • Interface > Display > Resolution Scale: 1.25
      I’m on a 4k monitor so the menu text is tiny. Setting it to 1.25 (125%) makes it easier to read
  1. Edit > Preferences
    • Interface > Status Bar
      Information is power – go ahead and tick all those boxes.
  1. System > Cycles Render Devices

Install EasyTag MP3 ID3 Tag Editor on Debian Bookworm

EasyTag is one of those little heroes that once you’ve installed it will be used a lot, especially if you’re a podcaster who uploads MP3s. It allows you to edit the ID3 tag and importantly attach a square JPG as the cover image to your MP3. Now you’re MP3s will appear professional when people download them!

$ sudo apt update 
$ sudo apt install easytag
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  libid3-3.8.3v5 libopusfile0
Suggested packages:
  libid3-tools
The following NEW packages will be installed:
  easytag libid3-3.8.3v5 libopusfile0
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 1,080 kB of archives.
After this operation, 5,049 kB of additional disk space will be used.
Do you want to continue? [Y/n]

Install Tracktion Waveform on Debian 12 Linux

Last, but by no means least we have Waveform13 an amazing full spec FREE DAW perfect for musicians or podcasters (which is why I use it). I highly recommend this program!

  1. In order to download it for free you do have to register a FREE account. So go ahead and do that first and then log in.
  2. Now click on the Download link and it will download the Tracktion Download Manager as a deb file
  3. In your GUI File manager (eg Dolphin) then right click and “Open with Discover
  4. This will open the Discover Window and you can click the Install button top right.
  1. You’ll need to authenticate and then where the Install button was you’ll see the Launch button. Go ahead and hit that!
  2. Tracktion Download Manager will open and you need to Log In with the same username password you used for your account on their website.
  1. You get the choice to download version 12 or 13 and also some other stuff. But for now I’m just going to download version 13. I don’t use any plugins personally (yet).
  1. When the download has finished click the little icon (an arrow leaving a box) top right and it will launch Discover
  1. As you can see we get an ERROR! Ignore it.
  2. Click the Install button top right on Discover and it will install and then you can click the Launch button

Installing Ardour DAW on Debian 12 “Bookworm” Linux

As an alternative to Waveform, which is too glitchy on my build to use (I’ve tried) I’m installing Ardour. Ardour is very well respected in the linux-audio-music community and I’m more than happy to give it a go. I’m not wedded to a particular bit of software and I believe in constantly trying out alternatives. If it doesn’t work on your system then try another. We’re blessed in the FOSS community to have more than one choice for DAWs.

Click on the download link and follow the prompts to get the Ready-to-Run build for your architecture (eg. GNU/Linux Intel/AMD 64bit)

I’ve opted to download the demo, first to see if it is stable and usable. If it is AND if I get on with it then I’ll probably pay for the full version. But first let’s install it and evaluate it:

STOP! Don’t install this downloaded demo… I’ll show you why below:

$ cd ~/Downloads/
$/Downloads$ ls -1
Ardour-8.12.0-x86_64.run
$/Downloads$ chmod +x Ardour-8.12.0-x86_64.run 
$/Downloads$ ./Ardour-8.12.0-x86_64.run 
Verifying archive integrity...  100%   MD5 checksums are OK. All good.
Uncompressing Ardour  100%  

Welcome to the Ardour installer

Ardour will be installed for user bob in /opt

[sudo] password for bob: 
Wed  2 Apr 13:47:24 BST 2025
Architecture is x86_64
Checking for required disk space
Bundle is on ext4 filesystem
Unpacking bundle for x86_64
Bundle unpacked

Checking system libs to see if they are compatible with Ardour.


Installing Ardour 8.12.0 in /opt

Adding Ardour to the applications menu

Creating a desktop link for Ardour in /home/mark/Desktop

Copying uninstall script to /opt


Creating link Ardour8 in /usr/local/bin

Install Harrison XT plugins and ACE plugin GUIs? [Y/n]: Y
Deploying Harrison plugins to /opt/Ardour-8.12.0-demo/lib/LV2/Harrison.lv2

System failed the quick sanity check... Looking for the cause

System does not allow realtime for the current user... Looking for a solution

!!! WARNING !!! - The current user can not execute realtime processes.
This will adversely affect audio latency.
This system has an audio group and the user is a member. If jack was
just installed, a simple log out/in may fix this.

For best results, please correct this on your system.
(Hint: check /etc/security/limits.conf or /etc/security/limits.d/)

Press ENTER to continue:^CSignal caught, cleaning up <CTRL+c to abort>

A quick search of the Ardour forum for this issue shows that it’s been reported back in 2023 but no solution or fix has been mentioned. Disappointing.

Installing Packaged Version of Ardour on Debian 12

As I’ve said before, the official repositories are usually stable and work out the box. So trying to install Ardour from the repo.

$ sudo apt update
$ sudo apt install ardour
...
The following additional packages will be installed:
  ardour-data ardour-lv2-plugins ardour-video-timeline harvid libatlas3-base libaubio5
  libcwiid1 libgtkmm-2.4-1v5 libimlib2 liblo7 libqm-dsp0 libvamp-sdk2v5 libwebsockets17
  vamp-plugin-sdk xjadeo
Suggested packages:
  liblo-dev mencoder
The following NEW packages will be installed:
  ardour ardour-data ardour-lv2-plugins ardour-video-timeline harvid libatlas3-base
  libaubio5 libcwiid1 libgtkmm-2.4-1v5 libimlib2 liblo7 libqm-dsp0 libvamp-sdk2v5
  libwebsockets17 vamp-plugin-sdk xjadeo
...
## Running Ardour from the command line...
$ ardour
WARNING: Your system has a limit for maximum amount of locked memory!
         This might cause Ardour to run out of memory before your system runs
         out of memory. You can view the memory limit with 'ulimit -l', and it
         is normally controlled by /etc/security/limits.conf

Prepare a folder to store the project files/recordings etc. Needs to be big! I’ve chosen Music/Ardour/ but you can choose what you like.

$ mkdir ~/Music/Ardour
## You may get a warning about memory limits:
$ cat /etc/security/limits.d/95-pipewire.conf
# Default limits for users of pipewire
@pipewire - rtprio 95
@pipewire - nice -19
@pipewire - memlock 4194304

## You can always edit this file if you need to give Ardour more headroom. 

Subscribe
Notify of
guest

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments