ich habe ein Problem bei der Verwendung der libsamplerate.
Folgender Code führt immer zu einem IMA:
Code: Alles auswählen
EnableExplicit
PurifierGranularity(1, 1, 1, 1)
Prototype pSRC_New (converter_type.i, channels.i, *error)
Prototype pSRC_Delete (state.i)
Prototype pSRC_StrError (*error)
;32Bit-DLL
Define DLLPath.s = "libsamplerate-0.dll" ;<-- Anpassen
Define lib = OpenLibrary(#PB_Any, DLLPath)
If lib = 0
Debug "Couldn't open DLL."
End
EndIf
Global SRC_New.pSRC_New = GetFunction(lib, "src_new")
Global SRC_Delete.pSRC_Delete = GetFunction(lib, "src_delete")
Global SRC_StrError.pSRC_StrError = GetFunction(lib, "src_strerror")
Procedure myProc()
Define error, unusedVar
Define State = SRC_New(2, 1, @error)
Debug "State: " + State
Debug "error: " + error
Debug "unusedVar: " + unusedVar
If State = 0 ;error <> 0
error = SRC_StrError(error)
Debug "ErrorAddress: " + error
Debug PeekS(error, -1, #PB_Ascii)
Else
State = SRC_Delete(State)
EndIf
EndProcedure
myProc()
CloseLibrary(lib)
Weiß da jemand was ich falsch mache?
Hier noch meine Version der dll (x86): http://www.file-upload.net/download-806 ... r.zip.html
getestet unter Win 7 x64 mit PB 5.20 Beta 18 x86