Go Back   Cockos Incorporated Forums > REAPER Forums > ReaScript, JSFX, REAPER Plug-in Extensions, Developer Forum

Reply
 
Thread Tools Display Modes
Old 01-01-2014, 03:19 PM   #1
pbc
Human being with feelings
 
Join Date: Jan 2011
Posts: 45
Default is it possible to hide a slider in a less-gui vst plugin ?

another question:
is it possible to save in project other data than the vst paramaters ?

thanks ahead for any input
pbc is offline   Reply With Quote
Old 01-03-2014, 07:41 PM   #2
Xenakios
Human being with feelings
 
Xenakios's Avatar
 
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 8,062
Default

There's no way for the host to know which parameters a GUIless plugin doesn't wish the host to show as a generic slider/knob. Even if the VST specification had something for that, there is no guarantee hosts would obey it, as it doesn't seem like an essential feature to support.

VST does have a mechanism to store and restore arbitrary binary data via the host. This is obviously the preferred mechanism to deal with more complicated data in the plugin like file names, sample data, complex envelopes, routing etc...(Some developers have attempted to deal with that kind of data via the usual VST parameters but it should be quite obvious that can only lead to a disaster...)
__________________
I am no longer part of the REAPER community. Please don't contact me with any REAPER-related issues.
Xenakios is offline   Reply With Quote
Old 01-04-2014, 02:03 AM   #3
Lazarus
Human being with feelings
 
Join Date: Aug 2013
Posts: 1,355
Default

You want to search for "chunks". What framework are you using?
Lazarus is offline   Reply With Quote
Old 01-04-2014, 08:56 AM   #4
pbc
Human being with feelings
 
Join Date: Jan 2011
Posts: 45
Default

Quote:
Originally Posted by Xenakios View Post
VST does have a mechanism to store and restore arbitrary binary data via the host. This is obviously the preferred mechanism to deal with more complicated data in the plugin like file names, sample data, complex envelopes, routing etc...(Some developers have attempted to deal with that kind of data via the usual VST parameters but it should be quite obvious that can only lead to a disaster...)
exactly, and actually that's the only reason i asked for hiding a slider.
so now can you tell me please, how to do it ?
or what to look for in the vst sdk ?
pbc is offline   Reply With Quote
Old 01-04-2014, 09:42 AM   #5
Xenakios
Human being with feelings
 
Xenakios's Avatar
 
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 8,062
Default

Quote:
Originally Posted by pbc View Post
exactly, and actually that's the only reason i asked for hiding a slider.
so now can you tell me please, how to do it ?
or what to look for in the vst sdk ?
Implement these virtual methods in your plugin subclass if you are using the Steinberg C++ classes for VST plugins :

Code:
virtual VstInt32 getChunk (void** data, bool isPreset = false) { return 0; } ///< Host stores plug-in state. Returns the size in bytes of the chunk (plug-in allocates the data array)
	virtual VstInt32 setChunk (void* data, VstInt32 byteSize, bool isPreset = false) { return 0; }	///< Host restores plug-in state
//@}
On the other hand, you should probably consider using a better plugin development framework like IPlug or Juce instead of the Steinberg C++ classes...Those frameworks will have other virtual methods you would need to implement to get and set the binary chunks.
__________________
I am no longer part of the REAPER community. Please don't contact me with any REAPER-related issues.
Xenakios is offline   Reply With Quote
Old 01-04-2014, 10:26 AM   #6
pbc
Human being with feelings
 
Join Date: Jan 2011
Posts: 45
Default

thank you very much, that was helpfull
pbc is offline   Reply With Quote
Old 01-04-2014, 10:56 AM   #7
pbc
Human being with feelings
 
Join Date: Jan 2011
Posts: 45
Default

two more questions please.

1. if i call programsAreChunk(true)
the host won't call get/setParameters anymore ?
only get/setChunks ?

2. when exactly the host call plugin-chunks
on each parameter change ?
on each program change and on loading/saving the project ?
or something else ?

Last edited by pbc; 01-04-2014 at 11:35 AM.
pbc is offline   Reply With Quote
Old 01-04-2014, 11:13 AM   #8
Xenakios
Human being with feelings
 
Xenakios's Avatar
 
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 8,062
Default

Quote:
Originally Posted by pbc View Post
two more questions please.

1. if i use programsAreChunk(true)
the host won't call get/setParameters anymore ?
only get/setChunks ?

2. when exactly the host call plugin-chunks
on each parameter change ?
or on each program change and on loading/saving the project ?
or something else ?
I think that is stuff where there isn't any consistency how hosts will behave. You will just have to test with your favorite hosts what their behaviors are. (A tip for Reaper as the host : if you inform it that the parameter with the index -1 changed, Reaper will record the plugin's state in its undo history.)
__________________
I am no longer part of the REAPER community. Please don't contact me with any REAPER-related issues.
Xenakios is offline   Reply With Quote
Old 01-04-2014, 11:24 AM   #9
pbc
Human being with feelings
 
Join Date: Jan 2011
Posts: 45
Default

ok, thank you very much.
pbc is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 12:23 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.