2012-04-08 15 views
0

Ich verwende den folgenden Code, um einen Song mit Pygame-Bibliothek in Python abzuspielen. Es spielt den Song und ich kann den Sound hören, wenn ich direkt auf meine Python-Datei klicke. Aber wenn ich mein Programm mit Python (Kommandozeile) oder Python (GUI) starte, kann ich den Sound nicht hören. Ich habe auf Python 2.6 und 2.7 überprüft. Ich benutze Windows 7 OS.kann den Sound von Pygame nicht hören

Mein Code:

import pygame,time,sys 

pygame.init() 

pygame.mixer.init(frequency=22050, size=-16, channels=2, buffer=4096) 

print "Mixer settings", pygame.mixer.get_init() 

print "Mixer channels", pygame.mixer.get_num_channels() 

pygame.mixer.music.set_volume(1.0) 

pygame.mixer.music.load("2.mp3") 

while 1: 

    selection = raw_input() 

    if selection == "play": 

     print "Playing" 

     pygame.mixer.music.play() 

    elif selection == "rewind": 

     pygame.mixer.music.rewind() 

    elif selection == "pause": 

     pygame.mixer.music.pause() 

    elif selection == "stop": 

     pygame.mixer.music.stop() 

    elif selection == "queue": 

     inputqueue = raw_input() 

     pygame.mixer.music.queue(inputqueue) 

    else: 

     print "invalid selection" 

     sys.stdout.flush() 

Antwort

1

Sie benötigen einen pygame Schleife zu machen, so dass Sie die Musik hören können. Sie sollten http://www.pygame.org/docs/ref/key.html den Schlüssel Bibliothek verwenden, um den Eingang

import pygame,time,sys 

#pygame.init() 
pygame.mixer.init(frequency=22050, size=-16, channels=2, buffer=4096) 
print "Mixer settings", pygame.mixer.get_init() 
print "Mixer channels", pygame.mixer.get_num_channels() 
pygame.mixer.music.set_volume(1.0) 
pygame.mixer.music.load("2.mp3") 
pygame.mixer.music.play() 

clock = pygame.time.Clock() 
while pygame.mixer.music.get_busy(): 
    # check if playback has finished 
    clock.tick(30) 
+0

Es funktionierte nach dem Entfernen „pygame.init()“ Linie zu bekommen. – chom

Verwandte Themen