Почему мой микшер PyGame не воспроизводит звуки?
Мой микшер PyGame в 2.7 не будет работать с опцией звука. Я могу заставить его работать с mixer.music, но не с mixer.sound, с mixer.sound он издает небольшой тикающий шум и затем останавливается. Код:
import pygame
pygame.mixer.init(frequency=22050, size=-16, channels=2, buffer=4096)
song = pygame.mixer.Sound("song.mp3")
pygame.mixer.Sound.play(song)
Нет ошибок, он просто не играет и издает небольшой тикающий шум. На windows 7-x64 кстати.
4 ответа
Обычно Pygame не воспроизводит mp3-файлы. Вы можете проверить, будут ли файлы.wav и.ogg воспроизводиться первыми, чтобы убедиться, что ваш код правильный (в зависимости от того, что вы вставили, кажется, это правильно). Я предлагаю преобразовать ваши звуки mp3 в OGG для Pygame.
Вы только что создали объект под названием песня.
вместо "pygame.mixer.Sound.play(song)" попробуйте это:
song.play ()
Это легко решить, потому что файл вашей песни должен быть загружен как музыка, а не как обычный звук. Следовательно, следующий код заставляет его работать идеально:
import pygame
pygame.mixer.init(frequency=22050, size=-16, channels=2, buffer=4096)
pygame.mixer.music.load("song.mp3")
pygame.mixer.music.play()
Pygame воспроизводит mp3 файлы. У меня была такая же проблема, но я нашел решение:
если вы сохранили свой mp3-файл как "filename.mp3" и сами записали расширение.mp3, то имя файла в функции pygame.mixer.music.load() pygame должно быть записано как "filename.mp3.mp3", потому что python ожидает, что вы добавите.mp3. Иногда.mp3 уже включен в имя файла, если вы сохранили его как таковой.
Поэтому попробуйте это: pygame.mixer.music.load('filename.mp3.mp3')