Sound-Ausgabegerät festlegen

Fragen zu Grafik- & Soundproblemen und zur Spieleprogrammierung haben hier ihren Platz.
Benutzeravatar
techniker
Beiträge: 173
Registriert: 27.01.2016 11:08
Wohnort: BY

Sound-Ausgabegerät festlegen

Beitrag von techniker »

Hallo,

Als Haupt-Tonausgabegerät ist das Headset eingestellt.
In MS Teams kann man z.B. ein Zweit-Ausgabegerät einstellen, bei dem der Klingelton bei einem Anruf zusätzlich abgespielt wird.
Das Zweit-Gerät sind z.B. die Lautsprecher im Monitor.

Wie kann ich so etwas in PureBasic realisieren?

D.h. ich möchte festlegen, auf welcher "Soundkarte" (USB-Soundkarte, Audio-Out, HDMI, usw.) ein Audio-File abgespielt werden soll.
Momentan wird einfach nur das Haupt-Ausgabegerät verwendet. Dies ist i.d.R. das Headset.
Da der Benutzer selbiges in der Regel nicht immer trägt, bekommt er akustische Warn-Informationen nicht mit.
Ich muss nun erreichen, dass diese Informationen an ein definiertes Audiogerät gesendet werden.

Betriebssystem ist Windows 10 & 11

Danke :allright:
Never change a running system - Never run a changed system!
(PB 6.20 LTS [x86])
Benutzeravatar
H.Brill
Beiträge: 496
Registriert: 15.10.2004 17:42
Wohnort: 66557 Neunkirchen

Re: Sound-Ausgabegerät festlegen

Beitrag von H.Brill »

vielleicht kann man sowas über das MCI-Interface von Windows regeln ?
Die installierten Geräte stehen in der System.ini Abschnitt [mci].
PB 6.10
Benutzeravatar
Varistor
Beiträge: 22
Registriert: 12.10.2004 21:38
Wohnort: Schwerin

Re: Sound-Ausgabegerät festlegen

Beitrag von Varistor »

MCI ? System.ini ? Wir leben unter Windows 11 (bald 12). Die System.ini ist nur noch zur Zierde da. Aber trotzdem, MCI läuft tatsächlich immer noch und PB bietet ja zahlreiche Abspielmöglichkeiten, wo dann auch ein eigener Regler im Mixer auftaucht. Wie man das allerdings bei mehreren Soundkarten hinbekommt, danach suche ich auch schon längere Zeit.....
Benutzeravatar
Then
Beiträge: 278
Registriert: 06.09.2004 13:26
Wohnort: Siegen

Re: Sound-Ausgabegerät festlegen

Beitrag von Then »

Hallo,

genau das ist nun mein Thema (war grad in der falschen Abteilung)

ich habe eine Art Wecker/Alarm-Ton, welcher abgespielt werden soll. Möglichs auf allen Audioausgabegeräten (USB Headset, Lautsprecher und Monitorlautsprecher (HDMI/DP)) Da manchmal das Headset leer ist oder die Lautsprecher ausgeschaltet werden, gehen dann nur noch die Speaker am Monitor. wie kann man das (möglichst ohne FMOD) realisieren ? MCI ? Oder API ?
PB 6.10LTs / Windows 11 64Bit (i9/32GB/ 1TB-SSD+4TB-HDD/3060GTX12GB) / 2x27" Multitouch

... ich mache dazu keine Aussage, weil ich mich damit selbst belasten könnte !
Benutzeravatar
techniker
Beiträge: 173
Registriert: 27.01.2016 11:08
Wohnort: BY

Re: Sound-Ausgabegerät festlegen

Beitrag von techniker »

Ich bin mittlerweile fündig geworden:
https://www.purebasic.fr/english/viewto ... 38#p588638
Never change a running system - Never run a changed system!
(PB 6.20 LTS [x86])
Benutzeravatar
tft
Beiträge: 650
Registriert: 08.09.2004 20:18
Computerausstattung: GFX 3060 Ti , i7 12700F , 32 GB Ram , 900 GB SSD , TV
Wohnort: Dachsen
Kontaktdaten:

Re: Sound-Ausgabegerät festlegen

Beitrag von tft »

Hallo,

ja ein spannendes Thema. Ich arbeite jetzt wider an meinem Projekt "Driving School Evergarden" und da kommt natürlich auch die Sound frage. Alle Demos und anderer Code sind entweder zu alt oder funktionieren trotzdem nicht. Eine Demo mit einem coolen Equalizer habe ich zum Laufen gebracht. Auch unter 6.10. Aber das Wählen des Ausgangs Device ........

