BUG. "Apply Chain" doesn't work with "Silence"

Help for Audacity on Windows.
Forum rules
ImageThis forum is for Audacity on Windows.
Please state which version of Windows you are using,
and the exact three-section version number of Audacity from "Help menu > About Audacity".


Audacity 1.2.x and 1.3.x are obsolete and no longer supported. If you still have those versions, please upgrade at https://www.audacityteam.org/download/.
The old forums for those versions are now closed, but you can still read the archives of the 1.2.x and 1.3.x forums.
Gale Andrews
Quality Assurance
Posts: 41761
Joined: Fri Jul 27, 2007 12:02 am
Operating System: Windows 10

Re: BUG. "Apply Chain" doesn't work with "Silence"

Post by Gale Andrews » Tue Oct 06, 2015 7:15 pm

steve wrote:
Gale Andrews wrote:That is a design limitation if even user presets don't save the duration, yes.
Generator "Presets" do not store the duration setting.
This is an example of how the settings are stored for the "Tone" generator:

Code: Select all

Parameters=Amplitude="0.800000000000" Frequency="440.000000000000" Interpolation="Linear" Waveform="Sine"
OK, thanks. I see those parameters in pluginsettings.cfg.
steve wrote:"Presets" look a bit silly for the "Silence" generator because there are no settings other than "duration" (which is not saved). This is a (small) downside from having a common interface design for all Audacity effects.
We could get over that by adding an option of some kind for duration.
steve wrote:
Gale Andrews wrote: Perhaps it would be nice to be able to specify "automatic" in the preset, meaning that when you recalled the preset it would not change the duration in the control,
That sounds reasonable. How would you envisage it?
One possibility:
  • A checkbox for "Use Selection Duration".
    • When enabled, the "duration" time control is greyed out.
    • When disabled the time control is honoured by Chains and saved in presets.
I was not envisaging the checkbox greying out the time control. You might want to always save the current duration into a preset, but be able to modify the duration to be generated.

I assume you mean that if the new option is enabled and you make a selection in the waveform, the greyed out time value would be the selected length, and when there is no selection the greyed out time value would be the last used duration? If so, the duration shown in the time control would be as now, but the greying out could be misconstrued as something other than that displayed duration being used (perhaps a preset, but presets are never loaded when opening the generator from the Generate Menu).

"Selection Duration" could be taken to mean the waveform selection, but if generating at the cursor there is no waveform selection duration.

Because generators are a special case where the duration is part of the "effect", I was envisaging that Chains would use the selection duration encountered in the waveform (or the last used duration if there is no selection encountered), unless the Chain enabled a preset. A preset that had a saved duration would over-ride the encountered or last used duration.

All I was envisaging that the checkbox in the generator would do is determine if the duration was saved into the preset (as the user would see it, whether loading the preset could change the duration control). Perhaps "Automatic" was implying more than I intended. The checkbox could be labelled "Save Duration into User Presets".

Perhaps something like you suggest might be neater, but at the moment I can see ambiguities unless I am misunderstanding what your idea is.
steve wrote:It still does nothing for the issue that there is no way to specify "where" the silence is generated. How would this behave if the Chain is applied to a 30 second track and the Chain generates 5 seconds of silence?

Without options, it would have to reduce the waveform selection (and in this case the track) by 25 seconds. At least sometimes this is what the user might want when applying the Chain to the project, but many times something else might be wanted.

Because generators are this "special case", and we have the difference where Chains could be applied to projects or to (all of) imported files, I'm not convinced the generator commands in Chains should have a load of options. Also what would it mean for generators if there was a general option to apply Chain commands to one or more specific selections, ignoring the waveform selection?

Would it not be preferred to simply use an appropriate Nyquist effect if you wanted e.g. to silence the lead in and fade out in imported files?


Gale
________________________________________FOR INSTANT HELP: (Click on Link below)
* * * * * Tips * * * * * Tutorials * * * * * Quick Start Guide * * * * * Audacity Manual

Gale Andrews
Quality Assurance
Posts: 41761
Joined: Fri Jul 27, 2007 12:02 am
Operating System: Windows 10

Re: BUG. "Apply Chain" doesn't work with "Silence"

Post by Gale Andrews » Tue Oct 06, 2015 7:51 pm

audacityalex wrote:I explained the _default_ I expected (and needed) in the Bug submission:
<<
If same file is "manually" opened (File > Open) and then
Generate > Silence... (say, same 2 sec.)
the result is CORRECT, AS EXPECTED:
2 sec. silence PREpended to the actual audio/file.

>>

