TiVo Community Forum banner
  • TiVoCommunity.com Ambassador Program Now Open! >>> Click Here

Tivo plugin for Plex

140K views 276 replies 68 participants last post by  windracer 
#1 ·
I don't know how many of you are Plex fans but I love the media server. There was a Tivo plugin developed that allowed us to watch all our Tivo recordings without downloading, within the Plex environment. I don't understand the specifics of how it worked but the plugin is broken and the author seems to have abandoned it. I have a copy of the latest, that still does not work although it can see the recordings in each Tivo, just not begin to play them.

Is there anybody talented enough and willing to step up and fix this? I believe it is currently Mac only but it would be great to see cross development. Plex has media servers for Mac, PC, Linux and DLNA. Clients for mac, Windows, GoogleTV, Roku, Samsung, LG, Android, IOS, and more.

The Plugins go in the Server application, currently 3 Mac, PC, Linux.

Any takers? https://github.com/plexinc-plugins/TiVo.bundle
 
#127 ·
I'm excited about both TiVo for Plex and Plex for TiVo... I would have been more excited if this were 2012, but alas...

Thanks for the heads up about the Opera store... finally there will be a use for it in my house :)
 
#128 ·
But now that I think about it further... if that's the case, it indicates that the current restriction might not be because the content overlords insisted on it, but rather because TiVo simply coded the workflow stupidly. The box should be smart enough to allow streaming (adapting the transcode, based on whether or not the user is on the same LAN, or elsewhere on the Internet) and let the user stream any content, even if it has the "copy only once" flag set. Especially if it has the "copy only once" flag set.

Yeesh.
If it is using MRS it isn't applying any transcoding, and is treating the device while local as another TiVo as a result it wouldn't look at the copy flag except for the downloading option.

The transcoding would be blocked by the copy once flag since you can't alter a copy once recording. Even on Media Center, from what I remember, you couldn't do anything with copy once content except play it back on the local PC or via an extender.
 
#129 ·
That is the main log file which is just telling you a generic error, you need to check what was in the:

PMS Plugin Logs/com.plexapp.plugins.tivotogo.log

That will tell you if there were problems starting the tivodecode process.

Perhaps you can check the following with ssh:
1) Provide the output of the command: uname -a
2) Check to see you have curl, ls -l /usr/bin/curl
3) See if the tivodecode process works by running the following which should produce a help message:

----

I have static binaries built for a 32 bit and 64 bit x86 kernel but have not yet checked them in.
1) # uname -a
FreeBSD plexmediaserver_1 9.2-RELEASE-p12 FreeBSD 9.2-RELEASE-p12 #0 r262572+b043649: Sun Sep 28 23:03:31 PDT 2014 root#build3.ixsystems.com:/tank/home/jkh/build/921/freenas/os-base/amd64/fusion/jkh/921/freenas/FreeBSD/src/sys/FREENAS.amd64 amd64

2) I did forget that it wasn't installed in a jail...fixed.

3) # tivodecode -h
ELF binary type "0" not known.
../../../../Plex Media Server/Plugins/TiVoToGo.bundle/Contents/Resources/tivodecode: Exec format error. Binary file not executable.
 
#130 ·
Just an update...found tivodecode 0.2pre4 in the BSD repo and installed that, symlinked the copy in the bundle to /usr/local/bin/tivodecode.

Code:
2014-12-15 22:05:42,911 (808e7f400) :  DEBUG (runtime:717) - Handling request GET /video/tivotogo/:/function/PlayVideo?function_args=Y2VyZWFsMQoxCmRpY3QKMQpzMTYzCmh0dHA6Ly8xMjcuMC4wLjE6NDk0OTIvYUhSMGNEb3ZMekU1TWk0eE5qZ3VNVEl6TGpVeE9qZ3dMMlJ2ZDI1c2IyRmtMMEVsTWpCRGFHRnliR2xsSlRJd1FuSnZkMjRsTWpCRGFISnBjM1J0WVhNdVZHbFdiejlEYjI1MFlXbHVaWEk5SlRKR1RtOTNVR3hoZVdsdVp5WnBaRDAyTkRjMU9ETTVzMwp1cmxyMAo_&indirect=1&mediaInfo=%7B%22audio_channels%22%3A%20null%2C%20%22protocol%22%3A%20null%2C%20%22optimized_for_streaming%22%3A%20true%2C%20%22video_frame_rate%22%3A%20null%2C%20%22duration%22%3A%20null%2C%20%22height%22%3A%20null%2C%20%22width%22%3A%20null%2C%20%22container%22%3A%20null%2C%20%22audio_codec%22%3A%20null%2C%20%22aspect_ratio%22%3A%20null%2C%20%22video_codec%22%3A%20%22mpeg2%3F%22%2C%20%22video_resolution%22%3A%20null%2C%20%22bitrate%22%3A%20null%7D
2014-12-15 22:05:42,917 (808e7f400) :  DEBUG (runtime:814) - Found route matching /video/tivotogo/:/function/PlayVideo
2014-12-15 22:05:42,918 (808e7f400) :  DEBUG (runtime:143) - Calling function 'PlayVideo'
2014-12-15 22:05:42,919 (808e7f400) :  INFO (__init__:187) - Return PlayVideo: http://127.0.0.1:49492/aHR0cDovLzE5Mi4xNjguMTIzLjUxOjgwL2Rvd25sb2FkL0ElMjBDaGFybGllJTIwQnJvd24lMjBDaHJpc3RtYXMuVGlWbz9Db250YWluZXI9JTJGTm93UGxheWluZyZpZD02NDc1ODM5
2014-12-15 22:05:42,927 (808e7f400) :  DEBUG (runtime:106) - Sending packed state data (109 bytes)
2014-12-15 22:05:42,928 (808e7f400) :  DEBUG (runtime:918) - Response: [200] MediaContainer, 1046 bytes
2014-12-15 22:05:43,017 (8098c1400) :  INFO (__init__:264) - GET URL: http://192.168.123.51:80/download/A%20Charlie%20Brown%20Christmas.TiVo?Container=%2FNowPlaying&id=6475839
2014-12-15 22:05:43,019 (8098c1400) :  DEBUG (__init__:271) - TVD: /usr/pbi/plexmediaserver-amd64/plexdata/Plex Media Server/Plug-ins/TiVoToGo.bundle/Contents/Resources/tivodecode
2014-12-15 22:05:43,020 (8098c1400) :  DEBUG (__init__:272) - CMD: /usr/bin/curl http://192.168.123.51:80/download/A%20Charlie%20Brown%20Christmas.TiVo?Container=%2FNowPlaying&id=6475839 --digest -s -u tivo:3050268861 -c /tmp/cookies.txt
2014-12-15 22:05:43,021 (8098c1400) :  DEBUG (__init__:273) -  PIPED to: /usr/pbi/plexmediaserver-amd64/plexdata/Plex Media Server/Plug-ins/TiVoToGo.bundle/Contents/Resources/tivodecode -m 3050268861 -
2014-12-15 22:05:43,053 (8098c1400) :  INFO (__init__:288) - Unexpected error: [Errno 2] No such file or directory
 
#131 ·
Just an update...found tivodecode 0.2pre4 in the BSD repo and installed that, symlinked the copy in the bundle to /usr/local/bin/tivodecode.
The next step since you are getting an error is to run the command manually and save it to a file or pipe it to mplayer. Plex usually runs as a specific user, so you may have to run as that user to further see what is going on.

If you twist the log and account for some spaces, the command you want to run is:

Code:
/usr/bin/curl "http://192.168.123.51:80/download/A%20Charlie%20Brown%20Christmas.TiVo?Container=%2FNowPlaying&id=6475839" --digest -s -u tivo:3050268861 -c /tmp/cookies.txt | /usr/pbi/plexmediaserver-amd64/plexdata/Plex Media Server/Plug-ins/TiVoToGo.bundle/Countents/Resources/tivodecode -m 3050268861 - | mplayer -
You might also have to try each part without the pipe and see what is breaking down where the error is. The curl for example can be run with a -v to get more output about what it is doing.
 
#132 ·
It was staring me in the face. Curl installed on FreeBSD via pkg_add is placed in /usr/local/bin/curl/. I put a symlink in for now. Perhaps the script can do a test to see if the file is available and if tivodecode executes correctly (parse the --help). I can push some changes to git if you'd like.

Now seems to be a timeout -- it's an old Tivo S2 (Roamio is in the mail) and on wireless so maybe not unexpected. Since these are SD stream I'm pretty sure it can keep up with the decoder -- not sure if there's a way to increase the timeouts? (Spooling to disk took ~5 minutes)

Thank you very much for the help!

Code:
2014-12-17 22:06:23,596 (8098c2400) :  DEBUG (__init__:272) - CMD: /usr/bin/curl http://192.168.123.51:80/download/A%20Charlie%20Brown%20Christmas.TiVo?Container=%2FNowPlaying&id=6475839 --digest -s -u tivo:3050268861 -c /tmp/cookies.txt
2014-12-17 22:06:23,598 (8098c2400) :  DEBUG (__init__:273) -  PIPED to: /usr/pbi/plexmediaserver-amd64/plexdata/Plex Media Server/Plug-ins/TiVoToGo.bundle/Contents/Resources/tivodecode -m 3050268861 -
2014-12-17 22:06:23,640 (8098c2400) :  INFO (__init__:278) - Starting decoder
2014-12-17 22:06:50,777 (8098c2400) :  INFO (__init__:288) - Unexpected error: timed out
2014-12-17 22:06:50,778 (8098c2400) :  INFO (__init__:296) - tivodecode/curl terminated
2014-12-17 22:07:50,787 (8098c2400) :  INFO (__init__:264) - GET URL: http://192.168.123.51:80/download/A%20Charlie%20Brown%20Christmas.TiVo?Container=%2FNowPlaying&id=6475839
2014-12-17 22:07:50,790 (8098c2400) :  DEBUG (__init__:271) - TVD: /usr/pbi/plexmediaserver-amd64/plexdata/Plex Media Server/Plug-ins/TiVoToGo.bundle/Contents/Resources/tivodecode
2014-12-17 22:07:50,793 (8098c2400) :  DEBUG (__init__:272) - CMD: /usr/bin/curl http://192.168.123.51:80/download/A%20Charlie%20Brown%20Christmas.TiVo?Container=%2FNowPlaying&id=6475839 --digest -s -u tivo:3050268861 -c /tmp/cookies.txt
2014-12-17 22:07:50,794 (8098c2400) :  DEBUG (__init__:273) -  PIPED to: /usr/pbi/plexmediaserver-amd64/plexdata/Plex Media Server/Plug-ins/TiVoToGo.bundle/Contents/Resources/tivodecode -m 3050268861 -
2014-12-17 22:07:50,860 (8098c2400) :  INFO (__init__:278) - Starting decoder
2014-12-17 22:08:20,096 (8098c2400) :  INFO (__init__:288) - Unexpected error: timed out
2014-12-17 22:08:20,097 (8098c2400) :  INFO (__init__:296) - tivodecode/curl terminated
2014-12-17 22:08:53,747 (8098c2400) :  INFO (__init__:264) - GET URL: http://192.168.123.51:80/download/A%20Charlie%20Brown%20Christmas.TiVo?Container=%2FNowPlaying&id=6475839
2014-12-17 22:08:53,749 (8098c2400) :  INFO (__init__:288) - Unexpected error: [Errno 32] Broken pipe
2014-12-17 22:08:53,751 (8098c2400) :  INFO (__init__:294) - Self-exit of tivodecode/curl
2014-12-17 22:08:53,753 (8098c2400) :  INFO (__init__:296) - tivodecode/curl terminated
 
#133 ·
I am having trouble installing the new channel. I worked through all the steps, verified that the plug-in is in the correct directory - and it simply does not show up on the channel list when I browse for it under "all available channels".

1) installed curl
2) copied tivo bundle to the plugin directory
3) restarted the Plex server (just because)
4) from the Plex server browse "all available channels"

What might I be doing wrong?
Same problem. What am I missing?
 
#135 ·
Same problem. What am I missing?
Two other details I did when I installed the tivotogo bundle that may or may not help:
  • Made sure curl was in the path and would run from the command line when I typed "curl"
  • After copying the bundle to the plugin directory, I renamed the tivotogo bundle directory to match the format of the other bundle names in the directory. I think I stripped off "-master" from the end of the directory name.
 
#136 ·
Two other details I did when I installed the tivotogo bundle that may or may not help:
  • Made sure curl was in the path and would run from the command line when I typed "curl"
  • After copying the bundle to the plugin directory, I renamed the tivotogo bundle directory to match the format of the other bundle names in the directory. I think I stripped off "-master" from the end of the directory name.
yea, nice plug in and greatly appreciated but his instructions are horrendous.
 
#137 ·
Two other details I did when I installed the tivotogo bundle that may or may not help:
  • Made sure curl was in the path and would run from the command line when I typed "curl"
  • After copying the bundle to the plugin directory, I renamed the tivotogo bundle directory to match the format of the other bundle names in the directory. I think I stripped off "-master" from the end of the directory name.
Type "which curl" if you're on Linux. Make sure it's in /usr/bin/curl, otherwise the plugin won't work (see my post above).
 
#140 ·
Need a little help here...I've copied the TivoToGo.bundle to the Plex plugins directory, entered MAK and can see my Tivo boxes. When I try to run them I get "Channel Not Responding". I also notice that only 2 of my 3 Tivo boxes appear..one roamio and one premier. My other roamio does not appear in the channel.
Any ideas?
 
