Skin tool frage

    • Nicht damit arbeiten ist aber übertrieben ;) . Es gibt dir zumindest noch annähernd die Möglichkeit, einer gewissen Darstellung. Ansonsten bleibt dir dann nur die visuelle Vorstellungskraft deines Kopfes, wie dein Code auf dem TV dann aussehen wird. Welche Version hast du getestet?

      Hast du denn mal z.B. einen vorhandenen Skin in den OpenSkin-Designer geladen, um damit rumzuspielen?

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Hilfsbereit ()

    • Hier mal die Infobar des Nuke.Evo in gekürzter Form, weil der ganze Code passt nicht hier rein.

      XML-Quellcode

      1. <screen name="InfoBar" position="0,890" size="1920,200" title="InfoBar" backgroundColor="transparent" flags="wfNoBorder">
      2. <ePixmap gradient="mpgradbg,mpgradfg,vertical" position="0,30" size="1920,160" zPosition="-10" />
      3. <eLabel backgroundColor="darkevent" foregroundColor="darkevent" position="1455,78" size="440,2" />
      4. <widget position="40,45" render="Picon" scale="1" size="220,132" source="session.CurrentService">
      5. <convert type="ServiceName">Reference</convert>
      6. </widget>
      7. <widget source="session.Event_Now" render="Progress" pixmap="Nuke.Evo/bg/progress_android.png" position="307,103" size="995,8" backgroundColor="EntryBackgroundColor" zPosition="5">
      8. <convert type="EventTime">Progress</convert>
      9. </widget>
      10. <widget backgroundColor="background" font="Regular; 32" halign="left" noWrap="1" position="315,47" render="Label" size="110,45" source="session.Event_Now" transparent="1">
      11. <convert type="EventTime">StartTime</convert>
      12. <convert type="ClockToText">Default</convert>
      13. </widget>
      14. <widget backgroundColor="background" font="Regular; 32" noWrap="1" position="430,47" render="Label" size="700,45" source="session.Event_Now" transparent="1">
      15. <convert type="EventName">Name</convert>
      16. </widget>
      17. <widget backgroundColor="background" font="Regular; 32" halign="right" noWrap="1" position="1145,47" render="Label" size="150,45" source="session.Event_Now" transparent="1">
      18. <convert type="EventTime">Remaining</convert>
      19. <convert type="RemainingToText">InMinutes</convert>
      20. </widget>
      21. <widget backgroundColor="background" font="Regular; 32" foregroundColor="darkblue" halign="left" noWrap="1" position="315,123" render="Label" size="110,45" source="session.Event_Next" transparent="1" valign="center">
      22. <convert type="EventTime">StartTime</convert>
      23. <convert type="ClockToText">Default</convert>
      24. </widget>
      25. <widget backgroundColor="background" font="Regular; 32" foregroundColor="darkblue" noWrap="1" position="430,123" render="Label" size="700,45" source="session.Event_Next" transparent="1" valign="center">
      26. <convert type="EventName">Name</convert>
      27. </widget>
      28. <widget backgroundColor="background" font="Regular; 32" foregroundColor="darkblue" halign="right" noWrap="1" position="1145,123" render="Label" size="150,45" source="session.Event_Next" transparent="1" valign="center">
      29. <convert type="EventTime">Duration</convert>
      30. <convert type="ClockToText">InMinutes</convert>
      31. </widget>
      32. <widget pixmap="Nuke.Evo/icons/led_r_blue.png" position="1533,55" render="Pixmap" scale="stretch" size="10,8" source="session.RecordState" transparent="1" zPosition="2">
      33. <convert type="ConditionalShowHide">Blink</convert>
      34. </widget>
      35. <ePixmap pixmap="Nuke.Evo/icons/led_fbc_off.png" position="1458,85" size="35,90" />
      36. <ePixmap pixmap="Nuke.Evo/icons/subs_off.png" position="1855,150" size="38,24" />
      37. <ePixmap pixmap="Nuke.Evo/icons/hbbtv_off.png" position="1615,150" size="38,24" />
      38. <ePixmap pixmap="Nuke.Evo/icons/txt_off.png" position="1655,150" size="38,24" />
      39. <ePixmap pixmap="Nuke.Evo/icons/dolby_off.png" position="1735,150" size="38,24" />
      40. <ePixmap pixmap="Nuke.Evo/icons/crypt_off.png" position="1775,150" size="38,24" />
      41. <ePixmap pixmap="Nuke.Evo/icons/format_off.png" position="1695,150" size="38,24" />
      42. <ePixmap pixmap="Nuke.Evo/icons/hdr_off.png" position="1815,150" size="38,24" />
      43. <widget pixmap="Nuke.Evo/icons/led_r_green.png" position="1480,102" render="Pixmap" size="10,8" source="session.FrontendInfo" zPosition="2">
      44. <convert type="FrontendInfo">NUMBER</convert>
      45. <convert type="ValueRange">15,15</convert>
      46. <convert type="ConditionalShowHide" />
      47. </widget>
      48. <widget pixmap="Nuke.Evo/icons/led_r_green.png" position="1480,111" render="Pixmap" size="10,8" source="session.FrontendInfo" zPosition="2">
      49. <convert type="FrontendInfo">NUMBER</convert>
      50. <convert type="ValueRange">14,14</convert>
      51. <convert type="ConditionalShowHide" />
      52. </widget>
      53. <widget pixmap="Nuke.Evo/icons/led_r_green.png" position="1480,120" render="Pixmap" size="10,8" source="session.FrontendInfo" zPosition="2">
      54. <convert type="FrontendInfo">NUMBER</convert>
      55. <convert type="ValueRange">13,13</convert>
      56. <convert type="ConditionalShowHide" />
      57. </widget>
      58. <widget pixmap="Nuke.Evo/icons/led_r_green.png" position="1480,129" render="Pixmap" size="10,8" source="session.FrontendInfo" zPosition="2">
      59. <convert type="FrontendInfo">NUMBER</convert>
      60. <convert type="ValueRange">12,12</convert>
      61. <convert type="ConditionalShowHide" />
      62. </widget>
      63. <widget pixmap="Nuke.Evo/icons/led_r_green.png" position="1480,138" render="Pixmap" size="10,8" source="session.FrontendInfo" zPosition="2">
      64. <convert type="FrontendInfo">NUMBER</convert>
      65. <convert type="ValueRange">11,11</convert>
      66. <convert type="ConditionalShowHide" />
      67. </widget>
      68. <widget pixmap="Nuke.Evo/icons/led_r_green.png" position="1480,147" render="Pixmap" size="10,8" source="session.FrontendInfo" zPosition="2">
      69. <convert type="FrontendInfo">NUMBER</convert>
      70. <convert type="ValueRange">10,10</convert>
      71. <convert type="ConditionalShowHide" />
      72. </widget>
      73. <widget pixmap="Nuke.Evo/icons/led_r_green.png" position="1480,156" render="Pixmap" size="10,8" source="session.FrontendInfo" zPosition="2">
      74. <convert type="FrontendInfo">NUMBER</convert>
      75. <convert type="ValueRange">9,9</convert>
      76. <convert type="ConditionalShowHide" />
      77. </widget>
      78. <widget pixmap="Nuke.Evo/icons/led_r_green.png" position="1480,165" render="Pixmap" size="10,8" source="session.FrontendInfo" zPosition="2">
      79. <convert type="FrontendInfo">NUMBER</convert>
      80. <convert type="ValueRange">8,8</convert>
      81. <convert type="ConditionalShowHide" />
      82. </widget>
      83. <widget pixmap="Nuke.Evo/icons/led_r_green.png" position="1461,102" render="Pixmap" size="10,8" source="session.FrontendInfo" zPosition="2">
      84. <convert type="FrontendInfo">NUMBER</convert>
      85. <convert type="ValueRange">7,7</convert>
      86. <convert type="ConditionalShowHide" />
      87. </widget>
      88. <widget pixmap="Nuke.Evo/icons/led_r_green.png" position="1461,111" render="Pixmap" size="10,8" source="session.FrontendInfo" zPosition="2">
      89. <convert type="FrontendInfo">NUMBER</convert>
      90. <convert type="ValueRange">6,6</convert>
      91. <convert type="ConditionalShowHide" />
      92. </widget>
      93. <widget pixmap="Nuke.Evo/icons/led_r_green.png" position="1461,120" render="Pixmap" size="10,8" source="session.FrontendInfo" zPosition="2">
      94. <convert type="FrontendInfo">NUMBER</convert>
      95. <convert type="ValueRange">5,5</convert>
      96. <convert type="ConditionalShowHide" />
      97. </widget>
      98. <widget pixmap="Nuke.Evo/icons/led_r_green.png" position="1461,129" render="Pixmap" size="10,8" source="session.FrontendInfo" zPosition="2">
      99. <convert type="FrontendInfo">NUMBER</convert>
      100. <convert type="ValueRange">4,4</convert>
      101. <convert type="ConditionalShowHide" />
      102. </widget>
      103. <widget pixmap="Nuke.Evo/icons/led_r_green.png" position="1461,138" render="Pixmap" size="10,8" source="session.FrontendInfo" zPosition="2">
      104. <convert type="FrontendInfo">NUMBER</convert>
      105. <convert type="ValueRange">3,3</convert>
      106. <convert type="ConditionalShowHide" />
      107. </widget>
      108. <widget pixmap="Nuke.Evo/icons/led_r_green.png" position="1461,147" render="Pixmap" size="10,8" source="session.FrontendInfo" zPosition="2">
      109. <convert type="FrontendInfo">NUMBER</convert>
      110. <convert type="ValueRange">2,2</convert>
      111. <convert type="ConditionalShowHide" />
      112. </widget>
      113. <widget pixmap="Nuke.Evo/icons/led_r_green.png" position="1461,156" render="Pixmap" size="10,8" source="session.FrontendInfo" zPosition="2">
      114. <convert type="FrontendInfo">NUMBER</convert>
      115. <convert type="ValueRange">1,1</convert>
      116. <convert type="ConditionalShowHide" />
      117. </widget>
      118. <widget pixmap="Nuke.Evo/icons/led_r_green.png" position="1461,165" render="Pixmap" size="10,8" source="session.FrontendInfo" zPosition="2">
      119. <convert type="FrontendInfo">NUMBER</convert>
      120. <convert type="ValueRange">0,0</convert>
      121. <convert type="ConditionalShowHide" />
      122. </widget>
      123. <widget pixmap="Nuke.Evo/icons/led_r_yellow.png" position="1480,102" render="Pixmap" size="10,8" source="session.TunerInfo" zPosition="1">
      124. <convert type="TunerInfo">TunerUseMask</convert>
      125. <convert type="ValueBitTest">32768</convert>
      126. <convert type="ConditionalShowHide" />
      127. </widget>
      128. <widget pixmap="Nuke.Evo/icons/led_r_yellow.png" position="1480,111" render="Pixmap" size="10,8" source="session.TunerInfo" zPosition="1">
      129. <convert type="TunerInfo">TunerUseMask</convert>
      130. <convert type="ValueBitTest">16384</convert>
      131. <convert type="ConditionalShowHide" />
      132. </widget>
      133. <widget pixmap="Nuke.Evo/icons/led_r_yellow.png" position="1480,120" render="Pixmap" size="10,8" source="session.TunerInfo" zPosition="1">
      134. <convert type="TunerInfo">TunerUseMask</convert>
      135. <convert type="ValueBitTest">8192</convert>
      136. <convert type="ConditionalShowHide" />
      137. </widget>
      138. <widget pixmap="Nuke.Evo/icons/led_r_yellow.png" position="1480,129" render="Pixmap" size="10,8" source="session.TunerInfo" zPosition="1">
      139. <convert type="TunerInfo">TunerUseMask</convert>
      140. <convert type="ValueBitTest">4096</convert>
      141. <convert type="ConditionalShowHide" />
      142. </widget>
      143. <widget pixmap="Nuke.Evo/icons/led_r_yellow.png" position="1480,138" render="Pixmap" size="10,8" source="session.TunerInfo" zPosition="1">
      144. <convert type="TunerInfo">TunerUseMask</convert>
      145. <convert type="ValueBitTest">2048</convert>
      146. <convert type="ConditionalShowHide" />
      147. </widget>
      148. <widget pixmap="Nuke.Evo/icons/led_r_yellow.png" position="1480,147" render="Pixmap" size="10,8" source="session.TunerInfo" zPosition="1">
      149. <convert type="TunerInfo">TunerUseMask</convert>
      150. <convert type="ValueBitTest">1024</convert>
      151. <convert type="ConditionalShowHide" />
      152. </widget>
      153. <widget pixmap="Nuke.Evo/icons/led_r_yellow.png" position="1480,156" render="Pixmap" size="10,8" source="session.TunerInfo" zPosition="1">
      154. <convert type="TunerInfo">TunerUseMask</convert>
      155. <convert type="ValueBitTest">512</convert>
      156. <convert type="ConditionalShowHide" />
      157. </widget>
      158. <widget pixmap="Nuke.Evo/icons/led_r_yellow.png" position="1480,165" render="Pixmap" size="10,8" source="session.TunerInfo" zPosition="1">
      159. <convert type="TunerInfo">TunerUseMask</convert>
      160. <convert type="ValueBitTest">256</convert>
      161. <convert type="ConditionalShowHide" />
      162. </widget>
      163. <widget pixmap="Nuke.Evo/icons/led_r_yellow.png" position="1461,102" render="Pixmap" size="10,8" source="session.TunerInfo" zPosition="1">
      164. <convert type="TunerInfo">TunerUseMask</convert>
      165. <convert type="ValueBitTest">128</convert>
      166. <convert type="ConditionalShowHide" />
      167. </widget>
      168. <widget pixmap="Nuke.Evo/icons/led_r_yellow.png" position="1461,111" render="Pixmap" size="10,8" source="session.TunerInfo" zPosition="1">
      169. <convert type="TunerInfo">TunerUseMask</convert>
      170. <convert type="ValueBitTest">64</convert>
      171. <convert type="ConditionalShowHide" />
      172. </widget>
      173. <widget pixmap="Nuke.Evo/icons/led_r_yellow.png" position="1461,120" render="Pixmap" size="10,8" source="session.TunerInfo" zPosition="1">
      174. <convert type="TunerInfo">TunerUseMask</convert>
      175. <convert type="ValueBitTest">32</convert>
      176. <convert type="ConditionalShowHide" />
      177. </widget>
      178. <widget pixmap="Nuke.Evo/icons/led_r_yellow.png" position="1461,129" render="Pixmap" size="10,8" source="session.TunerInfo" zPosition="1">
      179. <convert type="TunerInfo">TunerUseMask</convert>
      180. <convert type="ValueBitTest">16</convert>
      181. <convert type="ConditionalShowHide" />
      182. </widget>
      183. <widget pixmap="Nuke.Evo/icons/led_r_yellow.png" position="1461,138" render="Pixmap" size="10,8" source="session.TunerInfo" zPosition="1">
      184. <convert type="TunerInfo">TunerUseMask</convert>
      185. <convert type="ValueBitTest">8</convert>
      186. <convert type="ConditionalShowHide" />
      187. </widget>
      188. <widget pixmap="Nuke.Evo/icons/led_r_yellow.png" position="1461,147" render="Pixmap" size="10,8" source="session.TunerInfo" zPosition="1">
      189. <convert type="TunerInfo">TunerUseMask</convert>
      190. <convert type="ValueBitTest">4</convert>
      191. <convert type="ConditionalShowHide" />
      192. </widget>
      193. <widget pixmap="Nuke.Evo/icons/led_r_yellow.png" position="1461,156" render="Pixmap" size="10,8" source="session.TunerInfo" zPosition="1">
      194. <convert type="TunerInfo">TunerUseMask</convert>
      195. <convert type="ValueBitTest">2</convert>
      196. <convert type="ConditionalShowHide" />
      197. </widget>
      198. <widget pixmap="Nuke.Evo/icons/led_r_yellow.png" position="1461,165" render="Pixmap" size="10,8" source="session.TunerInfo" zPosition="1">
      199. <convert type="TunerInfo">TunerUseMask</convert>
      200. <convert type="ValueBitTest">1</convert>
      201. <convert type="ConditionalShowHide" />
      202. </widget>
      203. <widget pixmap="Nuke.Evo/icons/hdr_on.png" position="1815,150" render="Pixmap" size="38,24" source="session.CurrentService" transparent="1" zPosition="2">
      204. <convert type="ServiceInfoFHD">IsHdr</convert>
      205. <convert type="ConditionalShowHide" />
      206. </widget>
      207. <widget pixmap="Nuke.Evo/icons/hbbtv_on.png" position="1615,150" render="Pixmap" size="38,24" source="HbbtvApplication" transparent="1" zPosition="2">
      208. <convert type="ConditionalShowHide" />
      209. </widget>
      210. <widget pixmap="Nuke.Evo/icons/dolby_on.png" position="1735,150" render="Pixmap" size="38,24" source="session.CurrentService" transparent="1" zPosition="2">
      211. <convert type="ServiceInfo">IsMultichannel</convert>
      212. <convert type="ConditionalShowHide" />
      213. </widget>
      214. <widget pixmap="Nuke.Evo/icons/txt_on.png" position="1655,150" render="Pixmap" size="38,24" source="session.CurrentService" transparent="1" zPosition="2">
      215. <convert type="ServiceInfoFHD">HasTelext</convert>
      216. <convert type="ConditionalShowHide" />
      217. </widget>
      218. <widget pixmap="Nuke.Evo/icons/format_on.png" position="1695,150" render="Pixmap" size="38,24" source="session.CurrentService" transparent="1" zPosition="2">
      219. <convert type="ServiceInfoFHD">IsWidescreen</convert>
      220. <convert type="ConditionalShowHide" />
      221. </widget>
      222. <widget pixmap="Nuke.Evo/icons/sdtv_on.png" position="1575,150" render="Pixmap" size="38,24" source="session.CurrentService" transparent="1" zPosition="2">
      223. <convert type="ServiceInfoFHD">VideoWidth</convert>
      224. <convert type="ValueRange">544,720</convert>
      225. <convert type="ConditionalShowHide" />
      226. </widget>
      227. </screen>
      Alles anzeigen

      Hier mal als Beispiel die Zeile 35, wo ein einfaches Bild eingefügt wird.
      <ePixmap pixmap="Nuke.Evo/icons/led_fbc_off.png" position="1458,85" size="35,90" />

      Beginnend mit ePixmap, da du ja jein Bild einfügen möchtest
      pixmap="Nuke.Evo/icons/led_fbc_off.png" legt fest, von wo das Bild geladen werden soll. In dem Fall liegt das Bild led_fbc_off.png im Skinordner, im Unterordner icons.
      position="1458,85" ist eigentlich selbsterklärend. Gibt über die x/y Koordinate an, wo das Bild im Screen angezeigt werden soll.
      size="35,90" Dieser Parameter gibt die Größe des darzustellenden Bildes na.

      Das nur mal so grob als Erklärung ;) .
    • Der OpenSkin-Designer war für seine Zeit schon revolutionär, und hat das skinnen doch schon sehr vereinfacht, auch wenn er jetzt für DreamOS nur noch rudimentär zu gebrauchen ist.
      Und natürlich muss man sich mit den ganzen Befehlen vertraut machen, wie ein Skin funktioniert. Ein Bild einzufügen, ist da noch die einfachste Sache. User stellen sich das Erstellen eines Skins immer so einfach vor. Das macht viel Arbeit, bei dem einen geht es vielleicht etwas schneller, als bei dem anderen, gerade weil es eben keine Drag&Drop Tools dafür gibt.
    • naja hab in der skin.xml den eintrag gemacht wird aber nix angezeigt bild ist in icons

      <ePixmap pixmap="Elgato-HD/icons/logo.png" position="1140,97" size="26,20" zPosition="1" alphatest="blend" />
      <widget source="session.CurrentService" render="Pixmap" pixmap="Elgato-HD/icons/logo.png" position="1140,97" size="26,20" zPosition="2" alphatest="blend">
      <convert type="ServiceInfo">IsCrypted</convert>
      <convert type="ConditionalShowHide" />
      </widget>
    • Der Screen besteht ja aus verschiedenen Ebenen, die übereinander liegen können. Also z.B. dem Hintergrund, der ganz unten liegen soll, und die zPosition -100 hat.
      Jetzt kommt es für dich darauf an, dass dein neues Bild ja z.B. über allen anderen Ebenen des Screens liegen soll, also durch nichts anderes überdeckt werden soll.

      In deinem Beispiel ist das jetzt gerade so, dein "neues" Bild, soll genau dort angezeigt werden, wo gerade schon ein Bild auf eine andere Art angezeigt wird. Dieses liegt schon auf zPosition=2, und wird dein Bild überdecken. Um dein neues Bild darüberzulegen, musst du deinem Bild dann die zPosition=3 zuweisen.

      Und nicht vergessen, nach jeder Änderung im Skin einen GUI Neustart ausführen lassen.