<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'><br><div>> On 01/17/2014 03:55 PM, Fred van Stappen wrote:<br>> > <br>> >> > I run nm and find the name of the procedures ( PS : without<br>> > nm-Ewald's tip, you must be a high soothsayer to find it)<br>> >> > For example, a C called procedure : soundtouch_getVersionString()<br>> > becomes : _ZN10soundtouch10SoundTouch16getVersionStringEv() !!!<br>> >> ><br>> >><br>> >> The _ZN10soundtouch10SoundTouch16getVersionStringEv name mangling<br>> >> suggests that this is a C++ lib, not a C lib. Generally speaking, you<br>> >> can't call C++ libs from fpc.<br>> >><br>> >> Ludo<br>> > <br>> > Yep, Ludo, many thanks to take care but...<br>> > <br>> > I have a test program who use some procedures to test , for example :<br>> > <br>> >  FVersionID := soundtouch_getVersionId();<br>> >  FVersionString := StrPas(soundtouch_getVersionString());  <br>> >  <br>> >   writeln(FVersionID);<br>> >   writeln(FVersionString);<br>> > <br>> >>>> Result :<br>> > <br>> >> 10800<br>> >> 1.8.0<br>> > <br>> > So, it seems to work...<br>> > <br>> > Those procedures are declared as this :<br>> > <br>> > Pointer(soundtouch_getVersionId)    := GetProcAddress(LibHandle,<br>> > Pchar('_ZN10soundtouch10SoundTouch12getVersionIdEv')); <br>> >  <br>> > Pointer(soundtouch_getVersionString):=<br>> > GetProcAddress(LibHandle,Pchar('_ZN10soundtouch10SoundTouch16getVersionStringEv')); <br>> > <br>> > <br>> That are functions without any parameters that seemingly don't do a lot.<br>> Do you have any function working that takes a handle as a parameter?<br>> What is the value of the handle that was returned?<br><br>Yep Ludo, thanks to answer and...<br><br>Indeed, all the functions without any parameters are working.<br><br>And all the other must be initialized with  Soundtouch_setSampleRate(FHandle, samrate);<br><br>And, because it does not work, i cannot try the other procedures...<br><br>PS : FHandle := soundtouch_createInstance();<br>Seems to work (i do not get error message)<br><br>and this one works too : <br>soundtouch_setChannels(FHandle, 2); <br><br>but this no :<br>soundtouch_setSampleRate(FHandle, 44100); <br><br>And without to set sample-rate, all other procedures are not working...<br><br>Many thanks<br><br><br>  <br></div>                                     </div></body>
</html>