Stream to your TiVo

The 9.4 software release for the TiVo Series3 and HD boxes included the ability to stream YouTube videos in H.264 format and the community quickly started re-engineering the feature. pyTiVo developer wmcbrine was the first one to get a basic stream working in his HME for Python framework.

Now, TiVo Community user moyekj has released a small java HME app called tivostream that allows you to stream MPEG and H.264 content directly to your box without the need for transcoding (which is what pyTivo does via ffmpeg).

You drop the jar file into your high-level video directory and run it. A new ‘videostream’ menu item will appear on your TiVo’s Music, Photos, Products, & More menu through which you can browse your video hierarchy and then select a file to stream. Playback starts almost instantaneously. Since it’s a stream, the file isn’t actually copied to the TiVo so there’s no disk space taken up. Also, if you drop out to Live TV or go back into the TiVo menus, the stream is cancelled. So what if you want to pick up where you left off? moyekj has written the ability to jump x minutes into the stream. Just start the stream again, enter a number (in minutes) and press the skip-to-tick button. Pretty slick. Overall, tivostream is still in very early development, but it works and shows promise of cool things to come. You can read this thread on TCF for more details.

One note: if you’re going to run tivostream alongside Galleon, start tivostream first. Both apps try to grab port 7288 but Galleon is smart enough to try 7289 (or the next available port) if 7288 is in use already.

“Snow day” in August

094742w_sm-731157

Luckily Fay is going to track to the east of us today, but last night Pinellas county cancelled the first day of school to be on the safe side.

So my daughter has to wait one more day to start the second grade.

Right now it’s just cloudy and stormy looking outside. The Tampa Bay area isn’t even under a tropical storm watch anymore so we’re just expecting wind and rain, but nothing serious.

Now hopefully we’ll have calm weather for the next two weeks so we can get our new windows installed.

WIJFR: Mossflower

Martin the Warrior finds himself trespassing on the land of Verdagua, King of a Thousand Eyes, as he lies sick and near dying. With his last strength, Verdagua is struggling to make a decision on who should replace him as ruler of Mossflower Country. As Martin and his newfound friend and fellow prisoner Gonff become embroiled in the battle against Verdagua’s ruthless daughter, Tsarmina, a bloody fight between good and evil ensues.

It took us a little longer than book one, but my daughter and I finally finished the second book of Brian Jaques’ Redwall series, “Mossflower.”

“Mossflower” takes place an unspecified amount of time before “Redwall” but in the same general location. The now-familiar cast of woodlanders are all present again: mice, moles, hedgehogs, otters, badgers, and squirrels. The antagonists this time are the usual armies of rats, stoats, weasels, and foxes, led by the evil wildcat queen Tsarmina. The book tells the story of Martin the Warrior: how he came to Mossflower country and his quest to free Mossflower Woods from the armies of Kotir. Along the way he must repair his father’s sword, the same sword that ends up playing a central role of Matthias’ quest in “Redwall.”

It was great seeing my daughter’s face light up as we read together and she put together the pieces linking the characters and locations in “Mossflower” to “Redwall” (especially at the end). She also enjoyed comparing the maps in the front of both books. I think her favorite characters in this one were Ferdy and Coggs, the two young hedgehogs. My favorites was young Dinny, the mole. Molespeech is really hard to read out loud. 😉

My daughter has already read (by herself) the third book in the series, “Mattimeo” (I guess she got tired of waiting since it was taking us so long to finish “Mossflower”). So now I’ll have to read that one next (by myself) to catch up and then we can move onto book four.

What is it about this shirt?

mn1_000048-738149Last month when we were on vacation, I bought this t-shirt at the Rock and Roll Hall of Fame and Museum in Cleveland. Out of all the other shirts in the gift shop, I thought this one was the coolest: it was simple, had no writing (except for the small Rock Hall logo on the back), and just looked sweet. It also helped that it was subtle: the younger people I was with had no idea what the “symbol” was … they thought it was just a cool logo.

I’ve worn the shirt a couple of times since I bought it and every time, at least one person comes up to me to comment on it.

One lady thought it was the disc used in toy guns (like this one, I guess?). One person thought it was a stylized bio-hazard symbol. Most older folks know what it is, though, and just say what a cool shirt it is. I had two people approach me about it just today while grocery shopping!

