PG8X (inspired by the JX8P): new beta version uploaded
-
- KVRian
- Topic Starter
- 960 posts since 27 Jun, 2009 from Germany
In Reaper, sending the FLush FX is optional, so it seems it would not hurt. Are there any hosts which ALWAYS send the effMainsChanged on Stop? In that case I might make it optional in the plugin (controlled via the ini file).aciddose wrote:The consequence of that is that in many hosts it'll cut the notes and introduce clicks almost at random.
It's bad design in VST, there should be an independent "reset" op-code but it was never added.
Note that "reset" means immediately cut all notes and audio output, reset absolutely everything (delay buffers, filters, envelopes, ...) to the same state the plug-in started in.
It would make sense to apply that before render, but it doesn't make sense to kill everything "CLICK!" when you press stop. It gets annoying very quickly.
Currently, I am trying to get at least the AllSoundsOff implemented, which should mute everything if the corresponding CC is sent.
Cheers,
Martin
- KVRAF
- 12555 posts since 7 Dec, 2004
I should update my "host probe" plug-in with some check boxes and a text display + "save log to file".
People could use that to check every host without needing a debugger.
In debugging now with the latest REAPER version I'm not getting anything that could cause a reset.
I'm not sure what the "Don't flush synthesizer plug-ins on stop/reset" parameter is supposed to do, but what it does do:
With it disabled (normal) on hitting play you get set state 0 (inactive), followed immediately by 1 (active.)
With the check enabled you don't get these messages.
As far as I can see REAPER sends nothing when you hit stop.
The only thing I can guess is that either I've missed the message it does send, or that it changes a response to one of the host opcodes.
People could use that to check every host without needing a debugger.
In debugging now with the latest REAPER version I'm not getting anything that could cause a reset.
I'm not sure what the "Don't flush synthesizer plug-ins on stop/reset" parameter is supposed to do, but what it does do:
With it disabled (normal) on hitting play you get set state 0 (inactive), followed immediately by 1 (active.)
With the check enabled you don't get these messages.
As far as I can see REAPER sends nothing when you hit stop.
The only thing I can guess is that either I've missed the message it does send, or that it changes a response to one of the host opcodes.
Free plug-ins for Windows, MacOS and Linux. Xhip Synthesizer v8.0 and Xhip Effects Bundle v6.7.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.
-
- KVRian
- Topic Starter
- 960 posts since 27 Jun, 2009 from Germany
It is a bit complicated in Reaper. While on the 'VST' page of the preferences, you can choose not to flush plugins on stop, the main switch whether or not to flush plugins is on the 'playback' page. I guess it is also off by default. So, disabling the flushing on the VST page only has an effect if you enabled it on the playback page.aciddose wrote:I should update my "host probe" plug-in with some check boxes and a text display + "save log to file".
People could use that to check every host without needing a debugger.
In debugging now with the latest REAPER version I'm not getting anything that could cause a reset.
I'm not sure what the "Don't flush synthesizer plug-ins on stop/reset" parameter is supposed to do, but what it does do:
With it disabled (normal) on hitting play you get set state 0 (inactive), followed immediately by 1 (active.)
With the check enabled you don't get these messages.
As far as I can see REAPER sends nothing when you hit stop.
The only thing I can guess is that either I've missed the message it does send, or that it changes a response to one of the host opcodes.
Still thinking how to handle it. In particular, one question is what to do with the optional chorus noise in my plugin. This is a sound source, which is also present when no note is played. Should the plugin go COMPLETELY silent on stop when 'flush buffers' is enabled, and only start making noise again on start? I guess that is the most consistent behavior.
- KVRAF
- 12555 posts since 7 Dec, 2004
Yes okay, with the playback option enabled it works the same except that on stop it gives the same 0, 1 activity sequence.
So you'd need to call the function internally to get the same result as all-sound-off from this point if you wanted to respect it.
That will also ensure the render state is always "from init".
Yes, I think 100% of everything should be cleared as if the plug-in had just been loaded except for the preset and other similar data. (MIDI learn, etc.)
I honestly don't remember which hosts caused issues for me years ago. I remember getting clicks while looping a track for example. This may no longer be an issue. It's a shame they never added a "reset" opcode for this purpose from the beginning, it would take any of the guesswork out of it.
So you'd need to call the function internally to get the same result as all-sound-off from this point if you wanted to respect it.
That will also ensure the render state is always "from init".
Yes, I think 100% of everything should be cleared as if the plug-in had just been loaded except for the preset and other similar data. (MIDI learn, etc.)
I honestly don't remember which hosts caused issues for me years ago. I remember getting clicks while looping a track for example. This may no longer be an issue. It's a shame they never added a "reset" opcode for this purpose from the beginning, it would take any of the guesswork out of it.
Free plug-ins for Windows, MacOS and Linux. Xhip Synthesizer v8.0 and Xhip Effects Bundle v6.7.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.
-
fluffy_little_something fluffy_little_something https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=281847
- Banned
- 12880 posts since 5 Jun, 2012
In Mixcraft there is a similar option called 'Reset plugins on playback and mixdown'.
-
- KVRian
- Topic Starter
- 960 posts since 27 Jun, 2009 from Germany
Writing presets writes them into the preset "RAM" in the plugin. This RAM will be recalled when you load a project. It is not automatically written into the PG8Xbank file on the disk. You need to write it with the SAVE button.electro wrote:Write preset doesn't seem to be working on PC. Only the most recent write is stored. All others slots revert back to the init preset.
In case this procedure also does not work, please give me more information about your host, etc.
Hope this helps,
Martin
-
- KVRAF
- 5201 posts since 6 May, 2002
How would you turn 32 individual .syx presets into 1 .syx bank?
martin_l wrote:Writing presets writes them into the preset "RAM" in the plugin. This RAM will be recalled when you load a project. It is not automatically written into the PG8Xbank file on the disk. You need to write it with the SAVE button.electro wrote:Write preset doesn't seem to be working on PC. Only the most recent write is stored. All others slots revert back to the init preset.
In case this procedure also does not work, please give me more information about your host, etc.
Hope this helps,
Martin
Intel Core2 Quad CPU + 4 GIG RAM
-
- KVRian
- Topic Starter
- 960 posts since 27 Jun, 2009 from Germany
Hi, that depends very much on the nature of the sysex data.
Some patches I found on the web are only patch data. They load into the current programme and (depending on your "AUTO WRITE" option) need to be saved into your bank.
Other sysex data contain in addition the "WRITE" command, and hence write themselves into the bank.
From your description, I assume that your sysex are without the write part.
If you only have a few, the easiest would be to load them separately, and write each into the bank before loading the next.
If you have a lot, it might be easier to edit the Sysex data directly and insert the corresponding write instructions. If you look at one of the sysex banks with some Hex editor, you will recognise the various parts. They usually contain two sysex instructions (between F0 and F7) for each preset. The longer one is the patch data, while the shorter one is the write instruction.
Once you have all in a bank, you can save it as a PG8Xbank, or export to one sysex bank. These exported banks do contain the write instructions.
Cheers,
Martin
Some patches I found on the web are only patch data. They load into the current programme and (depending on your "AUTO WRITE" option) need to be saved into your bank.
Other sysex data contain in addition the "WRITE" command, and hence write themselves into the bank.
From your description, I assume that your sysex are without the write part.
If you only have a few, the easiest would be to load them separately, and write each into the bank before loading the next.
If you have a lot, it might be easier to edit the Sysex data directly and insert the corresponding write instructions. If you look at one of the sysex banks with some Hex editor, you will recognise the various parts. They usually contain two sysex instructions (between F0 and F7) for each preset. The longer one is the patch data, while the shorter one is the write instruction.
Once you have all in a bank, you can save it as a PG8Xbank, or export to one sysex bank. These exported banks do contain the write instructions.
Cheers,
Martin
electro wrote:How would you turn 32 individual .syx presets into 1 .syx bank?
martin_l wrote:Writing presets writes them into the preset "RAM" in the plugin. This RAM will be recalled when you load a project. It is not automatically written into the PG8Xbank file on the disk. You need to write it with the SAVE button.electro wrote:Write preset doesn't seem to be working on PC. Only the most recent write is stored. All others slots revert back to the init preset.
In case this procedure also does not work, please give me more information about your host, etc.
Hope this helps,
Martin
-
- KVRian
- Topic Starter
- 960 posts since 27 Jun, 2009 from Germany
Which host do you use? Are you on Win or Mac? I will have a look into that.electro wrote:the problem is that when you hit write the previous written preset reverts back to init
Martin
-
- KVRian
- Topic Starter
- 960 posts since 27 Jun, 2009 from Germany
I just uploaded version 2.0.12 which should fix that problem.martin_l wrote:Which host do you use? Are you on Win or Mac? I will have a look into that.electro wrote:the problem is that when you hit write the previous written preset reverts back to init
Martin
Martin
- KVRAF
- 5564 posts since 13 Jan, 2005 from the bottom of my heart
Still people out there keep this crap activated?electro wrote:Thanks. Getting a smartscreen dangerous file warning.
Whoever wants music instead of noise, joy instead of pleasure, soul instead of gold, creative work instead of business, passion instead of foolery, finds no home in this trivial world of ours.