Ich würde gern das MMSv2 (Mpeg menu System Version 2) über die Fernbedienung bei laufendem VDR starten (über Commands.conf).
Im Prinzip ist das ja kein Problem... aber vorher müßte ich die DXR3-Karte frei geben so wies es das Mplayer-Plugin dies macht. Nun die Frage, gibt es dafür eine relativ einfache Möglichkeit?
releasing DXR3 für MMSv2
- cyberthom
- Geschlossen
-
-
Wenn das geht, dann will ich ein MMSV2-Paket für LinVDR - DXR3
-
Wie macht es das Mplayer-Plugin denn?
LG
Roman -
Das DXr3-Plugin hat eine Routine eingebaut:
void cDxr3Interface::ExternalReleaseDevices()
Diese ist für die Freigabe (im Falle der DXr3) verantwortlich.
Hmm... das heisst, man müßte doch ein Plugin schreiben. Tja, da ich keine Ahnung von Plugin-Schreiben habe wird wohl nichts daraus...
Ich dachte es wäre einfacher, per Script oder so. -
Bisher war mir leider auch nur die Möglichkeit bekannt, den VDR mittels Script zu beenden, um MMS zu starten ...
Allerdings klingt dein Ansatz des Device-releasings seeehhhr interessant!Ob wir da nicht jemanden gewinnen könnten?
Und ginge das dann auch mit ner FF-DVB als Ausgabedevice?
Bisher hatte ich als Anregung nur die Idee das "trayopen-plugin" in seiner Ur-fassung (0.1 - 0.2) zu mißbrauchen, um MMS zu starten ...LG
Roman -
Ich denke, das wäre ein total simples Plugin welches einfach nur die Routine des dxr3-plugins aufruft und dann MMSv2 startet. Nur weiss ich leider nicht wie man das macht. Kann man evtl. auch per Script auf solche Routinen zugreifen?
-
Zitat
Original von cyberthom
die Routine des dxr3-plugins aufruft und dann MMSv2 startet.
Was ist denn bei einer FF-DVB ... die muß doch beim mplayer auch "releast" werden, oder?
Demnach macht das doch das mplayer-plugin, oder?Lg
Roman -
Hallo,
damit das "Primary Device", also dein DXR3-Gerät beim Starten deines Players freigegeben wird, musst du den Playmode deines Players auf "pmExtern_THIS_SHOULD_BE_AVOIDED" setzten. Dies geschieht im Konstruktor deiner Player-Klasse wie folgt:
cMyPlayer::cMyPlayer(void) : cPlayer(pmExtern_THIS_SHOULD_BE_AVOIDED)
{
}Ich nehme an, dass du eine cMyControl-Klasse von cControl abgeleitet hast, wie in der Plugin-Doku beschrieben. Wenn du dann also letztendlich deinen Player startest, mit "cControl::Launch(new cMyControl());", dann wird das Gerät freigegeben.
Beenden, also das Gerät an VDR zurückzugeben, geschieht am einfachsten wenn du das player-Objekt (das nur deine cMyControl-Klasse kennt), löschst.
Gruß
Felix -
Ah Ok ...
Es gibt also einen extra Extern-Playmode, der das Prim.Device für Player, die das Devuce selber brauchen released ... richtig?
Schön und gut soweit, aber wie bringe ich das, ohne C-Kenntnisse, in ein Plugin?
... Oh wenn ich's doch nur könnte ...
Gibts nicht ein Hörbuch "C++ - Einschlafen, Aufwachen, Können" ??
LG
Roman -
Zitat
Original von Uatschitchun
Schön und gut soweit, aber wie bringe ich das, ohne C-Kenntnisse, in ein Plugin?Hmmm... das würde mich auch interessieren
ZitatGibts nicht ein Hörbuch "C++ - Einschlafen, Aufwachen, Können" ??
oh das würde ich mir auch sofort kaufen
-
Hallo,
ZitatGibts nicht ein Hörbuch "C++ - Einschlafen, Aufwachen, Können" ??
Vermutlich nicht, aber es gibt jede Menge Bücher vom Typ "C++ - Aufschlagen, Durcharbeiten, Können".
Aber ich schreibe gerade ein Plugin, um dxr3player zu starten. Das kann ich natürlich auch so gestalten, um auch jeden anderen externen Player starten zu können.
-Felix
-
Hi Felix,
da hört sich aber sehr interessant an, ein Plugin für den dxr3player
Da freue ich mich schon drauf.
Bis dann
Frank -
Zitat
Original von flix
Vermutlich nicht, aber es gibt jede Menge Bücher vom Typ "C++ - Aufschlagen, Durcharbeiten, Können".
Stimmt .. so ein Wälzer habe ich hier ... wenn da nur nicht jemand die Zeit erfunden hätteZitatAber ich schreibe gerade ein Plugin, um dxr3player zu starten. Das kann ich natürlich auch so gestalten, um auch jeden anderen externen Player starten zu können.
Cool ... allerdings wird das Plugin doch dann auch durch eine Auswahl gestartet, oder? D.h. ich wähle eine Datei, welche an Dxr3player übergeben wird oder soll nur der dxr3player starten?
Eine Dateiauswahl bräuchte es für MMS ja gar nicht ...Wenn ich allerdings so überlege - und da spinn ich jetzt mal ein wenig rum - sowas wie ein Starter-Plugin wäre ne geniale Sache ...
Könnte folgende Optionen mitbringen:
* Nur externes Programm starten (ähnlich commands.conf) - mit/ohne device-releasing
* Externes Programm mit Dateiauswahl/-übergabe starten - mit/ohne device-releasingFür Dxr3player käme dann wohl Option 2 mit releasing in Frage, für MMS Option 1 mit releasing und ... z.b. Mame wäre Option 2 ohne releasing (im Falle von Ausgabe über Graka) ...
Das Plugin müßte "lediglich" die Möglichkeit anbieten ein Programm auszuwählen, eine Dateiauswahl (ähnlich mplayer) anzubieten und ggf. das device vorm Start zu releasen ...
Zusammen mit einer Konfig-Datei:CodeProgramm Pfad Auswahldialog Releasing dxr3player /usr/bin/dxr3player true true mms /usr/bin/mms -o dvb false true mame /usr/bin/mame true false
So könnte man Einbinden, was man will ... ggf. auch mit Ausgabemöglichkeit auf dem Primary-Device ... und könnte sogar eine Datei mit übergeben (Vob-Datei, Game-Image, etc. ...)
Ist ne Spinnerei! Also bitte nicht als "Kleiner-Finger-ganze-Hand" Symptom sehen
Letztlich wäre es ja vom Grundgerüst des Plugins ein Ding ... nur das man drei Variablen statt hardcoded Progs nimmt ... oder?
LG
Roman -
Ja, so ähnlich stelle ich mir das auch vor. Nur vorerst ohne Dateiauswahldialog. Und vorerst mit Kommandozeilenparameter statt Konfigurationsdatei.
Dabei wählt man den Hauptmenüeintrag, das Startkommando, ob das Primary Device freigegeben werden soll und ob Tastatur/LIRC/RCU deaktiviert werden sollen.
Das Plugin läuft mit dxr3player auch schon.
-
Super, flix ! Hier ist ein weiterer Anwender, der sich ueber so ein Prograemmle freuen wuerde !
-
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!