Mobile Site 4.0 … Coming Soon

A new mobile site rewrite for Category5 Technology TV will soon be gracing your smartphone and tablet!

I received a note from one of our viewers who recently found us on Roku, but wanted to take Category5 on the go with him…

Well, that’s kind of annoying for BlackBerry users, isn’t it?

I had a good close look at the mobile site back-end, and man-oh-man, it’s getting old.

I think as a developer, it’s hard not to want to go back and rewrite everything you’ve created about once per year. That’s how fast the technologies change it seems, and the way I was coding a year ago is much different from the way I code now.

The current (old) mobile site uses flat-file delivery powered by a database backend. Your mobile device must preload all textual resources, and then it loads the images and videos when you navigate around. But the architecture forced me to hold back some features at the time.

The episode list on our mobile site version 3.1.

The episode list on our mobile site version 3.1 contains the most recent 53 episodes.

For example, the mobile site (versions 1-3) have always been restricted to the past year’s worth of videos. That’s all that was practical since your device would have to preload all the text for each episode.  Loading all 7 seasons was not possible because it would just take way too long to load, and it’s already much too slow for my liking.

I also had to restrict the amount of images and overall weight of the mobile site since many assets were preloaded at launch. Preloading 53 videos is horrible for performance, and this is not a well optimized way to do things.

So, all that said, Tony’s message and my review of the code drove me to want to redesign the mobile site infrastructure and front-end from the ground up.

There are a few things that come into play, but the big one is that I recently developed the entire infrastructure to bring Category5 to the Roku platform. So I am able to tap into new, optimized database functions that didn’t exist even 3 months ago. Features such as separation of episodes by season, and having access to our entire library of videos, including our “Special Features” category which was introduced specifically for Roku, but now can be migrated to other platforms such as our mobile site.

Out the gate though, a rewrite means implementing greatly improved programming techniques such as AJAX data loading on the mobile platform… so I can rewrite the code so each episode’s text only loads after you click on it. I’ll also stop all these videos from preloading. All this means is that we can offer a million videos if we want, and the site will still load just as quickly as if there were only 5 videos. The ability to load data through AJAX has existed for a long time, but my skill-set has grown with regards to its implementation, so I am now capable of much more than I was a year ago.

The greatly improved episode list on version 4β of our mobile site.

The greatly improved episode list on version 4β of our mobile site features all available episodes (345 at the time of writing).

The biggest and most exciting thing to me about this change in programming style is that I can include all episodes in the mobile site.  Not just the past year’s worth. It also opens us up to eventually including other features, such as the aforementioned “Special Features”.

Do more with less. That’s what version 4 represents.

So keep your eyes on our mobile site. I’ll announce it when it’s launched, and hopefully it’ll even work on BlackBerry.  🙂

-Robbie

Coming features on Category5.TV

Category5.TV:

  1. Next/Previous episode buttons when viewing the show notes page for any episode. – Done
  2. Photo gallery re-write with grid-style gallery layouts.
  3. RSS feeds to begin stating the age of an episode (eg., ‘1 Week Ago’ or ‘3 Years Ago’). – Done
  4. Add Google-indexable breadcrumbs to Episode pages. – Done
  5. Season 2 Episodes made available on-demand and in RSS feeds.
  6. Season 1 Episodes made available on-demand and in RSS feeds.
  7. Replace the main menu script with something more robust, to accommodate the growing list of menu items and introduce third-level navigation. – Done, sortof. Rather than replacing the menu, I recoded bits of the existing one to add new functionality. I think it works quite nicely.
  8. Replace the jQuery scroller at the top of the home page with something a little more current. – Done, sortof. I decided that for the moment, I still like the scroller we have, and it’s lightweight, which is a plus. So instead I just improved it slightly. Buttons have been changed to our orange color to make them stand out more, too. I have begun coding a new “animated” version to replace this one eventually, but for now I’ve bought some time.
  9. Make the giant header slideshow on season pages select a handful of random images from the season rather than the most recent ones.
  10. Related Episodes feature on show notes pages.

Now you can see what was said in the chat room in realtime while watching on-demand video from Category5 TV.

Beginning with Episode 231 (February 21, 2012) we have been keeping a log of the Category5 TV chat room during the live broadcast, complete with timestamps.

These logs have been available to view for a while now via the show notes page for each episode since that time, but I’ve always wanted to take it a step further.

Effective immediately, logged-in registered viewers may enable the chat logs as their source for closed captioning.

Video Captions from Chat Logs

This is a two-fold success.  First, it adds a pretty neat feature to the on-demand video since logged-in viewers can now see what was said at the time during the live show, overlayed on the video, but secondly, it allowed me to generate an effective closed captioning system on our web site. I hope to eventually offer English (and electronic translations to other languages) captions, and this provides the back-end technology to do this.

