Hallo Theo,
danke für die Blumen

Ob ich die verdient habe, muss sich noch zeigen

@all
Ich bin mit dem MediaStream Skin etwas weiter gekommen, aber leider noch nicht ganz am Ziel. Der MediaStream Skin ist komplizierter aufgebaut, als PlexAeon. Aber ich konnte zumindest einen Teilerfolg verzeichnen, wenn auch nur durch einen Workaround.
Plex beinhaltet ja eigentlich eine DVD Abspielfunktion. Da diese aber nur ungeschützte DVD's abspielt, und nebenbei noch sehr instabil ist, haben die Plex Entwickler diese Funktion per Default über die XML's deaktiviert. Trotzdem ist die ganze Struktur für die Menüfunktionen implementiert. Ich habe diese jetzt mal so umgebogen, dass wir sie für unsere EyeTV Bedürfnisse verwenden können. Anhand der DVD Funktion kann ich dann sicher mit etwas Zeitaufwand nachvollziehen, wie ich eigene EyeTV Einträge generieren kann. Bis es soweit ist, tut es vielleicht dieser Workaround (zumal eine "echte" DVD Funktion noch auf sich warten lässt).
Am Ende des Postings befindet sich wieder ein Archiv mit allen modifizierten Dateien. Statt die Schritte im Einzelnen durchzuführen, reicht es evtl. auch, diese Dateien zu kopieren. Da ich aber nicht dafür garantieren kann, dass die Dateien auf jedem System gleich aussehen, ist das mit Vorsicht zu geniessen. Sollte es so nicht klappen, dann müssen die Modifikationen "zu Fuss" eingebaut werden.So geht das:Sucht euch zunächst ein passendes Hintergrundbild. Dieses sollte im PNG Format vorliegen (ggf. konvertieren). Als optimale Grösse hat sich 720x450 Pixel herausgestellt. Ich habe mal die default.png aus dem PlexAeon Beispiel genommen, um die Schritte hier zu demonstrieren.
Jetzt kommt der knifflige Teil...
Der MediaStream Skin benutzt
3-teilige Hintergrundbilder! Ihr müsst euer Bild jetzt nach dem folgenden Muster zerschneiden:
Der linke Streifen wird normalerweise vom Menü verdeckt. Diesen sieht man nur, wenn der Menüpunkt ausgewählt wurde und das Menü zur Seite gleitet. Der mittlere und rechte Teil wird angezeigt, sobald der Cursor auf dem Menüpunkt steht.
Zum Schneiden habe ich das Programm "Vorschau" benutzt. Das ist nicht sehr komfortabel, ging aber recht gut. Mit einem guten Grafikprogramm ist es sicher leichter. Die Abmessungen für die einzelnen Teile sind:
Links: 144x450, Mitte: 288x450, Rechts: 288x450.
Jeder Teil muss einzeln gespeichert werden. Ich habe die Teile "EyeTVLinks.png", "EyeTVMitte.png" und "EyeTVRechts.png" genannt.
Als nächter Schritt sollte eine Arbeitskopie des MediaStrem Skins angefertigt werden. Geht dazu im "Programme" Ordner auf das Plex.app, klickt mit der rechten Maustaste, und wählt "Paketinhalt zeigen". Im neuen Fenster klickt ihr zum Verzeichnis "Contents/Resources/Plex/skin". Dort gibt es einen Ordner "MediaStream". Diesen Ordner kopiert ihr nach "<Benutzername>/Library/Application Support/Plex/Skin" und gebt ihm einen neuen Namen, z.B. "MediaStreamMod".
Wenn ihr das so macht, dann könnt ihr in Zukunft in den Plex Einstellungen zwischen dem modifizierten und dem originalen Skin umschalten. Sollte beim Mod also etwas schief laufen, dann könnt ihr jederzeit mit dem originalen Skin weiterarbeiten.
Die 3 Grafikdateien werden dann in das Verzeichnis "<Benutzername>/Library/Application Support/Plex/Skin/MediaStreamMod/media" kopiert. Dort liegen auch schon die Standard Hintergründe als .xpr Archiv.
Nun geht es ans Ändern der XML Dateien. Beteiligt sind die Dateien "Home.xml" und "Includes.xml".
Home.xml:Öffnet die Datei in Textedit und sucht nach dem String "DVD". Direkt unterhalb vom ersten gefundenen Eintrag gibt es eine Zeile "
<control type="image">". Ändert die "Texture" Zeile so ab:
<texture>EyeTVMitte.png</texture>Etwa 5 Zeilen darunter folgt eine weitere "Texture" Zeile. Diese ändert ihr so ab:
<texture>EyeTVRechts.png</texture>Sucht dann weiter nach dem String "DVD" bis ihr auf folgenden Block stosst:
- Code: Alles auswählen
<control type="image">
<include>BackgroundLeftImage</include>
<texture>HomeBGDVDLeftLow.png</texture>
</control>
Hier ändert ihr die "Texture" Zeile in: <texture>EyeTVLinks.png</texture>
Falls nicht schon geschehen, könnt ihr nun den EyeTV Memüpunkt gemäss dem Posting von @greendoor einfügen. Ich habe dafür den Code etwas abgeändert, damit der Menüpunkt gleich mit der nächsten Version dieser Geschichte kompatibel ist:
- Code: Alles auswählen
<item id="99">
<description>EyeTV</description>
<label>Fernsehen</label>
<label2>Schaue</label2>
<include>BackgroundVarsEyeTV</include>
<onclick>Plex.ActivateWindow(MyPrograms,EyeTV)</onclick>
<onclick>Skin.SetString(custom,CustomEyeTVfolder)</onclick>
<onclick>SetFocus(92)</onclick>
<visible>true</visible>
</item>
Damit sind die Bilder und der Menüpunkt schon mal eingebunden. Jetzt müssen wir noch dafür sorgen, dass sie auch angezeigt werden.
Includes.xml:Sucht auch hier nach dem String "DVD". Ihr werdet einen Eintrag vorfinden, der in Etwa so aussieht:
- Code: Alles auswählen
<include name="HomeDVDBGVisible">
<visible>Container(300).HasFocus(10) | ![Control.IsVisible(210) | Control.IsVisible(211) | Control.IsVisible(212) | Control.IsVisible(213) | Control.IsVisible(214) | Control.IsVisible(215) | Control.IsVisible(216) | Control.IsVisible(217) | Control.IsVisible(218) | Control.IsVisible(240) | Control.IsVisible(241) | Control.IsVisible(242)]</visible>
</include>
Hier muss der Eintrag <visible>Container(300).HasFocus(10) in <visible>Container(300).HasFocus(
99) geändert werden. Die 99 ist wieder die Item ID, welche ihr in der Home.xml für den EyeTV Menüpunkt vergeben habt.
Beide Dateien müssen nun per "Sichern unter" gespeichert werden. Auch hier muss die Dateiendung auf
.xml geändert werden!
Das Ergebnis:Menüpunkt "Fernsehen" ausgewählt:
Menüpunkt "Fernsehen" geklickt:
Danach beendet sich Plex und EyeTV wird gestartet

lg
Michael