In 2006 I created the very first version of the XBMC Online TV script. At that point XBMC only ran on Xbox and only had support for Python script. Those scripts had their own user interface (GUI) and thus skins. So Uitzendinggemist.v2, as it was called back than, was only a Python script add-on, something we would call a Program add-on in modern XBMC versions.

Uitzendinggemist.v2

Uitzendinggemist.v2

At some point Video Plugins were introduced to XBMC and I decided to make Uitzendinggemist.v2 also work with that and actually be both at the same time. However, the main focus of development was still on the script version, not plugin. But XBMC kept evolving and introduced their add-on system and functionality for their Video Add-ons. Because of this the general trend moved from Program Add-ons to Video Add-ons. At that point I decided to switch the development focus from the Program Add-on version to the Video Add-on version, but still keep the Program Add-on functional, but only with a single skin.

Over time, many, many changes and optimizations were done on the Video Add-on for XBMC Online TV. Performance improvements on (especially) the Apple TV 2 and Raspberry Pi were introduced and functionality was added. With the introduction of channel specific proxies in XBMC Online TV 3.4.0 I decided to NOT include this feature in the Program Add-on any more and at that point the Video Add-on surpassed the Program Add-on

So now the inevitable has happened: I decided to remove the Program Add-on (and thus GUI) version from XBMC Online TV. Why you ask? There are a couple of reasons:

  • In Januari 2014 the number of Video Add-on users versus Program Add-on users  moved past 80% – 20% limit. More than 80% use the Video Add-on.
  • Keeping the custom XBMC Online TV skin up to date with recent XBMC style changes just started to take up too much time. Whereas the Video Add-on version automatically blends into the XBMC skin.
  • I removed a large bunch of hacky code that was needed for supporting both the Video and Program Add-on and XBMC4Xbox making maintaining the code a bit more friendly for me.
  • By removing the Program Add-on specific code (and a bunch of XBMC4Xbox code) I reduced the overal code base with about 40%. This will make XBMC Online TV load faster, as Python on lower end system (ATV2 and rPi) is slow in loading code files. So less files, means a faster Add-on.

On the plus side I can say that, although no longer officially supported, XBMC4Xbox will continue to be compatible with XBMC Online TV versions. The main reason is that XBMC4Xbox is moving to Python 2.7 and is catching up with some features that are in the XBMC mainline. There are however some limitations:

  • The have the full XBMC Online TV features you will need to use XBMC4XBox 3.5 Beta 2 or higher. That version uses Python 2.7 and includes SQLite for Python. The latter is required for the XBMC Online TV favourites. Previously I included those libraries with XBMC Online TV, but I decided to stop that, because the version I included was outdated.
  • Updating channels

    Updating channels

    XBMC4Xbox does not work with XBMC Add-on repositories. Previously there was a channel update option in XBMC Online TV with a user interface menu. Because I removed all the GUI parts, this menu was also removed. To keep the channel update feature available, I made it auto update. This means that every time you start a new XBMC Online TV session (each session expires after 2 hours of inactivity) XBMC Online TV will check the default XBMC Online TV repository for channel updates. If it finds one, it will download it and update that channel. After an successful update, XBMC Online TV will show a notification.

  • XBMC Online TV updates are also check at that same time, however, they will not automatically update. You will only receive a notification for this and it will require a manual update.

At this point about 80% of the coding (and cleaning up) is done. But there are still some things to due, amongst which is some extensive re-testing. Because I do not have an Xbox anymore, testing on XBMC4Box is not so easy. So if you are interested in testing on XBMC4Xbox 3.5 Beta 2, let me know.

Finally I can also mention that with the XBMC 13 release near by, I will revert the change that all the uitzendinggemist streams will be first downloaded and then streamed. This was introduced to work around a bug in XBMC 12.x on lower end systems. This bug has been resolved in XBMC 13 and thus with the next release this setting will be reverted to stream by default. However, XBMC Online TV can still be configured to first download and then playback if you want, just visit the XBMC Online TV Add-on settings.

I am aiming to release a new version of XBMC Online TV around the time that XBMC 13 will be released. Or perhaps a bit earlier.

Bas

Want to comment? Please visit the Googe+ post