Video summary
The presenter introduces Plasma Studio, a unified multimedia editing application designed to consolidate various creative tasks into a single interface. This all-in-one tool aims to replace the need for switching between specialized programs like Inkscape for vector graphics, Kdenlive for video, Audacity for audio, and Darktable for photo editing. Built upon a QML library called Lip Studio, the application leverages hardware acceleration to handle high-bit-depth workflows, such as 10-bit HEVC video editing, even on older integrated graphics cards. The core philosophy is to provide a consistent user experience where effects used in one media type, like color grading or blurring, can be seamlessly applied to others, eliminating the tedious process of exporting and re-importing files between different software suites.
The application covers a wide range of functionalities through a node-based architecture that allows for complex scene graphs across video, audio, vector art, 3D, and photo editing. Video editing features include extensive color grading tools, scopes like waveforms and vectors, and support for FFmpeg codecs, while the vector module offers path editing, snapping, and animated textures similar to Inkscape but with added animation capabilities. Audio editing provides a waveform and spectrogram view with effects like compression and reverb, and photo editing supports RAW file demosaicing with high bit-depth precision. Although some features like live recording or advanced 3D modeling comparable to Blender are not yet fully implemented, the system is designed to be extensible, allowing users to build custom nodes or even compile QML projects into standalone applications.
A significant portion of the presentation focuses on the user interface design and the underlying technology that makes such versatility possible. The presenter highlights a node graph view where every functionality is encapsulated in a specific node, ensuring that settings are always accessible and organized without overwhelming the user with hidden menus or scattered dialogs. This approach contrasts with traditional software where options for similar tasks are buried in different locations; instead, users can inspect the code directly via a dedicated tab to see how nodes work in real-time. However, this reliance on QML introduces security considerations regarding arbitrary code execution in project files and means that standard SVG formats cannot be natively opened or exported, as the application uses its own proprietary QML-based file structure to maintain feature parity.
The video concludes by acknowledging that Plasma Studio is currently in an early alpha stage, meaning it contains bugs and incomplete features like missing transitions or live subtitle recording during streaming. Despite these limitations, the presenter emphasizes the project's open-source nature and invites community feedback to guide its development toward a more stable release. While the finished flat-pack version of the software is temporarily behind a paywall to support the developer's continued work, the source code remains accessible for those who wish to build or modify it themselves. The ultimate goal is to create a robust, flexible tool that simplifies creative workflows by allowing users to edit video, audio, images, and 3D elements within one cohesive environment without compromising on performance or capability.
Read the full video transcript
Hello everybody. I am extremely excited
to announce Plasma Studio finally.
Plasma Studio is a multimedia editing
application which does let's see if I
can remember each and every one of them.
Vector graphics like Inkscape uh vector
animations like Glux Animate, video
editing like Kid Live, but also row
image editing like Dark Table and
streaming and recording like OBS. And
I'm missing something. audio editing
like Audacity and [music]
there's one more 3D not exactly like
Blender we'll get to that so all of
these tasks can be done in the same
application and even better there is
hardware acceleration out of the box
with high bit depth support and great
performances even if you're editing as I
do K row HVC
10 bit videos anything like that it just
work So how does it work? Let's talk
about that. Well, Plasma Studio really
is two different components. The first
one is called lip studio and it's a QML
library that anybody can install and use
to make application and it's a library
that just allows you to do multimedia
editing. There's a video object, there's
a concatenate object, there's a group
object, a clip one. Everything that you
would need to do multimedia editing of
any kind is within lip studio and that
can be used in any application. And then
there's the interface that so-called
plasma studio which is simply an
interface to edit QML and specifically
this lip studio library. And there's
many different way to edit the QML.
There's a node graph view similarly to
like the result if you use that. But
there's also a normal what you see is
what you get type of preview which you
can just edit [music] uh similarly to
Inkscape or the preview that you see in
getting live with a timeline and
everything. [music] We'll get to that.
There's also a code tab so you can edit
the code and see as you edit the code
the changes happening live in a preview
which is in my opinion awesome. Now to
be clear plasma studio is built upon the
great applications that we do have for
this kind of tasks. I've already
mentions application like Inkscape, Lux
Animate, getting live and there's also
very similar efforts that I'm very happy
about from Graphine I think it's called.
Great efforts [music] there. Throughout
this video, I'll keep saying this
feature works like this feature from
that application because I copied it.
Why break it if it works? The goal here
is to have one single application that
can deliver a workflow across the board
in the same application with the same
UI. And it's going to be so nice to be
able to as an example color grade videos
with the same very effects that I use to
edit row images or to be able to do
vector graphics within a video editing
program that also feels and look like
it's made to actually edit vector
graphics [music] and vector animations
too. everything. Or similarly, sometimes
I have to edit some audio and I have to
export it from Kitten Live, import it
into Audacity, which has more tools, and
then reimpport it back to Kitten [music]
Live, all of this won't be necessary
anymore. If this [music] application
works, which is a bit if with this
video, I am announcing a early alpha,
which means that everything is broken.
Yes, [music] I know you're going to try
it out. You're going to see bugs. Why am
I publishing this then? Well, I just
want to get feedback. I want [music] to
see what works, what doesn't, if there's
any UI UX thing that isn't clear that I
should change. I'm trying to just gather
feedbacks and see what people think of
this application. I'm interested. Let's
see. So, let's go task by task to see
[music] what Plasma Studio is currently
capable of, which isn't a lot, but it's
across the board, which is the cool
thing. [music]
Let's talk video editing. Uh, as I
previously mentioned, we support
anything that FFmpeg supports out of the
box because we do use FFmpeg [music]
behind the scenes obviously. And all
effects are hardware accelerated, which
means that even [music] on an integrated
Intel graphics card from 4 years ago,
which is what I use, you should be able
to edit 6K 10 bit videos without any lag
at 24 fps is what I've tried. probably
should work even for higher FPS. [music]
We already feature a good variety of
color grading and graphical effects
[music] nodes such as I'll just read the
list RGB curves equalizers custom loots
color space transfers larger radial and
linear blur chromatic aberration
vignetting and more. There's also a few
scopes such as um histogram waveform
vector scope RGB parade audio levels and
a spectrogram. And by the way, all of
these scopes are are hard accelerated
too, which means that they update live
as you see the video. And all of this
applies to the full bit depth of of the
image. And the very same nodes you can
use for row image editing thanks to that
intersection. [music] And even better in
the preview of the video that you're
editing, you can actually move things
around as if you were in Inkscape
because again you can also do vector
graphics within the same application.
Now in order to very quickly add files
within the project, there's a sidebar
which is called just files and which
shows everything in your file system. If
you click on a video, it will show a
preview of the video with ability to
drag and drop an area of that video that
you're interested in or just use the
[music] I and O keyboard shortcuts. And
then you can add clip to the project to
add just that part of the video directly
in the timeline, which I think is pretty
cool. And you can also use arrow keys to
navigate within the preview or within
files. You also get a project bin
sidebar, which yes, it's been copied by
Kitty Live because I love Kitty Live's
project bin. And basically, it will show
you all of the project files [music] in
your project. And you can also filter to
just see the project files that you
haven't used so far. [music] Of course,
you can just go ahead and drag and drop
things into your timeline directly from
the project bin, or you can drag and
drop files to the project bin. [music]
Now, you do get a timeline as well,
obviously. However, currently it doesn't
have that many features. You can, of
course, move things around. You can
resize them. There's also a spacer tool
to move many things together. There's
also a razor tool and a keyboard
shortcut to cut the clips. And there is
also ripple tool to resize things or
move them in the project whilst also
moving [music] things after that clip.
If you know the ripple tool, you know
what it does. I don't have to explain it
to you. [music]
You can also use a group or concatenate
nodes to group together different clips
as if it was a sequence from kitten
live. And similarly, by double clicking
it, you will be able to open it and edit
things within [music] that group or
concatenation. And you can insert the
same group within a project multiple
times just like sequences. Now, you
might have noticed that I don't have
tracks, which is probably a pretty big
deal. Basically, I'm still wondering
what's the correct way to do this tracks
in this kind of UI. Maybe it makes sense
to have a track node that you can link
things to which is also exposed in the
timeline. I don't know. I would really
love if you tried out application and
told me how you see track fitting this
type of concept. Finally, there's a
subtitle note that can add subtitles
from a subtitle [music] file. obviously
uh editing where things are and how they
look. But there's also an auto
subtitling feature. Now, it doesn't work
on live video yet, as in like [music]
OBS, while you're recording showing live
subtitles. That is not a feature yet.
I'm working on it. But we do try to make
things as quickly as possible so that
when you add auto subtitles, they start
transcribing from what you're watching
so that they appear immediately and then
it goes back and back feels the rest of
the video. [music] Is the goal here is
to not make you wait for the entire
project to be transcribed before showing
you the subtitles which you probably
want to start editing right [music]
away. Let's talk about raw photo editing
then. Well, Lip Studio offer a raw photo
element which allows you to demo a
certain raw photo. Although currently it
doesn't expose [music] settings for the
demosing process that um I'm working on
it. You'll get them. And of [music]
course, as soon as it's deosed, you're
going to be able to edit it as if it was
any other image to the highest bit depth
possible, which is probably going to be
16 bit depth float. This means that
effectively you can go ahead and edit
the image [music] just like any other
row image editor does and again using
the very same effects that you can use
to edit videos or to apply to vector
graphics. That's pretty cool I think is
it? Now we try to make color grading and
editing a image as nice as possible. As
an example, the exposure and ton
equalizers have uh color pickers in
order to change the colors of certain
parts of the image. You probably know
what I'm talking about if you do row
image editing. And on top of that, of
course, you have masks. And [music] in
this application, you get any kind of
mask, rectangular, circular, polygons,
uh gradients, or even masks based on
color ranges or luminance. And of course
you can intersect, differentiate, union,
[music] anything with these masks. And
you can apply any sort of effect [music]
to those masks. So it's as powerful as
it gets. You can also, of course,
feather them so that the edges
blur out, let's say. Let's talk then.
It's very hot in here. I think I'm
starting to ah
melt [music] away. Anyway, let's talk
about vector graphics then. So, as far
as vectors go, we have support for
custom paths with a full path editor. Uh
text with custom fonts, obviously,
rectangles, circles, and [music]
polygons. Of course, you can do any sort
of path operation with this union
intersection and so on. You can also
apply outlines and you can also apply
gradients which are their own specific
nodes. However, we currently don't
support gradient in outlines, which is
going to be implemented soon, I promise.
Now, similarly to Inkscape, you'll get
rulers on the left and on the top. And
if you drag and drop from them, you'll
be able to set guidelines uh
horizontally and vertically. [music]
And on top of that, there is full
snapping support, which is both to
element center, edges, path um path
nodes, everything. Now, in the back end,
we also support toggling these snap
things uh depending on the snap. But I'm
still wondering whether it makes sense
to expose all of those options or if
it's just okay to simply allow toggling
on and off snapping [music] entirely.
Let me know what you think. We also
offer a bunch of textures which can turn
out useful. There's white noise, there's
random noise, uh checkboard patterns,
lots of that. And some of these are even
animated, which means that you can set a
speed and they change over time, which I
think is pretty cool. There's also blend
and opacity nodes, which means that you
can pretty much do layers. We don't have
a specific layer element, but you can
group together a layer, double click on
its name to change it to layer
something, and then apply opacity and
blend mode, and that's going to be a
layer def facto. I'm not sure if it
makes sense to just add a specific layer
type [music]
when you know you can just do it
yourself [laughter] and it works just as
well. And yes, there is a note tree
sidebar that shows you all of the
elements within your project [music] uh
in a treel like manner. So you can just
drag and drop things within and outside
of groups and also just see what's going
on, select things. It's [music] pretty
cool. There's also some interesting
options for layout. We offer um column
row and grid layout which uh differently
from Inkscape. Instead of just putting
the things in a row as an example are
actually going to make them stick to a
row because it's going to become a row
element. And if you double click it, you
can drag and drag and drop things to
change them within that row and they're
going to always stay aligned. But if you
don't need them to stick to a row, you
can just ungroup them and they're gonna
stay there. And so if you have to
quickly organize something, you can do
that as well. And of course, there's
specific nodes to repeat stuff multiple
times or scatter them randomly. Well,
let's talk animations then. Every single
property in every single node can be
animated. There's a little icon next to
it with a key frame. You press it and
you can animate it. Uh it's pretty cool.
You have a little graph with animation
directly underneath the property, but
you also get a dedicated key frames view
that is a dope sheet if you know a
little bit about animations and which
are and which is going to show all of
[music] the key frames of all of the
elements color code. So you can also
expand or collapse things. And [music]
a collapsed animation is still going to
show the curve because it's a dotted
line and the length of the dots is
proportional to the value of the element
in that point of time which [music] uh
it's hard to explain but when you see it
you immediately go ah nice. This idea by
the way is completely copied from
graphin which I mentioned earlier. They
showed that in their screenshot of their
planned dope sheet and I thought that's
a great idea. Open source baby. Let's
take that.
I I think you probably get at this point
that I'm really not trying to like
compete with them. I just want to show
something new, a new approach. I don't
know [music] if it's going to stick out,
but I hope it is because I think it
works pretty nicely. We do also offer
the option to animate things in a path
because there's a place on path node
with a position a property that you can
animate and so you can animate that as
well. Audio editing. If you're trying to
edit something that has no image but
that has sound, you will get a Audacity
like interface with all of the sounds.
And again, [music] you can split them,
you can move them around, you can join
them back together, and you can also
select certain parts and apply a variety
of uh audio effects. [music] I think I
have the list here. You've got volume,
fit in and fit out, low and high pass
filters, pass and tremble, filter,
curve, AQ, compression, limiter, not
gate, amplify, reverb, echo, pitch, and
channel manipulation. It's a bunch of
stuff that I don't really know because I
don't do audio. So, I'm not the right
person. But hey, if you do audio, you
know what this stuff is. You have it.
Even better, in that same view, there's
a toggle to switch between the waveform
and the spectrogram. [music]
So, if you want to edit the spectrum,
you get that as well. Now, what you
don't get yet is the ability to record
stuff live, which means that you can't
press record microphone, which is a
node, but that's not going to start a
recording immediately. How that works is
that you connect the record microphone
node to the render audio node, and then
[music] you can record it, but it
doesn't happen live, which is something
that I'm working on, and I would like to
have soon. Recording and streaming. So,
right now the streaming part is missing.
I'm sorry about that. I probably misled
you, but it's coming very soon. I
promise. I just hadn't the time to get
around that. However, we already can
connect a webcam. We can connect screen
capture. It's also possible to set up
multiple scenes that you can switch
between just with a combo box. Although
that isn't very clearly shown in the UI.
It's just an option that you get if you
apply the scenes node. [music]
And you can record or render stuff using
both CPU or hardware acceleration. And
again, you can build [music] pretty
complex scene graphically because all of
the stuff that I mentioned so far also
apply to this mode. They're all the same
thing. [music]
You don't get uh transitions yet.
There's no such thing. But again,
[music] I'm working on it one step at a
time. Do tell me what you think is
absolutely needed and I'll go ahead and
try to implement that 3D scenes. [music]
To be clear, this is never going to get
similar to Blender in terms of
functionality. Nowhere close to it. What
we're doing behind the scenes is to use
the work that Cutie Quick 3D is doing
and just exposing that in a nice way to
the user, which means that it isn't
perfect. Kit Kitquake 3D isn't Blender
at all, [music] but you know, it's
something you can place elements. You
can modify them. You can turn a 2D
element into a 3D one by a texture or by
extruding. There's a bunch of features
that you might be interested with, and
it may still work to create some simple
scenes, and over time, they can get more
complex and more useful. Another cool
part of this project is that it's really
easy to add more functionalities to it
because again everything behind the
scenes is just a QML uh element with a
little bit of documentation on how it
works, what type of inputs does it have
and what type of types it accepts.
That's it. If you're able to write QML,
you can just write a custom QML element,
insert it there, and that's going to
appear as a node and you can just use
it. This means that A, it's going to be
real easy to add more functionalities to
Lip Studio and refer to Plasma Studio
and B, it's going to be real easy to
also allow for third-party plugins
because it's just [music] a folder of
Camel effects. Another interesting
upside is that this means that your
project files are just QML file and you
can edit them with Kate or any text
editor. You can read them. how it works
is not very hidden. You can edit them
not only in the project file but within
plasma studio itself. Again, there's a
code tab which shows the code for
everything that you're seeing. [music]
And even better, you can build something
in Plasma Studio. Save it as a QML and
embed that QML into an actual
application that's going to work.
Applications in KD land are KML, but
also outside Kitty land. You don't have
to be a Kitty developer to use QML. Now,
this also brings a couple of major
downsides. I have to be transparent
about those. Firstly, this means that we
are not using SVG as the project file
[music]
and this means that we cannot open SVG
and we cannot export to SVG. And this is
also because I really wanted everything
to be together within the same
application and SVG doesn't support half
of the things that I'm implementing in
lip studio. Now what we can try to do
over time [music]
is some sort of bridge between lip
studio and SVG. It's going to be a
subset of li lib studio and a subset of
SVG because of course SVG implements
stuff that we don't have and we
implement a lot of stuff that SVG
doesn't have but still it could be
helpful for you know actually working
because yes I do have to export SVGs to
work secondly currently QML files allow
for arbitrary code execution which is a
major vulnerability now how that work
right now is that basically you should
treat project files for Plasma Studio as
applications in the sense that they can
run code. So every time you try to open
a project file, Plasma Studio will warn
you, hey, are you sure you want to open
this? Because again, [music] this has to
come from a trusted person or maybe you
did a project because [music] it can run
code. It can read your files. It can
affect your system. Not easily, but it
can. Now, I don't want that to be the
case going forward. Obviously, one
simple way to fix it would be to define
that plasma studio projects are a subset
of QML that doesn't allow for JavaScript
code at all. That's probably the path
for forward. However, I would still like
to have some sort of ability to open uh
QML projects with JavaScript in them
because that's going to allow for
interactive projects which I think is
pretty cool. I would like in some
months, maybe a year for Plasma Studio
to also be able to [music] like video
games because at the end, why not? You
just have to go ahead and write the
JavaScript code to make all of the QML
elements interactive. After all, QML is
a toolkit. It's made to be interactive.
And then [music] it's going to be a QML
file which you can compile just like any
other application. And it's going to be
an application that you can actually go
ahead and distribute. You could also use
it to do apps. Why not? It's not
currently something we offer, but it's
not particularly hard to implement that
and it's definitely something that I
have in mind. And by the way, if you're
wondering why I'm looking there and not
there, it's because I have my monitor,
not my notes. I'm just checking that the
image is coming through correctly. It's
just a bad habit. I'm sorry about that.
Now, I'm particularly proud of some UI
and UX decisions that I've [music] made,
such as making sure that this
application can actually be used by
somebody who isn't a super professional
and is going to get overwhelmed if they
open a project and see 15 different
elements and a lot of options and
everything is it done. I'll make an
example. Uh if you want to change fill
and stroke in Inkscape, that's within a
sidebar. But then there's also document
properties which is into its own popup.
But then there's also like graphical
effects which are separated between
[music] filters and extensions. It's not
clear which is which. And if you do
that, they open a window that's going to
tell you how to which is going to give
you some options to change. And then you
apply that. And you can't change recate
the options even though they're just SVG
filters behind the scenes. You should be
able to do that. It it's not super clear
all of the how all of this works, right?
And similarly to Ken Live, yes, you know
how to apply some effects and change
some of its options, but if you then
need to, I don't know, apply subtitles,
[music]
that's a all other settings page that
you have to find. You have to download
the models from there.
>> [music]
>> not super clear how and where to find
every single thing. Which is why in
Plasma Studio everything is a note.
There's a list of nodes at the top and
all of the functionalities that we offer
are notes. You can just go through them.
You can learn about them. And as an
example, there's a canvas node with
options on how to change the page color
and background or whether to have like
rulers. There's a export and render
nodes that show all of all of the
options to render stuff. There's a
subtitles node which allows you to
download the whisper models needed for
transcription. [music] Everything that
you would have to change is a setting
within a node and you just have to know
which node to use. But again, there's a
list. You just get through them. There's
documentation for them. There will be
documentation for them. Still working on
it. [music] And again, you can just
switch to the node graph and see all of
the nodes within your project and each
node is going to have its settings
behind it. Or within [music] the
preview, there's a right sidebar that
shows all of the settings for the nodes
that you have clicked on. So, pretty
easy, which means that for the future,
in order to implement more features,
it's just going to be a matter of, you
know, adding more nodes and simplifying
the settings and organization within
them. the UI is not going to get super
complex hopefully. Which brings us to
Okay, what if you do want to try this
out then? Great. [music]
Thanks. I'm happy you asked. So, in the
link of the video description, there's
an article that says all of the things
I've just said, but as an article, and
at the end of it, there's a link to the
repository. And there's also a way to
download this as a flat pack if you just
want the final product. Now, I have made
the controversial decision to put the
flat pack [music] behind a pay wall,
which is just the subscribers to the my
website or my Patreon. So, if you donate
to my channel, thank you. You get that
out of the box. And if you don't, maybe
this is a good time to start so that I
can [music]
continue doing this because you know it
takes time and I also have a job and it
would be cool if I could get enough
money to [music]
have people helping me out to some
extent. So I know this might be a
controversial decision. It's still free
as in [music]
free software. You can just build it and
try it out. But if you want just the
finished product, I'm asking you for
five bucks. You can just pay those and
unsubscribe immediately thereafter and
you get to keep the flatback link. Also,
you can probably ask me privately and
I'll just go h whatever. I'll give you
the link because I'm weak. Which I think
is everything. I'm really hoping that
you're excited for this project. Uh I
know I am. I'm really trying to do my
best here. And [music] uh you know I
would love if you tried it out. Tell me
what works, what doesn't, and what
should I know which direction should I
go in. Just give me feedback. Do you
like this project?
Do you [music] like me? Are you proud of
me?
How do I stop this