Delphi ASIO & VST sourceforge project

DSP, Plugin and Host development discussion.
Post Reply New Topic
RELATED
PRODUCTS

Post

A related question would be:
Hence the idea to implement external MIDI receive & send ...
2 examples:

1. You send a midifile to the extranal receive.
The problem here is that most MIDI devices are not multiclient
(in Linux this is much more flexible)
which means that once port is allocated
it cannot be used by other application :(

2. You will route the midi output to a reverb plugin.
This is not possible. Your midi events goes to the extranal receive :(


with best regards

Norbert

Post

Well Norbert, then you are out of luck regarding using SYSEX in the majority of hosts ...

The only other option is to route the standard host MIDI output and the suggested external MIDI output to e.g. MidiYoke which IS MultiClient ...

BTW, the multiclient problem is a driver problem and is not related to the Windows OS ...

Post

Hmmm. To many words, but no result.
I'm testing my vst plugin with Cubase SX and Sonar.
I have 100% stable sysex receiveing and 0% for sysex transmiting.
Is exist any delphi VST coders that resolve sysex transmit problem?
P.S. I had many old hardware devices like a novation supernova, yamaha An1x, access virus and etc. This devices like 100% sysex control, but modern DAW not contain a usefull control surfaces fir this "old" stuff...

Post

I'm pretty sure have seen sequencers that could be setup to stream real-time sysex control messages (for hardware). But can't recall the titles. Perhaps Opcode Vision or MOTU Digital Performer had/have the feature.

Or maybe it was some of the command features in Nigel Redmon's old HyperMIDI Mac Hypercard additions. Memory's getting bad. A one-bit-brain with a parity error.

Or maybe it was a feature in some of the programmable patch editor/librarian programs.

As best I recall, setup was a little tricky, requiring the musician to know the sysex formats of the synth he wanted to control. You would define an on-screen knob or slider, type in the sysex (typically around 10 bytes for this kind of control message), and then define which bytes and which format the slider value would be encoded inside the message.

For instance, if a slider is supposed to control filter cutoff for synth xyz, which might a 9 byte message with the parameter value 'nibble-ized' in bytes 6 and 7-- After you got the control setup, then the programs were smart enough to send the right kind of sysex message when you would twiddle the knob.

Post

As I recall, Podium will handle SysEx OK; but you'd have to dl the demo and try. I use Podium, but have no use for SysEx at the mo..

DSP
Image

Post

Ok, I just found a couple of minutes to implement a basic 'MIDI_SendSysEx(Data : Array of Bytes; Offset : Integer)' routine. I also implemented a special TVstMidiSysexEvent according to the spec.
Since I have no use for SysEx, it is still untested yet.

Christian

Post

Christian. Do you test sysex send feature in cubase?
If test will succesfull you have plans to share code?

Post

darlock wrote:Christian. Do you test sysex send feature in cubase?
If test will succesfull you have plans to share code?
I already commited the code to the SVN. As mentioned above, I didn't test it. It's because I see no use for it. Setting up a test setup would probably take me a day and nobody's going to pay me that day, so it's up to you...

Post

Hello,
in any units is a uses ToolsAPI
Where I can find this unit ?
with best regards

Norbert

Post

In the borland source\ToolsAPI directory. It's not part of the open source project

Post

Christian Budde wrote:In the borland source\ToolsAPI directory. It's not part of the open source project
Oh.......... (Schäm)

Thanks Christian.
Norbert

Post

Hello Christian,

thanks for your fastest help. (Mailadress)

with best regards
Norbert

Post

Hi Christian,
in the unit DVSTModule is allways the define switch {$DEFINE Debug}
on. When I change this switch to { $DEFINE Debug}, is after a new
version the switch on {$DEFINE Debug} :=)
Can you made this change:

unit DVSTModule;
interface

{$I ASIOVST.INC}
{$DEFINE UseDelphi}
{$I Debug.INC}
//Switch Debug on or off in this file

uses
{$IFDEF FPC} LCLIntf, LResources, LMessages, {$ELSE} Windows,
Messages, {$ENDIF} SysUtils, Forms, Classes, DDSPBase, DVSTEffect;



And in the file Debug.INC

{$DEFINE Debug}

where Debug.inc is not in repository.
This is very helpfull.
Thanks.
with best regards

Norbert

Post

I just moved the debug switch to the ASIOVST.INC and made its default 'off'

You can keep a local version of ASIOVST.INC in you current project directory to override the debug switch.

Post

Christian Budde wrote:I just moved the debug switch to the ASIOVST.INC and made its default 'off'
Hello Christian,
thanks for very fast response. This feature is very helpfull.
with best regards

Norbert

Post Reply

Return to “DSP and Plugin Development”