2010-11-28 8 views

Antwort

4

Versuchen OpenAL, FMOD oder SDL_mixer. Die Auswahl ist breit.

+1

Ich würde OpenAL verwenden, obwohl SDL_Mixer auch gut ist. Ich bin mir nicht bewusst, dass FMOD plattformübergreifend ist. OpenAL kann auch ogg-vorbis-Dateien abspielen, so dass es praktisch ist. Nicht sicher, ob es eine kleine Erweiterung lib oder nicht benötigt. – Bojangles

+0

jemand hat ein Codebeispiel für mich? – goerdy

+0

@JamWaffles: FMOD ist Cross-Plattform, fürchte dich nicht ... –

3
std::cout << "\a\a\a\a\a\a\a\a"; 

)))

+0

hey, shuld eine wav oder mp3-Datei oder so etw ^^ – goerdy

+2

+1 für Portabilität:) –

0

"Kompatibel zu allen Plattformen" ist ein bisschen eine große Herausforderung. "Alle Plattformen" beinhalten schließlich den Controller in Ihrem Auto, den Regler in einem Atomkraftwerk und den Router in Ihrem Netzwerk.

Wenn Sie "alle Desktop-Plattformen" meinen, haben Sie vielleicht ein bisschen mehr Glück. Während es unmöglich ist, in 100% C++ Standards zu produzieren, gibt es Bibliotheken, die verfügbar sind. Ich glaube jedoch nicht, dass Sie selbst "alle Plattformen" bekommen werden. Sind Sie bereit, sich für die "gängigsten Plattformen" zu entscheiden?

+0

yea sry es ist ein bisschen spät ^^ am häufigsten klingt gut ^^ sollte Linux sein und kompatibel zu gewinnen vergiss "alle Plattformen" – goerdy

+1

Hat Apple nicht mehr Marktanteile als Linux? :) – Kos

+0

@Kos - MacOS X basierte auf BSD, also ist es sowieso ein Unix.Linux ist wahrscheinlich ein bisschen populärer, wenn man Server und verschiedene Embedded-Gizmos mit einbezieht, aber - nun ja, manche werden sich beschweren, wenn all ihre Racker voller Server anfangen, auf einmal verschiedene Musikstücke zu spielen. Sie benötigen auch eine Netzwerk-API, um eine synchronisierte Leistung einzurichten. – Steve314

2

Mein Vorschlag ist mit OpenAL (3D Cross-Plattform-Audio API)

Es ist ziemlich einfach zu erlernen und bedeutete einen ähnlichen Fluss der Programmierung als OpenGl zu gehen. Es ist kostenlos und hat verschiedene Erweiterungen, um Soundkarten zu nutzen. OpenAl hat eine Bibliothek, die dem OpenGl Utility Toolkit (GLUT) ähnelt, das Freealut genannt wird. Es macht die Dinge noch einfacher.

Dies könnte ein guter Ort, um zu beginnen: http://www.devmaster.net/articles/openal/

Einige der Funktionen in diesem Code sind veraltet, aber die Dokumentation zu lesen, werden Sie in der Lage sein, es zu aktualisieren.

Das devmaster Tutorial lehrt Sie auch, wie ogg vorbis (lizenzfrei) Dateien in den Speicher geladen und abgespielt werden können. Sie müssen libvorbis und libogg herunterladen und erstellen, aber es gibt gute Dokumentation und, falls Sie Visual Studio verwenden, bereits Lösungen.

Die Tatsache, dass Creative Labs (größter Hersteller von Soundkarten) maßgeblich zum Projekt beiträgt, ist ein großer Pluspunkt. Hardware wird nicht ignoriert.

Letzte Sache, denken Sie daran, das OpenAl SDK herunterzuladen und eine Verknüpfung zu den richtigen Bibliotheken und Include-Verzeichnisse. Es gibt immer eine Menge Leute, die nach bestimmten Dateien fragen, die darin gespeichert sind.

Verwandte Themen