Seite 1 von 1

Pygame: Wie Sound nach Programmende stoppen?

Verfasst: Dienstag 15. April 2008, 21:46
von STiGMaTa_ch
Hallo zusammen

Ich habe mir hier - um ein wenig mit wxPython warm zu werden - ein kleines Frame gebastelt welches ein animiertes Gif darstellt sowie einen Hintergrundsound abspielt.

Soweit so gut. Es funktioniert auch alles. Wenn ich nun aber den Quelltext in IDLE öffne, mit F5 starte und irgendwann das Fenster beende wird das Audio File einfach weiter gespielt.

Erst wenn ich in IDLE mixer.quit() eingebe ist ruhe.

Doppelklicke ich die .py Datei (sprich "python datei.py" wird aufgerufen) dann wird auch der Sound sauber beendet.

Nun die Frage. Habe ich in meinem Code etwas vergessen oder liegt es an IDLE, dass der Sound weiterdudelt?

Code: Alles auswählen

#!/usr/bin/env python

import wx
import wx.animate
from pygame import mixer


class LurePanel(wx.Panel):
    def __init__(self, parent, id):
        wx.Panel.__init__(self, parent, id)
        aGifName = "./bg.omg"
        aGif = wx.animate.GIFAnimationCtrl(self, id, aGifName)
        aGif.Play()
        mixer.init()
        mixer.music.load('Sp0000.mp3')
        mixer.music.play(-1)

def main():
    app = wx.PySimpleApp()
    frame = wx.Frame(None, -1, "Lure of Temptress - Chooser", size=(640, 420), style=wx.CAPTION | wx.SYSTEM_MENU | wx.MINIMIZE_BOX | wx.CLOSE_BOX )
    LurePanel(frame, -1)
    frame.Show()
    app.MainLoop()

if __name__ == '__main__':
    main()
Lieber Gruss
STiGMaTa

Re: Pygame: Wie Sound nach Programmende stoppen?

Verfasst: Samstag 19. April 2008, 11:37
von STiGMaTa_ch
STiGMaTa_ch hat geschrieben:Nun die Frage. Habe ich in meinem Code etwas vergessen oder liegt es an IDLE, dass der Sound weiterdudelt?
Es liegt definitiv an IDLE. Ich bin nun zu SciTE gewechselt. Jetzt klappt auch alles so wie es soll.

Lieber Gruss
STiGMaTa