Mscore font not loaded in 1.1 on Mac OS X

• Oct 10, 2011 - 23:54
Type
Graphical (UI)
Severity
S4 - Minor
Status
closed
Project

There have since 2010 several reports of this and similar problems: Notes are displayed incorrectly as square boxes (font error characters) (here with MuseScore 1.1 on Mac OS 10.6.4). The suggestion to remove all fonts from the system reported as damaged or with minor problems did not help in my case. However I found that the nightly build r4829 of Sept 30th 2011 indeed does display correct notes on my Mac. Of course many other things won't work with the nightly build (and I don't expect them to), but this convincingly shows that the problem is not one within the Mac OS, but within the MuseScore software itself. I have started composing on MuseScore for my choir. It is a major annoyance that I cannot keep on producing and printing scores with this software (worked fine in 2010). Would some able programmer *please* get this fixed for good (and don't just state that the problem can't be reproduced. That to me sounds tantamount to saying "I don't know what we're doing either..." :-)
I have also observed that not only the notes in the scores are affected but also notes in the toolbars and other symbols in the toolbars. For instance the time signature 4/4 is displayed as z/z. S. attached pictures. Maybe this helps figuring out what is wrong with the font display. I also append a record of my output of a -d terminal command (/Applications/MuseScore.app/Contents/MacOS/mscore -d ) as suggested here. This contains the lines:

Sym: character 0xe104(57604)  are not in font 
Sym: character 0xe105(57605)  are not in font 
Sym: character 0xe106(57606)  are not in font 
Sym: character 0xe107(57607)  are not in font 
Sym: character 0xe108(57608)  are not in font 
Sym: character 0xe109(57609)  are not in font 
Sym: character 0xe10b(57611)  are not in font 

From that it seems the MScore1 font is broken. If characters cannot be found. Or is merely some assignment of font symbols broken, because my screenshots show that characters are found, only they are the wrong ones.

Earlier similar bug reports:
http://musescore.org/en/node/5869
http://musescore.org/en/node/6771
http://musescore.org/en/node/11409
http://musescore.org/en/node/4995
http://musescore.org/en/node/12826
http://musescore.org/en/node/12612
http://musescore.org/en/node/10022
--

global share:
configured localeName
real localeName
load translator
load translator from
load translator failed
using PortAudio Version: PortAudio V19-devel (built Jul 4 2009)
in stat: : No such file or directory
in stat: : No such file or directory
Init midi driver failed
load soundfont
Unable to open file "/Applications/Music Notation Software/open source software/Muse Score notation (alpha version)/jul 2011 v1.1/MuseScore.app/Contents/Resources/sound/TimGM6mb.sf2"
printer DPI 12001200,000000(72) display PDPI 72,000000(72) DPMM 472488,188976
LibraryPath:
LibraryPath:
Sym: character 0xe104(57604) are not in font
Sym: character 0xe105(57605) are not in font
Sym: character 0xe106(57606) are not in font
Sym: character 0xe107(57607) are not in font
Sym: character 0xe108(57608) are not in font
Sym: character 0xe109(57609) are not in font
Sym: character 0xe10b(57611) are not in font
Plugin Path
Plugin Path
Register Plugin
add Menu
add action
Register Plugin
add action
Register Plugin
add menu
add action
Register Plugin
add action
Register Plugin
add action
Register Plugin
registerPlugin: add action idx 5
Load plugin: no menu property
Register Plugin
add action
Register Plugin
add action
MuseScore::changeState: STATE_DISABLED
start event loop...
preferences.checkUpdateStartup: 720
lastupdate: 30.09.2011 01:05:07.685
enterState <>
enterState
MuseScore::changeState: STATE_NORMAL
enterState <>
enterState
2011-09-30 01:31:09.160 mscore[294:903] Cannot recognize type of executable for CFBundle 0x1e0a6c70 (not loaded)
2011-09-30 01:31:10.954 mscore[294:903] Cannot find executable for CFBundle 0x1e0c8d70 (not loaded)
2011-09-30 01:31:11.082 mscore[294:903] Cannot find executable for CFBundle 0x1e0cb440 (not loaded)


Comments

Hey tut, very nice write up. You mentioned, it worked fine in 2010. Can you recall what MuseScore version you were using then?

The cause of this problem should be found in Qt framework where MuseScore is built on. I'm not going to make guesses any further and leave the rest of the investigation/explanation for Werner who is the MuseScore lead developer.

As you can't reproduce the problem in the nightly build, we can say it's fixed in there, due to the usage of a more recent Qt version. I will now check with lasconic what we can do for the next 1.x release. If the answer is that we will need to upgrade to the next Qt release, than this might bring with it series of new bugs. Perhaps the answer is to patch the Qt release used in the next 1.x version for this specific problem only.

To be continued!

Thomas, thanks for the reply.
To answer your question: I'm not entirely sure when I changed versions. But it is well possible that the last properly working version was even a prerelease version like 0.95 I used (then on a Mac with OS 10.4.7. I bought a new computer with MacOS 10.6.4 in Jan 2011). As far as I can tell I, installed v1.0 only in Feb 2011. That's when the bugs first started showing up here.
I'm glad somebody is getting on the case of this. Thanks for that. Alas me as a non-prgrammer probably can't help much (when I read "Qt" the first time in the forum, I thought it meant "QuickTime"...:-). Tell me if there is anything I can do.
Cheers,
Tut

I talked this through with Werner and Lasconic, and it seems we may need to wait for Qt4.8 which is coming out real soon. Werner closest guess is that it is a problem in Qt with the font database code.

The best we can do for now and build MuseScore 1.x with a Qt 4.8 beta build and pass it on to you. So stay tuned.

Thanks for your attention to this problem. You suggest we'd have to wait for a new Qt to come out. But as I wrote, the nightly build r4829 of Sept 30th 2011 displays correctly (it uses Qt 4.7.3.). So it seems to little me, that all the correct coding is already available there. Why not build on that? What am I missing? Thanks again.

MuseScore nightlies are built on what we call the "trunk". It's a very different codebase than the 1.1 one (the branch). If they both use the same Qt version for the moment, there are several differences in the way they handle fonts. To begin with the font used for displaying the elements in the score (mscore-20) is a TTF font in the 1.1 serie and a OTF file in the trunk. Moreover, the branch uses fonts loaded from the virtual filesystem in the MuseScore binary while the trunk uses a specific setup for MacOSX by embedding the font in the app bundle instead of the binary.

In order to test, I create a build with branch but using the app bundle approach and sent it to tut. It didn't solve the problem. I rollbacked the changes and I'm now building a version using the OTF file. The font could have changed in the trunk, a lot more than just the format (symbol not at the same place etc...) but at least we will have a clue.

Thanks for lasconic for his consideration and all his work. I'm available for running further test versions of MuseScore.

Status (old) active fixed

I am happy to report that with Version 1.2 the notes are again displayed correctly (in Mac OS 10.6.4 Snow Leopard). Thanks to anyone who has helped to solve this.