1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-06-24 00:00:06 +02:00

342 Commits

Author SHA1 Message Date
Steve Daulton
5378b0a951 Update to non-real-time preview.
Fixes and updates on top of some code clean-up from Leland.
2015-05-29 22:08:16 +01:00
Leland Lucius
b8ce7f6125 Fix for bug #981 2015-05-28 09:57:59 -05:00
Steve Daulton
c0763c3b4b Pass preview duration preference to Nyquist.
To get preview duration:
(get '*project* 'preview-duration)
2015-05-22 19:09:37 +01:00
Steve Daulton
4abd816c52 Restore hyphenation of plug-in as preferred form. 2015-05-21 16:57:12 +01:00
Steve Daulton
0dbaa76a7b Linear preview flag for Nyquist plug-ins. 2015-05-20 21:12:05 +01:00
David Bailes
f458df1c7b Changes to a number of dialogs so that the NVDA screen reader can read the titles. Missed these in my last patch. The accessibility name of the dialog is set to the title. 2015-05-18 13:57:05 +01:00
James Crook
4b2a2f710a Stub NyquistEffect::RedirectOutput() so mod_nyq_bench compiles
This function had somehow gone missing in other changes.  mod_nyq_bench now compiles loads and runs again.  Not tested beyond that.
2015-05-08 16:27:32 +01:00
Leland Lucius
b8fe0e6743 Fix escape issue causing SAL to fail
And don't uppercase the line...DOH!
2015-05-04 03:12:55 -05:00
Leland Lucius
4d0de66523 Fix for bug #387
As this is a reversal of change committed in 2007 with no real
explanation or history behind that change other than it was
done for Export, we should probably give exporting a bit of a
workout.
2015-05-03 23:36:30 -05:00
Leland Lucius
01f28f645d Fix NIL spectral frequencies when running worker from Nyquist prompt 2015-05-03 22:46:59 -05:00
Leland Lucius
afe47be9e1 Clean up a few warnings 2015-04-26 16:46:14 -05:00
Leland Lucius
63dd4470f1 This "should" fix the text controls 2015-04-25 04:12:14 -05:00
Leland Lucius
78ffcd8a1e This "should" fix the double execution Prompt issue 2015-04-23 09:21:28 -05:00
Leland Lucius
cff7df273f Save and restore current settings when doing auto-reload 2015-04-23 07:40:47 -05:00
Leland Lucius
d841172abb Fix auto-reload of changed Nyquist effects 2015-04-23 07:36:04 -05:00
Leland Lucius
71cb68b798 Fix HighPass and LowPass effects based on Peter's feedback 2015-04-23 07:25:29 -05:00
Leland Lucius
d95cb872a4 Allow changes to be recorded in history 2015-04-22 19:15:15 -05:00
Leland Lucius
e8b0ca8707 Bring back the Nyquist debug button 2015-04-22 15:55:58 -05:00
Leland Lucius
c7aa6d684e Change the NVDA trickery to the "\a" (audible bell) escape sequence. 2015-04-20 12:33:03 -05:00
Leland Lucius
6212da3e2d Keep NVDA from saying "panel panel" when dialogs get focus
This will need to be tested with JAWS and Window Eyes.
2015-04-19 23:03:54 -05:00
Leland Lucius
0f3358248b Nyquist prompt updates
Based on Robert's and Steve's suggestions, I removed the "Clear"
button, replaced FileDialog usage with wxFileDialog to restore
extension suffixing, and escaped newlines in save settings so
that chains work properly.

I also attempted to locate the issue where code isn't being
parsed and made a couple of changes, but I doubt I got it.
2015-04-19 22:24:04 -05:00
Leland Lucius
7a0aa43a82 Convert all wxTRANSLATE() to XO()
XO() can be used anywhere a string must be extracted for translation
but not automatically translated at runtime.
2015-04-18 23:03:49 -05:00
Leland Lucius
8fbfa460c4 Migrating the remaining effects
This brings the builtin, LV2, and VAMP effects inline with the
Audio Units, LADSPA, and VST effects.  All effects now share
a common UI.

This gives all effects (though not implemented for all):

User and factory preset capability
Preset import/export capability
Shared or private configuration options

Builtin effects can now be migrated to RTP, depending on algorithm.
LV2 effects now support graphical interfaces if the plugin supplies one.
Nyquist prompt enhanced to provide some features of the Nyquist Workbench.

