QNAPs come with a media server pre-installed ready to go - Twonky - which is pretty decent app with iPhone apps for beaming and controlling playback from your library.
However, after a recent update Twonky was unable to play MKV files. It did appear that by renaming the files to .avi or .wmv they could play, but that is a rather boring solution to the problem.
I read that Serviio could possibly do the job better so set out to install and test. First needed the JAVA files from here. You can download either Java SE for Embedded 7 or Java SE for Embedded 6. The version you need is either "ARMv5 Linux - Headless EABI, SoftFP ABI, Little Endian" (for Java 7) or "ARMv5 Linux - Headless EABI, SoftFP, Little Endian" (for Java 6).
Put the file into your /share/Public folder leave it as .tar.gz also for some reason the file only downloaded properly with IE.
After installing JRE crack on with the Serviio install, there is a QPKG you can grab here
Best thing about serviio apart from playing all the files is the '**' mark on your last watched episodes, so if you have a whole series to watch its easy to keep track of where you are - something I really missed when moving from XBMC to Twonky. Serviio also supports resuming of files, so if you stop playback and restart later it will pick up from where you left off.
Update: Installed Serviio 1.4 using the instructions here http://advancedhomeserver.com/serviio/
The web ui has a bug and prevents license file uploading. But this can be done from the command line http://wiki.serviio.org/doku.php?id=upload_license_via_command_line