Bug 441451 - Normalize (2 pass) doesn't work on channel level or cut audio clips.
Summary: Normalize (2 pass) doesn't work on channel level or cut audio clips.
Status: RESOLVED FIXED
Alias: None
Product: kdenlive
Classification: Applications
Component: Audio Effects & Transitions (show other bugs)
Version: 24.12.1
Platform: unspecified Linux
: NOR normal
Target Milestone: ---
Assignee: Jean-Baptiste Mardelle
URL:
Keywords: triaged
Depends on:
Blocks:
 
Reported: 2021-08-23 21:23 UTC by Connor
Modified: 2025-03-02 15:50 UTC (History)
6 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Connor 2021-08-23 21:23:46 UTC
The normalize (2 pass) effect doesn't work at all when applied at the channel or master level.  You click the Analyse button, it processes, then it comes back with the Analyse button vs a reset and no changes in the audio level.

Additionally, it doesn't work correctly when you apply it to a clip that is been cut up into segments. Again, It processes, then comes back with the Analyse button vs a reset, and no changes in the audio levels.

It looks like it ONLY works with complete, unaltered clips.  This is unfortunate, as I want to apply it to a whole track/channel to normalize my audio levels.  The single pass version can be applied to at the channel level, however, it's a sliding scale, and when you Upload to YouTube, your video still undergoes additional normalization that may not be what you want. (YouTube normalizes at -14LUFS, bringing everything down to that, but nothing up to it).
Comment 1 Natalia Portillo 2021-08-24 12:55:17 UTC
I confirm the same is happening for me in 3 different computers, tried with more than 80 projects already.

It's been happening to me since 20.12 and up to current 21.08 it's still happening.
Comment 2 Natalia Portillo 2021-08-24 14:43:58 UTC
This is the output from the command line:

========== STARTING TASK FOR:  79
==== BUILDING PRODUCER:  "<filepath>.mkv"
 = = = = = CONFIGURING FILTER PARAMS = = = = =  
. . . "program"  =  QVariant(QString, "-20")
=== FILTER READY TO PROCESS; LENGTH:  1964
===== SETTING FILTER PARAM:  QVector(QPair("results",QVariant(QString, "")))
 = = SET EFFECT PARAM:  "results"  =
