Me again...
. I've (neurotically) tweaked the current Layout 3 for MusicVisualisation.xml to my liking. Here's a screenshot (click on image for large detail) :
Tweaks and changes in order as listed in MusicVisualisation.xml are:
- Added Info time out as included in other Layouts;
- Removed the little "notch" in the CoverArt
- Modified code to show MultiLogos (mid-cycle in screenshot);
- Modified TrackNumber to show PlaylistPosition, thereby allowing Tracks 1-9 to display without a "0"
- Deleted Genre from Album Info line
- Changed Track Star Rating to change color based on Rating, similar to format used in RightView;
- Rearranged file data to (properly) display as BitRate/SampleRate/BitsPerSample;
- Changed Next Track display to same as used in #4 above AND added total # of Playlist tracks to data line;
- Changed Next Track Star Rating from "UserRating" to "Rating" data included in MyMusic72.db (still an unfixed problem in Kodi);
- Moved the AudioCodec symbol up a smidge (was too low);
- Removed Channel logo, as all of my music is 2-CH (when Kodi can someday play multi-channel iso files I will restore); and
- Removed the "Track # of Total #" line (see 8 above).
If any interested in these you can replace the entire listing of code for Layout 3 (lines 559-892) with the code below. If you'd like some but not all of these changes PM me.
Code:
<!-- Layout 3 -->
<control type="group">
<visible>[Player.ShowInfo | Window.IsActive(MusicOSD) | !Visualisation.Enabled] + ![Window.IsVisible(AddonSettings) | Window.IsVisible(SelectDialog) | Window.IsVisible(VisualisationPresetList)]</visible>
<animation effect="fade" time="500">VisibleChange</animation>
<left>0</left>
<top>1160</top>
<animation effect="slide" start="0,0" end="0,-200" time="400" tween="cubic" easing="inout" condition="Window.IsVisible(musicosd)">Conditional</animation>
<animation effect="slide" start="0,0" end="0,-50" time="400" tween="cubic" easing="inout" condition="Player.Rewinding | Player.Forwarding">Conditional</animation>
<animation effect="slide" start="0,0" end="0,450" time="700" tween="cubic" easing="out" condition="Skin.HasSetting(novisfurniture)">Conditional</animation>
<animation effect="slide" start="0,0" end="-1350,0" time="400" tween="cubic" easing="inout" condition="Skin.HasSetting(furniture_cdart)">Conditional</animation>
<animation effect="slide" start="0,1080" end="0,-450" time="700" tween="cubic" easing="out" delay="400">WindowOpen</animation>
<animation effect="slide" start="0,-450" end="0,0" time="400" tween="cubic" easing="in" delay="400">WindowClose</animation>
<visible>String.IsEqual(skin.string(vis_layout),style3)</visible>
<control type="image">
<left>0</left>
<top>-60</top>
<height>750</height>
<width>2520</width>
<texture>details_back.png</texture>
<colordiffuse>$INFO[skin.string(colortexture)]</colordiffuse>
</control>
<control type="group">
<left>-105</left>
<top>-30</top>
<animation effect="slide" start="0,0" end="210,0" time="800" delay="2000" tween="sine" easing="inout">WindowOpen</animation>
<!--* MULTI-MOD *-->
<animation effect="slide" end="-210,0" time="800" tween="sine" easing="inout" condition="Skin.HasSetting(noviscdart)">Conditional</animation>
<animation effect="fade" start="100" end="0,0" time="300" delay="500" condition="Skin.HasSetting(noviscdart)">Conditional</animation>
<!--* MULTI-MOD *-->
<control type="image">
<left>50</left>
<top>-80</top>
<width>632</width>
<height>450</height>
<aspectratio align="center" aligny="center">keep</aspectratio>
<texture diffuse="cdart_diffuse.png" background="true">$VAR[audiodisc_layout]</texture>
<include>animation_cdart</include>
<visible>String.IsEqual(skin.string(visdiscart),always)</visible>
</control>
<control type="image">
<left>50</left>
<top>-80</top>
<width>632</width>
<height>450</height>
<aspectratio align="center" aligny="center">keep</aspectratio>
<texture diffuse="cdart_diffuse.png" background="true">$VAR[media_discart]</texture>
<include>animation_cdart</include>
<visible>String.IsEqual(skin.string(visdiscart),always) | [String.IsEqual(skin.string(visdiscart),ifavailable) + !String.IsEmpty(Player.Art(discart))]
| [String.IsEqual(skin.string(visdiscart),ifavailable) + !String.IsEmpty(Window(home).Property(SkinHelper.Player.Art.DiscArt))]</visible>
</control>
</control>
<control type="image">
<left>30</left>
<top>-110</top>
<width>632</width>
<height>450</height>
<fadetime>200</fadetime>
<texture fallback="DefaultAudio.png" background="true">$INFO[MusicPlayer.Cover]</texture>
<aspectratio align="left">keep</aspectratio>
</control>
<control type="image">
<!-- reflexo -->
<left>30</left>
<top>345</top>
<width>632</width>
<height>450</height>
<fadetime>200</fadetime>
<texture flipy="true" fallback="DefaultAudio.png" diffuse="thumb_reflect.png" background="true">$INFO[MusicPlayer.Cover]</texture>
<aspectratio align="left" aligny="top">keep</aspectratio>
</control>
<!-- logo artista -->
<!-- L O G O -->
<control type="multiimage" id="5060">
<left>698</left>
<top>-100</top>
<width>1192</width>
<height>150</height>
<aspectratio align="right" aligny="bottom">keep</aspectratio>
<fadetime>1200</fadetime>
<timeperimage>2000</timeperimage>
<imagepath fallback="blanc.png" background="true">$INFO[Window(Home).Property(SkinHelper.Player.Art.ClearLogo)]</imagepath>
<visible>!String.IsEmpty(Window(Home).Property(SkinHelper.Player.Art.ClearLogo)) + String.IsEmpty(Window(Home).Property(SkinHelper.Player.Art.ClearLogos))</visible>
</control>
<!-- L O G O S -->
<control type="multiimage" id="5060">
<left>698</left>
<top>-100</top>
<width>1192</width>
<height>150</height>
<aspectratio align="right" aligny="bottom">keep</aspectratio>
<fadetime>1200</fadetime>
<timeperimage>2000</timeperimage>
<imagepath fallback="blanc.png" background="true">$INFO[Window(Home).Property(SkinHelper.Player.Art.ClearLogos)]</imagepath>
<visible>!String.IsEmpty(Window(Home).Property(SkinHelper.Player.Art.ClearLogos))</visible>
</control>
<!-- nome do artista -->
<control type="label" id="880041">
<left>730</left>
<top>10</top>
<width>1160</width>
<height>45</height>
<align>right</align>
<font>Font_title</font>
<label>$INFO[Window(Home).Property(SkinHelper.Player.Artist)]</label>
<textcolor>CCFFFFFF</textcolor>
<shadowcolor>AA000000</shadowcolor>
<scroll>false</scroll>
<visible>String.IsEmpty(Window(Home).Property(SkinHelper.Player.Art.ClearLogo)) + String.IsEmpty(Window(Home).Property(SkinHelper.Player.Art.ClearLogos))</visible>
</control>
<!-- Nome da faixa -->
<control type="label">
<left>698</left>
<top>78</top>
<width>1192</width>
<height>30</height>
<align>right</align>
<font>font_title</font>
<!--* MULTI-MOD *-->
<label>[COLOR=$INFO[skin.string(colorheader)]]$INFO[MusicPlayer.PlaylistPosition,,: ]$INFO[MusicPlayer.Title][/COLOR]</label>
<!--* MULTI-MOD *-->
<textcolor>88DDDDDD</textcolor>
<shadowcolor>AA000000</shadowcolor>
<scroll>false</scroll>
<scrollout>false</scrollout>
</control>
<!-- Nome do album -->
<control type="label">
<left>968</left>
<!--* MULTI-MOD *-->
<top>128</top>
<!--* MULTI-MOD *-->
<width>922</width>
<height>30</height>
<align>right</align>
<font>font_list</font>
<label>$INFO[MusicPlayer.Album] $INFO[MusicPlayer.Year,| ,]</label>
<textcolor>88DDDDDD</textcolor>
<shadowcolor>AA000000</shadowcolor>
<scroll>false</scroll>
<scrollout>false</scrollout>
</control>
<!--* MULTI-MOD *-->
<!-- Track Rating -->
<control type="image">
<left>1588</left>
<top>162</top>
<width>300</width>
<height>38</height>
<texture>$VAR[styleratingstars]$INFO[MusicPlayer.UserRating,,.0.png]</texture>
<colordiffuse>$VAR[value_colorratingstars_PL_song_user]</colordiffuse>
<aspectratio align="right" aligny="bottom">keep</aspectratio>
</control>
<!--* MULTI-MOD *-->
<control type="label">
<left>705</left>
<top>315</top>
<width>300</width>
<height>36</height>
<align>left</align>
<font>font_button</font>
<label>$INFO[MusicPlayer.BitRate,, [COLOR=88DDDDDD]Kbps[/COLOR]][COLOR=50FFFAF0] | [/COLOR]$INFO[MusicPlayer.SampleRate,, [COLOR=88DDDDDD]KHz[/COLOR]][COLOR=50FFFAF0] | [/COLOR]$INFO[MusicPlayer.BitsPerSample,, [COLOR=88DDDDDD]Bits[/COLOR]]</label>
<textcolor>$INFO[skin.string(colorheader)]</textcolor>
<shadowcolor>AA000000</shadowcolor>
</control>
<!-- Barra de cache -->
<control type="progress">
<left>705</left>
<top>300</top>
<width>255</width>
<height>8</height>
<info>Player.ProgressCache</info>
<midtexture>progress_mid.png</midtexture>
<colordiffuse>$INFO[skin.string(colorheader)]</colordiffuse>
<animation effect="fade" end="70" condition="true">Conditional</animation>
</control>
<!-- Barra de progresso -->
<control type="progress">
<left>705</left>
<top>300</top>
<width>255</width>
<height>8</height>
<info>Player.Progress</info>
<animation effect="fade" end="70" condition="true">Conditional</animation>
</control>
<!-- Duracao -->
<control type="label">
<left>705</left>
<top>255</top>
<width>300</width>
<height>27</height>
<align>left</align>
<font>font_titlesettings</font>
<label>$INFO[MusicPlayer.Time] / $INFO[MusicPlayer.Duration]</label>
<textcolor>CCFFFFFF</textcolor>
<shadowcolor>AA000000</shadowcolor>
<scroll>false</scroll>
<scrollout>false</scrollout>
</control>
<!-- Proxima faixa - proximo artista -->
<control type="label">
<left>1200</left>
<top>201</top>
<width>525</width>
<height>45</height>
<align>right</align>
<font>font_button</font>
<textcolor>$INFO[skin.string(colorheader)]</textcolor>
<shadowcolor>AA000000</shadowcolor>
<label>$LOCALIZE[31525]:</label>
<scroll>false</scroll>
<scrollout>false</scrollout>
</control>
<control type="label">
<left>1011</left>
<top>240</top>
<width>712</width>
<height>45</height>
<align>right</align>
<font>font_plot</font>
<label>[COLOR=$INFO[skin.string(colorheader)]]$INFO[MusicPlayer.offset(1).PlaylistPosition,, of ]$INFO[MusicPlayer.PlaylistLength]: $INFO[MusicPlayer.offset(1).Title][/COLOR]</label>
<textcolor>88DDDDDD</textcolor>
<shadowcolor>AA000000</shadowcolor>
<scroll>false</scroll>
<scrollout>false</scrollout>
</control>
<control type="label">
<left>1275</left>
<top>274</top>
<width>450</width>
<height>45</height>
<align>right</align>
<font>font_plot</font>
<label>$INFO[MusicPlayer.offset(1).Artist]</label>
<textcolor>88DDDDDD</textcolor>
<shadowcolor>AA000000</shadowcolor>
<scroll>false</scroll>
<scrollout>false</scrollout>
</control>
<!--* MULTI-MOD *-->
<control type="image" id="880057">
<left>1582</left>
<top>316</top>
<width>150</width>
<height>15</height>
<texture fallback="$VAR[styleratingstars,,0.png]">$VAR[styleratingstars]$INFO[MusicPlayer.offset(1).Rating,,.png]</texture>
<colordiffuse>$INFO[skin.string(colorheader)]</colordiffuse>
<aspectratio align="right" aligny="center">stretch</aspectratio>
</control>
<!--control type="image">
<left>1682</left>
<top>316</top>
<width>45</width>
<height>30</height>
<texture colordiffuse="AA000000">arrow_right.png</texture>
<aspectratio align="right" aligny="bottom">keep</aspectratio>
</control>
<control type="image">
<left>1680</left>
<top>315</top>
<width>45</width>
<height>30</height>
<texture colordiffuse="AADDDDDD">arrow_right.png</texture>
<aspectratio align="right" aligny="bottom">keep</aspectratio>
</control-->
<!--* MULTI-MOD *-->
<control type="image">
<left>705</left>
<top>135</top>
<width>230</width>
<height>98</height>
<aspectratio align="left" aligny="bottom">keep</aspectratio>
<texture colordiffuse="ff3a3a3a">$VAR[recordlabels_path]$INFO[MusicPlayer.Property(Album_Label),,.png]</texture>
</control>
<control type="image">
<!--* MULTI-MOD *-->
<left>990</left>
<!--* MULTI-MOD *-->
<top>270</top>
<width>135</width>
<height>98</height>
<aspectratio align="left" aligny="bottom">keep</aspectratio>
<!--* MULTI-MOD *-->
<texture colordiffuse="ffbababa">$VAR[audiocodec_path]$INFO[MusicPlayer.Codec,,.png]</texture>
<!--* MULTI-MOD *-->
</control>
<!--control type="label">
<!--* MULTI-MOD *-->
<left>1100</left>
<!--* MULTI-MOD *-->
<top>282</top>
<width>135</width>
<height>98</height>
<align>center</align>
<font>font_channels</font>
<textcolor>88DDDDDD</textcolor>
<shadowcolor>AA000000</shadowcolor>
<label>$INFO[MusicPlayer.Channels,,CH]</label>
<scroll>false</scroll>
<scrollout>false</scrollout>
<!--/control>
<!--* MULTI-MOD *-->
<!--control type="image">
<left>1302</left>
<top>310</top>
<width>300</width>
<height>38</height>
<texture fallback="subtitle_rating_0.png">$INFO[Player.StarRating]</texture>
<colordiffuse>$INFO[skin.string(colorheader)]</colordiffuse>
<aspectratio align="left" aligny="bottom">keep</aspectratio>
</control-->
<!--* MULTI-MOD *-->
<control type="image">
<left>1748</left>
<top>208</top>
<width>135</width>
<height>135</height>
<fadetime>200</fadetime>
<texture fallback="DefaultAudio.png" background="true">$INFO[MusicPlayer.offset(1).Cover]</texture>
<aspectratio align="left" aligny="bottom">keep</aspectratio>
</control>
</control>