Home of the Squeezebox™ & Transporter® network music players.
Page 1 of 4 123 ... LastLast
Results 1 to 10 of 38
  1. #1
    Member nico's Avatar
    Join Date
    May 2005
    Location
    Tokyo, Japan
    Posts
    75

    Help debugging weird font/display issue

    I recently found the display on my software player (SoftSqueeze) has become completely garbled when rendered in small sizes. I know SoftSqueeze isn't supported any more but originally it worked fine, and apart from this, still continues to work like a charm in all other areas. I'd really like to continue using it. And I've spent many hours already trying to get to the bottom of what the problem is.

    I've confirmed it's not the missing Font::FreeType problem others have reported with display issues. The LMS Graphics directory seems intact with no font files missing or altered. Log file doesn't report any errors. My hunch is that this problem could have crept in when I upgraded my Mac OS from Mavericks to El Capitan - a long time ago. Differences in the Perl packages bundled with the OS? The LMS server is v7.9.0 running on OS X 10.11.2 - EN - utf8, x86_64 arch, perl 5.18.2. The player is showing up in LMS as "Player Model: SoftSqueeze, Firmware: 2"

    Any pointers would be appreciated. I am not even sure whether I should be investigating the player side (SoftSqueeze) or this is an LMS server issue. Thanks.Name:  Screen Shot 2018-10-12 at 20.24.07.png
Views: 261
Size:  61.8 KB

    PS: FWIW, when I go to LMS settings and select the player display options, Fonts, the only choices I see are ones like full_n, standard_n, high, light, threeline etc. which I think are all bitmapped fonts (.bmp files). Could that be the issue?
    Last edited by nico; 2018-10-12 at 12:51.

  2. #2
    Senior Member
    Join Date
    Oct 2005
    Location
    Ireland
    Posts
    16,720
    For older SB devices LMS generates display bitmap from font files and then sends bitmap to the player.

    There are three areas to explore:

    1. Do you have all the right fonts on your LMS - what fonts are in the LMS Graphics directory.
    2. What "font" setting have you set for the softwsqueeze player - look at WebUI Settings/Player/Display -
    3. Softsqueeze is Java based and has to simulated rendering the bitmaps onto the display - did the Java enviroment change with the OSX upgrade ? Does Softsqueeze have any message logged in its log ? are there any errors when you run Softsqueeze from the command line in Terminal ?

  3. #3
    Member nico's Avatar
    Join Date
    May 2005
    Location
    Tokyo, Japan
    Posts
    75
    1. Do you have all the right fonts on your LMS - what fonts are in the LMS Graphics directory
    Code:
      /MacMini:/Library/PreferencePanes/Squeezebox.prefPane/Contents/server/Graphics:
      total 18088
      drwxrwxr-x  30 root  admin     1020 Sep 16  2014 .
      drwxrwxr-x  41 root  admin     1394 Oct 31  2017 ..
      -rw-rw-r--   1 root  admin     4549 Sep 16  2014 CODE2000.HTM
      -rw-rw-r--   1 root  admin  8377000 Sep 16  2014 CODE2000.TTF
      -rw-rw-r--   1 root  admin   477820 Sep 16  2014 FreeSans.ttf
      -rw-rw-r--   1 root  admin      856 Sep 16  2014 blockanimateSB2.1.font.bmp
      -rw-rw-r--   1 root  admin      266 Sep 16  2014 blockanimateSBG.1.font.bmp
      -rw-rw-r--   1 root  admin   135724 Sep 16  2014 corefonts.bin
      -rw-rw-r--   1 root  admin    18940 Sep 16  2014 full.2.font.bmp
      -rw-rw-r--   1 root  admin    18940 Sep 16  2014 full_n.2.font.bmp
      -rw-rw-r--   1 root  admin     8248 Sep 16  2014 high.2.font.bmp
      -rw-rw-r--   1 root  admin     8632 Sep 16  2014 huge.2.font.bmp
      -rw-rw-r--   1 root  admin     5640 Sep 16  2014 large.2.font.bmp
      -rw-rw-r--   1 root  admin     9700 Sep 16  2014 light.1.font.bmp
      -rw-rw-r--   1 root  admin    10096 Sep 16  2014 light.2.font.bmp
      -rw-rw-r--   1 root  admin     9700 Sep 16  2014 light_n.1.font.bmp
      -rw-rw-r--   1 root  admin    10096 Sep 16  2014 light_n.2.font.bmp
      -rw-rw-r--   1 root  admin     2376 Sep 16  2014 logo.font.bmp
      -rw-rw-r--   1 root  admin     4418 Sep 16  2014 logoSB2.2.font.bmp
      -rw-rw-r--   1 root  admin     3192 Sep 16  2014 medium.1.font.bmp
      -rw-rw-r--   1 root  admin     3804 Sep 16  2014 medium.2.font.bmp
      -rw-rw-r--   1 root  admin     3872 Sep 16  2014 small.1.font.bmp
      -rw-rw-r--   1 root  admin     3872 Sep 16  2014 small.2.font.bmp
      -rw-rw-r--   1 root  admin     9568 Sep 16  2014 standard.1.font.bmp
      -rw-rw-r--   1 root  admin    13132 Sep 16  2014 standard.2.font.bmp
      -rw-rw-r--   1 root  admin     9568 Sep 16  2014 standard_n.1.font.bmp
      -rw-rw-r--   1 root  admin    13132 Sep 16  2014 standard_n.2.font.bmp
      -rw-rw-r--   1 root  admin     8248 Sep 16  2014 threeline.1.font.bmp
      -rw-rw-r--   1 root  admin     8248 Sep 16  2014 threeline.2.font.bmp
      -rw-rw-r--   1 root  admin     8248 Sep 16  2014 threeline.3.font.bmp
    2. What "font" setting have you set for the softwsqueeze player
    I configured the player with all available fonts, and cycled through them all using the Size button. They all exhibit the problem (except the full-size font).

    Name:  Screen Shot 2018-10-13 at 10.49.07.png
