Audio-Ausgabegerät wählen

  • Nabend.

    Mir gehts um folgendes.
    Hab nen kleines Audioboard mit mehreren Sounds gemacht, für ein paar Freunde zum Spaß.

    Nun sind wir oft im Teamspeak und da würden wir gerne mit einem Musik-Bot die Sounds von dem
    kleinen Programm im TS abspielen.

    Hab auch schon Virtual Audio Cable und der Bot ist auch schon eingestellt.
    Nur das Programm is das Problem...

    Bei VLC Player oder Winamp z.B. kann man ja als Ausgabegerät Line 2 (bei Virtual Audio Cable) auswählen.

    Deshalb wollte ich fragen, ob man mit AutoIt auch eine Art Ausgabegeräte-Auswahl machen kann.

    Also dass man in ner Liste, oder nem Dropdown die einzelnen Geräte auswählen kann,
    so dass die Sounds dann z.B. über Line 2 gesendet werden, so dass man sie im TS über den Musik-Bot hören kann.

    MfG
    Commander

  • Vielen Dank Chess, ich schaus mir sofort mal an :)

    Edit:
    Wow... Das is ja ne recht komplexe UDF.
    Hab mir mal die Hilfe dazu angeschaut, werde aber daraus nicht wirklich schlau.

    Ich brauche eigl. nur 2 Funktionen.
    1. Alle Ausgabegeräte auflisten, am besten im array.
    2. Ausgabegerät für das Programm auswählen, bzw. setzen.

    Zweiteres geht glaube ich mit _BASS_SetDevice($device).
    Aber da ja jeder andere Ausgabegeräte in der Liste hat kann ich nicht einfach eine fixe Nummer angeben,
    deshalb sollte man das Ausgabegerät (1) per Dropdown auswählen können.

    Wäre super, wenn mir da jemand ein paar Tipp geben könnte.

    Einmal editiert, zuletzt von Commander21 (28. Dezember 2013 um 15:40)

  • Die Antwort lautet _Bass_GetDeviceInfo. ^^

    [autoit]


    #include <Bass.au3>

    [/autoit][autoit][/autoit][autoit]

    _Bass_Startup()

    [/autoit][autoit][/autoit][autoit]

    Local $iIndex = 0

    [/autoit][autoit][/autoit][autoit]

    While True
    $vTemp = _Bass_GetDeviceInfo($iIndex)
    If $vTemp = 0 Then ExitLoop
    ConsoleWrite("Device " & $iIndex & ": " & $vTemp[0] & @CRLF)
    $iIndex += 1
    WEnd

    [/autoit][autoit][/autoit][autoit]

    _Bass_Free()

    [/autoit]

    Natürlich dann noch dementsprechend aufbereiten.

    lg

  • Vielen Dank,
    Funktioniert soweit gut, auch wenns noch Probleme mit dem weiteren Script gibt, aber die werd ich auch noch in den Griff bekommen :)