Лучшее решение на python для воспроизведения ВСЕХ видов аудио в Windows (и Linux)?

#python #audio #mp3 #m4a

#python #Аудио #mp3 #m4a

Вопрос:

Я пытаюсь написать несколько сценариев для воспроизведения некоторых из моей музыкальной коллекции с помощью python. Найти модули python, которые будут воспроизводить ogg и mp3, не проблема. Однако у меня возникают повторяющиеся сбои с файлами m4a в формате aac из iTunes (не DRM). аудиооборудование pygame их не поддерживает, поэтому я попробовал pymedia:

 a = pymedia.player.Player()
a.start()
a.startPlayback("myM4a.m4a", format='aac')
  

Я пробовал несколько версий последней строки кода, в том числе опускал аргумент format, менял файлы на mp4 и т. Д. Однако mp3 работает нормально.

pymedia даже утверждает, что поддерживает файлы в кодировке aac, но проект, похоже, все равно был заброшен.

Есть ли хорошее, современное решение для воспроизведения ВСЕХ типов аудио в python? Что используется существующими медиацентрами / проигрывателями python?

Я должен добавить, что я намерен использовать это в первую очередь в Windows, поэтому поддержка библиотеки Windows обязательна, но кроссплатформенность, очевидно, была бы предпочтительнее.

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

1. «ВСЕ типы аудио»? Включая мой формат, который я изобрел сегодня? И этот устаревший формат 23-летней давности?

2. Я понимаю вашу точку зрения, но, учитывая обычную повсеместность модулей python для всего, что вы могли бы пожелать, я бы подумал, что будет приличная всеобъемлющая библиотека аудио, которая воспроизводит широко используемые форматы. Я имею в виду, я могу конвертировать все свои файлы в mp3, если потребуется, но, учитывая все аудиоплееры, у которых нет проблем с воспроизведением m4a, я удивлен уровнем поддержки python для такого рода вещей.

Ответ №1:

Вам следует взглянуть на API GStreamer. Он имеет плагины для многих основных типов аудио, используется многими аудиоплеерами, включая Banshee и Rhythmbox, и может работать на Linux, Windows и Mac. Он имеет привязки Python, а также привязки для многих других языков:

http://gstreamer.freedesktop.org/bindings/

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

1.вот минимальный пример кода, показывающий, как воспроизвести произвольный (аудио / видео) медиафайл с помощью GStreamer.

Ответ №2:

MPlayer воспроизводит большинство известных аудиоформатов, и для этого есть оболочка Python:

http://code.google.com/p/python-mplayer/

И список аудиокодеков, поддерживаемых MPlayer:

http://www.mplayerhq.hu/DOCS/codecs-status.html#ac