brunoherbelin / vimix

Live Video Mixer
GNU General Public License v3.0
259 stars 25 forks source link

why to clone to add Filter? #112

Open MoorPoor opened 7 months ago

MoorPoor commented 7 months ago

Hello everyone! I started playing a little more and I noticed a few things...

I hope this hasn't already been discussed extensively and I strongly assume that you have a good reason, but I don't quite understand why a video has to be cloned before you can activate a filter and then only one filter per clone ?

to me this feels very unintuitive. I would like the block with color correction and all filter options to be visible directly when loading and clicking on a source. I would also prefer it if you could apply several filters directly to one source - wasn't this the case in an earlier version of Vimix? now it quickly becomes confusing with many sources, which also has to do with the fact that I couldn't find the grouping function that is shown in the wiki.

The timeline editability can only be used with the original source, which is also very confusing at first.

thanks so much!

brunoherbelin commented 7 months ago

Glad that you ask, and thanks for assuming there are reasons :smile:

First, because filter operations are not transitive, the order of filters matters: e.g., dilation followed by erosion is not the same than the opposite order: image So, by giving users control on the ordering, more effects can be composed. This is in the idea of proposing a limited list of creative tools and providing a playground (instead of putting an immense list of filters that is anyways never complete).

Second, the possibility to overlay the source with effect on top of the original source allows merging and creating more effects. You can e.g. add a mask to the source with effect, and overlay it on the original using a subtraction blending; this offers more possibilities. image

There are plenty of possibilities, like creating a chain of filters that produce a intermediate results and bring back in the mixing circle the ones of interest at a given moment, with smooth interpolation in between. So in short, the idea is to give more control and creativity by using simple mechanisms.

That said, I agree that it is not usual and that it creates a mess of too many intermediate or unused clones : the former is OK for me as I like to propose original interfaces, but the latter is a problem which should be resolved.

The only option currently available in vimix is to create a bundle with the stack of clones (see below) but this is not sufficient as it does not allow controlling the original source once it is in a bundle. image

I was imagining another view only for managing this chain of filters, and their opacity : it could be similar to the mixing view, and the opacity be controlled for blending. Could work, but I decided otherwise as it was more flexible to have sources that can be fully edited, with masks, different geometries and ordered in layers.

Some alternative ideas to discuss could be:

I welcome suggestions that could still keep the flexibility and creativity (i.e. not very fun to have a list of effects on the left panel: OSC does this very well indeed), and a visual and 'hands-on' interface would be good too !

MoorPoor commented 6 months ago

I think I see your point, the flexibility you want to keep is good. I think everyone has their own preferred workflow. If there were the option for more diverse approaches, that might not be a bad thing. All in all, this is a huge point, and it's not easy to write in a comment.

I have the following suggestions:

  1. You can also apply effects and filters to the original if you want, and more to the clones, which then continues to work with the settings on the original.

  2. If you want to apply more than one effect to a source, you can add this using a + symbol or something similar. just in case sources require more than one setting without the need of changing or mixing them afterwards. not important though

  3. At the end you can merge them all together if desired. as you recommended.

  4. The clones also allow access to the player window of the original or get their own?!

  5. In my opinion, the original or actually all sources that are hidden should not be visible as a frame in F2 view, because then everything becomes very crowded very quickly and collage becomes difficult. Could you hide it as soon as the source is outside the visible zone, or at least offer the option in the menu? the image shows the "dead" frames in red grafik

Sorry, maybe I mixed too many topics in one thread?

brunoherbelin commented 6 months ago

In my opinion, the original or actually all sources that are hidden should not be visible as a frame in F2 view, because then everything becomes very crowded very quickly and collage becomes difficult. Could you hide it as soon as the source is outside the visible zone, or at least offer the option in the menu?

It is indeed not always easy to keep the workspace tidy ! Here are the two mechanisms that are available:

Sources that are outside of the mixing area (dark circle) are not shown in Geometry view. In this example, the source I1 is inactive and will not be shown at all in Geometry: image

:arrow_right: Should we change to source not visible (alpha 0, outside of mixing circle) ?

There are three areas in the Layers view, background, workspace and foreground. In this example, the source I1 is now in the background and thus. in the Geometry view, it will not be shown if the layers menu (icon with 3 layers on top of pink frame) selects only sources in workspace. image

:arrow_right: Instead of layers, we could also just do 'groups' and toggle visible by group ?

MoorPoor commented 6 months ago

Sources that are outside of the mixing area (dark circle) are not shown in Geometry view.

with single sources that works, true, but not with my beloved clones ;) the invisible main source will also pop up as a frame. If I'm not wrong, this should be considered as a bug.

In this example, the source I1 is now in the background and thus. in the Geometry view, it will not be shown if the layers

that works, and I forgot about that option, sorry.

➡️ Instead of layers, we could also just do 'groups' and toggle visible by group ?

That could be an option.

brunoherbelin commented 6 months ago

Sources that are outside of the mixing area (dark circle) are not shown in Geometry view.

with single sources that works, true, but not with my beloved clones ;) the invisible main source will also pop up as a frame. If I'm not wrong, this should be considered as a bug.

Aha ! indeed a source cannot be inactive if it has a clone that is active (otherwise the clone is deactivated without user noticing).

Therefore, it is not practical and not obvious that the criteria for showing sources frames in geometry is based on active/inactive status. Not a technical bug, but I take it as a bug :smile:

➡️ Instead of layers, we could also just do 'groups' and toggle visible by group ?

That could be an option.

Okay, I will try this. Meanwhile, to fix the 'bug', I will do the simpler option (do not show geometry frame of sources not visible in mixing)

brunoherbelin commented 6 months ago

Quick hack in Beta caa3e4d07a627ab48e28480b79d16f2677fda88a :

image

Toggle the icon in Geometry view to discard the mixing view visibility filter (i.e. show all non-visible sources)