This is Part II to the article I wrote on CodeProject called TV Toolbar™ Plays TV Shows - Internet Television Has Arrived - Part I. I apologize to readers for taking so long to write Part II but the more I tried to encapsulate the TV & Movie resources available on the Internet but that was impossible because of the large number of ever expanding resources. So I decided in Part II to focus on an improved TV toolbar GUI designed to to better accommodate the ever expanding TV & movie sources on the Internet.
I produce my own half hour TV shows and buy my own half hour TV time to air my shows that include eveything from infomercials to reality TV series to movies. The biggest problem I face is the Cable Guide which is an example of an Electronic Program Guide (EPGs). I am sure that readers have seen the listing "Paid Programming" on their cable guide but have never clicked on it. Paid Programming simply means that the owner of show has bought that half hour and the show could be an infomercial, or an non-infomercial entertainment show like a reality series or talk show. The simple fact is that nobody is going to click on "Paid Programming" and putting that in the guide is a disservice to the owner of the show who has paid good money for that TV time. Whoever controls the cable and sateillite guides controls a multi-billion dollar business because theyw ill determine what most people will watch based on how shows are displayed. The TV set manufacturers long ago recognized this and all of the new TV sets being sold this year are Internet ready with their own programming guides.
Infomercial producers like myself now have emerging alternative program guides that will allow us to enter the name of our shows and our own prrogram descriptions. It is now easy to display your own TV Program Guide on any of the newer TV sets and if you can get enough people to download your version of a Cable Guide for their TV then you will be, in reality, a TV network because you will control how websites, stations, and videos are displayed to viewers. There is an explosition of software and hardware that offers extended cable guides that innclude interfaces for websites that stream videos like hulu, YouTube, etc. And any developer can jump in and create and distribute their own csutom programming guides and program producers like myself are scrambling to get our shows listed.
Before I begin let me give credit to David Sackstein for his Blog Mapping MediaElement onto a Sphere with WPF for part of the code I used in the TV Toolbar's Splash Video. To paint the toolstrip menus I used Steppenwolfe's vtExtender Class here on CodeProject.
The TV Toolbar™ I Wrote in 1997 as A Novel EPG
The first TVToolbar™ I created in 1997 and the one in Part I of this article was an unmanaged C++ toolbar with a webbrowser embedded in it.
Putting a webrowser control inside the toolbar allowed me to have an unlimited number of toolbars--one for each category of TV shows, video & movies by just making each toolbar a web page. I used a Java Applet for the buttons of my toolbar so that the menus would overlap other windows. This also enabled me to put an EPG in a browser toolbar for access to tv shows, movies, and videos. I believed as did many people that all TV sets would have the Internet on them within a few years and now, almost all of the new TV sets being sold come Internet enabled. And now that TV sets display websites we must realize that the concept of a TV station and TV network must be expanded to include teh Internet. Any website can display a Program Guide that would allow a user to watch a video feed from that website or any website thereby allowing a high school student to become a real TV station or television network.
But putting a toolbar inside one browser like Internet Explorer today is too limited since of my friends have long since dumped Internet Explorer for FireFox and Chrome. So in this article as a sample application I created a C# TVToolbar™ free of any browser and tried to illustrate just a few of the many ways it can find and displaying media sources to users as an EPG.
Electronic Program Guides (EPGs), TV Sets, Remote Controls, and The Internet
A magazine called TV Guide was the first real Programming Guide (PG). When cable came along we had the first EPG, namely, the cable guide on our TV sets. It quickly became apparent that whoever controlled the cable guide controlled to a large extent what Americans would watch. My idea behind my original TVToolbar™ was to have a toolbar that put a collection of video resources into the convient GUI of a toolbar to allow the user to find, record, and schedule TV shows, movies, and videos they wanted to watch on demand. The problem I ran into as I collected these resources was that the number and variety was staggaring and growing faster than I could collect them. For example, almost every High Power Broadcast TV Station has a website where you can watch many old TV shows and movies for free and there are 1,493 of these stations which comprise the NBC, ABC, CBS, and FOX affialites. There are over 100,000 sources of old TV shows and movies so the process of organizing all of them into a collection of toolbars is a daunting on indeed.
A few questionable companies started selling software that misled people to believe they could get free satellite and cable tv shows implying that their softwrae pulled down free satellite TV programs. In reality, these software programs only supplied a list of several thousand european websites that had really bad videos on their websites. And to make matters worse, 99% of the links they supplied were broken.
We need to realize that a good EPG displays a list of TV shows or movies and when you click on a listing, i.e., channel, then that TV show or movie starts playing. A list of websites with videos is NOT an EPG. And people don't have the time to click through thousands of websites and then have to click through each link on each website.
Let me make a prediction. Within one year all new TV sets will have a computer inside of them running Linux and will have USB port and be Bluetooth enabled. The old TV remote control will be replaced with a Touch Screen iPad like device to control an Electronic Program Guide (EPG) owned by the manufacturer of the TV set. The control of an EPG on a TV set is a multi-billion dollar business because you determine what people will watc and the revenue from ads is staggering. New TV sets being sold right now in Japan and China have all of these features.
But don't think that the new EPGs will look anything like our current cable guide looks. There is a revolution taking place in the new design of EPGs and the EPG from Cooliris (formerly known as "PicLens") is just of many new designs for EPGs. Cooliris has a GUI that is a combination of a toolbar and an infinite collection of sliding rectangles. Everyone is impressed when they first see it but after playing with I don't find it very useful for finding specific shows or even selecting a particular video. It isn't practical for TV sets in my opinion because you would need another device like a large iPad that you used to slide the content rather than a guide that is present on the screen of the TV set. So I don't see it going very far as a guide for the TV set where users want a remote control to interact with teh set.
How do TV shows and movies get to our TV sets? In the beginning there was just broadcast television and you received that programing through an antenna on your house. Then there was cable and you got programming through a cable, and then satellite and you received programming via adish pointed at the satellite. But now we have TV sets connected to the Internet with literally a billion websites and a million sources of streaming media of all kinds. So what's wrong with just using a 3rd party toolbar like the Cooliris? The anaswer is nothing as long as it meets your needs. But it doesn't meet my needs for wanting to SAVE TV shows and movies I like on MY HARD DRIVE where I can access them without annoying ad content wherever I want. So what I will discuss in this article is creating your own GUI toolbar or or design to display the GUI controls that controls seprate applications to retrieve content, display that content and SAVE and catalog that content on your own hard drives. There are several parts to finding, selecting, and playing TV shows and movies as follows:
1) Electronic Program Guides (EPGs). This is nothing more than the GUI Display of video and multimedia sources of all kinds. An interface like a toolbar or multiple toolbars in a single toolbar, like my TV Toolbar, that oraganizes collections of video resourses (TV shows & movies) according to categories like "Sci-Fi," "Westerns," etc. and these in turn can have sub-categories and sub-sub-categories that organizes content. The search results from teh toolbar are placed into a browser by generating an html web page and the toolbar has 2-way communication with that web page so that when the user select something an action can be initiated.
2) Search Facility & Display of Search Results. This iThis is an area where there have been many breakthoughs in recent years that are changing the face of the Internet. For example, interactive audio where the user simply tells the cmputer what theyw ant to watch and a global search is performed. But the one I will focus on in this article that has created a lot of interest is the sliding interface design originally known as "PicLens" and now called Cooliris. Their design for displaying video content for users to look at and select has created the most interest to date.
3) Playing of the Video Content. Our lives are filled with video content and how we watch that content can dramatically influence our lives in so many ways that I believe it is important to have a basic understanding of what studies have shown so far.
Media Media RSS Standard Format
Media RSS (MRSS) is an RSS extension used for syndicating multimedia files (audio, video, image) in RSS feeds. It was designed in 2004 by Yahoo! and the Media RSS community, and adds several enhancements to RSS enclosures. One example of enhancements is specification of thumbnails for each media enclosure. Media RSS is used by content publishers to feed media files into Yahoo! Video Search, which is a feature of Yahoo! Search that allows to search for video files. The format can be used for podcasting, which uses the RSS format as a means of delivering content to media-playing devices. Media RSS allows for a much more detailed description of the content to be delivered to the subscriber than is covered by the RSS standard.
Almost everyone that has posted free content for downlod supplies a Media RSS for that content. And if you download videos that you want to put and Interface like Cooliris as in teh sample project you just need to create your own Media RSS xml for your downloads and you can view your downloads in Cooliris and other similar viewers.
You can find a list of software programs that are media feed aggregators at:
The problem with these programs is the lack of ability to easily customize the feeds, display, search, search results, organizing of feeds and saving videos. My goal in this article is to provide some suggestions and ideas into customizing your TV and video content.
New TV Toolbar GUI
In the sample project included with this article the new GUI for the TV Toolbar I decided to go with is one that floats on the desktop and anchors at the bottom of the screen just above the TaskBar. This is my personal preference and you can position it wherever suits you best. As I have stated. placing a toolbar inside of Internet Explorer is ridiculous because most people I know use FireFox or another browser. The sample project with this article present a toolbar that is a collection of hundreds of toolbars that are just web pages giving users an umlimited capacity. In addition the sample project shows how to retrieve video from Media RSS on teh Internet and leaves to the reader how they want to play that video.
In the sample application there is a simple wrapper for Microsoft's WebBrowser Control and navigation is determined by using the Navigating event and an anchor, namely "#_mbload, that is used in the url of a toolbar web page and we cancel navigation in the toolbar browser as follows:
private void tbWebBrowser_Navigating(object sender, WebBrowserNavigatingEventArgs e)
if (e.Url.ToString().IndexOf("#_mbload") > -1)
e.Cancel = true;
In the html of the toolbars we use "window.external" to call a C# method as follows:
Toolbars are Ordinary Web Pages
In my first TV Toolbar and in this TV Toolbar all of the toolbars are just ordinary web pages that either use a Java Applet to create a popup menu with overlap windows or plain html using Microsoft's Popup Object. The main toolbar uses a Java applet for the menu and the StarTrek toolbar uses Microsoft's Popup Object in a sample menu from webfx.eae.net
One of the most exciting areas opening up for develops is the creation of custom programming guides for the new models of TV sets which will not only display the usual TV listings but selective web resources of streaming TV programming. Think of a custom programming guide like a reviewer's selection of great TV shows or movies that can't be easily found anywhere else. Even the old fashioned remote controls using infra red are giving way to Wi-Fi and Blutooth.