I have a lot of other t-shirts, but this is the only one that seems to inspire complete strangers to walk up to me and talk about it.

Oh, and if you still don’t know what it is … look here and search the page for “snap-in.”

Here we go!

203433w_sm-761873

Looks like Fay is making a bee-line for the Tampa Bay area! This just figures since our new hurricane windows for the house aren’t scheduled to install for another two weeks. I might have to get the plywood out one last time …

WIJFR: The Call of Cthulhu

“In his house at R’lyeh dead Cthulhu waits dreaming.”

I’ve had H.P. Lovecraft’s “The Call of Cthulhu” in e-book form on my Treo for some time now (reading it slowly in bits and pieces as I found myself with a little time to kill) and finally finished it.

I was first introduced to the Chthulhu mythos back in high school when a buddy of mine in our gaming group bought Chaosium’s RPG of the same name. Up until that point we’d been playing traditional AD&D campaigns and newer games like Shadowrun, TORG, or Amber. CoC was different: 1920s setting, horror genre, gruesome killings, sanity checks, and the occasional dimensional shambler. My friend was big into Lovecraft, as I recall, so running CoC games was his way of sharing his enthusiasm for the genre with us.

The horror element and the chance of having your character go insane was intruiging, but I never really got into it. I was not the best role-player in that I had a hard time becoming the character. I just couldn’t play a 1920s college professor and be serious about it … a source of frustration for the dungeon master, I’m sure. Anyway, the point of all that is that I never actually read the short story that inspired the game. Maybe I would have been more into it if I had.

“The Call of Cthulhu” is written as a first-person narrative. The narrator has found some notes left behind by a dead relative along with a small grotesque statue and through research, investigation, and interviews begins piecing together a story of the Great Old Ones (aliens from beyond the stars), the loathsome cult that worships them, and the ancient city beneath the sea where they sleep “until the stars are ready.” By the end of the story, however, he wishes he had not been able to put everything together … ignorance is bliss sometimes.

“The most merciful thing in the world, I think, is the inability of the human mind to correlate all its contents. We live on a placid island of ignorance in the midst of black seas of infinity, and it was not meant that we should voyage far. The sciences, each straining in its own direction, have hitherto harmed us little; but some day the piecing together of dissociated knowledge will open up such terrifying vistas of reality, and of our frightful position therein, that we shall either go mad from the revelation or flee from the deadly light into the peace and safety of a new dark age.”

On the lighter side of things, did you know Cthulhu can teach you XML? I love User Friendly. 😀

Another enhancement to Galleon’s weather app

Last month after fixing a problem in Galleon’s weather application it was pointed out to me that my fix displayed the 100-mile radar map whereas originally Galleon had shown the 600-mile map.

Well, I decided to take a crack at coming up with a solution for that as well. This gave me an opportunity to dive a bit deeper into the java code and also learn how to use the TiVo HME SDK simulator. It was a fun little project (even though I hate regular expressions sometimes ;-)). The end result?

weather-app-12-786646

As you can see from the screencap above, I added a new control to the configuration dialog that allows you to select the range of local radar image displayed based on the three major maps available from weather.com for a location.

Note that some locations don’t have all three ranges available (90210, as an example, doesn’t have a 100-mile range map). If you select an unavailable range, the default range map will be displayed instead (whatever you would get by going to www.weather.com/weather/map/zip).

At a high level, here’s what my enhancement (to determineLocalRadar() in WeatherData.java) does:

  • grabs the HTML page at www.weather.com/weather/map/zip
  • searches the text and looks for “Doppler_Radar_range
  • builds a new URL to get the proper page with the local radar image (www.weather.com/weather/map/zip/?mapdest=Doppler_Radar _range_Mile:location)
  • grabs the HTML for that second page and finds the URL of the actual map image
  • downloads the map image like before

Additionally, I had to make small related changes to Weather.java, WeatherConfiguration.java, and WeatherOptionsPanel.java (in order to add the control to the page, retrieve the settings from configure.xml, etc.). I also fixed a bug that (I think) was causing the current weather and 5-day forecast data to not always refresh properly (at least for me during my testing).

