pyTivo Discussion Forum Forum Index pyTivo Discussion Forum
Answers and the development of pyTivo a TiVo transcoding server
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Downloading directly from ReplayTV - Release 0.7

 
Post new topic   Reply to topic    pyTivo Discussion Forum Forum Index -> pyTivo
 View previous topic :: View next topic  
Author Message
rfryar



Joined: 10 Feb 2008
Posts: 36

PostPosted: Sun Feb 10, 2008 12:57 am    Post subject: Downloading directly from ReplayTV - Release 0.7 Reply with quote

Updated 3/17/08

* Merged to the latest pyTivo code base this required updates to the transcode.py file.
* Transcoding support works most of the time. Now I can start watching a downloading show and it usually downloads fast enough for me to skip the commercials as they appear.

You can download the latest plugin here: http://rick.fryar.org/images/pyTivo-replaytv-0.7.zip

Updated 2/18/08

Added <captureDate> to the container.tpl to show original recorded dates
Forced deinterlacing during transcoding.. This improves "Standard" quality recordings
Fixed small bug that would not allow transcoding

You can also download the plugin here: http://rick.fryar.org/images/pyTivo-replaytv-0.6.zip

UPDATED 2/17/08

Release 0.5 is attached, extract the the plugins directory, add the included pytivo config section to your configuration file.

Requirements:
This requires DVArchive to function. pyTivo of course. Smile

This version works, mostly. Below is the overview and what is left to do.

When pyTivo starts the plug in will connect to DVArchive and cache all of your replayTV shows. This cache is saved in memory for performance for one hour and then will be re-cached upon the next access.

When you select ReplayTV from your TiVo menu you will get a list of all of your "Replay Channels" sorted by name. Once you select that channel you will see all the shows in that channel.

Current Issues:
1) Transcoding is turned off by default. With out transcoding most shows will not be allowed to ffwd/rewind/skip. Only select shows downloaded from poopli or imported into your replays will have this ability.
2) When you enable transcoding it will correctly play on the TiVo but when it finishes downloading the TiVo deletes it for some reason. (??)
3) Some channels will not display on the TiVo, probably due to some unicode characters or something encoded improperly

Todos:
1) Figure out what needs to be in the container template to properly show the recorded date
2) Use seriesids.. The code is done just not sure if it works 100% or causes performance issues as the site was down during development
3) obviously fix the transcoding issues above
4) Longer term switch to replayTV enhanced VLC to do the transcoding as it would auto skip commericals

Hope there is interest in this. Smile

Rick

---Original Post below---
I have two ReplayTVs and recently gotten a TiVo HD box. PyTivo works great for the files on my HTPC box but since I still use my ReplayTV boxes to record SD content I want to stream shows off of them.

I have started development of a Python script that will pull of all the shows from the ReplayTV boxes and also obtain the streaming URL. Once I finish can someone here help me turn that script into the Video.py script that is used by pyTivo?

Thanks,

Rick[/list]


Last edited by rfryar on Mon Mar 17, 2008 10:36 pm; edited 6 times in total
Back to top
View user's profile Send private message
rfryar



Joined: 10 Feb 2008
Posts: 36

PostPosted: Sun Feb 10, 2008 11:26 pm    Post subject: Success!! Reply with quote

Well I have made some progress..

I have created my ReplayTV plugin for PyTiVo.. Currently I just hard coded information for a single show off one of my ReplayTV units. But I have successfully streamed a show to the TiVo!

I also have started the code to pull the list of shows and get all the related information from the ReplayTVs.

Now what I need help with is
1) What is the minimum required information inside the template XML for a show to work properly?
2) Can someone help me convert to TiVo formats some of the show data I have? Ie series ID, dates, channels, etc?

Thanks!

Rick
Back to top
View user's profile Send private message
krkeegan
Site Admin


Joined: 04 Jan 2008
Posts: 458
Location: Los Angeles, CA

PostPosted: Mon Feb 11, 2008 12:01 am    Post subject: Reply with quote

This is very interesting, I like the idea, but clearly for a very small subset of users.

I attached a python script that I dont know where it came from anymore that tries to build metadata files. I don't know I thought maybe it would help you.

In terms of XML data, I think you just need
Title
Desc
Link



pyTivoMetaThis.zip
 Description:

Download
 Filename:  pyTivoMetaThis.zip
 Filesize:  3.34 KB
 Downloaded:  196 Time(s)

Back to top
View user's profile Send private message Visit poster's website
Wharfrat



Joined: 13 Feb 2008
Posts: 9
Location: Long Island, New York

PostPosted: Thu Feb 14, 2008 10:09 am    Post subject: Reply with quote

I too have an old ReplayTV. I used to trade files over the internet with the unit. I am using the unit in the basement in front of the treadmill and wasn't planning an ethernet drop. But I just might. I'll keep an eye on this thread.

