Воспроизведение и управление mp3-файлами в Python? - PullRequest
5 голосов
/ 23 апреля 2009

Перво-наперво, я новичок в Python, с типичным C ++ / Java-фоном для объектно-ориентированных вещей.

Я был убежден попробовать Python для этого текущего усилия, над которым я работаю, и пока мне это нравится. Одна проблема, с которой я сталкиваюсь, - это найти хороший mp3-модуль.

Я попробовал TkSnack, который установился и работал без ошибок (если мое аудиоустройство не было занято), но на самом деле оно никогда не могло издавать звук, оно просто ничего не делало ... Я обратился за помощью в онлайн, и был разочарован количеством документации.

Поэтому я решил переключиться. Я попробовал PyMad, потому что он есть и в стандартных репозиториях для Ubuntu. Документов на это было еще меньше, но я мог заставить их играть звук. Единственная проблема заключается в том, что требуется постоянный цикл записи / воспроизведения аудиобуфера. Это делает его особенно проблематичным в управлении воспроизведением (на мой взгляд), потому что мне придется запускать его в отдельном потоке или процессе и каким-то образом контролировать позицию поиска для паузы и тому подобного. Это слишком низкий уровень, почему я использую Python. Мне понравилась простота TkSnack для его простых команд, таких как «mysound.play ()» или «mysound.pause ()», а не для управления циклом.

Я также посмотрел на pyMedia, которая выглядит как самая современная документация, но я не могу установить ее на мою машину. Я получаю ошибку «gcc exited with value 1» или что-то в этом роде при запуске команды «python setup.py build».

Итак, я ищу какие-либо предложения или помощь по одному из этих модулей или совершенно другому, который отличается высоким уровнем и прост в использовании для mp3-файлов (и, предпочтительно, других форматов). Я пытаюсь иметь базовый контроль воспроизведения ( пауза, остановка, пропуск, поиск) и, возможно, со временем я тоже буду транслировать файлы (если я когда-нибудь туда попаду).

РЕДАКТИРОВАТЬ : Мне нравятся привязки Python для Gstreamer, но это кроссплатформенное решение ?? Я забыл упомянуть это как требование. Но я всегда связывал GStreamer с Linux, будет ли это работать на других ОС?

РЕДАКТИРОВАТЬ : Википедия говорит да .

Ответы [ 2 ]

2 голосов
/ 23 апреля 2009

Извините, я не могу помочь вам с PyMad или pyMedia, но у меня есть другие предложения.

Существующие музыкальные проигрыватели, написанные на Python:

Все вышеперечисленное использует привязки Python для мультимедийной среды GStreamer . Документов для привязок мало, но отметьте здесь , здесь , здесь и примеры из исходного дистрибутива здесь .

0 голосов
/ 23 апреля 2009

Я только что имел дело с этим, и из моего исследования я думаю, что ваши лучшие ставки - pyglet и pygame . Это интерфейсные пакеты со встроенной поддержкой аудио / видео.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...