Kann ich die Ausgabekanäle für Audio und Movies, die über die PureBasic-eigenen Befehle oder über die MCI oder DirectX ausgegeben werden, beeinflussen? Also zum Beispiel ein Video auf einer zweiten Grafikkarte oder eine Audiodatei auf einer zweiten Soundkarte ausgeben, während die normale Anzeige auf der ersten Grafikkarte verbleibt?
Ich vermute, dass man da mit der Windows-API arbeiten muss.
Mit der bekommt man raus, welche Grafik- oder Soundkarte gerade verwendet wird und wieviele Geräte es noch von der Sorte im Rechner gibt. Anschließend stellst du die Standardausgabegeräte auf die Alternativen um und fertig.
Das Dumme ist nur, dass ich keinen blassen Schimmer habe, ob das wirklich so funktionieren könnte gescheige denn, ob die Methode nicht die falsche ist. Vielleicht muss man ja auch die Grafikkartentreiber/Soundkartentreiber ansprechen, damit sie die Signale an das andere Gerät senden.
Ich enpfehle dir mal in der MSDN von Microsoft zu gucken.
Greetz Laurin
Now these points of data make a beautiful line.
And we're out of beta. We're releasing on time.
Mit fmod sollte es derzeit über den Umweg gehen, dass Du die fmod.dll kopierst und umbenennst in fmod2.dll. Danach dann die fmod.dll und die fmod2.dll per OpenLibrary öffnen und deren Funktionen mit CallFunction aufrufen. Per SetOuput dann den gewünschten Output wählen.
Dann kannst Du 2 Instanzen der fmod.dll parallel an verschiedenen Soundkarten nutzen. Habe ich noch nicht probiert, soll aber laut fmod.org-Forum so funktionieren und ist der Workaround bis zu fmod 4.0, welches generell auch mehrfach instanziiert werden kann (zumindest in C).