Laden...

DirectSound Stream abspielen

Erstellt von Maddinel vor 19 Jahren Letzter Beitrag vor 19 Jahren 2.509 Views
Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 19 Jahren
DirectSound Stream abspielen

Hi ihr,
in DirectSound SecondaryBuffer gibt es ja auch die Möglichkeit einen System.IO.Stream zu übergeben.
Kann mir jemamnd mal ein Minibeispiel geben in dem ein Stream erzeugt und übergeben wird zum abspielen?

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

C
61 Beiträge seit 2004
vor 19 Jahren

FileStream fs = new FileStream(@"C:\test.mp3", FileMode.Open);

So übergibst du den Stream an den SecondaryBuffer:


SecondaryBuffer sb = new SecondaryBuffer(fs, myDevice);

Ich hoffe, dass ich dir helfen konnte 🙂

P
939 Beiträge seit 2003
vor 19 Jahren

Ich glaube DirectSound kann keine Mp3s abspielen. Nur Wave-Dateien mit PCM-Audiodaten. Kann mich aber auch irren.

Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 19 Jahren

Danke sehr, der Code war richtig, aber leider hat Pulpapex recht, mp3 gehen nicht. Wie kann ich denn mit DirectX Musik abspielen, außer mit AudioVideoPlayback ?

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

B
57 Beiträge seit 2004
vor 19 Jahren

Auch wenn ich mich in die Gefahr begebe mich zu täuschen: Gar nicht.

MP3s können nur über AudioVideoPlayback abgespielt werden. Wenn dir da die Lösungen von Managed DirectX nicht reichen, musst du dir wohl oder übel eine andere API suchen oder selbst versuchen was zu schreiben (z.B. einen eigenen Wrapper um die unmanaged-Version von DirectAudio).

Ich hab mich damit auch gerade etwas beschäftigt, bin aber der Meinung dass für die Hintergrundmusik das AVPlayback wohl reichen wird und für Soundeffekte das DirectSound, habe aber gerade mit der Musik auch nichts besonderes vor. Wer das hat muss sich wie gesagt was anderes "beschaffen".