PG8X (inspired by the JX8P): new beta version uploaded
- KVRAF
- 12555 posts since 7 Dec, 2004
You wouldn't if you never use mics or other live inputs.
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
Quick update:Dandruff wrote:You mean disabled in Preferences? Because it says "Don't send note offs ..."martin_l wrote:I can see that reaper for some reason does not send Note-Off (even though sending Note-Off's is enabled in the reaper preferences).
Maybe also wait for REAPER 5.21 (should have some more fixes for several note-off stuff).
It seems that Reaper 5.201 solves the problem on Windows, but on Mac it is still there. When checking the MIDI messaged _before_ the PG-8X with ReaControlMIDI, I see that on Windows I get the correct Note-Off message when stopping the transport, while on Mac I don't receive anything.
After seeing that it now worked correctly on Win, I commented out the 'hack' code, but I guess I should enable it again for the Mac, until the reaper issue is fixed.
Cheers,
Martin
P.S. For posting issues NOT related to this reaper-note-off problem, please use the new thread:
viewtopic.php?f=1&t=463227
-
- KVRian
- 687 posts since 27 Dec, 2003
Can't confirm this.martin_l wrote:Quick update:
It seems that Reaper 5.201 solves the problem on Windows, but on Mac it is still there. When checking the MIDI messaged _before_ the PG-8X with ReaControlMIDI, I see that on Windows I get the correct Note-Off message when stopping the transport, while on Mac I don't receive anything.
Code: Select all
0: 90 3C 60 [Note On] chan 1 note 60 vel 96
1: 90 3C 60 [Note On] chan 1 note 60 vel 96
2: 90 3C 60 [Note On] chan 1 note 60 vel 96
3: 90 3C 60 [Note On] chan 1 note 60 vel 96
4: 90 3C 60 [Note On] chan 1 note 60 vel 96
5: 90 3C 60 [Note On] chan 1 note 60 vel 96
6: B0 7B 00 [CC123 All Notes Off] chan 1 val 0
7: B1 7B 00 [CC123 All Notes Off] chan 2 val 0
8: B2 7B 00 [CC123 All Notes Off] chan 3 val 0
9: B3 7B 00 [CC123 All Notes Off] chan 4 val 0
10: B4 7B 00 [CC123 All Notes Off] chan 5 val 0
11: B5 7B 00 [CC123 All Notes Off] chan 6 val 0
12: B6 7B 00 [CC123 All Notes Off] chan 7 val 0
13: B7 7B 00 [CC123 All Notes Off] chan 8 val 0
14: B8 7B 00 [CC123 All Notes Off] chan 9 val 0
15: B9 7B 00 [CC123 All Notes Off] chan 10 val 0
16: BA 7B 00 [CC123 All Notes Off] chan 11 val 0
17: BB 7B 00 [CC123 All Notes Off] chan 12 val 0
18: BC 7B 00 [CC123 All Notes Off] chan 13 val 0
19: BD 7B 00 [CC123 All Notes Off] chan 14 val 0
20: BE 7B 00 [CC123 All Notes Off] chan 15 val 0
21: BF 7B 00 [CC123 All Notes Off] chan 16 val 0
-
- KVRian
- Topic Starter
- 960 posts since 27 Jun, 2009 from Germany
OK. I should mention that I was referring to a new build which I have not yet published. I did not include my 'hack' code, but did some fixes to the voice allocator. Anyway, on my Mac I still find the same probelm, while I don't on my PC.Dandruff wrote:Can't confirm this.martin_l wrote:Quick update:
It seems that Reaper 5.201 solves the problem on Windows, but on Mac it is still there. When checking the MIDI messaged _before_ the PG-8X with ReaControlMIDI, I see that on Windows I get the correct Note-Off message when stopping the transport, while on Mac I don't receive anything.
PG-8X also doesn't seem to react to All Notes Off message sent by REAPER. Can't make hanging note(s) to stop here.Code: Select all
0: 90 3C 60 [Note On] chan 1 note 60 vel 96 1: 90 3C 60 [Note On] chan 1 note 60 vel 96 2: 90 3C 60 [Note On] chan 1 note 60 vel 96 3: 90 3C 60 [Note On] chan 1 note 60 vel 96 4: 90 3C 60 [Note On] chan 1 note 60 vel 96 5: 90 3C 60 [Note On] chan 1 note 60 vel 96 6: B0 7B 00 [CC123 All Notes Off] chan 1 val 0 7: B1 7B 00 [CC123 All Notes Off] chan 2 val 0 8: B2 7B 00 [CC123 All Notes Off] chan 3 val 0 9: B3 7B 00 [CC123 All Notes Off] chan 4 val 0 10: B4 7B 00 [CC123 All Notes Off] chan 5 val 0 11: B5 7B 00 [CC123 All Notes Off] chan 6 val 0 12: B6 7B 00 [CC123 All Notes Off] chan 7 val 0 13: B7 7B 00 [CC123 All Notes Off] chan 8 val 0 14: B8 7B 00 [CC123 All Notes Off] chan 9 val 0 15: B9 7B 00 [CC123 All Notes Off] chan 10 val 0 16: BA 7B 00 [CC123 All Notes Off] chan 11 val 0 17: BB 7B 00 [CC123 All Notes Off] chan 12 val 0 18: BC 7B 00 [CC123 All Notes Off] chan 13 val 0 19: BD 7B 00 [CC123 All Notes Off] chan 14 val 0 20: BE 7B 00 [CC123 All Notes Off] chan 15 val 0 21: BF 7B 00 [CC123 All Notes Off] chan 16 val 0
What are you using to monitor the MIDI stream? And, can you confirm which reaper version you are using?
-
- KVRian
- Topic Starter
- 960 posts since 27 Jun, 2009 from Germany
OK. The reaper issue seems to be an issue in the 32bit code. Reaper64 does behave correctly and sends Note-Off's.
I also found another bug in my code. In fact, I was reacting to CC120 (All Sounds Off) instead of CC123 (All Notes Off).
Will be fixed in the next version. I will now test it on the Mac.
I also found another bug in my code. In fact, I was reacting to CC120 (All Sounds Off) instead of CC123 (All Notes Off).
Will be fixed in the next version. I will now test it on the Mac.
-
- KVRian
- Topic Starter
- 960 posts since 27 Jun, 2009 from Germany
I just put a new build with the CC123 fix into the dropbox. Maybe you could check whether that works for you before?
I am still having issues on my Mac, though, but it seems a reaper problem, as I am still not getting Note-Offs in the 32bit reaper.
Here is the dropbox link for the latest build:
https://www.dropbox.com/sh/e5oop1vf8vpl ... eezxa?dl=0
I hope that solves the problem.
Cheers,
Martin
I am still having issues on my Mac, though, but it seems a reaper problem, as I am still not getting Note-Offs in the 32bit reaper.
Here is the dropbox link for the latest build:
https://www.dropbox.com/sh/e5oop1vf8vpl ... eezxa?dl=0
I hope that solves the problem.
Cheers,
Martin
-
- KVRian
- 687 posts since 27 Dec, 2003
"All notes off" working with this version! Thanks!martin_l wrote:I just put a new build with the CC123 fix into the dropbox. Maybe you could check whether that works for you before?
-
- KVRian
- Topic Starter
- 960 posts since 27 Jun, 2009 from Germany
What about the other problem of notes hanging when you stop the playback during a long note? Is that now working for you?
-
- KVRian
- Topic Starter
- 960 posts since 27 Jun, 2009 from Germany
Well, but is not the idea of selecting "DONT send Note-Offs" that the notes are not cut off?Dandruff wrote:No, record-armed track still gives hanging note with "Flush FX on stop" + "Don't send note-offs ..." both enabled (REAPER 5.201 x64).
What behaviour exactly do you expect with this combination of options?
And how would a plugin be notified to flush the buffers? Do you know the OpCode for that? I can't find anything in the WDL framework.
Cheers,
Martin
PS. Is it working correcly if you do NOT enable "Don't send Note-Offs" and "Flush FX" ?
-
- KVRian
- 687 posts since 27 Dec, 2003
Yeah, but with "Flush FX on stop" I expect the plugin to stop outputting anything (flushing buffers). Working fine with other VSTi. Not sure how developers need to implement this.martin_l wrote:Well, but is not the idea of selecting "DONT send Note-Offs" that the notes are not cut off?
Yes.martin_l wrote:PS. Is it working correcly if you do NOT enable "Don't send Note-Offs" and "Flush FX" ?
- KVRAF
- 12555 posts since 7 Dec, 2004
As far as I'm aware "Flush FX on stop" works by setting the plug-in state via op-code 12.
You should trigger an all-notes-off effect here as well. Although all-sound-off would be better it might not be desired.
Dandruff: You need to disable the "do not sent all-notes-off on stop" option. This is illegal according to the MIDI specification and so you can't expect any MIDI device to work correctly. Whether JX8P triggers a reset according to "set plug-in state" is up to the plug-in author and while "all-notes-off" works correctly it does not make sense to put REAPER into a mode in which it does not follow the MIDI specification.
You should trigger an all-notes-off effect here as well. Although all-sound-off would be better it might not be desired.
Dandruff: You need to disable the "do not sent all-notes-off on stop" option. This is illegal according to the MIDI specification and so you can't expect any MIDI device to work correctly. Whether JX8P triggers a reset according to "set plug-in state" is up to the plug-in author and while "all-notes-off" works correctly it does not make sense to put REAPER into a mode in which it does not follow the MIDI specification.
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
- 687 posts since 27 Dec, 2003
Yep. I set it to disabled now. Would still be cool if PG-8X would support the flushing thing.aciddose wrote:Dandruff: You need to disable the "do not sent all-notes-off on stop" option.
- KVRAF
- 12555 posts since 7 Dec, 2004
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.
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.
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.