Archive for August 2009
The final version of the Windows Media Center SDK for Windows 7 was released on MSDN yesterday and is available for download from the following link :
There’s pretty much nothing new to see, do or use (except some updated/finalized documentation) – if you’ve already downloaded the pre-release versions (which came out initially at PDC along with the M3 release of Win7 back in Nov’08 – and then was later updated for Windows 7 Release Candidate in January this year). Please see my previous posts Media Center SDK v6.0 (for Windows 7 Build 7000) and iTv Applications + Media Center SDK v6.0 (Windows 7 M3) First Impressions for more information there.
In fact – unless your after some pretty specific (and less than useful) changes offered in the Win7 incarnation of this SDK – my best advice to developers would be to completely give this SDK a miss – and instead revert back to Vista Media Center SDK /along with Vista Dev platform (if you do plan on persisting with Media Center development).
The reason for this is that while you’ll get pretty much nothing to shout about in this new SDK over Vista, the big downside is that your app’s created with this SDK (and compiled against WIndows 7 Media Center API’s) will not work in Vista. Whereas – if you develop against the Vista API’s – and tweak your Installer’s accordingly – your apps should work fine on Windows 7 (nb: if you’re developing against the ehRec dll’s or some of the other “non MCPL” functionality this may break on TVPack or Windows 7). At the moment (and at least for next 6-12 months) – the market for Windows 7 Media Center users would be pretty small (well even smaller than Vista that is) – so you’re better off ensuring you’re supporting both these platforms.
All in all – this SDK is a big disappointment for developers – as while the Windows 7 platform and new versions of Media Center are great products (and a big improvements over Vista) – the minimal API changes completely missed out on taking advantage some of any of great new features (ie. no support for Multi Touch, no support for the new EPG database, etc and the list goes on.. ). It’s a laundry list of what ‘could have been’…
While MCPL (Media Center Presentation Layer) started off looking like a very promising dev platform (when it appeared during the Vista Beta) – the enthusiasm from Microsoft (and along with it the support and follow through you’d expect from a dev platform) – died a quick and sudden death pretty much after Vista was released. This is very apparent when you look at the lack of changes/enhancements for MCPL offered in this new SDK (most of which are simply ‘quick win’ helper classes offering no more functionality than what was already possible), the death of Media Center focused developer blogging, and the complete lack of support being offered by MS on their dev sites (while you can get some answers for some of the non MCPL API’s – getting an answer beyond ‘go look at the sdk’ is a real challenge).
So … some wise(?) advice to those wanting to creating 10 foot applications (with a UI – as opposed to a background addin or desktop utility) – is perhaps you’d get a lot more mileage looking at some developer options other than MCPL.
Instead – the majority of alternate options for development are enabled via the support for IE browser hosted addins – which in turn allow you to use Silverlight, Flash and even WPF/XBAP applications (which can still be used in the browser ‘host’ – regardless of whether they have token ‘native’ support by Media Center). All of these alternative platforms seem to go the full 9 yards and the whole dev and release cycle seem to have been properly thought out and followed through (wheras MCPL offered very raw dev support with no WYSIWYG designers, poor documentation – and as mentioned the ‘actual’ developer support was non existent – and any hope of future enhancements or improvements looks extremely bleak).
The news isn’t all bad for Media Center dev’s on Windows 7 though if you look beyond the SDK –
The news isn’t all bad for Media Center dev’s on Windows 7 though if you look beyond the SDK –as the functionality offered by the new MXF spec and ‘loadmxf’ functionality (documented in a different place on MSDN altogether) – have enabled a bunch of cool stuff to be done with the new Media Center EPG database – like my own app ‘Big Screen EPG’ … 8)… As mentioned above though – don’t expect the actual SDK to give you any more bling in this area – as there’s no decent API hooks into the new EPG database or TV/PVR functionality to take advantage of this (ie. the recording/pvr hooks seem to still be written based on functionality introduced in the 5 yr old MCE2005 EPG and are severely lacking , and the complete lack of ‘more with this’ extensibility hooks to the new EPG and TV Series related pages in Media Center).
Anyhow – going forward – I’m not sure where things are heading for Windows 8 with Media Center Development as a whole – and it’s looking unlikely that MCPL will ever be touched again with the new ‘TV on your PC’ push (rather than ‘PC’ or ‘Extender on your TV’ line) – and almost complete lack of engagement with the community of MCPL developers from the Extensibility team (who seem to have so far
completely ignored ‘misplaced’ all the suggestions/feedback and requests for developer enhancements on MCPL made by so many of us – after being asked to spend loads of time doing so).
I hope I’m wrong – and that things will all get better – only time will tell (and perhaps if I received some replies to my emails I’d be better informed too – but for now it’s the ‘mushroom treatment’ for all of us)… I do hope Microsoft’s MC Extensibility team make some actual decisions one way or another on all this (rather than sitting on the fence and not doing anything properly) – and I’d be happy if they would focus on a smaller subset of enhancements and do them ‘properly’ – such as real extensibility and hooks into the Media Center internals – and leave the UI stuff to the pro’s (ie. Silverlight, WPF or XNA teams) – who do understand the whole end to end cycle of developing UI centric API’s.
On Friday (to coincide with the RTM release of Windows 7 to Technet and MSDN) – a new update for Big Screen EPG (a 3rd party EPG Importer for Windows 7) was launched – v0.4e. Registered users can download it now from http://bigscreenglobal.com – or if you want to sign up (its free) – please see the instructions as per previous post.
The changes in the version include a full/comprehensive Windows HTML Help File (as full docs have been missing in previous v0.4x releases), reinstatement of the ‘Rescan Providers Wizard’ and ‘Toggle Channel Logos in grid’ functions (also missing since v0.3x), some fixes – and some new new features for Auto Mapping of imported EPG Listings to Media Center Channels. (which will make things a lot easier for UK and DVB-S users with loads of channels).
Additionally (available via same download page) – v0.7 of a new utility BSXFix (Big Screen EPG XMLTV File Fixer) was released. This utility (as the name suggests) – will auto-repair/fix up XMLTV files that contain invalid/undeclared ‘XML Entities’ – so they can be imported into Big Screen EPG (or another XML parser) without errors. This was developed as many ‘xmltv’ online sources have been generated via ‘scraping’ HTML based web sites – and hence carried through metadata which was invalid in the context of XML (ie. usage of HTML only entities such as ‘£ ‘ etc which haven’t been properly ‘declared’ in the XML file header).
The ‘fixed’ expiry date for the ‘trial version’ has also been extended to November 1st, 2009 (about a week after the launch of Windows 7 to retail) – which gives you an extra 2 months to play with the ‘full features’ of Big Screen EPG. Users who have already installed a previous v0.4x release can simply run the ‘reverify registration’ function to pick up the new expiry date (v0.4e release is not required to enjoy this).
Please also note – once your Big Screen EPG ‘trial period’ expires – this product will still continue to work – in a reduced *free* mode. (ie. it does not ‘stop working’ as incorrectly reported in quite a few blogs/forums – just to reiterate – the ‘trial’ mode is a trial of the ‘paid version’ which provides numerous additional features over the free version.)
Please see below for some more information on the Big Screen EPG v0.4e release (taken from the release notes).
Release Notes for v0.4e :
- FYI: The download size for the installer has now jumped from 2.5mb to 6.5mb. This is due to the new help file being included (which is around 4mb compressed due to it containing a lot of screenshots/diagrams and text).
- Added: Added full documentation for v0.4x (in form of Windows HTML Help File). This documentation can also be downloaded seperately.
- Added: Added ‘Auto Classification Mapping’ tab on Channel Configuration – allows similar concept to the ‘Auto Genre Mapping’ – where Classifications can be automatically assigned on a ‘per channel basis’
- Added: (Experimental) Advanced EPG Channel > Tuned Channel mapping functionality (currently testing against DVB-S UK sources) – for users with tuner types who can’t utilize ‘auto’ channel number or callsign matching (and needed to manually add listing to each channel in 7MC). Note that this is not available for STB’s (not possible with mxf functionality provided with RC or RTM releases) – but instead is for DVB-S (and DVB-S2/C/T… I think) – and uses the actual tuning locator info for matching (ie. ‘DVBx:xx:xx:xx:xx:etc’). For those that use DVB-S and have loads of channels – this will make you very happy campers (I think) – and probably save you 1000 odd remote control clicks.
- Enhanced: Reinstated/Added ‘Rescan Providers’ function so that new Channels, Genres and Classifications can be picked up from existing configured providers. For Australian users – this is important due to the release of new FTA Digital channels – which will appear over time in your XMLTV Sources (Channel Nine’s GO! is being launched today, Channel 7 will release their new channel in next 2 months and ABC will release ABC3 in December).
- Enhanced: Reinstated the ‘Toggle Channel Logos in Grid’ (due to some users wanting to be able to turn of Logos in Grid – and have them appear in info/details area only).
- Fixed: V0.4a-d was ignoring the TimeZone shift minutes setting for providers.