Playlist für Hintergrundmusik
-
Ich möchte gern meine Hintergrundmusik fragmentieren und damit erreichen, dass ich sie modular hintereinanderfriemeln kann.
Nun ist die frage, wie ich dieses am günstigsten tue.
Hab mir neulich mal spontan audiere gezogen. Dieses ist laut Entwickler "Braindead easy" - was auch stimmt.Nun ist die Frage, ob ich hiermit etwas anfangen kann..
Was ich benötige ist eine Möglichkeit, regelmäßig zu prüfen, ob mein Stück noch spielt und anschließend gleich das nächste dranzuhängen, ohne daß man irgendetwas merkt.
Wahrscheinlich muss ich hier einen Thread aufmachen der die Playlist einfach nur von vorn nach hinten abspielt und einen der sie entsprechend des Spielgeschehens abändert..?
Gibts da schon was das ich nutzen kann??
-
Hallo,
ist denn DirectX Audio nichts für dich mit seinen Segmenten?
Die Segmente sind doch genau dafür gedacht.
-
Ja, nur wurde sich bei uns darauf geeinigt, "as portable as possible" zu sein und DirectX ist glaub ich damit aus dem Rennen, zumal ich mich in dieses Thema erst einlesen müsste.
-
Der Artikel beschreibt, wie man mit OpenAL Sound "streamen" kann:
http://www.devmaster.net/articles/openal-tutorials/lesson8.phpDu kannst dann einfach, wenn die eine Datei zu Ende ist, den Buffer mit der nächsten Datei befüllen.
-
wenn du das streamst musst du aber darauf achten, dass dein buffer möglichst groß ist... aber nicht zu groß, da die latenz sonst zu hoch wäre.
eventuell wäre es besser, den nächsten teil schon einzuladen, kurz bevor der aktuelle teil fertig ist, da du dadurch einen kleineren buffer und somit geringere latenz erreichen könntest.
kommt halt auf den zweck an, und darauf, ob die musik interaktiv sein soll, sich also an das spiel anpassen soll.....
-
loki1985 schrieb:
kommt halt auf den zweck an, und darauf, ob die musik interaktiv sein soll, sich also an das spiel anpassen soll.....
So stellt sich unser Musiker das vor- und ich muss es ausbaden..
-
DocJunioR schrieb:
Wahrscheinlich muss ich hier einen Thread aufmachen der die Playlist einfach nur von vorn nach hinten abspielt und einen der sie entsprechend des Spielgeschehens abändert..?
Eigentlich brauchst Du gar keine Threads.
Wenn Du 'ne Möglichkeit drin hast, bei lahmen Rendering Frames zu droppen, kannst Du das Nachfüllen ja in der Hauptschleife machen.
Nimmst Dir 'nen Ringbuffer, und kopierst da Deine Stücke entsprechend rein.
Selbst das Frame-Dropping kannst Du Dir sparen, viele kommerzielle Titel pusten nur noch Mist durch die Boxen, wenn die Framerate < 10 fps wird.
-
und das heißt, dass ich dann auch nicht besser sein muss?

naja, wo du recht hast..