Cool Surprises

Built-in video

Tivo-local videos are available to present to the user and will send HME events as if it were a streamed video.
Use these as stream URLs with a content-type of something like "video/mpeg" to make them work.
The HME SDK simulator hinted at this since the beginning, but it was never really noticed until 11/2012.

Live TV

"livetv:" will show you the current 30 minute live tv buffer. It starts you at the tail end of the buffer regardless of where you were in the buffer before entering the HME application. (perhaps not passing "true" for the play parameter gives a different result?)

Loop Sets

The background videos used in the TiVo menus.

  • "loopset:Central" - Red loopset (TiVo Central)
  • "loopset:Showcases" - Purple loopset (Showcases, Suggestions)
  • "loopset:Setup" - Blue loopset (Messages & Settings, Music Photos & More, Network Now Playing Lists)
  • "loopset:NowPlaying" - Green loopset (Now Playing, everything else not mentioned above)

On a Series 4 (Premiere) all 4 loopsets result in the same blue background image version with no animation (consistent with how the Premiere menus work).

Recordings

Not yet figured out. The simulator says "recording:" starts the URL, but how to get a particular recording reference correctly is unknown.

I've tried a lot of combinations with no luck.
Starting from an XML entry under a folder with the unique ID of "/NowPlaying/1996606" I tried a lot of combinations starting from just the download URL appended to "recording:" …
"recording:download/MAD.TiVo?Container=%2FNowPlaying&id=4515045",
to using the container unique ID…
"recording:/NowPlaying/1996606/4515045"
to ignoring the specific container like the download URL does…
"recording:/NowPlaying/4515045"
to just the id
"recording:4515045"
with no luck…including various combinations with "recording://" etc.

Animated Gifs

That's right, animated Gifs work… that can save you a lot of trouble and enhance your application significantly… use an animated gif for a "please wait" logo, or make a game where the moving character is an animated gif, rather than having to replace the image over and over… or take advantage of animated content like a radar loop.

Tivo Logo

The TiVo Logo is available from the current tivo as an animated gif. Just use this Image URL as a resource: http://127.0.0.1/images/tivodance.gif.
WARNING: accessing this while an HME app is running on the same TiVo DVR can cause a reboot!

Images/Icons served from the TiVo

As indicated above, you can get a number of images from the TiVo itself…images meant to support the TiVo's HMO Web Interface. A mapping between XML HMO interface's custom icon to image is apparently: "urn:tivo:image:*"->/images/*.png
WARNING: accessing these while an HME app is running on the same TiVo DVR can cause a reboot!
Some known icons:

  • save-until-i-delete-recording (green dot)
  • expires-soon-recording (yellow dot)
  • expired-recording (yellow dot with "!")
  • note - there is no "recording" icon (I assume), since no image is used in that case
  • suggestion-recording (tivo-face-in-a-circle)
  • video-store-recording
  • (guessed) download-in-progress-recording (blue "light" in a circle)
  • in-progress-recording (red "light" in a circle)
  • folder (yellow folder)
  • in-progress-folder
  • suggestions-folder (green folder with thumbs up)
  • suggestions-in-progress-folder
  • wishlist-folder (blue folder with white star)
  • wishlist-in-progress-folder (blue folder with red "light" in a circle in the middle)
  • high-definition-folder (? linked in served page, but image was "broken")
  • and of course /images/tivodance.gif

There are a multitude of logo icons for different channels, too, but they are using an internal id number (which could be different for each tivo, though unlikely)
those are in the form /ChannelLogo/logo-65543.png (not /images/…)

Custom Fonts

It's a feature, but not as widely realized, that you can upload your own font for use by your TiVo app. That leaves things open for doing graphics via a custom font with a lower overhead cost in some senses.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License