Перво-наперво, я новичок в 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, будет ли это работать на других ОС?
РЕДАКТИРОВАТЬ : Википедия говорит да .