Kann ich per AutoIt irgendwie herausbekommen, welches Wiedergabegerät ich momentan als Standard hab?
Ist es auch möglich es per AutoIt zu ändern?
Ich möchte nicht mit ControlClick/Send/Command arbeiten...
MfG
Kann ich per AutoIt irgendwie herausbekommen, welches Wiedergabegerät ich momentan als Standard hab?
Ist es auch möglich es per AutoIt zu ändern?
Ich möchte nicht mit ControlClick/Send/Command arbeiten...
MfG
Doch nochmal eine Frage, wie kann ich das Standardwiedergabegerät ändern?
[autoit]#include <Bass.au3>
[/autoit][autoit][/autoit][autoit]_Bass_Startup(@ScriptDir & "\bass.dll")
[/autoit][autoit][/autoit][autoit]_Bass_SetDevice(3)
If @error Then ConsoleWrite(@error & @CRLF)
_Bass_Free()
[/autoit]Geht nicht, obwohl mein Kopfhörer an 3. Stelle ist, aber er wechselt nicht von Boxen zu Kopfhörer...
Zwar gibt er hier den Error Code 23 ($BASS_ERROR_DEVICE = 23 ;illegal device number) an, jedoch ändert sich der Error Code, wenn ich den Namen meines Kopfhörers ("Lautsprecher (3- Logitech Wireless Headset)") angebe auf 8 ($BASS_ERROR_INIT = 8 ;$BASS_Init has not been successfully called), wobei ich den Error aber nicht verstehe...
Falls die Soundkarte mehrere Outputs hat, dann kann man zwischen diesen via Bass.dll nicht hin und her schalten.
(Evtl. geht das unter Vista / Win7, da dort die einzelnen Outputs als eigenständige Soundkarten behandelt werden)
Wenn es verschiedene Soundkarten sind, dann kann man das machen.
Du kannst ja mal mit diesem Script rausfinden, welche Soundkarten in welcher Reihenfolge du hast:
[autoit]#AutoIt3Wrapper_UseX64=n
#include "Bass.au3"
_BASS_Startup(@ScriptDir & "\bass.dll")
[/autoit][autoit][/autoit][autoit]$iCnt = 0
While 1
$aInfo = _BASS_GetDeviceInfo($iCnt)
If @error Or Not IsArray($aInfo) Then ExitLoop
ConsoleWrite(@CRLF & "> " & $iCnt & " " & $aInfo[0] & @CRLF)
Switch BitAND($aInfo[2], $BASS_DEVICE_ENABLED)
Case True
ConsoleWrite("+ Device is enabled" & @CRLF)
Case Else
ConsoleWrite("! Device is disabled" & @CRLF)
ContinueLoop
EndSwitch
If BitAND($aInfo[2], $BASS_DEVICE_DEFAULT) Then ConsoleWrite("! This is the default output device" & @CRLF)
$iCnt += 1
WEnd
Bevor du _Bass_SetDevice() verwenden kannst, musst du _Bass_Init() aufrufen...
E
Wenn meine Boxen an sind, kommt das als Ausgabe:
> 0 No sound
+ Device is enabled
> 1 Lautsprecher (High Definition Audio-Gerät)
+ Device is enabled
! This is the default output device
> 2 Digitalaudio (S/PDIF) (High Definition Audio-Gerät)
+ Device is enabled
> 3 Lautsprecher (3- Logitech Wireless Headset)
+ Device is enabled
Alles anzeigen
Wie funktioniert das eig. mit Bass_Init? Ich bin da noch nicht so begabt auf dem Gebiet und suche nur eine Möglichkeit zwischen meinen Wiedergabegeräten hin und her zu schalten^^
Aber danke schonmal für deine Hilfe...