ATV2 & XBMC – One Week On

I have been making further tweaks and updates to the ATV2 version of XBMC to try and get the software more stable and usable. To be honest after the first couple of days I wasn’t really feeling the love XBMC – on ATV1 it was pretty stable and I had done a number of modifications to get it as close to best performance for my needs but ATV2 just wasn’t there.

So I got the latest semi-nightly build from the 15th May compared to the previous update from the 7th of May. Things are getting better all the time. What follows could be treated as guide how to update on the assumption that you have already jailbroken your ATV2 and have at least the official build of XBMC installed already.

The install itself went smooth enough following the generic instructions:

wget http://hadm.net/~keith/xbmc_atv2/latest_atv2.debdpkg -i latest_atv2.debrm latest_atv2.deb

Just to make sure that there were no more Apple software updates I blocked the hosts.

cp /etc/hosts /etc/hosts.bakecho "127.0.0.1 appldnld.apple.com" >> /etc/hostsecho "127.0.0.1 mesu.apple.com" >> /etc/hostsecho "127.0.0.1 appldnld.apple.com.edgesuite.net" >> /etc/hosts

At this point there wasn’t much noticeable difference but I decided to try SMB sharing again opposed to UPNP. Streaming a 720p HD avi now worked with no issues. I still have problems with .mvk format with sound, but playback is pretty smooth. So this was a success.

Next up was to try the add-ons again. To keep things very simple I am only using 3: LiveOnlineFooty; LiveStreams; IceFilms. As before, there were issues with LiveStreams as the ATV2 cannot handle mms streaming – no drama at this point. LiveOnlineFooty just work as before. IceFilms works fine for SD content, but is still struggling big time for HD content. This is a shame, hopefully there will be some work-around for this. I have a premium account FYI.

After several attempts to get a shared database, with MySQL, I finally got it working. I had to update MySQL on my home server, but after that things seemed to go quite smoothly. I had to do quite a bit of fiddling around with the local database (.db) but eventually I got the libraries to use MySQL. I set up a user account for the DB but I had to tweak things to get them to work. I created the databases OK but adding the user was a problem. Eventually I learnt that setting up the user with no privileges or access first then assigning privileges worked for me at least. I did this in phpMyAdmin user interface after creating the databases as follows:

CREATE database xbmc_video CHARACTER SET latin1 COLLATE latin1_general_ci;CREATE database xbmc_music CHARACTER SET latin1 COLLATE latin1_general_ci;

The settings in advancedsettings.xml are as follows, notice that I created a music database too even though I don’t use it. I think this was another issue previously with my attempts. This can be found in /<ATV2>/private/var/mobile/Library/Preferences/XBMC/userdata if it exists. If not, just create the file and upload.

<advancedsettings><videodatabase>        <type>mysql</type>        <host>database_ip</host>        <port>3306</port>        <user>user</user>        <pass>pass</pass>        <name>xbmc_video</name></videodatabase><videodatabase>        <type>mysql</type>        <host>database_ip</host>        <port>3306</port>        <user>user</user>        <pass>pass</pass>        <name>xbmc_music</name></videodatabase></advancedsettings>

I then went to my video sources and set the content as appropriate and the database started populating. At this point all images are stored locally on the ATV2 but since I am currently on a wireless connection this is alright for now. Next up further modifications and tweaks.

I had been using the Custom Home screen mod for Confluence on the ATV1. I checked to make sure this worked on the ATV2, a slight tweak was required. I extracted the zip file to my local machine and then edited the default.py file as recommended within that thread (thanks davenyc71):

change (on line 25):'special://masterprofile//favourites.xml'to'/private/var/mobile/Library/Preferences/XBMC/userdata/favourites.xml'

Upload the files to the Confluence directory, found /<ATV2>/Applications/XBMC.frappliance/XBMCData/XBMCHome/addons/skin.confluence and overwrite existing files when questioned. It’s always a good idea to back these files up first though :-) I then rebooted XBMC and then added some favorites and made the appropriate changes in my skin settings. Lovely.

Last up for the moment is missing weather icons in the weather app. The app itself was working, just images were missing. Since I still have my ATV running I downloaded the zipped images from /<ATV>/mnt/Scratch/Users/frontrow/Applications/XBMC.app/Contents/Resources/XBMC/media/weather.zip and then uploaded the 2 image folders (128×128 and 64×64) to the ATV2:  /<ATV2>/private/var/mobile/Library/Preferences/XBMC/temp/weather – thanks nmatt.

Thanks to all who have contributed to this latest version of XBMC for the ATV2 and for all modders for their plugins and help answering on the forums. You can see screenshots of the home screen on Flickr. Neat huh?