UX / UI: Volume effect simplification / coherence

As discussed on Matrix, there is a bit of confusion when it comes to audio handling in kdenlive.

  • Generally speaking, “Volume” and “Gain” is not the same thing.
    “Volume” adjusts level in the recorded range while “Gain” amplifies / boosts the Signal, therefore can add Noise etc. Usually it is clearly distinguished what is what, i.e. in Mediacomposer, Volume is a prominently placed mixer slider, while Gain has to be applied as an extra effect. This is probably to discourage inexperienced editors to unintenionally use Gain.

Currently, in kdenlive, there is no differentiation bwtween gain and volume and its not clear what the effect does: it is called “Volume” effect, it’s slider is labeled “Gain”, and it seems as if it does both, depending on where the user moves the slider. Only there is no UI feedback about it.

Apparently all audio level related effect go back to this melt effect:

Setting the Max_Gain variable to 0 would make this a pure volume adjustment. But generally speaking, the features of the MLT effect are not well represented in the UI dialog.

IMHO, all this functionality could be transparently united in one effect with a better UX:

  • A checkbox which enables / disables gain, with a fixed Max amount which could be defined in the settings.

  • When gain is enabled, the slider range goes to a higher dB level then 0, defined by the max_gain setting. The “normal” slider should use a “relative” project wide definable scale with a definable zero level (in Europe / EBU space normally -18db but depends on the region) and a visible headroom part, to make the user easily understand that technically, 0db is the most they can adjust a clip to. The “real” level of the clip could be shown as well, important is the relative volume.

  • A “normalize” button with a target volume number field and an accompanying switch, which toggles between RMS and Peak target volume. Clicking the normalize button auto adjusts the clip to the desired volume. If desired volume is not reachable without gain, it asks to enable gain.

  • Visible feedback (i.e. level is displayed with a red background, when adjustment is in the “gain” region

  • Information field which displays RMS and peak volume for the selected clip

In a lot of use cases, this would make the “embedded” Volume Effect the only audio tool that needs to be accessed and adjusted by a user.

I would personally vote for the embedded effects to be enabled as a default in the settings AND being enabled in the effects stack, to minimize Interaction. Maybe they could be “invisible” disabled if no parameter in them has been changed to keep them out of the processing pipeline if not needed.

The seperation of the different MLT effects features in distinct effects (Volume, Gain, Normalize etc) could be removed and the amount of audio effects reduced for better UX.

It does… if it’s positive. But not when it’s negative.

‘Gain’ is the ratio of input to output. So, if you want to control volume, you can control it by applying a certain amount of gain to the signal - negative to turn it down, positive to turn it up.

It is apparent from your posts that mediacomposer’s terminology does not follow standards or ‘common usage’, you might like to keep that in mind for the future.

Ok … I’m going to start by saying please try to keep this civil and technical - I’m not saying “everything’s perfect, there’s nothing to improve here” - but I genuinely am more confused by what you’re trying to layer on this than and how you think it will help than I am by loose use of language in the crossover between technical and vernacular use.

For context, I came to video after a long time writing a lot of audio DSP (and UI) code, so I’m happy to defer to others experience on “what other video software does” - and I’m not going to play the Appeal To Authority card here - but I don’t think an interface that makes purely imaginary distinctions is ever likely to be more intuitive or simpler than one that more directly reflect the reality of What It Does.

You say:

But for digital audio, that’s really not how it works. If you want to declare “volume” to be something distinct - then it is the amount of sound power a loudspeaker emits or that is felt by a listener at some distance from the source … It is not at all a property of a digital audio recording or its post processing.

But the only way to change volume, whether analogue or digital, is to apply gain.

Declaring a “volume control” to be “a gain control that can only apply negative gain” is an invention from whole cloth. Such a device is called an attenuator. And is of pretty limited use for digital audio that is not already normalised to full scale.

Changing the gain in either direction, up or down, can (and by virtue of being a ‘distortion’ will) “add noise”. Whether that noise is more or less perceptible than before entirely depends on the signal and where you push it.

How much gain (in either direction) it can be appropriate to apply at any point in time is entirely a function of the source signal. Capping it arbitrarily isn’t helpful.

I do agree that 2 pass normalisation and things like EBU R 128 are commonly useful tools for audio tracks - but they also can’t always replace more manually keyframed gain control by an experienced audio engineer / sound editor.

I personally don’t find the existing keyframeable “volume” gain control and 2-pass normalisation effects to be in any way “confusing” or complicated - and I’m at all not opposed to “making them simpler” if there is some way to do that. But I’m not seeing how making “volume” something artificially different to gain, and making people jump through extra hoops to switch between them makes things either simpler to use, or to intuitively understand?

Maybe if you start with the problem you really had that made you think about this rather than the solution you came up with for it, I’ll be able to see what you’re trying to do a bit better?

1 Like

@Ron @pallaswept: Sorry, but i will not engage in further conversations with you guys! Feel free to express your opinions nonetheless.

If you don’t think your idea is either explainable or beneficial in some way that I’ve missed, then that’s probably a good place to leave it.

Nice try. I said I am not going to engage in a discussion with you @Ron or @pallaswept.

Then don’t @ me