How to make your TV a Smart TV. Reviews and Tutorials 

Twitter RSS
formats

External players support (MX player, etc…) fix for XBMC on Android: perfect HD with no compromise

This is a fix for external player support on the latest Android version of XBMC. This fixes the possibility to run MX Player on the latest Gotham build. Not interested in the technical details? Scroll to the bottom of the article for the download link.

I’ve mentioned before that one of the great things about XBMC is that it can be customized in order to run external players on Android. Although the xbmc team has made awesome progress on hardware acceleration recently, it seems many popular android mini PCs run on somewhat unsupported chipsets (AllWinner and Rockchip). This means hardware acceleration can be choppy at best for these devices. This issue applies for example to the MK802 family (MK802 I and II run on an Allwinner CPU, while MK802 III and IV run on a Rockchip CPU).

So for these devices that don’t get the benefit of hardware acceleration in xbmc, the ability to be able to launch an external player (such as the awesome MX Player) while still getting the great xbmc interface is definitely a great thing.

Unfortunately, “external player” support on Android for XBMC has been broken almost as soon as it got submitted to their repository, after a cleanup that messed a few things up.

This is why I had been recommending an old build from last year, in this article. That xbmc build did have a patch with a fix for external player support. As I’ve also mentioned, the “XAF” builds are too heavy for most of the Android mini PCs. The binary of the XAF builds is close to 100MB, while a regular xbmc apk is closer to 50MB.

I finally got the courage to learn git, get the Android sdk, ndk, install a virtual machine running linux, figure out how to get adb to recognize my chinese Mini PC, and fix the issue in the xbmc code.

The technical details can be found here. Basically the StartActivity function from the xbmc android code was not creating the correct intent, and was also messing up the URI parameter.

How to install and use

The apk can be downloaded below. I’ve mentioned it in the past, but on some mk802 devices and other clones, the internal storage is extremely small, and XBMC requires a lot of it. You should make sure you have at least 250MB free on your internal storage or the first run might not even work.

To install it, you might need to uninstall your previous xbmc install first. My build is a debug build and cannot be installed on an official build before uninstalling that one first.

In order to use MX Player in xbmc, you need to create a file playercorefactory.xml and put it in /sdcard/Android/data/org.xbmc.xbmc/files/.xbmc/userdata. Details here.

A sample playercorefactory.xml can be found here. Since libstagefright (hardware acceleration) is available in this build, I think it would be possible (recommended) to tweak that file in order to run the external player only for files above a given resolution. SD works fine in XBMC, and 720p is also acceptable with libstagefright (that’s for people on rockchip CPUs, maybe not on AllWinner). Maybe I’ll submit such a file here one day.

If you’ve done things correctly, mx player should now start when you launch a video in xbmc. Tadaa, you got the latest nightly build with external player support back :)

Except the fact that this is a debug build (which, by the way, most builds are except the ones from the official xbmc devs), this is probably today the best build you can find if you are running on an mk802 III, IV, or one of their many clones (mk809, tronsmart, etc…) : it has libstagefright support and the latest and greatest code from the xbmc repository, none of the additional crapware/addons from the xaf build, and is much more recent than the previous version  I recommended. Also, since it has both external player support and libstagefright, it currently is “better” than the latest official builds :)

Download

Download here. Enjoy and let me know if you run into issues :)

Now that I fixed xbmc on my mk802 III, and with the addition of my method to watch Netflix with no lag from outside the US, I’m getting closer to having the perfect Smart TV for less than $50 :)

