Hello an alle
ist es möglich ein applikation in python gui zu embedden?
zum beispiel VLC oder Mplayer einbauen und mit python steuern?
beziehungsweise python soll eher wie fernshen remote control funktion ubernehmen und folgender param übergeben mms://stream.n-tv.de/ntvlive an VLC/Mplayer
wenn ja, welche wäre eher geeignet dafür?
GTK
TKinter
wxGlade
Kann mir da jemand weiter helfen?
gibt es schon so was als demo?
mfg
reverse
VLC oder Mplayer einbauen und mit python steuern
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Ja, damit.reverse hat geschrieben:ist es möglich ein applikation in python gui zu embedden?
zum beispiel VLC oder Mplayer einbauen und mit python steuern?
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Nein, aber wenn du Fragen hast oder Patches kann ich sie unter Umständen in die Datei einchecken.reverse hat geschrieben:Gibt es documentation oder mehr info dazu,
Das heißst wohl, dass dein Python-Interpreter die Datei nicht finden kann. Du musst natürlich den Pfad so angeben, dass sie gefunden werden kann - ist aber nicht mein Fehler, da kann vlcoperator.py auch nichts dafür.reverse hat geschrieben:ich erhalte error meldung?
C:\Python24\pythonw: can't open file 'vlcoperator.py': [Errno 2] No such file or directory
>Exit code: 2
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Ich habe vlc in c:\VLC installiert.Das heißst wohl, dass dein Python-Interpreter die Datei nicht finden kann. Du musst natürlich den Pfad so angeben, dass sie gefunden werden kann - ist aber nicht mein Fehler, da kann vlcoperator.py auch nichts dafür.
beim location hab versucht absoultes pfad eingegeben aber leider erhalte ich immer noch error meldung.
Code: Alles auswählen
def discover_executable():
"""Searches the VideoLAN CLient executable"""
try:
#import _winreg
#uninstall_key = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE,
# r'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\VLC media player')
#location = _winreg.QueryValueEx(uninstall_key, 'DisplayIcon')[0]
location = 'c:\VLC'
except ImportError, e:
# a non Windows-OS, much easier
location = 'vlc'
return location
File "vlcoperator.py", line 67, in ?
vlco = VLCOperator(discover_executable())
File "vlcoperator.py", line 15, in __init__
subprocess.Popen(command, shell=False)
File "C:\Python24\lib\subprocess.py", line 543, in __init__
errread, errwrite)
File "C:\Python24\lib\subprocess.py", line 706, in _execute_child
startupinfo)
WindowsError: [Errno 5] Zugriff verweigert
-
- User
- Beiträge: 51
- Registriert: Samstag 7. Oktober 2006, 15:13
Es gibt jetzt 2 Möglichkeitenreverse hat geschrieben: Ich habe vlc in c:\VLC installiert.
beim location hab versucht absoultes pfad eingegeben aber leider erhalte ich immer noch error meldung.
Code: Alles auswählen
def discover_executable(): """Searches the VideoLAN CLient executable""" try: #import _winreg #uninstall_key = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, # r'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\VLC media player') #location = _winreg.QueryValueEx(uninstall_key, 'DisplayIcon')[0] location = 'c:\VLC' except ImportError, e: # a non Windows-OS, much easier location = 'vlc' return location
1) Programme werden unter Windows jetzt als Ordner getarnt
2) Programme haben keine .exe Endung mehr
Wie wärs den KOMPLETTEN Pfad anzugeben?
In der Art: C:\VLC\vlc.exe ...
mit location = 'C:\VLC\vlc.exe'
immer noch error
WindowsError: [Errno 123] Die Syntax für den Dateinamen, Verzeichnisnamen oder die Datenträgerbezeichnung ist falsch
schon einbisschen komisch...den pfad ist absolut richtig
immer noch error
WindowsError: [Errno 123] Die Syntax für den Dateinamen, Verzeichnisnamen oder die Datenträgerbezeichnung ist falsch
schon einbisschen komisch...den pfad ist absolut richtig
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Du musst entwederreverse hat geschrieben:mit location = 'C:\VLC\vlc.exe'
Code: Alles auswählen
location = r'C:\VLC\vlc.exe'
Code: Alles auswählen
location = 'C:\\VLC\\vlc.exe'
Code: Alles auswählen
location = 'C:/VLC/vlc.exe'
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
bin gerade beim lesen vom python bindings
http://wiki.videolan.org/PythonBinding
http://wiki.videolan.org/PythonBinding
Win32 initialization
If the vlc module was not compiled with the exact same prefix as the VLC installation (e.g. c:\\Program Files\\Videolan), then it cannot find itself the installation directory (stored in the registry Software\VideoLAN\VLC\InstallDir), and the MediaControl instanciation will fail with a message like "Cannot find interface plugins".
The workaround consists in changing directory to the VLC installation directory before instanciating the MediaControl object.
def get_registry_value (self, subkey, name):
import _winreg
value = None
for hkey in _winreg.HKEY_LOCAL_MACHINE, _winreg.HKEY_CURRENT_USER:
try:
reg = _winreg.OpenKey(hkey, subkey)
value, type_id = _winreg.QueryValueEx(reg, name)
_winreg.CloseKey(reg)
except _winreg.error:
pass
return value
vlcpath=get_registry_value('Software\\VideoLAN\\VLC','InstallDir')
if vlcpath is None:
print "Cannot locate VLC installation directory"
else:
os.chdir(vlcpath)
mc=vlc.MediaControl()
Du sollst doch nicht den Pfad im Script ändern! Leonidas meinte das du python den Pafd des Scripts schon geben musst.reverse hat geschrieben:Ich habe vlc in c:\VLC installiert.Das heißst wohl, dass dein Python-Interpreter die Datei nicht finden kann. Du musst natürlich den Pfad so angeben, dass sie gefunden werden kann - ist aber nicht mein Fehler, da kann vlcoperator.py auch nichts dafür.
beim location hab versucht absoultes pfad eingegeben aber leider erhalte ich immer noch error meldung.
Also in Verzeichnis von vlcoperator.py wechseln und dann "python vlcoperator.py" ausführen.
Oder, falls der Pfad von Python nicht in der ``path`` Umgebungsvariablen von Windows ist, muss du dann stattdessen ins Python verzeichne wechseln und dann den kompletten Pfad mit scriptname an python übergeben:
Z.B.:
Code: Alles auswählen
c:\> cd python
c:\python> python "c:\mein pfad zu dem script\vlcoperator.py"
erhalte immer noch error meldung obwohl alle meine programmen (virus/utorrent/firewall) nicht am laufen sind.c:\> cd python
c:\python> python "c:\mein pfad zu dem script\vlcoperator.py"
ist das ein socket error??urllib.urlopen('http://localhost:8080/?control=play&item=%s' % elements[-1])
IndexError: list index out of range
vielleicht mal grundsaztliches...was macht den unterschied?
vlcoperator.py zu executieren aus editor (scite) oder durch
console (cd python)?
mfg
reverse
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Nein, das ist ein IndexError, steht ja dran.reverse hat geschrieben:ist das ein socket error??urllib.urlopen('http://localhost:8080/?control=play&item=%s' % elements[-1])
IndexError: list index out of range
Da scheint wohl was am Regex-Code kaputt zu sein. VIelleicht hat VLC den HTML-Code etwas verändert, so dass die Regex ins leere geht. Dummerweise hat VLC kein gescheites Interface, über das man zugreifen könnte. So ist das nunmal ziemlich fragil. Aber über telnet wird die Funktionalität leider nicht bereitgestellt.
Wäre am besten, wenn man VLC über DBus steuern könnte, aber das gibt es unter Windows nicht.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Ich möchte mich herzlich bei euch alle, besonders
Leonidas bedanken für die tolle unterstützung und feedbacks!
sorry, wenn ich einbisschen auf die wecker gehe .....
na, ja es ist erst seit paar wochen dass ich mit python beschäftige.
hey Leonidas was IndexError betrifft..muss ich damit abfinden
oder gibt es doch ein hack lösung?
mfg
reverse
Leonidas bedanken für die tolle unterstützung und feedbacks!
sorry, wenn ich einbisschen auf die wecker gehe .....
na, ja es ist erst seit paar wochen dass ich mit python beschäftige.
hey Leonidas was IndexError betrifft..muss ich damit abfinden
oder gibt es doch ein hack lösung?
mfg
reverse
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Du kannst natürlich die Regex anpassen - ich habe die wenn ich mich richtig erinnere, auch nicht selbst geschrieben.reverse hat geschrieben:hey Leonidas was IndexError betrifft..muss ich damit abfinden
oder gibt es doch ein hack lösung?
Eine Möglichkeit wäre auch, BeautifulSoup zu nehmen, aber dann hat man zusätzliche Abhängigkeiten, was auch nicht optimal ist.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Richtig - leider bietet das Konsoleninterface (zumindest damals, als vlcoperator programmiert wurde) nicht die benötigten Features.PmanX hat geschrieben:http://wiki.videolan.org/Console
Genau das wird ja verwendet - leider, mangels Alternativen.PmanX hat geschrieben:http://wiki.videolan.org/Web_Interface
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice