Hintergrundmusik bei Allegro



  • Hi alle zusammen!

    Ich habe ein Problem! Ich versuche schon seit längerem in ein von mir programmiertes Spiel eine Hintergrundmusik einzufügen, die im .wav Format vorliegt.
    Ich lade die Datei erst:

    SAMPLE *musik = load_sample ("hintergrund.wav");
    

    Danach spiele ich es ab:

    play_sample(musik, 128, 128, 1000, 0);
    

    Wenn man verloren oder gewonnen hat, breche ich den Sound auch wieder ab:

    stop_sample(musik);
    

    Sie spielt auch fein los, aber nach ca. 12s hört sie einfach auf zu spielen. Alles andere läuft aber noch fehlerfrei weiter! Auch die kurzen Sounds laufen einwandfrei...
    Ich hab keine Ahnung woran das liegen kann und würde mich sehr über Antworten freuen...
    Danke im Voraus!



  • der letzte Parameter von play_sample gibt doch an, ob das Stück wiederholt abgespielt werden soll. Setz den doch mal auf 1.

    siehe auch:
    http://alleg.sourceforge.net/stabledocs/en/alleg026.html#play_sample

    Oder meintest du, dass dein Stück nicht komplett abgespielt wird?



  • Danke, aber ja, ich meinte, dass das Stück nicht komplett abgespielt wird... An sich kommt es ja, bricht aber dann ab, und das verstehe ich nicht... Vielleicht gibt es auch eine extra Funktion dafür, die Hintergrundmuskiken abspielt und die play_sample funktion ist nur für zwischen sounds gedacht, weil die anderen Sounds funktionieren ja mit der Funktion einwandfrei... Und der letzte Parameter gibt meines Wissens die Widerholungen nach Ende des Stücks an.
    Trotzdem danke für die Antwort!



  • gibts vielleicht ein größelimit? oder ist die datei nicht vollständig?



  • ah ok,

    aber der letzt Parameter ungleich 0 bewirkt, dass die Musik immer wieder abgespielt wird.

    "If `loop' is not zero, the sample will repeat until you call stop_sample()"

    Dann würde ich zunächst einmal testen, ob das Stück selbst problemlos abgespielt werden kann ohne andere Sounds zwischendrin. Laß doch in einem Testprogramm einfach mal

    play_sample(musik, 128, 128, 1000, 1);
    

    laufen, ohne irgendwelche andere Sounds.
    Wird es dann komplett abgespielt? Wenn nicht, probier mal ein anderes WAV-File.



  • Danke für die Antworten!
    @Namenloser324: Also wenn ich die Datei mir einfach mit VLC Media Player anhöre läuft sie ganz normal durch ohne Abbruch oder ähnlichem und von einem Größenlimit weiss ich nichts, aber das halte ich für unwahrscheinlich, weil sie bei meinem Test ohne alles sehr viel weiter gespielt hat, aber trotzdem abgebrochen hat, blos eben später.

    @Quisslich: Ich habe jetzt nochmal die Musik einfach so abspielen lassen, sie hat auch in dem Programm ohne alles wieder abgebrochen (aber zumindest sehr viel später). Und danke für den Tip mit dem letzten Parameter 🙂


Anmelden zum Antworten