Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

1

22.09.2009, 09:56

Fange mit DirectX sound an, DirectSound oder gleich XAudio2?

Hi,

meine Frage habe ich ja im Grunde schon im Titel gestellt.
Ich will jetzt mit den Sound Funktionen und Schnittstellen von DirectX anfangen und würde gerne wissen, ob es vernünftig ist gleich XAudio2 zu lernen oder ob sich DirectSound durchaus noch lohnt?!
Ich habe das Buch 3D Spieleprogrammierung und da wird nur auf DirectSound8 eingegangen. Gibt es keine neuere Version, also DirectSound9 oder so?
Und was sind eigentlich die wesentlichsten Unterschiede - auch von der API her, z.B. Namen von Funktionen usw. - zwischen DirectSound und XAudio2?

TrommlBomml

Community-Fossil

Beiträge: 2 117

Wohnort: Berlin

Beruf: Software-Entwickler

  • Private Nachricht senden

2

22.09.2009, 10:14

nimm directX audio, weil afaik directsound/music wie directinput nicht mehr weiterentwickelt wird.

Das Gurke

Community-Fossil

Beiträge: 1 996

Wohnort: Pinneberg

Beruf: Schüler

  • Private Nachricht senden

3

22.09.2009, 10:28

Frag dich:
- Was für Funktionalitäten du beim Sound brauchst? Müssen es 3D Sachen, Effekte etc sein?
- Wenn du einfach nur irgendwie Sound wiedergeben willst, schau dir ruhig mal die WinAPI an. Zumindestens bei XAudio ist der Sound nicht mehr hardwarebeschleunigt, da kann man für "einfache" Sachen auch gleich die WinAPI nehmen.
- Ob du nicht vielleicht doch Hardwarebeschleunigung brauchst? Dann führt afaik an OpenAL kein Weg vorbei.
- Und wenn der Lerneffekt nicht im Vordergrund steht: Schau dir ruhig mal die verschiedenen Audio Frameworks an, damit kommt man teilweise rasend schnell zum Ziel.

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

4

22.09.2009, 14:44

Also mit OpenAL will ich auch noch arbeiten, aber eben auch mit einer Sound API von DirectX.
Allerdings ist der Verlust der Hardwarebeschleunigung von XAudio2 doch schon ziemlich doof.
Wozu hat man denn sonst eine Sound Karte?!
An Funktionalitäten möchte ich eigentlich alles haben, was raus zu holen ist.
Also 3D Sounds, Spezial Effekte, Spektrum usw.

Vielleicht schaue ich mir mal beides an - DirectSound und XAudio2.

Aber noch mal wegen DirectSound: ist die 8. Version die letzte von DirectSound?
Vermutlich ja, weil es von XAudio2 abgelöst wird/ wurde.

5

22.09.2009, 14:53

Ich würde dir spontan zu OpenAl raten, das hat so weit ich weiß, keine nennenswerten Nachteile (nicht wie dieses DX Zeugs, das seit Vista keine Hardwarebeschlunigung mehr hat, oder wie auch immer das war) und es hat auch zahlreiche prominente Benutzer (siehe Wikipedia) schlecht kann es also nicht sein. Oh und es ist natürlich plattformunabhängig :)
Lieber dumm fragen, als dumm bleiben!

6

22.09.2009, 14:58

Wenn dir OpenAl zu umständlich ist, kannst du auch SFML nehmen, das hat einen schönen Wrapper für OpenAl, welcher die Benutzung sehr einfach macht.

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

7

22.09.2009, 15:32

Ich interessiere mich sowieso auch sehr für OpenAL, da mir OpenSource Software und OS-unabhängigkeit grundsätzlich gut gefällt :)

Nur habe ich dazu eine Frage:
Was OpenGL betrifft, wurde diese ja leider - meines Wissens nach - seit DX version 9 mehr oder weniger überholt und wird unter Windows eher selten verwendet.
Wie ist es denn mit OpenAL? Ist das eher führend was Sound-Daten Verarbeitung angeht? Oder ist DX auch hier (zumindest unter Windows) erste Wahl??

Die Frage ist ja auch, wer alles OpenAL unter Windows installiert hat.

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

8

22.09.2009, 15:38

Zitat von »"LukasBanana"«

Was OpenGL betrifft, wurde diese ja leider - meines Wissens nach - seit DX version 9 mehr oder weniger überholt und wird unter Windows eher selten verwendet.


Auch wenn ich persönlich D3D für die bessere API halte muss ich dazu sagen: Das stimmt nicht, OpenGL und Direct3D sind gleich mächtig. D3D ist aus gewissen Gründen nur am Spielesektor atm weiter verbreitet...

Zitat von »"LukasBanana"«

Wie ist es denn mit OpenAL? Ist das eher führend was Sound-Daten Verarbeitung angeht? Oder ist DX auch hier (zumindest unter Windows) erste Wahl??


Auch wenn die Namen etwas andres suggerieren mögen: OpenAL und OpenGL gehören nicht zusammen...

OpenAL wird atm von Creative entwickelt (ja die die die Soundkarten bauen) und z.B. in der Unreal3 Engine eingesetzt. Ich denk mal das zeigt schon dass die API ganz brauchbar ist...

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

9

22.09.2009, 22:21

Ich habe gerade OpenAL unter Linux installiert bzw. neu kompiliert zu einer lib.
Ich musste mit Erschrecken feststellen, dass OpenAL nicht ein einziges Audio Format selbst dekodieren kann und nur unkomprimierte Daten annimmt.
Wie soll man denn dann MP3, OGG oder MIDI Dateien laden?
Die ganzen Dekomprimierer kann man doch unmöglich alle selber schreiben?!

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

10

22.09.2009, 22:22

Natürlich muss man die nicht selber schreiben. Gibt ja genügend fertige Bibliotheken dafür...

http://xiph.org/vorbis/

Werbeanzeige