I sometimes have trouble playing content as it has to be transcoded for my android device by my weak NAS. Using mx-player with the codec pack installed usually does the trick then. The problem here however is that the mx-player unfortunately does not talk to the plex server. Thus I loose the ability to synchronize my watched status as well as the position I stopped between devices. That is a pity. As plex does not develop its own player maybe it would make sense to team up with the mx-player developers or just use their API to fully integrate the player with plex. That would provide plex users on android with an amazing player with nice features and a huge set of codecs so more content could be streamed directly.
I use Android for a lot of my viewing remote from the server. Initially I used either local to the Android files and MX-Player or various versions of XBMC or DLNA servers to get to the media. I found those to be rather cumbersome and problematic as my library size got larger and larger.
Then I tripped upon Plex. Here was an answer to tracking watched status, not having items get “lost” in my library, or just plain not working. As I delved deeper into Plex I thought that having the client handle transcoding using the external player was a viable answer. It isn’t. You are still at the mercies of the bandwidth of the server or client app controlling your viewing experience. If the bandwidth doesn’t support the stream you SoL.
Enter making the files more streamable. Getting the media into the right format for streaming can reduce the need for transcoding if bandwidth limits aren’t the issue, but file format and codecs are. If bandwidth limits are the issue, then multiple version of the same video are the most bang for the buck for watching something on a slower CPU on the PMS device.
Trust me, I was in the same place you are almost 18 months ago. Now I realize that there are better ways to do what I want done, not just for myself but for all of my users. Minimize transcoding and maximize Direct Play is the only way you are going to find enjoyment with Plex on a small CPU device. My original NAS was little better than the small tablet I use to view on for CPU power. If I had the media in the right formats, things worked. If not, I was buffering so badly as to make the show completely unwatchable.
Start that by putting your media into the best streaming format you can get it in… MP4 H264 with AAC audio in the first track and AC3 or DTS in the second. Get as many of the subtitles as you can in SRT format, as most devices no longer need those transcoded into the video stream to work. You can do this with either Handbrake which is going to likely require you moving files across the network, by custom conversion scripts, or the Plex Optimize Media feature that is available with Plex Pass.
Integrating MX Player with Plex is not going to be a viable long term solution. It’s relying on software for transcoding, and not hardware, on a device with less of a CPU than exists in your NAS. Even though Plex itself does transcoding software only, the CPU in your NAS is still likely more powerful than the one in your tablet. And you see the results of it’s transcoding every few minutes as it buffers.
I know your opinion on that and that converting might the better solution in the long run. However if switching to that player is not worth because of the codecs it is till worth it because it is a nice player. For example it offers that nice intuitive gesture control for searching, brightness, and volume.