Enable CaptionsTo enable this feature on your account, login to Category5.TV and visit your profile page. Once their select “Chat Logs” as your source for closed captioning.

Make sure you’re logged in, as this is an exclusive feature to registered viewers.

Please offer your feedback below. What do you think of this feature?

-Robbie

Slowing down the transcoders and Season 4 is online!

As you may have noticed, I had to slow down the transcoders.

Yes, they operate super fast and can transcode all our back episodes in a very short time as previously reported.

However… they cost a lot of money! Le gasp!

As you can imagine, Category5 TV back episodes take up a lot of space on the web. Over a terabyte as a matter of fact. So transcoding, uploading and distributing all 300+ episodes all in one fell swoop was a bad idea from a cost perspective.

So I slowed things down to a more manageable price point so I can space the cost out over multiple months.

Okay, all that said, exciting news this weekend: Category5 TV SEASON 4 is now entirely transcoded and available for on-demand viewing at http://www.category5.tv/episodes-season-4.php!

It is my dream that one day all 7 seasons (and beyond) of Category5 TV will be available for on-demand viewing, and this brings us just a little bit closer to this goal.

Many of the episode content will be dated (as we’re talking episodes which are 3 or 4 years old), but there is still some excellent information in there, such as understanding how to safely dispose of a computer to avoid your private data being compromized, enhancing photographs with the GIMP, how to create panoramic photographs using a standard digital camera, creating mosaic images from hundreds or thousands of photographs, and even our popular web development series in its entirety.

Enjoy these “new” old episodes! Now, to begin tackling Season 3!

-Robbie

The new transcoder is proving itself.

Well, we’ve been on the new transcoders for one week now, and I’m excited to see the impact.

Last night was the first night where I was able to initiate an automated transcode of an episode shortly after we signed off the air.

There are still some things I need to work out.  For example, I could not initiate the conversion until I had imported the photos, because the transcoder uses the episode’s image for the ID3 cover art on MP3 transcodes.  So after I finished choosing and uploading the images for last night’s show, I fired the transcoder.

Here’s the log output:

Episode 314 Begin:  Tue Sep 24 20:49:01 EDT 2013
  Create Thumbnail Files Begin:  Tue Sep 24 20:49:01 EDT 2013
  Create LD File Begin:  Tue Sep 24 20:49:01 EDT 2013
  Create HD File Begin:  Tue Sep 24 20:49:01 EDT 2013
  Create WEBM File Begin:  Tue Sep 24 20:49:01 EDT 2013
  Create MP3 File Begin:  Tue Sep 24 20:49:01 EDT 2013
  Create SD File Begin:  Tue Sep 24 20:49:01 EDT 2013
  Create Thumbnail Files Complete:  Tue Sep 24 20:49:57 EDT 2013 (0d 0h 0m 56s)
  Create MP3 File Complete:  Tue Sep 24 20:56:55 EDT 2013 (0d 0h 7m 54s)
  Create LD File Complete:  Tue Sep 24 21:37:23 EDT 2013 (0d 0h 48m 22s)
  Create WEBM File Complete:  Tue Sep 24 22:39:23 EDT 2013 (0d 1h 50m 22s)
  Create SD File Complete:  Tue Sep 24 22:40:07 EDT 2013 (0d 1h 51m 6s)
  Create HD File Complete:  Tue Sep 24 23:20:05 EDT 2013 (0d 2h 31m 4s)
  Move Master File Begin:  Tue Sep 24 23:20:05 EDT 2013
  Create Master File Complete and Finish Job:  Tue Sep 24 23:20:05 EDT 2013 (0d 2h 31m 4s)

It was less than 8 minutes after I initiated the transcoder that the MP3 RSS feeds received the new episode.  Just a little more than 48 minutes after initiating the transcoder, the Low Definition (LD) file completed.  The show went up on the web site almost immediately after that (the files first get sync’d to our CDN and then added to the database, automatically).

All files (MP3, LD, SD, HD and WEBM) were complete in just 2 hours 31 minutes 4 seconds, including all distribution, even cross-uploading to Blip.TV (also automated now).

From 17 hours to only 2.5 hours.  This thing is incredible.

And that means, on average, we’ll be able to transcode nearly 10 episodes per day — almost double the turnaround of our first week.  That means the job which was estimated to take 72 days on our main server alone has been cut to only a day or two longer than one month.  In just one month from now, all back episodes – six years worth of Category5 TV – will be transcoded.

Why am I so excited about this “transcoder” thing?

There’s something I’ve been really excited about the past little while, and some may not understand why.

It’s the new Category5 Transcoders.

