Tuesday, February 27, 2007

DD Part3 - Don't reinvent the wheel

Note: This is a continuation of my prior post, DD Part2.

Now that we had decided to sell direct to consumers, we had to make sure we delivered the right feature set.

Prior to this time (summer '05), DigitalDeck had been designing the entire system as a stand-alone product. Photo management, music management, play listing, etc. were all built into the DD user interface. Getting media in and out of the system was an import/export task via network mount points. We needed to have a more open approach if we were going to deliver the software to consumers for self-installation. And, there were so many good music and photo management applications out there already, it didn't make sense for us to spend a lot of valuable engineering resources re-inventing the wheel.

I recommended that we modify our recording engine to record to flat files rather than the chunks of video we were recording into our proprietary file system. Recording to regular mpeg-2 files meant that a customer would be able to use our TV recordings in a variety of popular software applications to edit them, burn them to dvd, transcode them for viewing on a portable media player (or iPod), etc. This required some major code mojo from Ed J., one of our key engineering architects. But, it was an engineering effort that was well worth it. I still use Digital Deck as a "network tuner" for my media PC today.

Knowing that we needed to appear larger than we were, I also developed a product strategy that would allow us to interoperate with other popular consumer products. This would allow us to piggyback off their brand popularity and provide enhanced functionality their customers could not get in any other way. If nothing else, it showed that we cared about improving the customer experience in the area of home media networking. At best, this sybmiotic relationship could help forge new, strategic partnerships for the company.

I then ended development on our proprietary music features and focused our efforts on iTunes interoperability. iTunes was already the most popular music management software for the PC, and it's free to consumers. By using their developer API's, we could provide real-time synchronization with iTunes, including library management, play listing, etc. And, for iTunes users, we would give them an easy way to interact with their playlists from the TV. An alternative, the Apple Airport Express, was a "push" model that required you to control the music from your PC or Mac. Our model would allow you to control your iTunes from the TV ("pull") and you could listen to a different playlist at every location - something you couldn't do with Express. We also implemented a DirectShow transcoder which allowed us to support virtually every flavor of audio codec on the fly - AAC, MP3, FLAC, etc.

I implemented a similar strategy for photo management using Flickrs' API's and with TiVo, using their developer API's and some back-door functionality in the TiVo Desktop software. Now, customers who used Flickr could enter their username and password into the Digital Deck interface and access all of their photos and their friends photos from the TV. We also created a dynamic folder for their interestingness photos so there would always be some fresh, entertaining photos to browse.

On the TiVo side, we created a virtual folder in the Digital Deck interface which showed all of the recordings that were stored on any of your networked TiVo DVR's. If you had more than one TiVo, we combined your recordings into one unified list. Then, if you wanted to view a TiVo recording via Digital Deck, you would select a recording from this list and we would begin transferring it to your PC (in the background) and start streaming it to the Digital Deck adapter for playback. To this day, I think we were the only digital media adapter capable of streaming .tivo files. We also implemented things in the reverse direction so that Digital Deck recordings (onto the PC) were available for viewing on your TiVo DVR via TiVo Desktop. It was a nice addition for someone who had a TiVo DVR but was looking to do more with a media PC and wanted some form of interoperability.

more to come in part 4.

No comments: