Media Center SDK v6.0 (for Windows 7 Build 7000) and iTv Applications
An update of the Windows Media Center SDK for Windows 7 (Beta 1/7000) has just been made available on Connect – and will be launched via MSDN very soon.
In terms of what’s new – the actual API available to Windows 7 Media Center Developers appears to be the same as what was released previously (see my earlier post - Media Center SDK v6.0 (Windows 7 M3) First Impressions for more information) – so no new surprises to report on this front.
What has changed in the SDK however – is that the documentation for the new API features is now much more complete and improved (and there are only a few ‘undocumented’ sections remaining to fill in) – and there’s a new sample application – titled ‘M’ – which shows off the basics of developing addins with the new iTV (Interactive TV) Framework.
Thanks to the now almost complete iTV Framework documentation (and sample) – it’s now a lot clearer how it’s supposed to fit in to Media Center – and how it can be used. (NB: currently – TVPack2008 and Windows 7 Media Center users are actually using an internal application based on the iTV framework when they use Teletext and switch between the available Audio Streams).
In a nutshell – iTV applications are addins (or Interactive Applications) which are targeted to be used either with a nominated program – or a channel (or group of channels from a broadcaster). These applications are designed to tightly interact with the actual broadcast content on offer – and allow for scenarios such as (reworded loosely from the SDK) -
- Enhancing existing Programs – multiple camera views, chat with other viewers, highlights, polls, commentry etc.
- Video On Demand – which can be linked to live broadcast content (replays/highlights/voting etc) – or trigger pay per view and on demand services.
- Overlays – non interactive content that is added to existing broadcast.
- Interaction with TV Program – such as getting additional information on what you are watching (ie. cast/crew/reviews/community ratings etc).
- Interaction with TV Content – Viewing Trailers, triggering Series Recording, IM and VOIP and more..
This of course allows for very similar ideas found in MHEG/MHEG5 iTV applications – to be created by Windows developers (using a combination of .NET and C++/COM code – rather than Java) – and due to it being deployed to a local machine – would allow for substantially more interaction with the local machine (ie. users may be able to upload photos from a local HD to a TV Show server via an iTV application – wheras MHEG would be sandboxed and not able to access any drives). The actual UI for these iTv addins can be developed using both MCPL rendering/technology (for the Overlay content) – and low(er) level .NET System.Drawing namespace (for rendering on the VideoSurface).
Unlike MHEG (which are deployed over the air) – it appears the iTV applications need to first be installed on the local machine before they can be used/triggered (either via .MSI file or automatically downloaded by mcupdate if being distributed by Microsoft).
Unfortunately – the iTV development platform won’t be usable by your average 3rd party developer – as it needs to be triggered via either data being transmitted on the Tuner Source (ie. ‘tags’ which are broadcast by the provider at predefined moments) – or via the Headend (which I assume is referring to the source of your EPG data). Both of these are generally not available to VMC addin developers – who normally make products for a global audience – rather than targetting a particular channel or show – and generally wouldn’t have any association with the tuner or headend being used.
To assist with development/testing of these iTV Applications – a new developer tool called the ‘PBDA Device Simulator’ is available (via Connect) – which allows developers to simulate PBDA tuner devices, create additional channels/transport streams and insert tag packets into the stream (which can then trigger the iTV applications).
Whether we’ll get to see many offerings using the iTv framework remains to be seen (I’m sure the US users will get something at least) – as it’s unlikely broadcasters will create applications specifically for a program (or channel) being watched on Media Center – however it may make sense if they are already providing MHEG or other interactive content (and can reuse some of the data/infrastructure). I’m curious to know how similar the iTV Framework is to the dev platform offered for MS MediaRoom platform (which also uses MCPL) – as it would probably be a quicker path for providers already making MediaRoom content to extend their offerings to Media Center users in other locations.