Po pierwsze, jestem początkującym Pythonem, z typowym tłem C++/Java dla obiektów zorientowanych obiektowo.Odtwarzanie i kontrolowanie plików MP3 w Pythonie?
Byłem przekonany, aby wypróbować Python w tym bieżącym przedsięwzięciu, nad którym pracuję i jak dotąd lubię. Jedną z kwestii, którą mam, jest znalezienie dobrego modułu mp3.
Próbowałem TkSnack, który instalował i działał dobrze bez błędów (o ile moje urządzenie audio nie było zajęte), ale nigdy nie mógł wydać dźwięku, po prostu nic nie zrobił ... Poszedłem online po pomoc , i był rozczarowany ilością dokumentacji.
Więc postanowiłem zmienić. Próbowałem PyMad, ponieważ jest on również w standardowych repozytoriach dla Ubuntu. Było na to jeszcze mniej dokumentacji, ale mogłem sprawić, by brzmiał jak dźwięk. Jedynym problemem jest to, że wymaga stałej pętli do zapisu/odtwarzania bufora audio. Sprawia to, że jest szczególnie włochaty w obsłudze kontroli odtwarzania (moim zdaniem), ponieważ musiałbym uruchomić to w oddzielnym wątku lub procesie i jakoś kontrolować pozycję szukania dla pauzy i takie. Jest to zbyt niski poziom, ponieważ używam Pythona. Podobała mi się prostota TkSnacka z powodu łatwych poleceń takich jak "mysound.play()" lub "mysound.pause()" zamiast kontrolowania pętli.
Spojrzałem również na pyMedia, która wygląda na najbardziej aktualną z dokumentacją, ale nie mogę go zainstalować na moim komputerze. Otrzymuję komunikat "gcc exited with value 1" lub coś podobnego podczas uruchamiania polecenia "python setup.py build".
Poszukuję więc sugestii lub pomocy na temat jednego z tych modułów lub zupełnie innego, wysokiego poziomu i łatwego w użyciu dla plików mp3 (a najlepiej także innych formatów) Próbuję uzyskać podstawową kontrolę odtwarzania (pauza, stop, przeskakiwanie, szukanie) i mogę też przesyłać strumieniowo pliki (jeśli kiedykolwiek tam dotrę).
EDIT: Lubię wiązania Pythona dla Gstreamer, ale czy jest to rozwiązanie wieloplatformowe? Zapomniałem wspomnieć o tym jako wymaganiu. Ale zawsze kojarzyłem GStreamera z Linuksem, czy działałoby to na innych systemach operacyjnych?
EDIT: Wikipedia mówi yes.
Podoba mi się pomysł komunikacji z GStreamer, ponieważ już teraz działa większość programów audio/wideo w Linuksie. Ale czy nadal miałoby zastosowanie, jeśli chciałem zrobić to na wielu platformach? – gnomed
Dwa z linków wydają się nie być pakietami Pythona ... – heather