Welcome to Tesla Motors Club
Discuss Tesla's Model S, Model 3, Model X, Model Y, Cybertruck, Roadster and More.
Register

Album art goes from large to small

This site may earn commission on affiliate links.
It happens all the time to me. It seems to get smaller each time the list of songs cycles through, both on the small and large display. Rebooting the large display fixes the problem on both screens until the songs cycle through again. Each cycle reduces the size. As far as I can tell, it happens on all songs with album art. About 50% of the songs have no art at all and 60-70% have either no text or only partial text.
 
Jerry33, please explain.

My guess is that the part that figures out the size of the artwork is in a loop rather than outside of it. The initial calculations takes the album art size and multiplies it by some calculated factor. Then when it's through one iteration of the loop, it uses the same factor to calculate a new size. So instead of looking like this:

$factor = CALCULATEsize($albumArtRef, $song); # Here the factor gets set at the beginning and doesn't change.

while($play = "on") {

PLAYandDISPLAY($songListRef{ $song }, $albumArtRef, $factor);

}

It's:

while($play = "on") {

$factor = CALCULATEsize($albumArtRef, $song); # Here the factor gets changed each time through the loop.
PLAYandDISPLAY($songListRef{ $song }, $albumArtRef, $factor);

}

Of course, the real code is much more complex, but the idea is there.
 
My guess is that the part that figures out the size of the artwork is in a loop rather than outside of it. The initial calculations takes the album art size and multiplies it by some calculated factor. Then when it's through one iteration of the loop, it uses the same factor to calculate a new size. So instead of looking like this:

$factor = CALCULATEsize($albumArtRef, $song); # Here the factor gets set at the beginning and doesn't change.

while($play = "on") {

PLAYandDISPLAY($songListRef{ $song }, $albumArtRef, $factor);

}

It's:

while($play = "on") {

$factor = CALCULATEsize($albumArtRef, $song); # Here the factor gets changed each time through the loop.
PLAYandDISPLAY($songListRef{ $song }, $albumArtRef, $factor);

}

Of course, the real code is much more complex, but the idea is there.

So the problem is the display is written in Perl ;-)