It may not look like it, but this was a LOT of work, so trust me, there
WILL be problems and everything effect related should be suspect.  Keep
a sharp eye (or two) open.
2015-04-16 23:36:28 -05:00
Steve Daulton
dbed4affe8 Update Nyquist.cpp
Remove earlier ifdef'd version of time/date property
2015-04-14 20:42:15 +01:00
Steve Daulton
d8d292edc7 Add time and date property list. 2015-04-14 13:50:51 +01:00
lllucius
10f62cdae5 Fix for bug #833
This allows duplicate items in the effects menus and provides a
means to uniquely identify each item.
2015-01-19 16:28:48 +00:00
lllucius
4e8b794452 Fix a conflict between the backported number validator and formatter
When building for wx3 on Linux, the backported number validators
and formatter conflicts with the wx3 version because I never
renamed them.  Crashes during termination would occur because
the wx3 version and our version had different vtables.

I was thinking that we would just be able to delete the
backported version when upgrading to wx3, but since
we've made Audacity specific changes to them we can't
simply start using the real wx3 versions anymore.

Therefore, I needed to rename then to prevent the crashes.
2015-01-04 21:17:16 +00:00
stevethefiddle@gmail.com
a13cb99e67 Modernize ';nyquist plug-in' header command.
Ref. QA topic: http://sourceforge.net/p/audacity/mailman/message/33193296/
2015-01-02 15:24:11 +00:00
stevethefiddle@gmail.com
3bf763194b Simplify misleading (and dangerous looking) initialisation. 2014-12-30 12:32:15 +00:00
stevethefiddle@gmail.com
9f5f5e36ad Experimental Nyquist time/date property (idefed out). 2014-12-25 18:22:59 +00:00
stevethefiddle@gmail.com
5b8747c636 Fix - Nyquist requires that the decimal separator is a dot.
This should allow the new Spectral edit plugins to work on systems that use comma as the decimal separator.
Also removes the *F0* and *F1* definitions that are no longer used (superseded by lowHz and highHz properties).
2014-12-25 13:54:00 +00:00
stevethefiddle@gmail.com
5d526a8009 Fix - bandwidth may be zero. 2014-12-19 16:18:21 +00:00
stevethefiddle@gmail.com
4fe3f855eb Fix for clip/split issues with Nyquist plugins. (see also bug 7) 2014-12-17 05:02:13 +00:00
lllucius@gmail.com
3bd511698a Leave the ellipse until after 2.1.0
Some of the locales do not have a translation for "Nyquist Prompt",
but do have one for "Nyquist Prompt...", so leave the ellipse for
now.
2014-12-15 22:45:52 +00:00
lllucius
ba1a3c6c8c And now make the Nyquist Prompt label change when the language changes 2014-12-15 22:36:36 +00:00
lllucius
16ca4f17eb Re-adding localized menu labels for effects
If you can believe it, this whole big mess is
just to get localized effect labels back into
the menus.

I sure wish I'd had a little bit more time to
finish up all of the effects.  It sure would 
be a lot cleaner (code wise).
2014-12-15 21:54:23 +00:00
stevethefiddle@gmail.com
2b28e840cc Fix - final setup parameter was being carried through to the script code. 2014-12-08 15:11:22 +00:00
stevethefiddle@gmail.com
b7aeef5ec9 Fix for bug 7, but ifdef'd out pending a more
flexible solution. Reviewed by Leland as "perfectly safe".
2014-12-07 02:03:57 +00:00
stevethefiddle@gmail.com
8d8a0b9234 Nyquist v4 - Fix bug in 'clips property. 2014-12-02 12:41:40 +00:00
stevethefiddle@gmail.com
6c781a6a1d Fix - Nyquist v4 path strings needed to be escaped for Windows. 2014-12-01 18:31:33 +00:00
stevethefiddle@gmail.com
233275f652 A couple of refinements to Nyquist v4 plug-in property lists.
1) Makes *TRACK* CLIPS property easier to use in Nyquist.
2) Allows plugins to bypass track view check on preview.
2014-11-20 15:48:25 +00:00
lllucius
41083f74cc Another round of effects bashing.
I've added some of the new plugin stuff to LV2, Nyquist, and
Vamp so that they play better in the new system.  They no
longer get bunched in with the Audacity effects when sorting
or grouping the menus.  They have not been fully converted
but they should be good for 2.1.0.

Nyquist plugins now include ";author" and ";copyright"
statements.

Added the 4 new Nyquist plugins to the Windows build.

Audiounits are still coming...had to push them to the back
burner to get this other stuff out of the way.

Scanning for new plugins has been improved so that newly
discovered ones will be shown to the user when Audacity starts.

Effects menu sorting has been fixed and improved.

Disabling effect types in Preferences works again and you
no longer have to restart Audacity for them the change to work.

Effect usage in chains works again.

Plugin registration dialog code simplified a bit.

Group names in the pluginregistry are now base64 encoded.  I
never really thought about it, but wxFileConfig group names
are case insensitive and since I was using the group name as
the plugin ID, I ran into a conflict on Linux where there
were two plugins with the same name, just different case.  (And
they were different plugins.)  Hoping all of this will change
when/if the config file gets converted to XML.  (wx3 if finally
including XML support)

A fair amount of cleanup of this new code has been done and
will continue as more stuff is converted.
2014-11-19 06:58:44 +00:00
stevethefiddle@gmail.com
c2f90ac41e Change *selection* tracks property to a list rather than a total - greater flexibility for plugins. 2014-11-17 16:04:08 +00:00
stevethefiddle@gmail.com
8ca85d0595 Support version 3 syntax in Nyquist Prompt. 2014-11-17 02:48:47 +00:00
lllucius
4c0aa60871 A subset of the original v4 patch (which will become v5 eventually)
The main operational difference is that for v4 effect onward, the 
sound name will now be *TRACK*.  This will not affect existing
effects since they use version number 3 or less.

This also provides the Nyquist effect with much more information about
the current processing:

Variable       Property    What
*AUDACITY*     VERSION     current Audacity version number

*SYSTEM-DIR*   BASE        Audacity install path
*SYSTEM-DIR*   DATA        Audacity data path
*SYSTEM-DIR*   HELP        Audacity help path
*SYSTEM-DIR*   TEMP        Audacity temp file path
*SYSTEM-DIR*   PLUGIN      Audacity search path for Nyquist plugins

*PROJECT*      RATE        current project sample rate
*PROJECT*      TRACKS      total number of tracks in the project
*PROJECT*      WAVETRACKS  number of wave tracks in the project
*PROJECT*      LABELTRACKS number of label tracks in the project
*PROJECT*      MIDITRACKS  number of midi tracks in the project
*PROJECT*      TIMETRACKS  number of time tracks in the project

*SELECTION*    START       start time of current selection
*SELECTION*    END         end time of current selection
*SELECTION*    TRACKS      number of tracks in the current selection
*SELECTION*    CHANNELS    number of channels in the current selection
*SELECTION*    LOW-HZ      low frequency from spectrogram (if available, else nil)
*SELECTION*    CENTER-HZ   center frequence (calculated) (if available, else nil)
*SELECTION*    HIGH-HZ     high frequence from spectrogram (if available, else nil)
*SELECTION*    BANDWIDTH   bandwidth in octaves (calculated) (if available, else nil)
*SELECTION*    PEAK-LEVEL  peak amplitude for the current selection

*TRACK*        INDEX       1-based index of track being processed
*TRACK*        NAME        name of track
*TRACK*        TYPE        type of track: wave, midi, label, time
*TRACK*        VIEW        track view: Waveform,  Waveform (dB), etc.
*TRACK*        CHANNELS    number of channels in the track
*TRACK*        START-TIME  start time of track
*TRACK*        END-TIME    end time of track
*TRACK*        GAIN        track gain
*TRACK*        PAN         track pan
*TRACK*        RATE        sample rate of track
*TRACK*        FORMAT      sample format: 16 (int), 24 (int), 32.0 (float)
*TRACK*        CLIPS       list of start/end times for clips for each channel
2014-11-13 16:38:20 +00:00
james.k.crook@gmail.com
035ee5cdff [Bug 782] Nyquist parameters changed (during this session) now remembered until end of session, as before.
Thanks to Steve for tracking this down.
2014-11-09 21:54:06 +00:00
stevethefiddle@gmail.com
2abb46b83d Allow generator effects to use preview without requiring a selection to be made.
Documentation: This does not affect any currently shipped effects. This will need documenting on the wiki for writing Nyquist plug-ins.
2014-10-26 20:30:22 +00:00
james.k.crook@gmail.com
d96bbb1f3a Spectral selection effects now prompt for missing frequency fields when used in time selection mode. 2014-10-24 20:27:04 +00:00
stevethefiddle@gmail.com
0ce9f5ad16 Allow all output from Nyquist Prompt effect.
As the Nyquist Prompt is the only direct access to input Nyquist commands, it needs to remain flexible and versatile.
2014-10-24 12:04:06 +00:00
james.k.crook@gmail.com
af649b94e1 c_str()'s for Linux.
[Need to review this for wx3.x]
2014-10-18 18:46:50 +00:00