Problems in SoundForge and Vegas


#1

I am using JUCE 3.06 and am reporting an issue reported from the field and that I have investigated with VST (effect) plug-ins under the latest version of Sony SoundForge (v11) and Vegas Video, using both Windows 7 (x64) and 8.1, on a 32-bit build of the plug-in (not VST3).   I am building on VS2013.

 

The problem is the plug-in's parameters are not restored prior to processing, or saved to the VST Preset files (.FXP) that these apps save.  These issues appear both when accessing plug-ins under the FX Favorites... menu or with the "Apply FX Chain..." commands.

 

1.  The user brings up the plug-in GUI and moves the controls and then presses "OK" - the app processes the audio using whatever default parameter settings are set when the AudioEffect is initialized.  I have put breakpoints in setParameter and the host app is not calling it.   No luck with setChunk either.

2.  Save the plug-ins settings as a VST Preset in the app and you end up with a 0 bytes .FXP file.

I have reproduced the issue with my plug-in and JuceDemoPlugin (audio plugin demo).  Any idea what might be going on?

Thanks-

Steve

 

 


#2

If the host isn't even calling those functions then I'm really not sure what to suggest.. It's very basic stuff, and has worked for years in all the other hosts.


#3

Other VST plug-ins work correctly in these hosts.  I wonder what could be different about JUCE plug-ins that would cause this issue?

-Steve


#4

Really can't think of anything that might stop it calling such basic stuff


#5

Do you actually have code written for getStateInformation and setStateInformation in the plugin?

 

Have you tried other hosts? If it happens in every host you try - then you can be pretty sure the problem is in your plugin. If it works in other hosts, then yea, what up with Sony?


#6

Use FileLogger and add a line to log when getStateInformation() and setStateInformation() are called…

Rail


#7

Yes, I have code for those methods. The issue does not happen with other hosts. 

 

Steve


#8

Turns out these issues are caused if AudioProcessor::getNumPrograms is returning 0.  The Sony code seems to rely on VST programs.

Steve


#9

Ah, that's interesting - maybe I should add an assertion somewhere to warn about that..


#10

Or at least change it in JuceDemoPlugin - it does this and that was the code I used as a starting point.

Steve


#11

In Logic X, when loading the JUCE demo plugin, the presets menu has a "Factory Presets/Pres 0: Default" preset, and selecting it does nothing.

This is due to this fix.

Perhaps it would be better for the VST wrapper to report the values that please Vegas/Soundforge when that's the host?


Please add a "known bugs" list
#12

Bumping for bug’s 2 year bugiversary.

The JUCE demo plugin still has this bug:
In Logic X the presets menu for a plugin instance has a preset called “Factory Presets/Pres 0: Default”, but choosing it does absolutely nothing.

Btw - as bug reports repeatedly get lost I’d suggest to create a forum topic for known bugs as suggested here - Please add a “known bugs” list

Cheers, Yair


#13

It’s always a great honour fixing anniversary bugs. See the latest develop. Your plug-ins should now return zero programs if they don’t have any programs.


#14

Cool, just checked the JUCE demo plugin in Logic and it no longer reports the false preset. :+1:


#15

I remember that in some cases, it was a problem if the plug-in were to report to its host that it had 0 programs.
Has this been taken into account when applying this fix?
(IIRC, there was a jassert in the code preventing 0 to be returned for exactly this reason)


#16

Yup: