Building Font Cache, VLC And MPlayer Troubleshooting
Nothing is more frustrating than having to wait until a media player has finished building the font cache, before a video can be played on the local computer system. Especially so, if the "building font cache" window appears every time the media player is used to play videos.
The first question that comes to mind is this: Why is there a font cache at all? It's video, not some textual content that is displayed in the program window. The font cache apparently is used for subtitles and On Screen Displays (OSD). Both VLC Media Player and MPlayer (and variants like SMPlayer) make use of a font cache to display subtitles and OSD.
Both media players seem to create the font cache regardless of the fact if it is needed or not to view the video.
In theory, the font cache is build once, and stored in a directory on the hard drive for faster access to the required data.
Font Cache Location
VLC stores the font cache in the AppData folder in Windows 7, more precisely under username > AppData > Roaming > vlc. The file uses a long cryptic file name and makes use of the extension cache-2. Windows XP users will find the font cache in Documents and Settings > username > Application Data > vlc.
The most common MPlayer font cache locations are username > fontconfig > cache for Windows 7 (and Vista probably as well), and Documents and Settings > XPMUser > fontconfig > cache for Windows XP.
The cache file is as cryptic as the VLC one, seems to use the same generator, but uses the cache-3 extension instead.
Troubleshooting Building Font Cache Issues
The most common problem related to the font cache is the repeated generation of the font cache, followed by crashes and hangs during the building of the cache.
VLC offers no option to disable font caching, at least not directly in the Windows client. Users who are experiencing issues with it should check the VLC directory under user to see if the font cache file is generated. If it is not it could be a rights issue or permission problem.
Deleting the contents of the cache directory to force the player to build the font cache again could resolve the issues as well. Several users have reported problems building the font cache if the AppData folder is stored on a network drive.
It is a bit different if MPlayer is concerned. SMPlayer for instance can pass parameters to MPlayer, and one of those parameters can be used to prevent the building of the font cache.
To test that press CTRL-P in SMPlayer to open the options. Switch to Advanced > Options for MPlayer and enter -nofontconfig in the Options field.
Some users may also need to change the subtitle display format. This is done by clicking on Subtitles > Font and colors. A click on Enable normal subtitles should resolve the issue.
A last resort is the use of a process monitor to see if a specific font cannot be loaded by the video player. Process Monitor is a free Microsoft tool that displays those information. The easiest way to use the program is to create a new filter for vlc.exe (or the name of the video player that is used on the PC) to see only the activity of that player.
Using portable media players
Another possibility is to make use of portable media players. This can be especially helpful in cases where the font cache file is not generated, or generated whenever a video is played.
Portable VLC will still generate a font cache, but it will be stored in the portable directory, not in AppData or another Windows system directory. This alone could resolve several of the issues users have with the building of the font cache.
The portable version of SMPlayer makes use of the -nofontconfig parameter so that the font cache is not build during usage.
Share your tips: Have you noticed the building font cache message in your video player? Let us know in the comments.Advertisement