Hallo, also ich wollte fragen, ob es in Kodi eine Möglichkeit gibt, sich anzeigen zu lassen, wie oft man ein Video/Film schon gesehen hat. Ich meine jetzt nicht die Anzeige, ob ein Film schon mal gesehen wurde, sondern einen richtigen Zähler.
Ich habe auch schon selbst danach gesucht, aber nirgends was gefunden. Anscheinend bin ich der einzige der sowas vermisst
Wäre nett wenn mir da jemand helfen könnte. Ich hoffe, wenn es das geben sollte, dass es nicht abhängig vom Skin ist.
"Gesehen Zähler"?
-
CreatorX -
7. Oktober 2017 um 15:08 -
Unerledigt
-
-
wüsste etz grad kein Skin der das von Haus aus anzeigt, ev. Kennt wer anders grad einen.
Ansonsten: denke Dieses Infolabel ist warscheinlich was Du suchst ListItem.PlayCount | Playcount of Video in a container
-
-
Wäre super wenn es das ist.
Als jemand der absolut keine Ahnung von der Materie hat, muss ich leider fragen, wo genau ich das einfügen muss, sorry -
in der .xml der View / Ansicht in der Du das haben möchtest. Dafür musst Du aber an die Skinfiles ran. K.a. ob Du Dir das aufbürden möchtest.
-
-
Label2 gibt im Sortiermodus Zähler bei Filmen und Episoden in jedem Skin der eine "auf Label2 basierte Listenansicht" enthält doch die Info aus.
Man hat dann zwar keine Alphabetische Sortierung mehr, wäre aber eine Alternative.Die "Einfache Liste" sollte das in fast jedem Skin können mit dieser Sortierung.
Grüße
-
-
-
Nur das die Titelsortierung dann halt Flöten geht - kommt drauf an für was man es braucht.
Das ist auch mit ein Hauptproblem in Kodi und Listen - unter diesen Infos des Bildes noch eine Sublabel Zeile für Zusatzinfos ist der echte Horror wenn man
es noch abhängig macht von der Sortierung.Ich hab da genervt aufgegeben irgendwann;)..
Mal als Beispiel:
Code
Alles anzeigen<!-- Movies Label2 SortByTitle = Rating SortByYear = Year SortByRating = Rating SortByUserRating = UserRating SortByMPAA = MPAA SortByTime = Duration SortByDateAdded = DateAdded SortByCount = PlayCount tvshows Label2 SortByTitle = Episodenanzahl SortByEpisode = Episodenanzahl SortByLastPlayed = Lastplayed SortByDateAdded = DateAdded SortByYear = Year SortByUserRating = UserRating episodes Label2 SortByEpisode = Rating 20359 SortByRating = Rating 563 SortByUserRating = UserRating 38018 SortByMPAA = MPAA 20074 SortByProductionCode = xxx 20368 SortByDateAdded = SortByDate 552 SortByCount = PlayCount 567 SortByName = Rating 551 pictures Label2 SortByFile = Size 561 SortByName = Size 551 SortBySize = Size 553 SortByDate = Date 552 SortByDateTaken = Date 577 song Label2 SortByTrack = duration 554 SortByTitle = duration 556 SortByAlbum = duration 558 SortByArtist = duration 557 SortByArtistThenYear = year 578 SortByName = duration 551 SortByTime = duration 180 SortByRating = Rating 563 SortByUserRating = UserRating 38018 SortByYear = Year 562 SortByDate = Date 552 SortByCount = PlayCount 567 -->
Das ist schon extrem verzweigt wenn man nun sagen will "bei songs eine Zusatzinfo Dauer als zweite Zeile, aber nur wenn sortierung nicht Track, Titel, Album, Artist.
Oder so Kleinigkeiten wie die Episodennummer nur wenn man die nicht nach Namen Sortiert.Wird auch mit der Grund sein warum es so wenige machen, obwohl es sich ja Anbieten würde;)..
Aber vielleicht reicht das ja dem Threadersteller schon. Sonst müsste man wirklich den Skinning Weg gehen.
Grüße
-
Naja nach Abspielzähler sortieren ist halt nicht so ganz das was ich suche.
in der .xml der View / Ansicht in der Du das haben möchtest. Dafür musst Du aber an die Skinfiles ran. K.a. ob Du Dir das aufbürden möchtest.
Ja möchte ich Ich möchte diesem Counter einem existierendem Skin hinzufügen, ohne mir von Grund auf einen neuen erstellen zu müssen. Dazu habe ich auch gar nicht das nötige Wissen, geschweige denn die nötige Zeit um sowas umzusetzen.
Ich habe es jetzt nach relativ kurzer Zeit hinbekommen, es in einem Skin, genannt "Black Glass Nova", so einzubauen, wie ich es möchte. Nämlich in der "View_51_Panel.xml" da ich die Panelansicht eigentlich immer benutze. Und es funktioniert so, wie gedacht.
So sieht es da jetzt aus:
Code<control type="label"> <posx>480</posx> <posy>563</posy> <width>370</width> <height>71</height> <align></align> <font>InfoDetailsFont2</font> <textcolor>MainColor</textcolor> <label>Gesehen: $INFO[ListItem.PlayCount]</label> </control>
Problem ist nur, das ist nicht mein Hauptskin. Ich benutze fast ausschließlich den Skin "Amber". Und dort ist es mir jetzt nach zig Stunden herumprobieren noch nicht einmal gelungen den Zähler irgendwo anzeigen zu lassen. Ich weiß einfach nicht wo ich ihn da einfügen muss damit er auch angezeigt wird. Ich bin schon sämtliche xml's im 1080i Ordner durch. Das einzige was ich geschafft habe ist, dass ich mir in der Vollbildsteuerung nen eigenen Text einblenden lassen kann, indem ich ihn irgendwo in den vorhandenen Labeln der VideoFullScreen.xml einfüge. Aber "$INFO[ListItem.PlayCount]" funktioniert dort nirgends und in der View_51_Panel.xml hab ich nicht mal eigenen Text hinbekommen. -
-
Schalte mal im Amber-Skin den Debugmodus ein: Findest Du unter Addons/skin.amber/addon.xml. Dort die Zeile <extension point="xbmc.gui.skin" debugging="false"> das [definition=12,2]debugging[/definition] auf "true" ändern und Kodi neu starten. Du siehst dann zumindest, wo/in welcher Datei Du bist und wo die Änderungen vorzunehmen sind.
-
View_51_Panel.xml
Hey,
Also laut Github müsste das der Richtige Abschnitt sein für Filme.
Beginnt mit
<focusedlayout condition="Container.content(MusicVideos) | Container.Content(Movies) | container.content(TVshows) | container.content(seasons)" height="350" width="290">Wenn das die View ist die tatsächlich willst, dann warst wahrscheinlich in einem der anderen Layouts. Die Condition= Spezifizieren die Art des Inhaltes, es gibt in diesem skin also mehr als ein focusedlayout.
Wobei aber der Text so etwas schwierig werden wird in einem Panel. Da wäre vielleicht ein kleines Farbiges Quadrat auf dem Poster mit der Zahl drin sinnvoller.Ich würde auch <label>Gesehen: $INFO[ListItem.PlayCount]</label> eher so schreiben <label>$INFO[ListItem.PlayCount,Gesehen: ,]</label>. In Info Texten kann man Text danach und davor Kommagetrennt innerhalb der Brackets schreiben - also , Text davor, Text danach.. Dann kommt dieser Text auch nur wenn die Info Tatsächlich etwas ausgibt und verhindert das wenn die view z.B. auch für Alben gilt, dort nicht einfach Gesehen: steht ohne eine Info.
Versuchs einfach mal in diesem Layout, dann sollte das klappen.
Bei OSD Windows die sich auf den Player beziehen gehen ListItems nicht, sondern Player oder Videoplayer.. In deinem Fall sollte Videoplayer.Playcount in der Fillscreen xml funktionieren.
Grüße
-
-
So Leute, ich habe es endlich hinbekommen
Vielen Dank erstmal für eure Hilfe.Also die betreffende xml war tatsächlich View_51_Panel.xml. Nur wie genau ich den Infotext dort einfügen musste, damit er überhaupt angezeigt wird, war unklar, zumal ich mit der Syntax nicht vertraut bin. Nach vielem Rumprobieren hat es dann letztendlich geklappt:
[cbox]https://www.kodinerds.net/index.php/Atta…eenshot000-png/[/cbox]
Zusammen mit "$INFO[ListItem.LastPlayed, (,)]" ist das schon ziemlich niceDen Zähler als Zahl auf die einzelnen Poster wäre natürlich super. Ich hab es geschafft das so als Liste, wo immer nur das Poster angezeigt wird, dessen Film man gerade markiert hat, umzusetzen. Hier im Panel, wo sämtliche Poster der Filme auf einmal angezeigt werden, gestaltet sich das eher schwierig, da ich nicht rausfinden kann, welche Codezeilen dafür verantwortlich sind, die Poster anzuzeigen und wo ich die Info dazu eintragen muss.
Also laut Github müsste das der Richtige Abschnitt sein für Filme.
Du meinst sicher diese Version: https://github.com/pecinko/skin.amber
Dies ist aber eine andere Version, als die die man sich direkt in Kodi laden kann, so ist auch der Code der .xml's völlig anders.
Wie dem auch sei, die "Github Version" vom Skin Amber ist entweder nicht mehr aktuell oder aus anderen Gründen nicht kompatibel zum aktuellen Kodi. Wenn ich die Daten in den Skin Ordner kopiere, stellt Kodi nach einem Neustart wieder die aktuelle Version her oder deaktiviert den Skin komplett. Einzige Möglichkeit die Version die es auf Github gibt anzeigen zu lassen ist, während Kodi mit dem Skin läuft, die Datein in den Ordner zu laden und den Skin via Tastaturkürzel direkt zu aktualisieren.Dann dann kann man diese Version bis zum Neustart "benutzen".
Schade eigentlich, da mir das Design dieser Version auf Github eigentlich extrem gut gefällt und zum Beispiel bei jedem Film den man markiert, den Hintergrund entsprechend wechselt, was aktuell nicht der Fall ist. -
Den Zähler als Zahl auf die einzelnen Poster wäre natürlich super. Ich hab es geschafft das so als Liste, wo immer nur das Poster angezeigt wird, dessen Film man gerade markiert hat, umzusetzen. Hier im Panel, wo sämtliche Poster der Filme auf einmal angezeigt werden, gestaltet sich das eher schwierig, da ich nicht rausfinden kann, welche Codezeilen dafür verantwortlich sind, die Poster anzuzeigen und wo ich die Info dazu eintragen muss.
Du hast im Tag <focusedlayout> die Änderungen vorgenommen...das selbe musst du mit <itemlayout> machen...dann haben alle poster den count...
BTW: Das Bild ist scheinbar nicht richtig verlinkt...
-
-
Du hast im Tag <focusedlayout> die Änderungen vorgenommen...das selbe musst du mit <itemlayout> machen...dann haben alle poster den count...
Nein, wie gesagt, es geht hier nicht um die Version die man auf Github findet. Die .xml mit der ich arbeiten muss, ist eine völlig andere, da gibt es keinen Tag <focusedlayout>
So sieht die xml bei mir im unbearbeitetem Zustand aus:
Spoiler anzeigen
Bash: View_51_Panel.xml
Alles anzeigen<?xml version="1.0" encoding="UTF-8"?> <includes> <include name="View_51_Panel"> <include content="BackgroundOverlay"> <param name="parentid" value="51"/> <param name="overlaytop" value="300"/> <param name="overlayheight" value="1620"/> </include> <control type="group" description="Content"> <visible>Control.IsVisible(51)</visible> <include>ContentFade</include> <control type="panel" id="51" description="Grid"> <viewtype label="$LOCALIZE[31963]">info</viewtype> <posx>960</posx> <posy>351</posy> <width>930</width> <height>700</height> <orientation>vertical</orientation> <onleft>9000</onleft> <onright>61</onright> <onup>51</onup> <ondown>51</ondown> <preloaditems>12</preloaditems> <pagecontrol>61</pagecontrol> <scrolltime>400</scrolltime> <visible>!Skin.HasSetting(hide.panelview)</visible> <include content="BannerLayout"> <param name="viewid">51</param> </include> <include content="PosterLayout"> <param name="viewid">51</param> </include> <include content="EpisodeLayout"> <param name="viewid">51</param> </include> <include content="MusicLayout"> <param name="viewid">51</param> </include> <include content="ImageLayout"> <param name="viewid">51</param> </include> <include content="AddonLayout"> <param name="viewid">51</param> </include> <include content="GenericLayout"> <param name="viewid">51</param> </include> </control> <include content="PanelTemplate"> <param name="top">345</param> <param name="height">415</param> <param name="heading">$VAR[panelheading]</param> <param name="subheading">$VAR[panelsubheading]</param> <param name="plot">$VAR[Plots]</param> <param name="footer">$VAR[panelfooter]</param> <param name="visibility">![Container.Content(artists) | Container.Content(albums) | Container.Content(images)]</param> </include> <include content="PanelTemplate"> <param name="top">345</param> <param name="height">545</param> <param name="heading">$VAR[panelheading]</param> <param name="subheading">$VAR[panelsubheading]</param> <param name="plot">$VAR[Plots]$INFO[ListItem.PlayCount,Gesehen: ,]</param> <param name="footer"></param> <param name="visibility">Container.Content(images)</param> </include> <include content="PanelTemplate"> <param name="top">345</param> <param name="height">415</param> <param name="heading">$VAR[panelheading]</param> <param name="subheading">$VAR[panelsubheading]</param> <param name="plot">$VAR[Plots]</param> <param name="subcontent_label">$INFO[ListItem.Label]$INFO[ListItem.Year, (,)]</param> <param name="subcontent_path">$INFO[ListItem.FolderPath]</param> <param name="subcontent_visible">String.IsEmpty(ListItem.Property(Artist_Description))</param> <param name="subcontent_image_visible">false</param> <param name="footer">$VAR[panelfooter]</param> <param name="visibility">Container.Content(artists)</param> </include> <include content="PanelTemplate"> <param name="top">345</param> <param name="height">415</param> <param name="heading">$VAR[panelheading]</param> <param name="subheading">$VAR[panelsubheading]</param> <param name="plot">$VAR[Plots]</param> <param name="subcontent_label">$INFO[ListItem.Label]$INFO[ListItem.Duration, • (,)]</param> <param name="subcontent_path">$INFO[ListItem.FolderPath]</param> <param name="subcontent_visible">String.IsEmpty(ListItem.Property(Album_Description))</param> <param name="subcontent_image_visible">false</param> <param name="footer">$VAR[panelfooter]</param> <param name="visibility">Container.Content(albums)</param> </include> <control type="scrollbar" id="61"> <animation effect="slide" start="0,0" end="-8,0" time="150">Focus</animation> <animation effect="slide" start="-8,0" end="0,0" time="300">UnFocus</animation> <posx>20r</posx> <posy>351</posy> <width>36</width> <height>700</height> <texturesliderbackground></texturesliderbackground> <texturesliderbar></texturesliderbar> <texturesliderbarfocus></texturesliderbarfocus> <textureslidernib border="18">OSD/ScrollbarNibNF.png</textureslidernib> <textureslidernibfocus border="18">OSD/ScrollbarNibFO.png</textureslidernibfocus> <showonepage>false</showonepage> <orientation>vertical</orientation> <onleft>51</onleft> <onright>9000</onright> </control> </control> </include> </includes>
Zitat von mad-maxBTW: Das Bild ist scheinbar nicht richtig verlinkt...
Bei mir wird es angezeigt, wenn ich auf den Link klicke
-
Check mal <include content="PosterLayout">
-
-
Und wie?
Was ich dazu jetzt gefunden habe ist in der "Includes_Media.xml" den Abschnitt:Bash: Includes_Media.xml
Alles anzeigen<include name="PosterLayout"> <param name="viewid"/> <definition> <itemlayout condition="[!Skin.HasSetting($PARAM[viewid]_TvShows_SmallIcons) + Container.Content(TvShows) + !Skin.HasSetting($PARAM[viewid]_UseBanners)] | [!Skin.HasSetting($PARAM[viewid]_Movies_SmallIcons) + [container.content(movies) | container.content(sets)]] | [!Skin.HasSetting($PARAM[viewid]_Seasons_SmallIcons) + container.content(seasons)] | [Skin.HasSetting(EpisodesUsePoster) + !Skin.HasSetting($PARAM[viewid]_Episodes_SmallIcons) + container.content(episodes)]" height="437" width="310"> <include content="GenericPosterIconBig"> <param name="isFocused">false</param> </include> </itemlayout> <focusedlayout condition="[!Skin.HasSetting($PARAM[viewid]_TvShows_SmallIcons) + Container.Content(TvShows) + !Skin.HasSetting($PARAM[viewid]_UseBanners)] | [!Skin.HasSetting($PARAM[viewid]_Movies_SmallIcons) + [container.content(movies) | container.content(sets)]] | [!Skin.HasSetting($PARAM[viewid]_Seasons_SmallIcons) + container.content(seasons)] | [Skin.HasSetting(EpisodesUsePoster) + !Skin.HasSetting($PARAM[viewid]_Episodes_SmallIcons) + container.content(episodes)]" height="437" width="310"> <include content="GenericPosterIconBig"> <param name="isFocused">true</param> </include> </focusedlayout> <itemlayout condition="[Skin.HasSetting($PARAM[viewid]_TvShows_SmallIcons) + Container.Content(TvShows) + !Skin.HasSetting($PARAM[viewid]_UseBanners)] | [Skin.HasSetting($PARAM[viewid]_Movies_SmallIcons) + [container.content(movies) | container.content(sets)]] | [Skin.HasSetting($PARAM[viewid]_Seasons_SmallIcons) + container.content(seasons)] | [Skin.HasSetting(EpisodesUsePoster) + Skin.HasSetting($PARAM[viewid]_Episodes_SmallIcons) + container.content(episodes)]" height="326" width="232.5"> <include content="GenericPosterIconSmall"> <param name="isFocused">false</param> </include> </itemlayout> <focusedlayout condition="[Skin.HasSetting($PARAM[viewid]_TvShows_SmallIcons) + Container.Content(TvShows) + !Skin.HasSetting($PARAM[viewid]_UseBanners)] | [Skin.HasSetting($PARAM[viewid]_Movies_SmallIcons) + [container.content(movies) | container.content(sets)]] | [Skin.HasSetting($PARAM[viewid]_Seasons_SmallIcons) + container.content(seasons)] | [Skin.HasSetting(EpisodesUsePoster) + Skin.HasSetting($PARAM[viewid]_Episodes_SmallIcons) + container.content(episodes)]" height="326" width="232.5"> <include content="GenericPosterIconSmall"> <param name="isFocused">true</param> </include> </focusedlayout> </definition> </include>
Wo könnte ich da den Info-Tag einfügen?
-
Naja, es verzweigt sich weiter...im include ist jetzt unter anderem GenericPosterIconBig
Problem ist, ich habe den Skin nicht hier bzw weiss nicht genau welche version von wo du verwendest um mir das genauer ansehen zu könne
EDITH: Kannst du dein Screenshot nochmal woanders hochladen und einbinden?
-
-
Sorry, ich hatte einfach nach SKin AMber gegoogelt und dachte das wird dann schon das Original sein und sich nicht soooo groß unterschieden..
Es sind zwei Layouts enthalten in deinem Code, Small Posters und Big Posters.. Je nachdem was du eingestellt hast ist ein Layout sichtbar.
Die Einfachste Variante wäre das in beide einzufügen.
Was für eine Kodi Version nutzt du denn damit man mal den ganzen Code ansehen kann?
Das zu erklären wäre etwas Aufwendig.Du brauchst ja eine Grafik, eine passend große Schrift für den Playcount in der schon vorhandenen Farbe usw..
Der Codeplatz wäre aber schon Richtig so. Man müsste nur die Includes GenericPosterIconBig und GenericPosterIconSmall "verfolgen um die Größe und Position zu ermitteln
und dahinter im Code jeweils eine group einfügen mit der Grafik darin und dem Playcount als Zahl.Quasi in der Art denke ich. Aber wie du siehst, ohne alles an Code schwierig.
Code
Alles anzeigen<definition> <itemlayout condition="[!Skin.HasSetting($PARAM[viewid]_TvShows_SmallIcons) + Container.Content(TvShows) + !Skin.HasSetting($PARAM[viewid]_UseBanners)] | [!Skin.HasSetting($PARAM[viewid]_Movies_SmallIcons) + [container.content(movies) | container.content(sets)]] | [!Skin.HasSetting($PARAM[viewid]_Seasons_SmallIcons) + container.content(seasons)] | [Skin.HasSetting(EpisodesUsePoster) + !Skin.HasSetting($PARAM[viewid]_Episodes_SmallIcons) + container.content(episodes)]" height="437" width="310"> <include content="GenericPosterIconBig"> <param name="isFocused">false</param> </include> <control type="group"><!-- dein Gesehen Zähler --> <visible>Integer.IsGreater(ListItem.PlayCount,0)</visible> <control type="image"> <left>xx</left> <top>xx</top> <width>xx</width> <height>xx</height> <texture>xxx.png</texture> </control> <control type="label"> <left>xx</left> <top>xx</top> <width>xx</width> <height>xx</height> <font>xxx</font> <align>center</align> <aligny>center</aligny> <label>$INFO[ListItem.Playcount]</label> </control> </control>
Grüße
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!