33 Responses

    • Itzik

      Hi,

      I followed your instruction with my android tv box (ugoos ut1), but while trying to play file via nfs the xbmc crashes all the time.
      i looked at the logs and it seems that it tries to open the file with mxplayer and failed. do you have some ideas how to fix it.

      Thanks,

      Itzik

  1. Ramiro

    Hi Itzik, I think MX Player has issues playing over network.
    Im using this version with a 3tb usb disk attached to my riko iv and it is by far the best xbmc version I have tried.It works perfect with most 720p videos, so I modofied playercorefactory to lunch mx only for 1080, as suggested in the official xbmc wiki.
    Thanks a lot to the author for this awesome work, and I have to ask, could you fix the very last official alpha from xbmc, the 9th, or even better could you teach us how to fix the official versions so we can have always the latest version patched until they figure out how to deliver full hd decoding for our rikos?

    thanks a lot!!

  2. kay

    Hi
    thanks for the instructions. one question/issue:
    i cant add ressources with the smb protocol (even if I edit the sources.xml manually).did you removed this? do you have the same issue?
    Best regards
    Kay

  3. Achmad Fienan

    Hi,

    I just stumbled to your web while trying to find a solution for usinng XBMC in my android box (MiiPC in this case).

    I use the version in your link (version 13) and the playback doesn’t have any stutterring issues now :D
    But I have a question, it seems XBMC is running in windowed mode. How can I change it to Full Screen mode?

    And also, is the XBMC version that you put in the link already use MX player as the playback? because i didn’t see any MX player opened during the playback?

    Thanks alot,

    With your permission I would like to spread this good solution to other fellas who have the same problem :D

    • admin

      your xbmc windowed mode issue is strange, I didn’t even know xbmc could run in windowed mode on Android… would you care to share a screenshot?
      And of course, please feel free to spread the word!

  4. Andrew

    Awesome article, thanks mate, works like a charm! I’m really gratefull, you saved me a lot of time and money!

  5. gonzalo

    Hi! I installed your xbmc version, but when I look for the org.xbmc.xbmc folder in android/ data, it´s just not there. Do you know what the problem could be??
    Thanks.

  6. Paul

    Ok so I’ve been bought an android smart tv box for Xmas, there’s no indication to what make it is but there on ebay for around £50.
    I can’t seem to install the netflix app on it, and I’m not a tech guru. I’ve read a few threads but I’m totally confused can somebody please help
    Thanks Paul

  7. geroge

    Absolute legend, you just saved me launching a media player out the top story window at work ! For my circumstances its all local content on a usb hard drive but now plays full hd content instead of lagging and stopping !

  8. Jose

    Works perfectly in Noontec A9/Woxter TV 100 with Android ICS 4.0.4. Thank you!

  9. Hello Sir.
    I have a cheap Android PC, I basically use it to stream from my NAS, it works like a charm with SD resolution, but with HD resolution, the video player gets stuck. I completely removed the official release I had installed, cleared the cache, and installed your version with no problem. One weir thing is that the /sdcard/Android/data/org.xbmc.xbmc/files/.xbmc/userdata is no longer available (my device is rooted, I am using ES Explorer, with the “view hidden files/folders option enabled”. All I can see is /sdcard/Android/data/ but inside that path, there is no org.xbmc.xbmc folder (there are other org. folders, such as the one for firefox, etc). I did a factory restore, and nothing. Any idea?

  10. hoque

    Will this work for MK802 II?
    I tried other xbmc version but xbmc crashes every few minutes even though I am not running any video.
    thanks

  11. Trickey

    I’m having the same problem I have xbmc on the small box all works great except for windowed screen as soon as I go onto xbmc it reverts to small screen I can’t change it to full screen it won’t allow me to do it
    Settings
    Video output
    Display mode
    Windowed
    (It should change to full screen when you click on windowed but mine don’t?)
    Please help

  12. Trickey

    The above setup is small android media box running xbmc with a 42in tv connected with hdmi cable cheers

  13. Trickey

    Same problem is referring to
    Achmad fienan

  14. Balkar

    I have tried everything but I can’t find folder for xbmc to put the playercorefactoryfile.
    I have given up …I enabled hidden file ls and I have tried different es file explorer..file manager hd…..my mk802!!!s is rooted…..can anyone help me

  15. Patrick

    Hi, thank you very much for this tutorial! XBMC works on my MK802 II. I also copied the playercorefactory.xml into the Userdata folder. Starting the external player (MX Player) works – but it does start for all videos.
    I do like the internal XBMC player pretty much – it’s much more comfortable than the MX Player.
    How do i manage to start the external player on videos with 1080p ONLY?

    Greetings,

    Patrick

  16. Javier Agudelo

    Thank you for the update, great work. Just one question: YouTube videos do not play in My player. So how can I make My player play YouTube videos?????
    Thank you once again!!!

  17. Javier Agudelo

    Thank you for the update, great work. Just one question: YouTube videos do not play in My player. So how can I make MX player play YouTube videos?????
    Thank you once again!!!

  18. Mohamed Ali

    Problem open Google and ply stn

  19. Sam

    Everything worked fine but everything you watch a film and then try and exit xbmc it freezes, because the mx player does not shut down? i’ve tried going to developers options, but that kicks you out back to the andoid desktop after you exit a film???? does anyone know a way around this???

  20. Sam

    it also does not want to play the iplayer anymore???

  21. Works perfectly in Noontec A9/Woxter TV 100 with Android ICS 4.0.4. Thank you!

  22. Alex

    Thank you so much!

    13.1 final has some issues with certain 1080p content on Vodoke Playstaq, but this works even better with the MXPlayer. The only issue I see is that the MXPlayer starts in software mode and I have to change it to hardware each time I play a file, by visiting the S/W button button on the top right. Is there a way to set this to use hardware permanently?

  23. raven2k7

    hey, i downloaded vlc dragonpro and that plays all my movies perfectly. is there a way to set that as the default video player instead of the one thats by defeat? am using on-tapp.tv . and i want to use vlc player as the defeat player in that.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Home How-To External players support (MX player, etc…) fix for XBMC on Android: perfect HD with no compromise