Audacity Bug Summary
••• Introduction •••
••• Keywords •••
    Audacity 3.0.3 development began 19th April 2021

Audacity Bugzilla



Bug 1827 - ENH: Nyquist Analyzers can clutter an existing label track when selected
ENH: Nyquist Analyzers can clutter an existing label track when selected
Status: CLOSED NOT-A-BUG
Product: Audacity
Classification: Unclassified
Component: Built-in FX
2.2.2
Per OS All
: P4 Enhancement
Assigned To: Default Assignee for New Bugs
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2018-01-18 07:03 UTC by Peter Sampson
Modified: 2019-05-28 12:42 UTC (History)
6 users (show)

See Also:
Steps To Reproduce:
1. Create a long Rhythm track ( long enough to get a Cancel progress button in steps below. 2. Amplify so it clips. 3) Silence a smallish section in the middle 4) create a label track with some meaningful labels. 5) Ctrl+A to select all (audio and label tracks) 6) Use any of the Nyquist analyzers (Finders: Silence, Sound, Beats or Regular Interval Labels) 7) Observe that the results are placed in the existing label track amongst the pre-existing "meaningful labels" effectively corrupting the label track 8) Undo (to remove the analyzer labels) 9) Select just the audio track 10) Use any of the Nyquist analyzers (Finders: Silence, Sound, Beats or Regular Interval Labels) 11) Observe that now a new label track is created for the analysis results, leaving the pre-existing track and its "meaningful labels" intact. 12) Observe also the the new label track is just named "Label Track" rather than meaningful nomenclature (unlike the Built-in Find Clipping) 13) Repeat the above tests with Find Clipping the Built-in analyzer. 14) Observe a) in both cases a fresh label track is created for the analysis b) the pre-existing label track remains intact c) The analysis track has the meaningful name "Clipping"
Release Note:
First Git SHA:
Group: LabelTrack
Workaround:
Closed: 2019-05-28 00:00:00


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Peter Sampson 2018-01-18 07:03:38 UTC
As per the Steps to reproduce.

1) If the user has a pre-existing label tack and has that as part of the selection when using the Nyquist analyzers: Sound Finder, Silence Finder, Beat Finder, Regular Interval Labels then the Nyquist analyzer will place the results in the pre-existing (selected) label track intermingling the analysis results with any pre-existing label tracks that the user may have - effectively corrupting the label track.

2) If just the audio is selected the Nyquist analyzers create a new label track for the analysis data output.

Note that the newly created label track takes the default name "Label Track" rather than any meaningful name to indicate what it is.  

3) Compare these behaviors with the Built-in analyzer Find Clipping, which:
a) always creates a new label track even if a pre-existing label track is part of the analysis selection - so does not corrupt any pre-existsing label track/labels
b) names the analysis label track as "Clipping" to give a clear indication of what it is (similar now obtains in 2.2.2 with the new Dropout Detector - which labels the error label track "Dropouts"


One might argue that 1) above is "intended behavior" - but I would suggest that it would be better (certainly for consistency) to make the Nyquist analyzers follow the Find Clipping behaviors. 

But I certainly would *not* want us to downgrade the Find Clipping behaviors to follow the Nyquist analyzer model in the name of consistency.

I have deliberately left this as a bug rather than ENH enhancement because of the corruption of users' pre-existing label data.  Admittedly no pe-existing labels are deleted - just sufficiently seriosly intermingled so as to make them effectively useless.
Comment 1 Peter Sampson 2018-01-18 07:04:22 UTC
See related Bug #1348 "Inconsistent behavior of analyzers, and undo errors"
Comment 2 Steve Daulton 2018-01-18 10:27:45 UTC
I'm not convinced that this is a bug.
It could be argued that "Find Clipping" is at fault because it fails to write labels in the selected label track.

I think this at least requires QA discussion before release noting.
Comment 3 Paul L 2018-01-18 11:52:28 UTC
"Corrupt" in the title is too strong a word.  The data in the label tracks are not meaningless.

But Steve is right, the bug issue should be generalized.  Consider Find Clipping too and Vamp effects.  What should be consistent behavior for all analyzers?

Find Clipping either adds a track called "Clipping" or modifies the first existing label track with that name.  (Or, whatever "Clipping" translates to for your language.)

Vamp effects always add tracks.

It appears Nyquist modifies the first of the selected label track, or if there are none, makes a new label track.

Finally dropout detection is perhaps like an analyzer.  It always adds a track called Dropouts.
Comment 4 Peter Sampson 2018-02-13 10:15:16 UTC
Demoted to P4 after discussion with Steve

Steve wrote by email:
>What I would suggest with this specific bug, is that we demote to P4
>for now, then after release we re-frame the bug as a more general
>bug/enh about consistency of behaviours of Analyse effects. Then, as a
>"new" issue, have a thorough QA discussion regarding a consistent
>methods of label placement.
Comment 5 Peter Sampson 2018-02-13 10:24:45 UTC
Release Note used to say:

Group: Analysis effects
*When using the Nyquist analyzers (Analyze>Find: Silence, Sound, Beats or Regular Interval Labels). If you already have a label track and that is included in the selection that you make for the analysis then the Nyquist analyzers will place their output in your selected label track - possibly causing confusion with your existing labels. **'''Workaround:''' Ensure you just select audio track(s) and include no label track in the selection for the analysis.
Comment 6 Peter Sampson 2018-05-10 08:03:17 UTC
I have ameliorated this by addinf a tip to the relevant pages in the Manual:

{{tip|If you already have a label track and that is included in the selection that you make for the analysis then these labels will be added to your selected label track - possibly causing confusion with your existing labels. 
*'''Workaround:''' Ensure you just select audio track(s) and include no label track in the selection for the analysis.}}


But I still think that it would be better if the analyzers always created their own new label track.
Comment 7 Peter Sampson 2018-06-13 06:20:15 UTC
Note that in contrast the Queen Mary Vamp plug-ins create a separate new label track for each analysis that they perform.
Comment 8 Steve Daulton 2019-05-28 09:28:49 UTC
(In reply to Peter Sampson from comment #6)
Peter wrote:
> But I still think that it would be better if the analyzers always
> created their own new label track.

I disagree. There may well be cases where a user wants to produce ONE label track when processing multiple sections of an audio track. For example, they may want to mark sounds or silences in a very long audio track, but are only interested in sections where the sound is intermittent.

Currently we have no way of merging multiple label tracks, so it is very useful that Nyquist analyzers provide a simple way to either (a) create a new label track, or (b) generate labels in an existing track. The user can either include an existing label track in the selection, or not, depending on which they want.

It could be seen as an inconvenient limitation that VAMP plug-ins do not have this flexibility, but I've seen no complaints from users about this, and the limitation is mitigated by VAMP plug-ins naming the label track (which is something that normal Nyquist plug-ins cannot do).

I think that Nyquist plug-ins could be extended to provide an "option" to override the current behaviour and always write labels to a new track, but I see little demand or benefit in doing so.

My inclination is to close this as "not a bug".
Comment 9 Peter Sampson 2019-05-28 12:42:02 UTC
(In reply to Steve Daulton from comment #8)
OK - I shall withdraw this enhancement request.

And there is a simple workaround "Don't select the label track" which makes sense anyway as the label track is not subject to analysis.