#141 ·
Need a little help here...I've copied the TivoToGo.bundle to the Plex plugins directory, entered MAK and can see my Tivo boxes. When I try to run them I get "Channel Not Responding". I also notice that only 2 of my 3 Tivo boxes appear..one roamio and one premier. My other roamio does not appear in the channel.
Any ideas?
Are the MAK's the same on all 3 devices?

You might try just using a single IP address to access just one of the TiVo's to see if it works at all. I only have a single TiVo to test with so I am not sure how well the multi TiVo support actually works.
 
#144 ·
I've been digging through the forums and haven't found an answer, so I'm hoping someone here can point me in the right direction.

I've downloaded the bundle, copied it to the appropriate directory on my Plex server, configured the plug-in and fed it my MAK. It can see my TiVo and retrieve the program information.

Any attempt to play a file comes up with M3U8: No Levels to Play.

I've dug into the logs a bit and it seems to be related to an Error 13 which (I think) relates to permissions.

An attempt to change ownership on all of the folders in the PlexMediaApp broke the server. So, I installed fresh, but I still have the same problem.

Any pointers anyone could provide would be much appreciated.

P.S.
Thanks for a great app! I can see that it works for lots of folks, I imagine my problem is an aberration.
 
#145 ·
Seeing the same thing on my stock Android 5.0.1 Nexus 5, no root. Plays fine via web, starts then stops after a few seconds with the Plex app.
FYI I've worked around this issue by using the TTG plugin in Plex to download the show locally to my PC, then use the main Plex app to watch the show from my Tivo To Go library name in Plex. There is definitely an issue with streaming directly from Tivo via Plex through the TTG plugin.
 
#146 ·
So...I got the plug in to work and I'll document my efforts to assist others who might have a similar problem. I'm running plex on an Ubuntu headless box and had to do everything via ssh.

1) I created /home/plex directory so that the "plex" user would have somewhere to store files. Following the instructions at GiantGeek blog, I assigned the appropriate rights.

2) I went to the advanced settings for transcoding and pointed it to the directory I had created as a working directory.

3) I burrowed down to find the tivodecode executable and had to set the executable bit via chmod +x tivodecode

Once that was done, it worked brilliantly. You can't scrub, of course, but for straight playback it works great.
 
#147 ·
Got the app to work but when playing back video from my tivo on my mac is it possible to fast forward or skip ahead? When I try to use the mouse to manually move ahead in the recording it doesn't let me move the time at all. I tried the keyboard shortcuts for the mac and that didn't work either... Any ideas?
 
#150 ·
I've wrestled with installing on Ubuntu for a little while (my ubuntu plex server is always on) but been stuck along the way.

After messing around with permissions, I finally got it to show up under channels. But I couldn't find anywhere to enter the MAK on the server. Was able to enter the MAK on the Roku client but it wouldn't go past that. Then back on the server after entering the MAK on the client, when clicking on the Tivo channel, I just get a page saying "Channel not responding".

Today I loaded Plex under Windows and added the Tivo Channel with ease. When clicking on the Tivo channel, there is a gear to enter settings including MAK and download location. Where is all this stuff under Ubuntu? Anyway, I just wanted to prove myself that my Tivo Premier was accessible and I could stream shows and download.

I'd still like to use this under Ubuntu but am pulling my hair out trying to find out where the issue is.

Further, based on a previous comment, looking in the logs, there is no
/var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Logs/PMS Plugin Logs/com.plexapp.plugins.tivotogo.log

And when I try to run tivodecode from the command line, I get:

mike@mike-Inspire:/var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Plug-ins$ ./TiVo.bundle/Contents/Resources/tivodecode -h
bash: ./TiVo.bundle/Contents/Resources/tivodecode: cannot execute binary file: Exec format error


But viewing the Resources directory, I get:
mike@mike-Inspire:/var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Plug-ins/TiVo.bundle/Contents/Resources$ ls -al
total 292
drwxr-xr-x 2 plex plex 4096 Jan 3 2013 .
drwxr-xr-x 4 plex plex 4096 Jan 3 2013 ..
-rw-r--r-- 1 plex plex 233 Jan 3 2013 ._art-default.jpg
-rwxr-xr-x 1 plex plex 69290 Jan 3 2013 art-default.jpg
-rw-r--r-- 1 plex plex 233 Jan 3 2013 ._icon-default.jpg
-rwxr-xr-x 1 plex plex 51348 Jan 3 2013 icon-default.jpg
-rwxrwxrwx 1 plex plex 153216 Jan 3 2013 tivodecode
-rw-r--r-- 1 plex plex 233 Jan 3 2013 ._tivodecode

So, not sure where to go from here.
 
This is an older thread, you may not receive a response, and could be reviving an old thread. Please consider creating a new thread.
Top