InflatableMouse-temp

From JRiverWiki
Revision as of 14:13, 16 January 2014 by Inflatablemouse (talk | contribs)

Jump to: navigation, search

This is InflatableMouse' scratch page.


Note: this page is not done yet!

Overview

MC is usually a pretty well-behaved application. I have it installed on a wide variety of known-stable hardware, and on most of them, it runs well trouble-free with little needed system modification. However, it is also a powerful application. It has a high-speed database at its core, that is custom designed to do what it does, and do it with the lowest possible latency. Going hand in hand with this, it needs to be able to access this library data quickly, and the UI is built around the fact that it (in most circumstances) can "in real time". This fact can sometimes magnify the appearance of responsiveness if you have another underlying issue. And, of course, it has a raft of options, some esoteric, and supports an immense amount of weirdo, high-end, often misbehaving, nerd hardware.

And, of course, it runs on a computer. Which is... Well, a computer. So it is subject to all of that regular stuff too.

This won't solve everything, or every issue. But, if you post here and ask for help with a "performance" or "crashing" related issue, this is what we're (not just me, but a bunch of us here) are going to think about and suggest:


Make Sure You Are Running The Latest Build

The version of MC available on the main external JRiver Download Page is not always, or even typically, the most recent build. They are builds that are older, and were (usually) pushed there because they were generally stable or fixed some particularly nasty bug they want to push out to everyone. It is tempered, and only updated once in a while, if for no other reason than it isn't annoying that it pops up the "Update Me" dialog as often.

But there are also public builds available here on Interact, which generally come every week or so (though this timing fluctuates throughout development). You can get these by either:

  1. Go to: Options > Startup > Update Channels and change it to Latest.
  2. Download them manually here from Interact. The latest build is always "pinned" inside a thread at the top of the main board for your particular version of MC (such as: JRiver Media Center 19 for Windows, or JRiver Media Center 19 for Mac). When you open the board, it will appear as a thread near the top, and will contain the build notes and a download link for the build.
MC19-Build Thread Example.png

You can usually install new builds "over top" of existing installs of MC. However, if you are having trouble, a good, later, troubleshooting step would be to try to uninstall/reinstall (we'll get to that in a bit). But, if you're having a problem, Step One is always to see if they've already fixed the issue without you even trying. It isn't worth discussing if it doesn't happen with the latest build, so try that first.

Know What "Kind" Of Misbehavior You're Seeing

If MC is...

Crashing

This is when an application forcibly exits without giving you an opportunity to respond. It will almost always show an error dialog of some kind (either as the last, dying gasp of MC itself, or from the OS), but it is non-recoverable and it ends the application immediately. The error message will often be something like: "Media Center XX.exe has encountered an error and needs to close" on Windows, or on OSX the OS says "X application quit unexpectedly".

Hanging

This is when an application's UI becomes unresponsive. The program might be still working, but if so and it goes on long enoug, it has either: forgotten to update its UI thread, or its UI thread is blocked for some reason. Windows will often show the "Application X" is not responding dialog box, but in this case you are able to either force it to quit, or wait longer to see if it comes back to life. In many cases, the application does eventually "come back to life". In some cases, an application really is "deadlocked". With multi-threaded applications like MC this usually means that two competing threads are both waiting on the same resouce, and stuck in an endless loop. Nothing ever really "goes wrong" (as far as the application can tell), but it gets stuck.

Blue Screen, Kernel Panic, or Sudden Reboot

This always indicates a hardware issue or system corruption. It can be caused by bad drivers that need to be removed or updated, broken hardware, or a borked OS installation. In any case, if your machine actually crashes and has to reboot, suddenly, then MC itself cannot be the cause. It can be the catalyst that exposes an otherwise possibly unnoticed issue, but it cannot (as in, the OS doesn't give it the power to) actually cause one of these errors. Only privileged code can do that (drivers and OS code, for example).

Stuttering, Hiccuping, or Quality Of Playback Issues

These are other, sometimes related, types of issues. For the most part, I won't address "quality" issues here. However, hiccuping or stuttering can also be related to many of these issues and resolved by these steps.

I'll primarily address the top two types of issues here. For OS crashes or reboots, you have to figure out what is causing the hardware issue. Some of these things might help, but if you see the issue in MC, you'll almost certainly eventually see it elsewhere unless you figure it out. Quality issues are discussed thoroughly on these forums, so try searching creatively a bit or ask for help.