Views: 165
Size:  65.3 KB

    did the Java environment change with the OSX upgrade ?
    It's very likely that Java was updated with the OS upgrade from Mavericks to El Cap. I'll look deeper into this area. I have dissected the SoftSqueeze.app package and it includes all the dependent jarfiles - however, there is no Java runtime included. This suggests the app does indeed rely on the installed OSX Java runtime. And, digging into the Info.plist file, I can see it's using the native install4j mechanism to launch the JVM and boot the app. So yeah, this could be it.

    Does Softsqueeze have any message logged in its log ?
    Checked in /Applications/Softsqueeze.app/Contents/Resources/app/error.log. There are a few Java exceptions logged in there, but nothing indicating an issue with fonts.

    Are there any errors when you run Softsqueeze from the command line in Terminal ?
    Will try this and report back. Thanks

  4. #4
    Member nico's Avatar
    Join Date
    May 2005
    Location
    Tokyo, Japan
    Posts
    75
    Are there any errors when you run Softsqueeze from the command line in Terminal ?
    I got the app to launch via the command:

    Code:
    /Applications/Softsqueeze.app/Contents/MacOS/JavaApplicationStub
    Then went into the app settings and enabled all the Debug categories. There is a ton of diagnostic data now coming out on the terminal... no obvious errors so far, but lots of information on the real-time display process eg:

    Code:
    47350 [SlimTCP-1] DEBUG graphics  - renderDisplay cmd=grfe tran=c tParam=0 width=320
    47350 [SlimTCP-1] DEBUG graphics  - request display repaint ...
    47351 [Display animation] DEBUG graphics  - request display repaint ...
    47357 [Display animation] DEBUG graphics  - request display repaint ...
    Will go through this output in more detail... there may be a clue there.

    Another idea is to install an older version of the JVM and force the app to use that.

    Thanks
    Last edited by nico; 2018-10-13 at 01:53.

  5. #5
    Senior Member
    Join Date
    Oct 2005
    Location
    Ireland
    Posts
    16,720
    I've tested Softasqueeze with Java 10 on a Linux box - and it was OK but using "standard" font.

    The screen shot you showed had an unusual font setting (looked to be a ttf one) .

    For a direct comparison can you post a screen shot of your player with a SB3 large skin and font using "standard" and at a top level menu (e.g. Radio, Music Library)

  6. #6
    Member nico's Avatar
    Join Date
    May 2005
    Location
    Tokyo, Japan
    Posts
    75
    Here's what I see with a SB3 large skin, standard font, and at Music Library menu level

    Name:  Screen Shot 2018-10-13 at 17.25.41.png
