pyTivoX

I can't seem to get pyTiVox to work for me. I noticed that my config file is getting blown away whenever I restart it via the "restart" button. Here's a couple of lines taken out of the console. The errors seem to occur whenever I click on the restart button.

The blowing away of the config file on restart is normal (restart kills the python process, writes the new configuration settings based on what you have in the gui, and starts the python process again).

The attempt to extract a string from a number is not normal.. And I think I see what happened. (the choice of video/music/photo is being marked as 0,1,2 instead of the string.. fixing).

Thanks....
Somehow I got around that problem. Now I'm having an issue where it's not transferring the video to my TiVo. I tried to transfer a number of different videos however, each of them are "black" when I go to play them. Let me know if you need me to send you a log file.

The blowing away of the config file on restart is normal (restart kills the python process, writes the new configuration settings based on what you have in the gui, and starts the python process again).

The attempt to extract a string from a number is not normal.. And I think I see what happened. (the choice of video/music/photo is being marked as 0,1,2 instead of the string.. fixing).

I understand what you are describing. I loaded pytivox onto my wife's computer (Intel/10.5.x) with complete success. However, my 10.4 G5 still doesn't work.

Click to expand...

Hmm.. I just realized.. I think 10.4 ships with an older version of python for which pyTivo doesn't work 'out of the box'...

run

python -V

and tell me what number it spits out. Since I don't plan on including a full python distribution in the bundle, if the default python on Tiger is too old, it looks like I'm gonna have to make this a 10.5-only project

Thanks....
Somehow I got around that problem. Now I'm having an issue where it's not transferring the video to my TiVo. I tried to transfer a number of different videos however, each of them are "black" when I go to play them. Let me know if you need me to send you a log file.

Click to expand...

A log file would help, as would a sample of one of your sources (or at least a description of what kind of file it is). I'm guessing ffmpeg is not converting the file correctly to an mpeg-2 for you, but that's a total guess..

A log file would help, as would a sample of one of your sources (or at least a description of what kind of file it is). I'm guessing ffmpeg is not converting the file correctly to an mpeg-2 for you, but that's a total guess..

I did find another issue though. In cases where a Mac has VMware or Parallels installed, pyTivo in general doesn't correctly guess the right network interface to use much of the time. Other pyTivo implementations work around this by allowing the user to manually identify the correct subnet to use via a "beacon" directive in pyTivo.conf - but pyTivoX does not currently incorporate this feature. So to get pyTivo to use the correct subnet on my computer, I had to manually shut down VMware Fusion's background processes like this:

Interesting. I'd read about some patches to allow ffmpeg to compile as a Universal Binary, but hadn't attempted it myself. Mainly because I was trying to build a statically linked ffmpeg. I'm more of a old school Linux type so I haven't quite wrapped my head around the Mac framework stuff yet.

Do you have a pointer to the instructions you used to build the Universal Binary?

Interesting. I'd read about some patches to allow ffmpeg to compile as a Universal Binary, but hadn't attempted it myself. Mainly because I was trying to build a statically linked ffmpeg. I'm more of a old school Linux type so I haven't quite wrapped my head around the Mac framework stuff yet.

Do you have a pointer to the instructions you used to build the Universal Binary?

Click to expand...

patches? It didn't take any patches.. the code compiled fine as is. Was just a big pain in the ass to build everything for both processors..

I did find another issue though. In cases where a Mac has VMware or Parallels installed, pyTivo in general doesn't correctly guess the right network interface to use much of the time. Other pyTivo implementations work around this by allowing the user to manually identify the correct subnet to use via a "beacon" directive in pyTivo.conf - but pyTivoX does not currently incorporate this feature. So to get pyTivo to use the correct subnet on my computer, I had to manually shut down VMware Fusion's background processes like this:

Code:

sudo /Library/Application\ Support/VMware\ Fusion/boot.sh --stop

Otherwise, my Tivo HD would not see the pyTivoX shares.

This does work, but it's not an optimal solution.

Click to expand...

Damn
Ok so the question is: Is it possible to put 'something' in the UI that isn't incredibly scary for the average user, but that allows a workaround for the parallels/vmware scenario? (Oddly I use parallels and didn't hit this problem.. although it may not have been running at the time).

There's something odd going on with the beacon I think. I seem to have to click the restart button three or four times on pyTiVoX before my Series 3 will see the shares the first time I start it up. After that it's fine.

There's something odd going on with the beacon I think. I seem to have to click the restart button three or four times on pyTiVoX before my Series 3 will see the shares the first time I start it up. After that it's fine.

Click to expand...

Hmm.. see anything interesting in the system logs? (I'm going to add a new window to see the output of pytivo directly, but in the meanwhile its output is just being sent to the console log).

(I know nothing of pytivo.. I just run it blindly). Could it be that you just need to wait a while on the first invocation of pytivo for it to run through your movies before it appears on a tivo?

Interesting. I'd read about some patches to allow ffmpeg to compile as a Universal Binary, but hadn't attempted it myself. Mainly because I was trying to build a statically linked ffmpeg. I'm more of a old school Linux type so I haven't quite wrapped my head around the Mac framework stuff yet.

Do you have a pointer to the instructions you used to build the Universal Binary?

Click to expand...

This is the icky shell script I use to build my mencode and my ffmpeg.. pull out whatever you need to build your ffmpeg universal:

Could it be that you just need to wait a while on the first invocation of pytivo for it to run through your movies before it appears on a tivo?

Click to expand...

I believe he's seeing the same thing I'm seeing - waiting does not "fix" it. pyTivo appears to just look for all available network interfaces that have IP addresses (this includes, as I mentioned, VMware virtual network interfaces), and assumes the first IP returned is on the subnet pyTivo should be on. Sometimes that works, and sometimes not - basically it's a crapshoot, which is why some implementations have that "beacon" function to allow us to manually specify the subnet to be used.

As far as (per a question from one of your earlier posts) making these sorts of options available yet not scary - would it be possible to have a "advanced preferences" window that maybe has the proviso "avoid changing these values unless you know what you're doing"? That could incorporate the beacon, and perhaps other pyTivo options like aspect ratio etc.

I believe he's seeing the same thing I'm seeing - waiting does not "fix" it. pyTivo appears to just look for all available network interfaces that have IP addresses (this includes, as I mentioned, VMware virtual network interfaces), and assumes the first IP returned is on the subnet pyTivo should be on. Sometimes that works, and sometimes not - basically it's a crapshoot, which is why some implementations have that "beacon" function to allow us to manually specify the subnet to be used.

As far as (per a question from one of your earlier posts) making these sorts of options available yet not scary - would it be possible to have a "advanced preferences" window that maybe has the proviso "avoid changing these values unless you know what you're doing"? That could incorporate the beacon, and perhaps other pyTivo options like aspect ratio etc.

Click to expand...

Sure I'll get to doing that..
Is it just a different broadcast address that needs to be used?

Ok, just uploaded 0.5
Main changes:
Code now runs as a 'daemon' (user launched agent).
Can be configured to run at startup.
Now has a menulet for controlling it.

--> it is 10.5 *ONLY*.
(python on 10.4 is too old, and also pytivoX now relies on some 10.5 api calls).

Update and test away... Thanks!!

Click to expand...

So there's no chance of a version of this that would work on 10.4 if we updated python on our own? That is still a simple task compared to the headache of compiling, setting up the config file, etc. and something I can send to a couple of friends interested in the program still using 10.4. If not, no big deal; I appreciate the effort and time you've put into this.