The Roku 2 box is very clear on what it supports:
Given the above list, I loaded up our latest test suite on an NTFS formatted USB3 SSD, expecting to spend some time evaluating the local media playback capabilities. The Roku USB Media Player channel was installed and the USB drive was promptly recognized. Out of curiousity, I went to the Help section. As of firmware version 4.1 build 1275, the supported file types dialog box only listed the following:
Out of our 57 test streams, only 3 streams were recognized. The first one was an MP4 file with H.264 video and AAC audio. Selecting the video resulted in a blank screen. The SoC just couldn't support the 9 reference frame L 5.0 H.264 clip. Kudos to Roku for not crashing the box. The second one was actually a 240p M4V extension file, and it played back without any issues. The third file to be recognized was a 1080p60 MP4 file from a Sanyo camcorder. The clip played back without any artifacting, but it seemed to drop every alternate frame, and the panning appeared very staggered. I believe that the SoC supports only upto 1080p30 video, and Roku must be appreciated for trying to decode the video at that frame rate.
Considering the above test results, I can only say that the Roku 2 XS is almost useless for local media playback. I have seen people solve these type of media compatibility issues in two ways. The first one is to try to re-encode the content to fit in with the players' restrictions. Unfortunately, my opinion is that it is often better in terms of time and money to just invest in a different player that doesn't force you to re-encode your existing content.
Many devices with restrictive file format / codec compatibility make up for their shortcomings by advertising DLNA certifications. Roku 2, unfortunately, is not DLNA certified also. (The fact that DLNA is cause for many a consumer's disappointment is a story for another day.) However, for users running the Plex Media Server on their PCs, a private channel (Plex) can be used to play back the media. Roku 2 seems to require a specific fix in the server program. I didn't have much luck with this app with respect to the few random MKVs and AVIs that I tried, but users seem to be reporting a little bit of success in the above linked thread. That said, the media server needs to transcode to H.264 for the Roku 2 to understand the stream.
Personally, I think it is best if all media files reside on a low power NAS / file server. Transcoding is an overhead that is best avoided. There are a number of cheap local media streamers that get the job done better than the Roku 2 when it comes to playback without transcoding.
Users on AVSForum have also complained about wrong color levels being output (0 - 255 instead of 16 - 235). Roku has acknowledged this issue and promised a fix in the next firmware release.