пятница, 6 апреля 2012 г.

Поигрывания mp3, audio используя python( pygame )

Была необходимость поигрывать маленькие mp3 файлы, используя средства Python 2.7 под O.S. Ubuntu. Много перерыл материала.
Первый вариант, который заработал. Здесь использовали библиотеку 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


Комментариев нет:

Отправить комментарий