Была необходимость поигрывать маленькие mp3 файлы, используя средства Python 2.7 под O.S. Ubuntu. Много перерыл материала.
Первый вариант, который заработал. Здесь использовали библиотеку pygame, которая есть в репозитории, как python-pygame. Смотрите. PyMedia у меня не получилось запустить, также на официальном сайте написанно, что работает с Python 2.3.
Первый вариант, который заработал. Здесь использовали библиотеку pygame, которая есть в репозитории, как python-pygame. Смотрите. PyMedia у меня не получилось запустить, также на официальном сайте написанно, что работает с Python 2.3.
import pygame
#Попытаться проиграть
def play_music(music_file):
#Инициализируе часы.
clock = pygame.time.Clock()
try:
#Загружае файл.
pygame.mixer.music.load(music_file)
print "Music file %s loaded!" % music_file
except pygame.error:
#Ловим ошибки загрузки
print "File %s not found! (%s)" % (music_file, pygame.get_error())
return
#Проигрываем
pygame.mixer.music.play()
#Ожидаем завершение проигрывания
while pygame.mixer.music.get_busy():
#Запускаем задержку - разгрузить процессор.
clock.tick(30)
#Определяе какой файл проигрывать
music_file = "./mp3.mp3"
#music_file = "ChancesAre.mid"
#Устанавливаем параметры Микшера.
freq = 44100 # audio CD quality
bitsize = -16 # unsigned 16 bit
channels = 2 # 1 is mono, 2 is stereo
buffer = 2048 # number of samples (experiment to get right sound)
#Инициализируем микшер.
pygame.mixer.init(freq, bitsize, channels, buffer)
#Устанавливаем грокость - максимум.
pygame.mixer.music.set_volume(1.0)
#Проигрываем музыку.
try:
play_music(music_file)
except KeyboardInterrupt:
# Если пользователь прервёт проигрывание.
#Завершаем проигрывание, как положено.
pygame.mixer.music.fadeout(1000)
pygame.mixer.music.stop()
raise SystemExit
Комментариев нет:
Отправить комментарий