Windows WASAPI

Für Probleme bezüglich Grafik, Audio, GL, ACS, ...
Antworten
Benutzeravatar
Lincoln Six Echo
Beiträge: 138
Registriert: Di 26. Aug 2014, 16:42
OS, Lazarus, FPC: Win10, Debian
CPU-Target: I7/I9/Q9650/u.a.
Wohnort: Hamburg

Windows WASAPI

Beitrag von Lincoln Six Echo »

WASAPI (Windows Audio Session API) ist ab VISTA eine neue Möglichkeit unter Windows Audio-Programme den Zugriff auf das Soundsystem zu ermöglichen. Es soll erheblich besser funktionieren als das alte MMSystem (WaveOutWrite usw.) das es seit Win95 gibt. Audacity z.B. nutzt u.a. WASAPI.

Hat jemand hierzu Erfahrungen oder gar Tipps ? Alles was ich bisher gefunden haben, wie BASS, AudioJack, DelphiASIOVST u.a. kann man nur nutzen wenn man deren DLLs einbindet. Das kommt aus bestimmten Gründen nicht in Frage.

Danke im voraus.

Mathias
Beiträge: 6162
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Windows WASAPI

Beitrag von Mathias »

Hat jemand hierzu Erfahrungen oder gar Tipps ? Alles was ich bisher gefunden haben, wie BASS, AudioJack, DelphiASIOVST u.a. kann man nur nutzen wenn man deren DLLs einbindet.


Um das einbinden einer DLL wirst du sehr wahrscheinlich nicht rumkommen. Ausser jemand hat schon eine Header für Pascal dafür geschrieben.
Vielleicht könntest du die Quellen von Foobar2000 angucken, und schauen wie die dies gelöst haben.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Windows WASAPI

Beitrag von mschnell »

Lincoln Six Echo hat geschrieben: DelphiASIOVST


Ein VST _ist_ eine DLL, muss aber keine einbinden.

Wenn ich das richtig mitbekommen habe ist die Nutzung des (C-Interface) Codes von Steinberg inzwischen nicht mehr so problematisch wie sie einmal war. Man kann den SDK jetzt wohl einfach so herunterladen.

Du musst das aber - zumindest für VST3 - vermutlich manuell nach Pascal portieren.

-Michael

Antworten