Views: 158
Size:  67.1 KB
    Name:  Screen Shot 2018-10-13 at 17.29.48.png
Views: 157
Size:  21.4 KB
    Name:  Screen Shot 2018-10-13 at 17.29.23.jpg
Views: 159
Size:  45.8 KB

  7. #7
    Senior Member
    Join Date
    Oct 2005
    Location
    Ireland
    Posts
    16,720
    Quote Originally Posted by nico View Post
    Here's what I see with a SB3 large skin, standard font, and at Music Library menu level

    Name:  Screen Shot 2018-10-13 at 17.25.41.png
Views: 158
Size:  67.1 KB
    Name:  Screen Shot 2018-10-13 at 17.29.48.png
Views: 157
Size:  21.4 KB
    Name:  Screen Shot 2018-10-13 at 17.29.23.jpg
Views: 159
Size:  45.8 KB
    It looks like only the top line is affected (i.e 2nd line is OK) and each chacter of top line is affected in the same way, it seems the character spacing is the problem - I think the problem is in LMS and something to do with LMS it "thinks" the width in pixel of each char or the number of display pixels alloted to each char.
    edit:

    If it is to do with display pixels then try changing font from "standard" to "standard_n" - this is a narrower font and if it is displayed properly then I think issue is with display pixel width
    Last edited by bpa; 2018-10-13 at 08:00.

  8. #8
    Member nico's Avatar
    Join Date
    May 2005
    Location
    Tokyo, Japan
    Posts
    75
    Here's what I get with the standard_n font.

    Name:  Screen Shot 2018-10-13 at 20.28.49.jpg
Views: 152
Size:  28.8 KB

    Not much better.

  9. #9
    Senior Member
    Join Date
    Oct 2005
    Location
    Ireland
    Posts
    16,720
    Quote Originally Posted by nico View Post
    Here's what I get with the standard_n font.

    Name:  Screen Shot 2018-10-13 at 20.28.49.jpg
Views: 152
Size:  28.8 KB

    Not much better.
    But it shows the error as clipping the leading edge of each char and by the same amount even though font has changed which means error is in LMS.

    Can you update to Perl 7.9.2 ?

  10. #10
    Member nico's Avatar
    Join Date
    May 2005
    Location
    Tokyo, Japan
    Posts
    75
    I have found something new which is making me thing it's the player side (SoftSqueeze). I wrote a program to capture the raw bitmap data coming from LMS to SoftSqueeze (slim protocol "grfe" command) and render it into a graphical image. My thinking was if the bitmap from the server looks messed up the same as the player, then LMS is the cause. Else if the bitmap from LMS is clean, it points to the player.

    The results indicate all the raw display bitmap data being sent from LMS is completely clean, for every available display font.

    Here is an example of what the player display looks like:

    Name:  Screen Shot 2018-10-13 at 22.11.02.jpg
Views: 146
Size:  26.1 KB

    The raw display bitmap (320x32 dot) being sent from LMS is this:

    Name:  grfe-00006,offset=0,transition=c,param=0.png
Views: 146
Size:  361 Bytes

    So no weird font artefacts are visible. I am attaching a few other decoded raw bitmaps captured from the grfe command while trying different fonts on the player (all looked bad on the player).

    Name:  grfe-00000,offset=0,transition=c,param=0.png
Views: 144
Size:  452 Bytes

    Name:  grfe-00004,offset=0,transition=c,param=0.png
Views: 142
Size:  286 Bytes

    Name:  grfe-00023,offset=0,transition=c,param=0.png
Views: 142
Size:  368 Bytes

    I think now will start looking deeper into the Mac Java environment on the client. When SoftSqueeze was released Java was at 1.4, that is a real long time ago.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •