Is there a way to add commands to the CLI pyTivo that the GUI shell calls? I didn't find the info in a quick search, but in one of the other threads, it says you can add a simple command to use the transport stream method (IIRC), so then closed captions will be retained when transferring back to the Tivo.. (On Premieres, you almost never get closed captions when simply sending the same file back..)

I looked inside the app package and didn't see an obvious "file with CLI parameters" in a quick search.

Is there a pytivo.conf file I didn't see in my look around? and even if pyTivoX long predates the feature, isn't it correct that the GUI app is basically a shim on top of the CLI pytivo, so especially if just turning on transport stream is "invisible" to the caller, adding it should be easy?

pyTivoX is bundled with its own copy of pyTivo. You'd have to replace that. (It's doable; I've done it. But that was a while ago.) I can't speak to the .conf file offhand, except that it must exist (if not necessarily with that name) for pyTivo to function. Another thing I'd have to look up... But, this is an abandoned project, and IMHO it's quixotic to continue using it, unless someone resumes maintaining it.

__________________

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

...pytivo starts and runs fine. However, I cannot get streambaby to start. The log shows:

Code:

Error: This Java instance does not support a 32-bit JVM.
Please install the desired version.

If I startstream baby from inside the pyTivoX app bundle, it works fine.

Resolved, at least for me.

I scanned the binary executable (pyTivoX/Contents/MacOS/pyTivoX) and found where streambaby was called (actually 2 places). I then used a hex editor to change the -d32 argument to -d64 and it now works fine.

Now that I have the base application working I will check to see if there is a need to update the bundled pyTivo or streambaby.

BTW, based on the low volume on this topic, I am guessing I am the only person trying to use pyTivoX on MacOS with 64-bit java. If there is anyone else out there with interest in this, please post back.

BTW, based on the low volume on this topic, I am guessing I am the only person trying to use pyTivoX on MacOS with 64-bit java. If there is anyone else out there with interest in this, please post back.

Nice work.

I had been using PyTiVoX until about a year ago. I've just been using pyTiVo since then to stay up with the modifications.

On the odd chance that someone with a bit of clue is still tuned in here...

Having patched pyTivoX to run under Mavericks, my next goal was to update the enclosed streambaby to 0.29. Got that working too. Now I am trying to get streambaby to load the FFmpeg libs rather than running FFmpeg directly. So far I have built FFmpeg-1.2.4 and now have 64-bit versions of the needed libs and streambaby seems to recognize them . However, on loading "FFmpeg-java Module" it blows up. Here is the log...

Code:

FFmpeg-java Module

I suspect this is a path issue, but it is hard to tell.

BTW, to get ffmpeg-1.2.4 to run, I had to delete ffmpeg.bin and recreate it as a link to ffmpeg

So, as has been discussed in this (and the streambaby) thread, if you "upgrade" to Java 1.7 you will have problems with any any file names or meta-data that contain anything except straight ascii. Unfortunately, the only option presented has been to re-install Java 1.6.

Also unfortunately, pyTixoX has the java executable path hard coded in the app. However, here is a way to keep your Java 1.7 installation and still get pyTivoX to run correctly under Java 1.6.

First, create a link to the Java 1.6 executable, we will call it jav6.

Now, use a hex editor to edit the pyTivoX executable as noted in the post on changing to a 64 bit java. This time you need to search for -d64 and then change "/usr/local/bin/java" (just preceding the -d64) to "/usr/local/jav6". Then search for the second appearance of -d64 and do the same thing.

That's it.

BTW, the reason for using jav6 instead of something more standard like java6 is that you cannot change the byte count of the executable.

On the odd chance that someone with a bit of clue is still tuned in here...

berkinet,

I don't know how much of a clue I have, but I am interested. I would like to get PyTivoX to deal with closed captions, both when it runs pyTivo and especially when it runs StreamBaby.

I do know how to get pyTivo, running standalone in Terminal, to support CCs. The global config parameter "ts = on" in pytivo.conf tells it to send MPEG Program Stream files as Transport Streams instead. My Roamio Plus can then see and show the captions.

That works based on some change to how ffmpeg is getting called, but I don't know much more than that. I don't know that much about ffmpeg.

It would be nice to modify PyTivoX to do the same thing, so I could use PyTivoX and get access to StreamBaby and pyTivo.

If that's doable, it might even be possible to get StreamBaby within PyTivoX to support captions, since I believe StreamBaby also uses ffmpeg and might be able to tell ffmpeg to remux PS files to use the TS format.

I realize PyTivoX and StreamBaby seem no longer to be supported, and that's a shame. Both were, and are, very useful.

I don't know how much of a clue I have, but I am interested. I would like to get PyTivoX to deal with closed captions, both when it runs pyTivo and especially when it runs StreamBaby.

I do know how to get pyTivo, running standalone in Terminal, to support CCs. The global config parameter "ts = on" in pytivo.conf tells it to send MPEG Program Stream files as Transport Streams instead. My Roamio Plus can then see and show the captions.

That works based on some change to how ffmpeg is getting called, but I don't know much more than that. I don't know that much about ffmpeg.

It would be nice to modify PyTivoX to do the same thing, so I could use PyTivoX and get access to StreamBaby and pyTivo.

If that's doable, it might even be possible to get StreamBaby within PyTivoX to support captions, since I believe StreamBaby also uses ffmpeg and might be able to tell ffmpeg to remux PS files to use the TS format.

I realize PyTivoX and StreamBaby seem no longer to be supported, and that's a shame. Both were, and are, very useful.

Eric, in the case of Streambaby it is using HME and there is no provision on TiVo itself for handling captions. However, Streambaby does support captions if you use ccextractor to extract captions from video file to a .srt file. When streambaby sees an accompanying .srt file it will automatically create its own captions for the stream. i.e. If you are streaming file1.mpg and have an accompanying file1.srt file with captions you will get captions in the stream. Streambaby has a bunch of options for controlling look and feel of captions:http://code.google.com/p/streambaby/wiki/StreamBabyIni
(Look for Closed Captioning Options section)
There is a toggle in Streambaby using remote to turn captions on/off.
You can configure kmttg for ccextractor and then enable "captions" task to extract captions from to .srt file from a decrypted .mpg file.

Eric, to run Streambaby you need to use a Java 6 (1.6) installation. That doesn't have to be your main Java version, but you can edit "streambaby" script to put full path to Java 6 binary instead of just "java".

Eric, to run Streambaby you need to use a Java 6 (1.6) installation. That doesn't have to be your main Java version, but you can edit "streambaby" script to put full path to Java 6 binary instead of just "java".

I'm wondering if there aren't situations, such as possibly when I want to push files from streambaby to the TiVo, where streambaby would need ffmpeg? What would I do in that case?

Also, just for curiosity's sake: the default streambaby.ini says "most people don't need to change this" with regard to specifying the Mac's IP address. That seems wrong. What's that all about?

With that setting streambaby should still use the external ffmpeg when needed. You may need to use "ffmpeg.path" option to give full path to ffmpeg if Streambaby doesn't find it.
I've never used the "ip" setting myself, so at least on Windows it's not required. Depending on your network hardware on computer you're using the streambaby way of determining ip may not yield the correct number which is why the option to hard code it is there.

Before I came across this thread or really investigated anything
Installed default pytivoX (1.3) on my Mac Mini running the public beta of 10.10 Yosemite (and Java 1.7.0.65). Selected my Movies folder.

Nothing shows up by default on my Tivo Roamio, however if I enter the IP address in the "Install App" menu of the Tivo, it loads pyTivo! The name of the "app" is long and contains some gibberish, but I am able to access the movies folders and play any of them easily!

TL;DR Default version of pytivoX installs and runs on Yosemite with Java 1.7.0.65. You just have to "Install" the pytivo app by entering the fixed IP address of your host machine. Hope this helps someone.

Edit: After further experimentation, pytivo does not work reliably. If I stop and restart it, my shared folder will show up under My Shows under Devices. It seems to work well but after a few minutes the Tivo loses connection and the Devices tab disappears. Streambaby appears reliable but has to be "installed" under Apps by typing in the IP address of the computer or host it's running on. Obviously, it's best to assign that computer a fixed IP address via DHCP for reliability.