If people show sufficient interest. So far, I'm not blown away by the response. That's OK; I needed it for my own purposes, and additional users are just a bonus. But it doesn't make me want to bother hosting it anywhere.

__________________

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

So, my new 540 came today. It came with 7.2, which was interesting -- my demo apps didn't come up at all; the screen just sat at "Please wait..." It turns out that, in that version, the TiVo won't send the "active: true" message until after it's already received something more than the handshake from the app. That was easily fixed -- I'm just not waiting for that anymore -- but it broke my original design to have resolution changes handled before startup(). Ah well. Anyway, that done, all the apps worked fine, including Animate and Clock. I'll see what happens once it upgrades to 9.1. There was some odd behavior with pyTivo, too, that I haven't fully characterized yet.

__________________

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

OK! Here's the story: It's 9.1. I ran Animate for several hours under 7.2; no problem. Upgraded to 9.1 -- saw what others have reported. Then I tried the original Java version: exactly the same problem. So, there's another one for the 9.1 bug list. I'm surprised no one has reported it before.

I can only hope and expect that TiVo will fix it with their next software release for the Series 2, since it doesn't happen in either 7.2 or 9.2. But it happens in 9.1 regardless of the language or library used.

I'll be attaching a new version to the first post shortly.

__________________

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

Some further experiments with my 540: I tried forcing a short pause after each command sent. That didn't fix it, although it did make a difference -- I could see a little bit more of the rectangles, and the menu text didn't disappear. I extended the pause all the way to "don't send the next command until I press a key," but it didn't improve further.

I found that Effects caused the same problem as Animate -- not too surprising, since it also has many views in constant motion. One interesting thing here: when I inserted a delay, the "Visible" test actually worked (on my S3), for the first time (i.e., that square disappeared and reappeared). This hadn't worked even in the original Java version.

Then I took out the pause, and tried reducing the number of sprites instead. That was interesting. With one sprite, no problems. Two also seemed fine. With four, the first run seemed to freeze, although there was no visual distortion -- just four rectangles stopped. At first I assumed that the TiVo had frozen, but it responded just fine to the TiVo key. So I ran the four-square Animate again, and it seemed to work OK. Then I upped it to eight. Now I could see what I'd missed with four -- it actually started out normal, and only gradually came to a halt, with some squares still moving (based on their last animation, I assume) while others had already stopped; eventually, they all stopped. This happened every time with eight, although there was still no distortion or loss of text. Then I tried scaling it back down and letting it run a long time. Even with just three, after a few hours, I got the distortion and lost text.

Anyway, there doesn't seem to be anything I can do about it, but I kinda knew that already.