Transcoding is the direct analog-to-analog or digital-to-digital conversion of one encoding to another, such as for movie data files or audio files. This is usually done in cases where a target device (or workflow) does not support the format or has limited storage capacity that mandates a reduced file size,[1] or to convert incompatible or obsolete data to a better-supported or modern format. [Wikipedia]

Here is what I wanted to achieve in building a custom transcoding platform for Category5:

  1. Become HTML5 video compliant.
  2. Provide screaming fast file delivery via RSS or direct download.
  3. Provide instant video loading in browser embeds, with instant playback when seeking to specific points in the timeline.
  4. Provide Flash fallback for users with terrible, terrible systems.
  5. Ensure our show is accessible across all devices, all platforms, and in all nations.
  6. Make back-episodes available, even ones which are no longer available through any other means.
  7. Reduce the file size of each version of each episode in order to keep costs down for us as well as improve performance for our viewers.
  8. Ensure our video may be distributed by web site embeds, popup windows, RSS feed aggregators, iTunes, Miro Internet TV, Roku, and more.
  9. Ensure our videos are compatible with current monetization platforms such as Google AdSense for Video.

In the past, we’ve been limited to third-party services from Blip and YouTube.  Both of these services are huge parts of what we do, but relying on them exclusively has had some issues:

  1. Both Blip and YouTube services are blocked in Mainland China, meaning our viewers there have trouble tuning in.
  2. Both services, in their default state, require manually labour in order to place episodes online in a clean way (eg., including appropriate title, description and playlist integration).
  3. Blip does not monetize well.
  4. YouTube monetizes well on their site, but they restrict advertising on embeds (so if people watch the show through our site rather than directly on YouTube, we don’t get paid).

The process of transcoding the files and making them available to our viewers has been a onerous task since the get-go.  We grew so quickly during Season 1 that we didn’t really have the infrastructure to provide the massive amount of video that was to go out each month.  We had one month in 2012 for example, where we served nearly 125 Terribytes of video.

It takes me many hours each week just to make the files available to our viewers, and the new transcoder has been developed to cut that task down to only a few minutes, while simultaneously pumping out the video much, much faster.

I’ll try to explain how this happens in a mockup:

Old Vs. New Transcoding ProcessThe new transcoder not only does things faster: it does things simultaneously.

While transcoding the files for the RSS feeds, it has already placed a web-embedded copy of the show on our web site, in as little as 45 minutes.  Not only that, but once it’s all said and done, the transcoder server then automatically uploads the file to Blip.

The new transcoder consists of two servers at two different locations sharing the task itself, and then the files are distributed through two of our CDNs (one which is powered by Amazon, the other is our own affordable solution based on the old “alt” feed model).

We have been working with the team at Flowplayer, who are soon to introduce a public transcoding and hosting / distribution service for content providers.  With this new relationship, we will be able to serve up ads in a friendly way to help offset distribution costs.  This also means we now have our own embed player, no longer relying on YouTube or Blip’s embedded player.

This means, viewers in Mainland China can now watch Category5 directly through our main web site.  No more workarounds!

As long as we can offset the added expense of self-hosting video, this could lead to some great things.  I’ll be keeping an eye on it over the next while, and encourage you to submit your feedback.  I love the idea of Category5 finally being accessible to everyone, everywhere, and very quickly following each show.  I also love that my Tuesday nights will no longer be so arduously long.

Transcoders are a very difficult thing to explain, and the way we’re doing it is hard to explain, but to me, it’s exciting.  Just know that it means “everything is better than ever”, with fast video load time through our site, RSS feeds that are more than 10x faster than before, global access (even in Mainland China), and room to grow.

I’m currently running the system through countless tests, but the transcoders are live.  It will be working its way (automatically) through back-episodes, so you’ll start to see the YouTube player disappearing from the site, replaced with our own player.  Eventually, all 312+ episodes will be available.

Thanks for growing with us!

– Robbie

 

RSS feeds have been migrated!

As per my last post, our video and audio RSS feeds have been migrated to our [formerly known as] alternate servers.

The alternate servers were originally built to allow viewers in Mainland China to view Category5 Technology TV.  They were the “alternate” servers because Blip.TV and YouTube are blocked in Mainland China.

However, through my tests, I discovered that these servers were in fact substantially faster than pulling video from Blip.TV, so I wrote a migration script to automatically merge all files to the alternate servers upon their release, and deploy them via our RSS feeds.

This means you’ll now receive our files faster (even fast enough to stream to your browser directly).  It also means our files are now available everywhere, including Mainland China, directly from our main feeds.

But it means we generate $0 ad revenue from our feeds.  GASP!

The next step is to allow China viewers an opportunity to disable YouTube on our main web site, and embed a streaming player which utilizes our new servers’ files.  Again, the catch 22 in doing this is simple: YouTube helps pay the bills.

