Hack 42. Capturing Closed Captioning

   

Hack 42 Capturing Closed Captioning

figs/moderate.gif figs/hack42.gif

TiVo has access to Closed Captioning for the programs it records. Pipe Closed Captioning to your screen even if your TV doesn't have CC support, or capture a transcript of the show you're watching for your reference .

Television comes over the air or through the cable at 30 frames a second. The time between frames is called the Vertical Blanking Interval and is often stuffed by broadcasters with a whole mess of data. That's how that nifty VCR of yours can set its clock without your ever having to fiddle with the confusing interface for doing so manually. It's how the TiVomatic worksyou know, the ability to record a television show from its commercial by pressing the figs/thumbsup.gif button on your TiVo remote control? (Well, if you watch the commercials, that is.) Closed Captioning dataa fairly decent transcript of all that's said in the showalso comes to your television set via the Vertical Blanking Interval.

TiVo does receive, record, and sometimes process that extra information, so you can too. You'll need Mike Baker's tivovbi (http://tivo.samba.org/download/mbm/tivovbi-1.03.zip), an application for decoding, capturing, and displaying Closed Captioning received by a TiVo unit.

Download the tivovbi-1.03.zip file, unzip it on your PC, transfer [Hack #36] it to your TiVo's /var/hack/bin directory, and make it executable using the chmod command:

 bash-2.02#  chmod 755 /var/hack/bin/tivovbi  

Almost anything recorded during primetime television from a major network is bound to have Closed Captioning. Let it loose on a television show that you know has Closed Captioning by typing:

 bash-2.02#  tivovbi -xtc  

If it all worked, you'll see something like this come flowing out onto your PC:

 % CHANNEL CALLSIGN:   % CURRENT  RATING: TV-PG % CHANNEL NETWORK: NBC % CURRENT AIR DATE: 15 31 31:63:00 TAPE 

If you don't see this output, try watching a different show to distinguish between it not working and the show just not having Closed Captioning. If indeed it isn't working, you are probably running TiVo OS 3.x or higher. Unfortunately, tivovbi won't work right out of the box, so we are going to have to strong-arm it.

We're going to need to load a kernel module. A kernel module is a way of extending the way an operating system works, without having to reload and reboot the entire system. The main problem here is that tivovbi was written for an older version of the TiVo OS. By loading this module up, it can get it to hook into the operating system again. If you are running on a standalone TiVo, grab yourself a copy of http://tivo.samba.org/download/mbm/bin/tvbi.o. Those of you on DirectTiVo's might want http://tivo.samba.org/download/mbm/bin/tvbi-dtv.o. Make yourself a new directory on your TiVo called /var/hack/modules and stick the appropriate file in there.

Modules can be inserted into the kernel through a simple tool called insmod (or "install module"). insmod takes a kernel from the filesystem and loads it into the running kernel. Modules that are not being used can then be removed from the kernel through the rmmod tool, thereby also removing the functionality they bring. We're going to use insmod to load up the tvbi.o or tvbi-dtv.o modules:

 bash-2.02#  insmod -f /var/hack/modules/tvbi.o  /var/hack/modules/tvbi.o: init_module: Device or resource busy 

Just ignore the error. You've now extended the TiVo OS to allow tivovbi to access the VBI information again.

Try another show with Closed Captioning and rerun tivovbi :

 bash-2.02#  tivovbi -xtc  

Now you should get the output listed previously. Closed Captioning should be flowing into your terminal in time with the show dialog playing on your TV set.

Keeping a Transcript

You can actually capture the Closed Captioning and save it to a file, creating yourself a nice transcript of the show you just watched. Simply redirect the output to a file instead of to the screen. For lack of something more creative, name the file closed-captioning.txt , like so:

 bash-2.02#  tivovbi -xtc > closed-captioning.txt  

When your program is done, copy the resulting closed-captioning.txt file over to your PC [Hack #36] and print it out for later perusal, email it to a friend, file it for later reference, and so forth. Instead of redirecting to a local file and then sending it over to your PC, you could also mount a directory on your PC [Hack #56] and start writing to files over the network.

You can capture the Closed Captioning at higher speed by hitting the figs/fastforward.gif button on your remote control. Closed Captioning will stop working if you try to go any faster than pressing the figs/fastforward.gif button just once.

Showing Closed Captioning on Your Television

Even if your television set itself doesn't support Closed Captioning, you can pipe it there from TiVo using tivovbi :

 bash-2.02#  tivovbi -oc  

Never miss another word of that British East Enders show.


   
Top


Tivo Hacks. 100 Industrial-strength Tips Tools 2003
Tivo Hacks. 100 Industrial-strength Tips Tools 2003
ISBN: 1597490318
EAN: N/A
Year: 2004
Pages: 164

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net