Dabei habe ich garkeine hohen Ansprüche. AudioOutDevice auflisten, Sound Init mit Device Name, Load Sound, Play sound, Stop sound , free sound, IsRunning sound. Es ist schon sehr deprimierend, wenn man etwas nicht selber machen kann.

Der jenige der mir am besten helfen konnte, bekommt ein Banner in Game.
TFT seid 1989 , Turgut Frank Temucin , CH-Dachsen/DE-Berlin/TR-Antalya
Mein Projekt (Driving School Evergarden)
Codes bei (GitHub) Videos von (YouTube)
Treffen via Discord: Einladung

PB 6.10 | W11 | i7 12700F | 32 GB Ram | RTX 3060 Ti | 60 Herz -TV FullHD
ARDUINO Freak | Sprecher | Game Dev. | Geschichten Erzähler :-)
Benutzeravatar
Sicro
Beiträge: 963
Registriert: 11.08.2005 19:08
Kontaktdaten:

Re: Sound-Ausgabegerät festlegen

Beitrag von Sicro »

Bild
Warum OpenSource eine Lizenz haben sollte :: PB-CodeArchiv-Rebirth :: Pleasant-Dark (Syntax-Farbschema) :: RegEx-Engine (kompiliert RegExes zu NFA/DFA)
Manjaro Xfce x64 (Hauptsystem) :: Windows 10 Home (VirtualBox) :: Neueste PureBasic-Version
Benutzeravatar
Then
Beiträge: 278
Registriert: 06.09.2004 13:26
Wohnort: Siegen

Re: Sound-Ausgabegerät festlegen

Beitrag von Then »

Okay, fast gut. Ich möchte aber kein Blub, sondern eine WAV Datei Abspielen. Die rauscht jedoch... Wo kann ich da einstellen, dass alle angeschlossenen Geräte den Sound abspielen ?
PB 6.10LTs / Windows 11 64Bit (i9/32GB/ 1TB-SSD+4TB-HDD/3060GTX12GB) / 2x27" Multitouch

... ich mache dazu keine Aussage, weil ich mich damit selbst belasten könnte !
Benutzeravatar
tft
Beiträge: 650
Registriert: 08.09.2004 20:18
Computerausstattung: GFX 3060 Ti , i7 12700F , 32 GB Ram , 900 GB SSD , TV
Wohnort: Dachsen
Kontaktdaten:

Re: Sound-Ausgabegerät festlegen

Beitrag von tft »

Ein funktionierendes Beispiel würde mich auch interessieren.

Gruss TFT
TFT seid 1989 , Turgut Frank Temucin , CH-Dachsen/DE-Berlin/TR-Antalya
Mein Projekt (Driving School Evergarden)
Codes bei (GitHub) Videos von (YouTube)
Treffen via Discord: Einladung

PB 6.10 | W11 | i7 12700F | 32 GB Ram | RTX 3060 Ti | 60 Herz -TV FullHD
ARDUINO Freak | Sprecher | Game Dev. | Geschichten Erzähler :-)
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Sound-Ausgabegerät festlegen

Beitrag von RSBasic »

Ich hab sowas letztes Jahr gebraucht. Mein PC ist im Arbeitszimmer und mein PC ist auch gleichzeitig mit einem KVM-Switch verbunden, damit ich die Möglichkeit habe, auch im Wohnzimmer auf dem Beamer auf meinen PC zuzugreifen. D.h. Grafikkartenausgang + Tastatur + Maus werden umgeleitet.
Jedenfalls ist es manchmal so, wenn ich den Ausgang zum Wohnzimmer switche, dann muss ich unter Windows den Audio-Ausgabekanal ändern auf den Epson-Beamer, sonst wird der Sound noch im Arbeitszimmer über die PC-Lautsprecher abgespielt. :D
Da das Umswitchen zwischen Wohnzimmer und Arbeitszimmer mit einem automatisierten Befehl auf meiner Macro-Tastatur erfolgt, wollte ich den Ausgabekanal ebenfalls automatisieren.
Zuerst habe ich mit PB + WinAPI versucht, aber das war mir zu aufwendig und es hat irgendwie nicht richtig geklappt.
Deshalb nutze ich folgendes kleine Programm: https://www.nirsoft.net/utils/nircmd.html
Einzeiler in PB zum Switchen des Audio-Ausgabekanals:

Code: Alles auswählen

RunProgram("D:\Programme\nircmd\nircmd.exe", ~"setdefaultsounddevice \"EPSON PJ\" 1", "D:\Programme\nircmd\", 0)
Das wäre eine Alternative, falls du nicht weiter kommst.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Antworten