If a "real", meaningful "Chain Silence" is to be included in the product
(my vote is, yes, please, as soon as practicable)
a simple Parameter should/could be added:

Time position in the file (hh:mm:ss, etc.)

similar to the (implied) CURSOR position in the non-Chain (manual) "Generate > Silence".

Note: as mentioned above, the default, "beginning of file" (00:00:00), cursor position was my particular preference in the Chain
(as would be in the "manual" approach).
OK, but if that is your only use case as you now seem to be saying, why not simply use http://wiki.audacityteam.org/wiki/Nyqui ... .2F_Extend then you can have a solution to the problem today. 8-) The availability of that reduces the immediate urgency of the problem you point out, which is complex. "Time Position" is not enough. Generators apply to selections too, as Steve said.

There are more important feature lacks in Chains than this, in my opinion - such as no FFmpeg exports, no uncompressed exports other than 16-bit PCM WAV, and inability to specify sample rate and bit rate (for uncompressed files).


Gale
________________________________________FOR INSTANT HELP: (Click on Link below)
* * * * * Tips * * * * * Tutorials * * * * * Quick Start Guide * * * * * Audacity Manual

audacityalex
Posts: 14
Joined: Fri Oct 02, 2015 7:27 pm
Operating System: Please select

Re: BUG. "Apply Chain" doesn't work with "Silence"

Post by audacityalex » Tue Oct 06, 2015 8:00 pm

So if a generator in a Chain was given a start time of 1 min 30 seconds, and a duration of 30 seconds, would it "insert" the generated audio at 1 min 30 seconds, or would it overwrite the track from 1 minute 30 seconds to 2 minutes?
I'm thinking that we would want both options
Currently, the manual (non-Chain) "Generate > Silence..." inserts.
(That's why I had been very happy with the "Generate > Silence... 1-2 sec." on opening the file - with default Cursor at time 00:00:00).
It just makes sure a file is played with a delay of 1-2 sec. at start.
As of Oct. 6, _2015_, no player in the world has an option to insert a delay (say, 1-2 sec.) between songs.

However, I'd vote for both options.

Gale Andrews
Quality Assurance
Posts: 41761
Joined: Fri Jul 27, 2007 12:02 am
Operating System: Windows 10

Re: BUG. "Apply Chain" doesn't work with "Silence"

Post by Gale Andrews » Tue Oct 06, 2015 8:49 pm

audacityalex wrote:
So if a generator in a Chain was given a start time of 1 min 30 seconds, and a duration of 30 seconds, would it "insert" the generated audio at 1 min 30 seconds, or would it overwrite the track from 1 minute 30 seconds to 2 minutes?
I'm thinking that we would want both options
Currently, the manual (non-Chain) "Generate > Silence..." inserts.
But when there is a selection in the waveform it overwrites.

Also, if a file a Chain is being applied to is 3 minutes long and we set a start time of 5 minutes, what should happen? We might want to generate extra audio at five minutes when applying a generator to a project but probably not when applying to a file.

So for applying to files, arguably a different control is needed that refers to the percentage time of the file.


Gale
________________________________________FOR INSTANT HELP: (Click on Link below)
* * * * * Tips * * * * * Tutorials * * * * * Quick Start Guide * * * * * Audacity Manual

Gale Andrews
Quality Assurance
Posts: 41761
Joined: Fri Jul 27, 2007 12:02 am
Operating System: Windows 10

Re: BUG. "Apply Chain" doesn't work with "Silence"

Post by Gale Andrews » Wed Oct 07, 2015 10:13 pm

audacityalex wrote:
So if a generator in a Chain was given a start time of 1 min 30 seconds, and a duration of 30 seconds, would it "insert" the generated audio at 1 min 30 seconds, or would it overwrite the track from 1 minute 30 seconds to 2 minutes?
I'm thinking that we would want both options
Currently, the manual (non-Chain) "Generate > Silence..." inserts.
(That's why I had been very happy with the "Generate > Silence... 1-2 sec." on opening the file - with default Cursor at time 00:00:00).
It just makes sure a file is played with a delay of 1-2 sec. at start.
As of Oct. 6, _2015_, no player in the world has an option to insert a delay (say, 1-2 sec.) between songs.

However, I'd vote for both options.
OK, so I noted your "vote". Peter can archive this topic in due course if there are no further comments from anyone. Thanks for your input.


Gale
________________________________________FOR INSTANT HELP: (Click on Link below)
* * * * * Tips * * * * * Tutorials * * * * * Quick Start Guide * * * * * Audacity Manual

Post Reply