with una sound poner playsound play imagen fondo como python audio pygame

una - playsound python



Pygame, los sonidos no se reproducen. (13)

Estoy intentando reproducir archivos de sonido (.wav) con pygame pero cuando lo inicio nunca escucho nada.
Este es el código:

import pygame pygame.init() pygame.mixer.init() sounda= pygame.mixer.Sound("desert_rustle.wav") sounda.play()

También intenté usar canales pero el resultado es el mismo.


5 años de respuesta tardía pero espero poder ayudar a alguien ... :-)

En primer lugar, no necesitas la línea "pygame.init ()". En segundo lugar, haga un bucle y reproduzca el sonido que está dentro, o de lo contrario se iniciará pygame.mixer, y detenga la reproducción de inmediato.

Tengo este código para funcionar bien en mi Raspberry pi con Raspbian OS. Tenga en cuenta que utilicé un bucle while que continúa repitiendo el sonido forver.

import pygame.mixer pygame.mixer.init() sounda = pygame.mixer.Sound("desert_rustle.wav") while True: sounda.play()


Creo que lo que necesitas es pygame.mixer.music:

import pygame.mixer from time import sleep pygame.mixer.init() pygame.mixer.music.load(open("/windows/media/chimes.wav","rb")) pygame.mixer.music.play() while pygame.mixer.music.get_busy(): sleep(1) print "done"


Lo que necesitas hacer es algo como esto:

import pygame import time pygame.init() pygame.mixer.init() sounda= pygame.mixer.Sound("desert_rustle.wav") sounda.play() time.sleep (20)

La razón por la que le dije al programa que durmiera es porque quería una manera de mantenerlo funcionando sin tener que escribir mucho código. Tuve el mismo problema y el sonido no se reproducía porque el programa se cerró inmediatamente después de intentar reproducir la música.

En caso de que desee que el programa haga algo, simplemente escriba todo el código necesario, pero asegúrese de que dure el tiempo suficiente para que el sonido se reproduzca por completo.


Me ha pasado algo así. Tal vez usted tiene el mismo problema? Intenta usar una ruta absoluta:

import pygame pygame.init() pygame.mixer.init() sounda= pygame.mixer.Sound("/absolute_path/desert_rustle.wav") sounda.play()

Donde, obviamente, se reemplaza abslute_path con su ruta absoluta real;)

buena suerte.


No tenía sonido al tocar el mezclador. Sonido, pero comenzó a funcionar después de crear la ventana , este es un ejemplo mínimo, simplemente cambie su nombre de archivo, ejecute y presione la tecla ARRIBA para reproducir:

WAVFILE = ''tom14.wav'' import pygame from pygame import * import sys mixer.pre_init(frequency=44100, size=-16, channels=2, buffer=4096) pygame.init() print pygame.mixer.get_init() screen=pygame.display.set_mode((400,400),0,32) while True: for event in pygame.event.get(): if event.type == QUIT: pygame.quit() sys.exit() if event.type == KEYDOWN: if event.key==K_ESCAPE: pygame.quit() sys.exit() elif event.key==K_UP: s = pygame.mixer.Sound(WAVFILE) ch = s.play() while ch.get_busy(): pygame.time.delay(100) pygame.display.update()


Para mí (en Windows 7, Python 2.7, PyGame 1.9) tengo que eliminar la llamada pygame.init () para que funcione o si pygame.init () se queda para crear al menos una pantalla en pygame.

Mi ejemplo

import time, sys from pygame import mixer # pygame.init() mixer.init() sound = mixer.Sound(sys.argv[1]) sound.play() time.sleep(5)


Sólo inténtalo:

import pygame.mixer from time import sleep pygame.mixer.init() pygame.mixer.music.load(open("/windows/media/chimes.wav","rb")) print "" pygame.mixer.music.play() while pygame.mixer.music.get_busy(): sleep(1) print "done"

Esto debería funcionar. Solo tiene que agregar print "" y el sonido habrá tenido tiempo de cargarse.


Solo intente volver a guardar su archivo wav para asegurarse de que su información de frecuencia. O puedes grabar un sonido para asegurarte de su frecuencia, bits, tamaño y canales. (Utilizo este método para resolver este problema)


Tu código juega desert_rustle.wav bastante bien en mi máquina (Mac OSX 10.5, Python 2.6.4, pygame 1.9.1). ¿Qué versiones del sistema operativo y Python y pygame estás usando? ¿Puede escuchar el .wav Aceptar por otros medios (por ejemplo, open en un terminal de Mac o start en una consola de Windows seguido del nombre de archivo / ruta al archivo .wav ) para garantizar que el archivo no esté dañado? Es difícil depurar su problema específico (que no está en el código que proporciona) sin poder reproducirlo y sin tener todos estos detalles cruciales.


Tuve el mismo problema en Windows 7. En mi caso, no estaba ejecutando el código como Administrador. No me preguntes por qué, pero al abrir una línea de comandos como administrador me la arregló.


sounda.play () devuelve un objeto que es necesario para reproducir el sonido. Con él también puedes averiguar si el sonido todavía se está reproduciendo:

channela = sounda.play() while channela.get_busy(): pygame.time.delay(100)


import pygame pygame.init() sound = pygame.mixer.Sound("desert_rustle.wav") pygame.mixer.Sound.play(sound)

Esto funcionará en python 3


import pygame, time pygame.mixer.init() pygame.init() sounda= pygame.mixer.Sound("beep.wav") sounda.play()

pygame.init() va después de mixer.init() . Funciono para mi