Instead, I offer you the next version of HME for Python. It adds two new event handlers (they're needed now, since startup() runs before the startup events are handled), and incidentally makes use of one of them in the demos to keep you from running Animate or Effects on a 9.1 system. (The others seem to be safe.) It also suppresses any exceptions during reading or writing the stream, since the socket can close at any time, but you still might need to run cleanup(). Plus it looks neater that way.

__________________

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

I tried an older version of your software and only got an occasional artifact on my Series 2 240. I got similar artifacts from the java animate sample and my animate sample. None of them affected the usability of my tivo. This is all with 9.1.

I'm trying out the test app on my Humax DVD Recorder (595) and it looks like the optional keys aren't coming back with the right key codes. Here are the key names, the spec codes, and what I actually get.

Turn on the debug output; it's more interesting. The 1.4.1 simulator is seriously broken. It gets a NullPointerException when trying to create resource 2052 (the font), which in turn is why resource 2055 (the text) fails. You can see the same behavior even when running the Java SDK's "Hello World" sample app (either 1.4 or 1.4.1 version). There are other problems with 1.4.1, too. But, I guess that's why it's labelled "experimental".

As for the key codes... they are what they are. If the real TiVo is sending out codes that don't match the spec, that's regrettable. But even the spec says not to rely on the KEY_OPT_* codes.

In a way, I'm encouraged to be receiving bug reports about things that would already be apparent with the Java SDK -- because it means that people are picking up HME for Python who never tried the Java SDK.

__________________

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

Version 0.5 posted -- this adds focus support, fixes a bug with the default sizing of child windows, and eliminates the need for a separate handle_key_repeat(), if you just want a repeat to work like a press.

__________________

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

I found that Effects caused the same problem as Animate -- not too surprising, since it also has many views in constant motion. One interesting thing here: when I inserted a delay, the "Visible" test actually worked (on my S3), for the first time (i.e., that square disappeared and reappeared). This hadn't worked even in the original Java version.

Then I took out the pause, and tried reducing the number of sprites instead. That was interesting. With one sprite, no problems. Two also seemed fine. With four, the first run seemed to freeze, although there was no visual distortion -- just four rectangles stopped. At first I assumed that the TiVo had frozen, but it responded just fine to the TiVo key. So I ran the four-square Animate again, and it seemed to work OK. Then I upped it to eight. Now I could see what I'd missed with four -- it actually started out normal, and only gradually came to a halt, with some squares still moving (based on their last animation, I assume) while others had already stopped; eventually, they all stopped. This happened every time with eight, although there was still no distortion or loss of text. Then I tried scaling it back down and letting it run a long time. Even with just three, after a few hours, I got the distortion and lost text.

Anyway, there doesn't seem to be anything I can do about it, but I kinda knew that already.

I notified Jerry, who is passing the information along to the right people. I also played with skull and bones on my TiVo and it plays and works fine, although it never has more than one thing in motion at a time. Perhaps I need to play it for hours to see if things start getting bad.

If you want to write an HD photo viewer using this library, then yes. Out of the box, no. (BTW, I have an HD-related fix to post...) I'll probably write one myself, but don't wait for me.

HMO per se is neutral about resolution. The HMO photo viewer built into the TiVo is strictly SD, but the "HD Photos 2.0" HME app in TiVo Desktop uses an HMO server as the backend -- and it will even work with pyTivo. (Getting it to run outside of TiVo Desktop is a little tricky, but doable.)

HMO per se is neutral about resolution. The HMO photo viewer built into the TiVo is strictly SD, but the "HD Photos 2.0" HME app in TiVo Desktop uses an HMO server as the backend -- and it will even work with pyTivo. (Getting it to run outside of TiVo Desktop is a little tricky, but doable.)

Are you saying HD-res photos are possible with pyTivo and without TiVo desktop? Or would you still need the TiVo Desktop to tell TiVo to request HD photos from the HMO server?

Edit: Never mind, I get it. Tivo <-> HD photos 2.0 (HME) <-> HMO server.
HMO is neutral, but we can't get the Tivo to request hi-res.

0.11 -- Added a simple slideshow Picture Viewer to the included apps. It depends on the Python Imaging Library, and you'll have to edit picture/__init__.py to set ROOT to an appropriate directory (because I didn't want to bloat the archive with sample pictures). The app automatically uses hi-def mode when available.

- Changed the Animation class (and all the "animtime" parameters of various functions) to take seconds instead of milliseconds, to make it more consistent with general Python usage. I hope this doesn't inconvenience anyone.

- Small tweak to the put_chunked() function.

But I guess people are losing interest, judging by the number of downloads.

__________________

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

0.11 -- Added a simple slideshow Picture Viewer to the included apps. It depends on the Python Imaging Library, and you'll have to edit picture/__init__.py to set ROOT to an appropriate directory (because I didn't want to bloat the archive with sample pictures). The app automatically uses hi-def mode when available.

- Changed the Animation class (and all the "animtime" parameters of various functions) to take seconds instead of milliseconds, to make it more consistent with general Python usage. I hope this doesn't inconvenience anyone.

- Small tweak to the put_chunked() function.

But I guess people are losing interest, judging by the number of downloads.

I'm tracking your updates, I just don't have a lot of time to play, unfortunately. I would like to use HME for python for a few projects I have in the back of my mind, when I can find the time to devote to them.

But I guess people are losing interest, judging by the number of downloads.

Not at all, I just am not able to spend much time on it right now. I think I am still at 0.5 for my playing around and learning about event driven programming using python and hme. I have only done procedural scripts up to this point and have a lot to learn. In addition to that I probably will put more effort into fixing pytivo on my NAS first. It isn't as stable there as it is on a PC, and I fear it may be resource bound. I am trying to learn enough about Linux to try to look into that. But that is for another forum.

I then ran animate and the screen showed the corect animation for about a second and then blanked showing an occasional tall rectangle. I took a long sequence of shots at about 2 per second to capture one of the rare appearances of a rectangle. They were appearing every 5 to 10 seconds, in different locations on the screen, but mostly to the right side.

When I exited the TiVo had lost fonts and rebooted.

I can happily report that the new 9.3 software on my Humax DVD burner TiVo fixes the issues I was seeing in HME, it all works correctly now.

Bummer, I only tested it for about 10 or 15 seconds, I guess I should have tried for much longer. It was so nice seeing it behave correctly for the first time ever. Try it again after a day, just in case indexing is pushing it over the edge.