The changes mean we’re incurring more cost, but adding the possibility to generate less ad revenue.  It’s completely backwards to anyone trying to make money.  Fortunately for you, my goal is to make our service as good as possible, and I believe with all my heart that viewers and advertisers will choose to support us.  Watch for an announcement soon–you could be part of our ad sales team and even make yourself some extra cash monies while supporting the show you love!

Enjoy the new feeds!  If you have means to do so, please considering donating, or subscribing to a monthly donation amount.  You can do so at cat5.tv/c.

Thanks!

– Robbie

Category5 RSS feeds could be 5500% faster with more world accessibility by switching away from Blip.tv for RSS distribution.

I’ve been hearing for a while that Blip.tv is slow.

It’s never seemed bad to me, but I didn’t really have anything to compare it to.  I have to be honest, I really love the features Blip.tv gives to its producers.  Not so much to its viewers.  But to the producers.  The automated file conversions from FTP uploaded masters is an exceptional time saver in post, and the automated upload to YouTube, while not perfect, also saves some redundant work for me after the show each Tuesday night.

So, to hear that Blip.tv is slow seemed backward to me; it is a real time saver.  To me, a show producer.

Last July, we launched a syndicate in China, because Blip.tv is blocked in China and our viewers were crying out (in particular, Mainland China residents who had traveled to places like Germany for school and had fallen in love with the show, which is very popular there).

So for kicks, I thought I’d test the speed difference between Blip.tv and our China syndication system.

For this little experiment, I used the exact same file from 3 sources (Blip.tv, Amazon S3 and our China syndication system).

Here are the shocking results:

File:  Episode 295, H.264 SD Quality, 246378147 Bytes (235 MB).
Blip.TV:  34m 25s, 117 KB/s
Amazon S3:  52s, 4.48 MB/s
Our China Syndication System:  37s, 6.19M/s

I’m sorry, what?  Blip.tv took nearly 35 minutes to download the episode, whereas our syndication system into Mainland China, which is housed at our datacentre in California, took only 37 seconds!  That’s basically one second for every minute it took through Blip.tv.  I did not expect that!  I’m also impressed that the little syndicating system (which I designed) outperformed S3.

No, we are not going to drop Blip.tv.  It has its place, and that place is as I described.  They’re a big part of our distribution chain.  But perhaps it’s best to retire them as the source for our RSS feeds and let them stick to what they do best: from the encoding to the distribution to YouTube.

So I have a feeling our system which was built to help viewers in China watch the show may soon become our world-wide source for RSS files.  What do you think?  Want to receive Category5 episode 5500% faster?

Now, to git’r done!

Comment below.

Create links to specific points in any Category5 TV episode.

The new Timestamp feature allows you to start each episode at any point in the video.

The new Timestamp feature allows you to start each episode at any point in the video.

New Feature:

Do you run a blog and want to link to specific portions of a Category5 Technology TV episode?  Or just want to share a specific clip with your family or friends?

Now you can!  Just append the timestamp to the URL as follows:

  • Go to www.Category5.tv
  • Find the episode you’re looking for and open its show notes page
  • Scrub to the point in the video where you want to start and make note of the time (for example, 8 minutes, 19 seconds)
  • Add a slash to the URL in your address bar, and then the timestamp in mm:ss format (for example, /8:19)

Give it a try:  http://www.category5.tv/episodes/291.php/8:19

Receive full Category5 Technology TV weekly episodes by email for free.

Here’s a new feature of our service which I’m really excited about…

Now, you can receive Category5.TV’s weekly episodes by email!

It looks something like this:

Receive Category5.TV episodes by email.

Receive Category5.TV episodes by email.

This is really exciting because it means you can receive this really cool (and non-spammy) reminder each week once an episode is available.  It’s not a dumb notice, or a “click here for our web site”.  It’s literally an email that gives you 1) a screenshot from the episode, 2) a description of what we did in the episode (the main topic), 3) direct links to download the episode for free and 4) a handy “play now” link which will open a player window and instantly begin streaming the show to your device.

Activate Weekly Email

To activate this awesome feature on your free account, simply login at Category5.TV and choose “Members” -> “My Profile”, and you’ll see the new option “Weekly episode by email” as per the above image.  Check it off and press Save Settings.  Don’t worry, you can turn it off at any time, and we never spam you (it’s against our beliefs as non-spammers)!

Don’t have an account?  No worries; it’s free, and easy!  Just visit http://register.category5.tv/ and sign up today.

Please activate the feature, and once you’ve received your mailout (comes out when each episode becomes available; usually Wednesday mornings), let me know what you think.  I would love to hear your comments below.

Thanks for watching Category5 Technology TV!  Thanks also to _Jot_ for assisting me with the beta testing.