Known issue: apparently the weather app only loads its values from configure.xml when it first starts up. As a result, if you make a change to any of the settings (city, state, zip, etc.) it won’t take effect until you restart Galleon. The same goes for the new range setting: if you change it in the GUI be sure to restart the application so you’ll see the new range map on your TiVo.

Since this was an actual enhancement to the application, I took the liberty of bumping the version number to 1.2. To install, just download my new weather.jar file, put it in Galleon’s apps directory, and then restart Galleon. If you prefer to compile it yourself, you can grab a zip file with my code, or check out the diff results.

If you run into any problems, or have anything else to say about this enhancement, let me know in the comments section!

I think someone ….

… at the theater is a Monty Python fan. I went out to see “The Dark Knight” and snapped this photo:

bm-image-727756-727792

I can just picture the French taunter taking on Batman … “I fart in your general direction you silly Dark Knighit!” 🙂

Gotta go … I’m posting this from inside the theater on my Treo and it’s time for the show!

WIJFR: Snow Crash

It is a world where the Mafia controls pizza delivery, the United States exists as a patchwork of corporate-franchise city-states, and the Internet–incarnate as the Metaverse–looks something like last year’s hype would lead you to believe it should. Enter Hiro Protagonist–hacker, samurai swordsman, and pizza-delivery driver. When his best friend fries his brain on a new designer drug called Snow Crash and his beautiful, brainy ex-girlfriend asks for his help, what’s a guy with a name like that to do? He rushes to the rescue.

Snow Crash” was the first novel I ever read by Neal Stephenson and since earlier this year I finished reading the entire “Baroque Cycle” and then re-read “Cryptonomicon” I decided to re-read “Snow Crash” as well.

When Hiro’s hacker friend Da5id ends up a vegetable after being exposed to a new “drug” called Snow Crash in the Metaverse, he finds himself caught up in plot that involves Sumerian tablets, ancient languages, religious cults, and viruses (both biological and technological). He’ll end up working with the Mafia, the U.S. government, a 15-year old skateboard courier, and his hacker friends against a media mogul, his religious followers, and a crazy brute with poor impulse control and a nuclear warhead in the sidecar of his motorcycle. It’s a fun and fast read.

I read a lot of William Gibson and Bruce Sterling when I was younger, so I was no stranger to cyberpunk, but something was different about “Snow Crash.” Gibson gave us cyberspace, but Stephenson gives us the Metaverse. I also don’t think I ever came across the phrase “neuro-linguistic hacker” in any of Sterling’s work.

Funny side note: while I reading the book, I came across my purchase receipt, nested in between some pages.

snowcrash-receipt-736069If memory serves, I purchased this book while I was in Pleasanton, CA (hence the 510 area code) at a PeopleSoft training class (I found an old Delta boarding pass with the receipt as well). So it’s been about 12 years since I first encountered Neal Stephenson. His next book, “Anathem” is due to be released this fall.

TiVo releases 9.4 software update

My Series3 box upgraded to the new 9.4 software release yesterday. The Summer 2008 Service Update is for Series3 and TiVo HD DVRs only and includes the following new features:

  • the ability to play (or delete) an entire folder at once (which is helpful if you want to queue up a bunch of SpongeBob for the kids)
  • the on-screen Guide is now available even when you’re watching a recording (before, if you pressed Guide while watching a recording it would dump you out to Live TV)
  • you can jump forward and back 24 hours in the Guide by using the Instant Replay and Skip-to-Tick buttons on the remote
  • there’s now a “search by callsign” option in the Guide as well (if, for some reason, you can remember your FOX affiliate’s callsign, but not the channel number, I guess)
  • one-click closed captioning toggle from the channel banner (my personal favorite new feature!)
  • your Thumbs Ratings can now be refined via a separate screen under TiVo Suggestions

This update also added a new application to stream YouTube videos to television through the TiVo. It’s been known for a while that the decoder in the S3 and THD boxes supported H.264, but this is the first time (to my knowledge) that functionality has been used. Work is already underway in the community to reverse engineer this so that H.264 video can be sent directly back to the TiVo without the need to transcode it into MPEG-2 first.

The discussion thread about 9.4 on TCF is here, and the pyTivo folks are talking about the H.264 stuff here.