Comment 3 Natalia Portillo 2021-08-24 14:46:24 UTC
Sorry misplaced the logs, my prvious comment is the output from command line when using normalize on a cut of Matroska file (doesn't work).

When doing on the track itself it's:
=== FILTER READY TO PROCESS; LENGTH:  79206
===== SETTING FILTER PARAM:  QVector(QPair("results",QVariant(QString, "")))
 = = SET EFFECT PARAM:  "results"  =  


And when doing on a cut on a WAVE file (works):
========== STARTING TASK FOR:  22
==== BUILDING PRODUCER:  "<filepath>.wav"
 = = = = = CONFIGURING FILTER PARAMS = = = = =  
. . . "program"  =  QVariant(QString, "-20")
=== FILTER READY TO PROCESS; LENGTH:  414
===== SETTING FILTER PARAM:  QVector(QPair("results",QVariant(QString, "L: -41.119036\tR: 3.741784\tP 0.067154")))
 = = SET EFFECT PARAM:  "results"  =  L: -41.119036     R: 3.741784     P 0.067154


So it seems it's having some problem calling an external tool?
Comment 4 Kokos 2021-11-17 12:59:55 UTC
I can confirm this problem exists also for most recent release (21.08.3), I'm using KDE Neon (ubuntu-based) so it doesn't seem related to any specific distribution as OP reported it initially for Arch. This one is really important to be fixed in my opinion as this audio effect is essential.

Anybody knows a workaround or last version which was working fine?
Comment 5 Natalia Portillo 2021-12-20 04:20:43 UTC
Just tried version 22.03.70 (rev. 1d7d1e7) from flatpak, same problem, still there.
Comment 6 Matthew Cohen 2022-03-18 19:05:18 UTC
I can confirm this doesn't work -- even on unedited clips.
Comment 7 prodigeek 2025-02-11 15:14:50 UTC
Confirming that this is also an issue on windows 22H2, kdenlive v.24.12.1
Problem exists when trying to apply at the track level: analysis does not seem to work i.e. there is no reset button after and output is unaffected.

It DOES however appear to work on a video file in the project bin. I dropped a file into the bin, dragged it to the time line, and then performed one simple cut and moved a section to a new track. I then changed the loudness slider on the Normalize (2 pass) and hit analyze which turned into reset button. I rendered it out and the audio was louder
Comment 8 prodigeek 2025-02-12 05:42:32 UTC
I have to correct my last comment. It is not working properly when applying to A/V files in the project bin. It's working for some cuts of a file and not for others. There doesn't seem to be any rhyme or reason which cuts get the loudness and which don't. Now my only option seems to be going cut by cut and applying normalize 2pass and clicking analyze, since neither applying to track nor to project bin seem to work properly.
Comment 9 diekuhrannte@web.de 2025-02-13 19:01:38 UTC
Normalise (2 pass) must always be applied directly to a clip and not to the track or in the master. 

This has probably always been the case.

The bug was fixed in 2024. But then it was there again. Strange.

But now, in the latest Kdenlive version 24.12.0 on Linux, Normalise (2 pass) works as it should.
Comment 10 Jean-Baptiste Mardelle 2025-02-14 09:58:07 UTC
Git commit f80f40ca7634f50645cef9ccc2e9515c67e1b232 by Jean-Baptiste Mardelle.
Committed on 14/02/2025 at 09:57.
Pushed by mardelle into branch 'master'.

Fix effects with analysis step like loudness 2 pass and tracker broken on cut clips or on tracks
Related: bug 492729
Fixes #1789

M  +4    -4    src/assets/keyframes/model/keyframemodel.cpp
M  +6    -38   src/assets/keyframes/model/keyframemodellist.cpp
M  +4    -3    src/assets/model/assetparametermodel.cpp
M  +1    -2    src/assets/view/widgets/buttonparamwidget.cpp
M  +9    -4    src/bin/projectitemmodel.cpp
M  +1    -1    src/bin/projectitemmodel.h
M  +2    -2    src/core.cpp
M  +2    -2    src/core.h
M  +66   -40   src/jobs/filtertask.cpp
M  +7    -3    src/jobs/filtertask.h
M  +12   -3    src/project/projectmanager.cpp
M  +5    -1    src/project/projectmanager.h
M  +1    -1    src/pythoninterfaces/otioconvertions.cpp
M  +1    -1    src/render/renderrequest.cpp
M  +13   -0    src/timeline2/model/timelinemodel.cpp
M  +5    -0    src/timeline2/model/timelinemodel.hpp

https://invent.kde.org/multimedia/kdenlive/-/commit/f80f40ca7634f50645cef9ccc2e9515c67e1b232
Comment 11 prodigeek 2025-02-18 23:44:06 UTC
I’m on 25.03.70 kdenlive-master-9679 from 2025-02-17 nightly
The normalize 2-pass applies to the track and completes the analyze process, but is not applied to all cuts in the track; i.e. there are cuts in the track that do not get the loudness and some that do.

It does seem to be working properly when applied at the project bin level.

I have not tried applying to the cuts in the timeline directly with this nightly version but those were working in 24.12.1 already for me.
Comment 12 prodigeek 2025-03-02 15:41:08 UTC
Having worked on another project for a while I have to reneg. It is also still not working at the project bin level. In this case it seems to be applying loudness to track A2 but not A1. Also the amount is not jiving. On the A/V source in the project bin I have it set to -25 LUFS and it's coming out fairly loud when it works. On the cuts that don't get the loudness I drop the normalize directly on to them in the timeline and correct to about -14 LUFS to get them in line. The source file is all Rimworld footage from the same recording session so I am comparing apples to apples here.
Comment 13 prodigeek 2025-03-02 15:50:00 UTC
And here's something: I just opened a new project to do some comparison testing, but when I went back into the project in question, the loudness was suddenly applied everywhere. So perhaps this is some per-session type bug, which helps to explain why I did not notice until now? My PC does not go to sleep so not that. The project was left open overnight however.