Sound-Ausgabegerät festlegen

Fragen zu Grafik- & Soundproblemen und zur Spieleprogrammierung haben hier ihren Platz.
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 »

Das ist aber nur eine generelle Art den ausgab Channel im System zu wechseln. Ich brauche da etwas anderes. Einen weiteren Channel, der verwendet werden kann.
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
Varistor
Beiträge: 22
Registriert: 12.10.2004 21:38
Wohnort: Schwerin

Re: Sound-Ausgabegerät festlegen

Beitrag von Varistor »

Ja, Nirsoft wollte ich schon vorschlagen. Was der Mann alles herausbekommt....
Jedenfalls scheint man auch in anderen Sprachen nicht wirklich eine Lösung für unser aller Problem hier zu haben, so das man
das in PB umsetzen könnte. :|
Benutzeravatar
Sicro
Beiträge: 963
Registriert: 11.08.2005 19:08
Kontaktdaten:

Re: Sound-Ausgabegerät festlegen

Beitrag von Sicro »

Then hat geschrieben: 06.06.2024 11:16 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 ?
Lass uns erst einmal ausprobieren, ob Blub auf mehreren Geräten gleichzeitig abgespielt wird.

Ich habe den Code mal angepasst: PB-CodeArchiv-Rebirth/Sound/AudioIN_OUT[Win]/Example_Simple_Playback.pb
Falls dich interessiert, was genau geändert wurde: Commit

Beachte Kommentar:

Code: Alles auswählen

; #### Open output-device
Main\AudioOut = AudioOut::Initialize(0, #Samplerate, 1, 8)
Main\AudioOut2 = AudioOut::Initialize(1, #Samplerate, 1, 8)
; Erster Parameter von Initialize() auf die IDs der gewünschten Geräte anpassen.
Um die IDs deiner gewünschten Geräte herauszufinden, schaue dir diesen Code-Bereich an:

Code: Alles auswählen

Define deviceID
ForEach AudioOut::Device()
  PrintN("DeviceID " + Str(deviceID) + ": " + PeekS(AudioOut::@Device()\szPname))
  deviceID + 1
Next
Wenn es keine PureBasic-Lösung sein muss, habe ich das hier noch auf die Schnelle gefunden:
https://answers.microsoft.com/en-us/windows/forum/all/output-audio-on-multiple-devices/bf67c2e8-81e3-49e1-8c96-6282540c1e0b
Zuletzt geändert von Sicro am 09.06.2024 22:52, insgesamt 1-mal geändert.
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
Varistor
Beiträge: 22
Registriert: 12.10.2004 21:38
Wohnort: Schwerin

Re: Sound-Ausgabegerät festlegen

Beitrag von Varistor »

Sehr interessant, Sicro. Also bei mir ist es so, dass immer ALLE Geräte den entsprechenden Sound ausgeben. (Getestet unter Win 8.1 und 11)
Ob ich das nun mal irgenwie wo eingestellt habe ,oder es Glückssache ist, bleibt mir ein Rätsel. Ich hätte daher eher das Problem, wie man es NUR auf einzelnen Geräten abschalten bzw. hörbar machen kann. Na ja, hat man mal wieder was zum probieren und testen.....
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 »

Es funktioniert ... wie geil ist das denn. 1000 Mal danke. Jetzt braucht es nur noch bei einem Ogg funktionieren.

Ich habe jetzt mal rum-experimentiert. W11 PB 610. Es macht genau das, was es soll. Es wird auch nicht exklusive ausgegeben, sondern alles, was auf dem Chanelle ausgegeben wird funktioniert.
:bounce:
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
Then
Beiträge: 278
Registriert: 06.09.2004 13:26
Wohnort: Siegen

Re: Sound-Ausgabegerät festlegen

Beitrag von Then »

@tft: Lässt du uns an deinem Erfolg teilhaben ? :D Hast du ne WAV Datei abspielen können ??
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 !
DarkDragon
Beiträge: 6291
Registriert: 29.08.2004 08:37
Computerausstattung: Hoffentlich bald keine mehr
Kontaktdaten:

Re: Sound-Ausgabegerät festlegen

Beitrag von DarkDragon »

PureBasic verwendet doch miniaudio in der Sound library. Die funktionen kann man auch selbst adressieren:

https://www.purebasic.fr/english/viewtopic.php?p=621757
When initializing the device you first need to configure it. The device configuration allows you to specify things like the format of the data delivered via the callback, the size of the internal buffer and the ID of the device you want to emit or capture audio from.
https://miniaud.io/docs/manual/index.html
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Antworten