mp3 mit python unter linux öffnen??

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
meister56
User
Beiträge: 57
Registriert: Dienstag 23. Dezember 2008, 22:54

Hi,
ich habe hier das Problem entdeckt und weiß nicht wie ich es lösen soll?!
Zuhause arbeite ich immer mit Linux und nun will ich in ein Programm einbauen das Python (2.6) eine mp3-Datei abspielt. In der Schule benutzen wir immer Windows und da habe ich das hier angewendet:

Code: Alles auswählen

import subprocess
musik_datei='C:\\musik.mp3' 
programm='C:\\Programme\\Windows Media Player\\wmplayer.exe' 
subprocess.Popen((programm, musik_datei))
Zu Hause habe ich aber bemerkt das es unter Linux anders funktionieren muss! Könntet ihr mir verraten wie??
Benutzeravatar
snafu
User
Beiträge: 6740
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Code: Alles auswählen

subprocess.Popen(['mplayer', musik_datei])
MPlayer muss natürlich installiert sein und der Pfad angepasst werden.
meister56
User
Beiträge: 57
Registriert: Dienstag 23. Dezember 2008, 22:54

Ok. Danke für die Hilfe!
problembär

MPlayer ist natürlich ok. Aber der wohl einfachste Konsolen-mp3-Player unter Linux dürfte "mpg123", bzw. "mpg321" sein.

Gruß
meister56
User
Beiträge: 57
Registriert: Dienstag 23. Dezember 2008, 22:54

Eine frage habe ich dann noch:
Ich würde dazu gerne noch bei der wiedergabe einen stopp und weiter Button einbauen, geht das auch irgendwie?
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

meister56 hat geschrieben:Eine frage habe ich dann noch:
Ich würde dazu gerne noch bei der wiedergabe einen stopp und weiter Button einbauen, geht das auch irgendwie?
Na da musst Du Dich mal mit einem GUI-Toolkit (z.B. Tkinter, wxWidgets, Gtk, Qt) befassen. Gibt ja zig Sachen, die sich da anbieten. Schau einfach mal ins wiki, dort gibts bestimmt einige Links und Tipps. Ansonsten natürlich hier in den entsprechenden Unterforen :-)
meister56
User
Beiträge: 57
Registriert: Dienstag 23. Dezember 2008, 22:54

ich meine nicht den Button selbst (das ist ja leicht) ich meinte die funktion dafür?! Ich wüsste nicht wie so etwas gemacht wird?!
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

meister56 hat geschrieben:ich meine nicht den Button selbst (das ist ja leicht) ich meinte die funktion dafür?! Ich wüsste nicht wie so etwas gemacht wird?!
Ach so... na da mußte gucken, ob die Tools nen interaktiven Modus haben, bei dem man so ein Signal senden kann.

Hab mal auf die Schnelle das hier gefunden, vielleicht hilft Dir das:
http://www.mplayerhq.hu/DOCS/man/en/mpl ... %20CONTROL
problembär

Bei mpg321 ungefähr so:

Code: Alles auswählen

import subprocess
musik_datei = '/home/user/musik.mp3'
programm = ("mpg321", "-R", "abc")
p = subprocess.Popen(programm,
                     stdin = subprocess.PIPE,
                     stdout = subprocess.PIPE,
                     stderr = subprocess.PIPE,
                     bufsize = 0,
                     close_fds = True)
p.stdin.write("LOAD " + musik_datei + "\n")
p.stdin.write("PAUSE\n")
MPlayer ist IMHO deutlich schwerer zu steuern.

Gruß
Benutzeravatar
snafu
User
Beiträge: 6740
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Ich bin gestern auf die libplayer gestoßen, die soweit abstrahieren will, dass man mit der gleichen API verschiedene Arten von Playern steuern kann. Es gibt auch Python-Bindings mit einem Beispiel. Vielleicht sagt dir das zu. Ich selbst habe es noch nicht getestet. Auf dem ersten Blick sieht mir die Bedienung noch etwas unpythonisch aus, weil wohl noch stark an C angelehnt. Aber das lässt sich ja notfalls umbauen.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Ein Fall für GStreamer ;)
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Benutzeravatar
snafu
User
Beiträge: 6740
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

PyGame gäb's natürlich auch noch.
meister56
User
Beiträge: 57
Registriert: Dienstag 23. Dezember 2008, 22:54

Da es viele Möglichkeiten gibt könnte mir einer sagen welche am besten funktioniert und stillistisch am besten ist?
Und vielleicht auch ein Beispiel zeigen wie so etwas funktioniert da ich mich weder mit Pygame noch mit den anderen Sachen vertraut gemacht habe.
Danke aber für eure Hilfe, ihr habt mir bereits sehr weiter geholfen.
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Lunar hat Dir doch sogar ein Snippet verlinkt. Schau Dir das doch einfach mal an.
meister56
User
Beiträge: 57
Registriert: Dienstag 23. Dezember 2008, 22:54

gibt es da auch etwas einfacheres?? ich versteh bei diesem Skript fast alles nicht?!
TiKaey
User
Beiträge: 84
Registriert: Montag 24. November 2008, 20:48

Mein 'erstes Mal' mit Musik abspielen mittels mplayer, war dieses hier:
http://www.python-forum.de/post-125567.html#125567
problembär

meister56 hat geschrieben:gibt es da auch etwas einfacheres?? ich versteh bei diesem Skript fast alles nicht?!
Doch, meines, s.o.. Oder meintest Du das?

Gruß
Antworten