Hmmm, I wonder if we could start one of those trading groups like we had for Replay. No Torrents, just trading back and forth one on one. Or does that open a "can of worms"?
Back to top
View user's profile Send private message
rfryar



Joined: 10 Feb 2008
Posts: 36

PostPosted: Fri Feb 15, 2008 9:07 pm    Post subject: Running into some troubles - Channel Up/Down Reply with quote

Ok I am getting stuck now and need some more pyTivo Experience

First I read about the sub folder bug and I believe that I am hitting that since I want to go a few folders deep.

DVRName -> Show Grouping -> Shows

So using the unqiueid patch I can always get the DVRName -> Show Grouping to work fine but can never get the shows to appear. I suppose I can get rid of that show grouping folder but it was a good convenience.

But my bigger problem is how in the heck do pagination work with the tivo? I when I use channel Up/Down I notice some changes in the URL parameters ItemCount, AnchorItem and AnchorOffset. When I "page down" ItemCount goes to -8 and then the TiVo issues a new URI request with ItemCount set to 8 but no other information. Sometimes AnchorItem and AnchorOffset are used, sometimes they are not.

So quick question is how do I make sense of what the TiVo is doing for page Up/Down. And why does it issue multiple different requests?

I would have thought it would use the anchoritem to show where you were when you clicked the page up/down button and anchor offset the number of rows up or down to go from there but it does not seem to work that way for me.

Any help would be great,

Rick
Back to top
View user's profile Send private message
krkeegan
Site Admin


Joined: 04 Jan 2008
Posts: 458
Location: Los Angeles, CA

PostPosted: Fri Feb 15, 2008 9:42 pm    Post subject: Reply with quote

AnchorItem tells the pyTivo server where to begin counting. Item Count tells it the number of files the TiVo wants and in what direction.

For Example:
Show 1
Show 2
Show 3
Show 4
Show 5
Show 6
Show 7
Show 8
Show 9
Show 10
Show 11
Show 12
Show 13
Show 14
Show 15
Show 16
After first loading the first page if you scroll to the second page the anchoritem becomes "show 8" and the itemcount becomes 8. However once on the second page. If you scroll back to the first the anchor item stays at "show 8". And the item count goes to -8, telling pyTivo to return the 8 files prior to "show 8"

Remember the last Item on the page is transfered onto the first item on the next page.

Edit: Oops yes I meant HMO and not HME, I think wmbrine has posted a sticky at the top of the forum that links to these.


Last edited by krkeegan on Mon Feb 18, 2008 4:29 am; edited 1 time in total
Back to top
View user's profile Send private message Visit poster's website
wmcbrine



Joined: 04 Jan 2008
Posts: 2009
Location: Maryland

PostPosted: Sat Feb 16, 2008 3:12 am    Post subject: Re: Running into some troubles - Channel Up/Down Reply with quote

rfryar wrote:
So quick question is how do I make sense of what the TiVo is doing for page Up/Down. And why does it issue multiple different requests?

Seriously dude, just use the item_count() function already provided for you in plugin.py. (It handles AnchorItem and AnchorOffset as well as ItemCount.) I spent many hours to get it right.

To understand what the TiVo is asking for, you need to a) read this, and b) spend some time playing with the TiVo and watching the requests that come in, because the docs don't cover it completely. Also, if you want to see me struggling with the problem, read this thread.

Sorry to contradict you KRKeegan, but HME docs will not be helpful here. HMO and HME have almost nothing in common besides the first two letters. But that's a good summary of AnchorItem/ItemCount.

_________________
My pyTivo fork . My page
Back to top
View user's profile Send private message Visit poster's website
rfryar



Joined: 10 Feb 2008
Posts: 36

PostPosted: Sat Feb 16, 2008 1:59 pm    Post subject: Re: Running into some troubles - Channel Up/Down Reply with quote

wmcbrine wrote:
Seriously dude, just use the item_count() function already provided for you in plugin.py. (It handles AnchorItem and AnchorOffset as well as ItemCount.) I spent many hours to get it right.


The main reason is that it does not work with how my plug-in is made. My plug-in does not use files on the file system nor the path to build the files list.

But this is a mute point as I have the channel up/down working fine.

Basically in short TiVo will issue the second request when the page it receives does not contain some details it expects.

So now I am only struggling with the 2 levels of folders which I may just give up on and stick with one level of folders followed by the movies.

And I will probably have to force a transocde so that ffwd/skip works on the resulting video on the TiVo.

Thanks for pointing to the HMO specification, I have been looking everywhere for it and w/o knowing it was called HMO it was tough to find. Smile

Rick
Back to top
View user's profile Send private message
rfryar



Joined: 10 Feb 2008
Posts: 36

PostPosted: Mon Feb 18, 2008 3:45 am    Post subject: Reply with quote

Now available to download 0.5. See first post.

Rick
Back to top
View user's profile Send private message
krkeegan
Site Admin


Joined: 04 Jan 2008
Posts: 458
Location: Los Angeles, CA

PostPosted: Mon Feb 18, 2008 4:42 am    Post subject: Reply with quote

First off let me say, nicely done. I don't have a replayTV myself, but this is pretty cool. Your ability to generate metadata on the fly is pretty cool I wish I could see how well it works out.

Now for some help with your problems. As for the transcoded files being deleted early. I actually designed the solution to this issue more than a year ago.

What is occurring is that the files are ending before TiVo expects them to end, this is because we have to guess the size of the video before transcoding begins and we always for compatibility guess larger. When TiVo requests more file than exists the pyTivo server sends back a 206 error, telling the TiVo that is has all the file that should be coming.

At first glance it appears you have the correct code for the 206 error in there, but it is apparently not being sent to the TiVo correctly. I will look at it and see what I can figure out, but try and debug it to figure out why the 206 error is not sent.

Kevin
Back to top
View user's profile Send private message Visit poster's website
rfryar



Joined: 10 Feb 2008
Posts: 36

PostPosted: Tue Feb 19, 2008 3:56 am    Post subject: Reply with quote

I guess I will have to post the updated file later as file includes are not working.. Sad Will post a link later on.

Also some more debugging on the 206 error code issue..

Some videos the 206 code is correctly passed to the tivo and the video is saved. Other videos this does not occur but when I watched them they ended a few minutes short. What happens if the transocde is not finished but the Tivo reaches the size we specified? Perhaps that is what is occuring the size of the transocde is larger than the +2% we specified.

Anyways the updates for 0.6 are stated in the first post.

Rick
Back to top
View user's profile Send private message
krkeegan
Site Admin


Joined: 04 Jan 2008
Posts: 458
Location: Los Angeles, CA

PostPosted: Tue Feb 19, 2008 6:28 am    Post subject: Reply with quote

Sorry about that, I applied a security patch today and failed to confirm that attachments were still working.

I think I have them all fixed now.
Back to top
View user's profile Send private message Visit poster's website
rfryar



Joined: 10 Feb 2008
Posts: 36

PostPosted: Mon Mar 17, 2008 2:28 pm    Post subject: Reply with quote

Updated - see first post for details on the latest version.
Back to top
View user's profile Send private message
photosurrealism



Joined: 13 Sep 2010
Posts: 1

PostPosted: Mon Sep 13, 2010 7:20 pm    Post subject: Updating this plugin Reply with quote

I just got a TiVo after many years of using and abusing my Replays. I was elated to see this plugin, disheartened when it didn't work, and now hopeful that I got it mostly working! Yea!

So, is anyone maintaining this thing? Can we get it up to fully functional?

I don't know much Python, and this is my first exposure to the innards of pyTivo, but I managed to get the latest posted version of replaytv working by getting rid of the config file gets. The interface has changed I guess. For now, I just hardcoded what I wanted in the module.

I couldn't figure out the right URL to list all my machines, but I can list the DVArchive by using its name. Result is that all the Channels show up, though not the categories. They have show counts that look resaonable.

But not all the shows show up. This might be because it runs out of memory (see below). And scrolling doesn't work in the ones that do. (Though I've read this thread and see that's been a problem before.)

But all the shown shows seem to work and transcode properly, which is superexciting.

But if I leave it running (even without accessing it), my (server) machine grinds to a halt, probably because of all the memory use. I have a really big DVArchive and really big Replays. I mean probably bigger than anyone has tried before.

Any ideas? I'd really love it if this would work, and I'm willing and able to write some code.
Back to top
View user's profile Send private message
rfryar



Joined: 10 Feb 2008
Posts: 36

PostPosted: Sun Dec 12, 2010 10:54 pm    Post subject: Reply with quote

I authored the plugin a few years ago.. Unfortunately as soon as I finished it I sold my Replays. So I am sure the plugins are very outdated.

Since I no longer own my replays I doubt I could brush them off to get them to work.

I never kept too many shows on my Replay as I normally just downloaded them to my HTPC which had more space. So I did not ever have more than two pages of shows. Those two pages worked fine at the time.

I have no doubt that serveral pieces of the plugin do not work as I expect the pyTivo code has moved forward quite a bit in the last few years. I do not even use pyTivo as Streambaby does everything I need currently.

Best of luck, but if you think I can help you with any issues feel free to ping me.


Rick
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    pyTivo Discussion Forum Forum Index -> pyTivo All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum
Site is in NO WAY affiliated with TiVo Inc

Powered by phpBB © 2001, 2005 phpBB Group
phpBB SEO

Get pytivo at SourceForge.net. Fast, secure and Free Open Source software downloads
[ Time: 0.3724s ][ Queries: 14 (0.1930s) ][ GZIP on - Debug on ]