Delphi ASIO & VST sourceforge project

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

Post

sikahr wrote:quick question, which version of Delphi You use for development?
I'm using Turbo Delphi, but Delphi 7 also works flawlessly. Also I just found out, that some changes have been made today to ensure compatibility for Delphi 5...

Christiano do Pandeiro da terra do Zeca Pagodinho ;-)

Post

sikahr wrote:Hello,
quick question, which version of Delphi You use for development?
Nenad
2007, but then I'm probably biased.
Reaper Zone | Harmonic Buzz | Filter Theory

You can't wait for inspiration, you have to go after it with a club - Jack London

Post

Thanks for your answers


Nenad

Post

Is there a way to translate delphi code to C++? Is your project support unicode? ( I can't compile asio sdk in unicode.)

Post

frankmail007 wrote:Is there a way to translate delphi code to C++? Is your project support unicode? ( I can't compile asio sdk in unicode.)
You don't have to use the ASIO SDK at all. The only part required is the IASIO definition, which - for a host - is just a bunch of indexes into a table of pointers to functions - that you can roll your own of. As an added benefit there will be no licensing issues should you decide to redistribute your source.

Post

Hello , I'm currently testing the asiohost component.In the demo hosts there are no exemples for generating the transport time.Can someone give me a sample or some clues for doing this ?
I guess it's computed from asiotime.samplepos ,the tempo , asio.samplerate and a variable resolution...
but I cant make it working :
if samplepos mod round((SR*60/tempo)/ppqres)=0 then inc(position) was my first idea but :?:

Post

Sorry I shouldn't spam the topic with this.It was almost that.

Code: Select all

procedure TForm1.UpdatePPQPos;
begin
  inc(PqSmp);
  if (PqSmp*100) > PqMax then
    begin
      inc(PPQPos);
      PQSmp := 0;
      PosView.Caption := inttostr(PPQPos) ;
    end;
  if SendClock then
    begin
      inc(MPqSmp);
      if (MPqSmp*100) > MPqMax then
        begin
          MPQSmp := 0;
          MidiOutput.Send(GClockDevList.ItemIndex,$F8,0,0);
        end;
    end;
end;
procedure Tform1.OnTempoChanged(Sender: TObject);
var
  i:extended;
begin
  i:= HAsio.SampleRate*60 ;
  PQMax :=(i / (Tempo*PpqRes*10))*1000;
  MPQMax:=(i / (Tempo*240)      )*1000;
end;
However There is still something strange with this, and the AsioHost component is crashing , (remaining in memory , impossible to kill the exe)with high ppqres values.MidiClock seems to be ok.
Any advice about this ?

Post

Hello,
Mini Host cannot get a sysex message!?
What shall I do ?

The problem is:
A plugin required for scale tunig any sysex messages.
I send this message to the MiniHost. But this message
the plugin not recieve.

Thanks for you help
with best regards

Norbert

Post

Finally by puting these procedure in a special TAudiothread,I've succeed into getting a stable asio transport (including a midi clock that can be generated during 2 hours without problems :wink: ,just if a programmer is looking for this kind of stuffs...)I'm good at midi 8)...so I dont know ...I've heard XT2 is missing some stuffs

Post

frankmail007 wrote:Is there a way to translate delphi code to C++?
You would also need to translate parts of the VCL I guess. But it should be less work if you use the Borland C Builder.
frankmail007 wrote:Is your project support unicode? ( I can't compile asio sdk in unicode.)
No, it's not yet unicode.

Post

HumanBeing2 wrote:Hello , I'm currently testing the asiohost component.In the demo hosts there are no exemples for generating the transport time.Can someone give me a sample or some clues for doing this ?
I guess it's computed from asiotime.samplepos ,the tempo , asio.samplerate and a variable resolution...
but I cant make it working :
if samplepos mod round((SR*60/tempo)/ppqres)=0 then inc(position) was my first idea but :?:
HumanBeing2 wrote:[..]
HumanBeing2 wrote:Finally by puting these procedure in a special TAudiothread,I've succeed into getting a stable asio transport (including a midi clock that can be generated during 2 hours without problems :wink: ,just if a programmer is looking for this kind of stuffs...)I'm good at midi 8)...so I dont know ...I've heard XT2 is missing some stuffs
If you managed to generate the transport time could you perhaps donate an example to the project, showing how it works?

Thanks in advance,

Christian

Post

Hi,

Thanks alot to Christian Budde for great efforts:-)

I use the ASIOHost component in my example project.
I've one problem, when i want to get input and out latency value then all results value are '0' on everytime!

I don't know, how can i get and calculate the latency value?

Please, i need your help.

Best regards,

midijor

Post

midijor wrote:I use the ASIOHost component in my example project.
I've one problem, when i want to get input and out latency value then all results value are '0' on everytime!
Well, your soudcard should report the right latency here. If it doesn't, you can't do anything about it. However, remember, that the latency is at least one block (=buffersize). So even if it reports '0', you do have a latency of one block (in case you directly wire the output back to the input).

Kind regards,

Christian

Post

Christian Budde wrote: Well, your soudcard should report the right latency here. If it doesn't, you can't do anything about it. However, remember, that the latency is at least one block (=buffersize). So even if it reports '0', you do have a latency of one block (in case you directly wire the output back to the input).

Kind regards,

Christian
Hi,

Sorry for my lately...

I can get the input and output latency values when I was using the your old component it is realesed on 2005!

I use the latest version of ASIO4All driver. For example, if buffersise is 512 then the soundcard reports the input latency value is 577 and output latency value is 577 in my example project.

I want to calculate the latency values in miliseconds!

How can i do?

I hope, you'll help me:-)

Best regards,

midijor

Post

midijor wrote: I can get the input and output latency values when I was using the your old component it is realesed on 2005!

I use the latest version of ASIO4All driver. For example, if buffersise is 512 then the soundcard reports the input latency value is 577 and output latency value is 577 in my example project.

I want to calculate the latency values in miliseconds!
Well, basically there shouldn't be a difference between the version released in 2005 and the latest version. At least I can tell you so far, that it works on my machine without any problem.

To translate the samples to seconds all you need to do is divide by the samplerate (and multiply by 1000 to get the value in ms).

Kind regards,

Christian

Post Reply

Return to “DSP and Plugin Development”