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 

pyTivo update to retain resolution of source
Goto page 1, 2  Next
 
Post new topic   Reply to topic    pyTivo Discussion Forum Forum Index -> pyTivo
 View previous topic :: View next topic  
Author Message
wgw



Joined: 06 Jan 2008
Posts: 284

PostPosted: Wed Jan 23, 2008 12:23 am    Post subject: pyTivo update to retain resolution of source Reply with quote

I've made an update to pyTivo that will bypass the aspect and resolution settings when transcoding to an HD Tivo. Use link below to download site and follow instructions on LatestBeta download page.

Let me know if you have any problems with this update. This is kind of a major change and I quite frankly am not sure ffmpeg and the HD Tivos will handle everything thrown at it. So I'm throwing it out there for user testing.

This update will check the height setting in pytivo.conf and will only reduce the resolution if the source has a higher height. Otherwise, it will transode using the same resolution as the source. This should speed up transcoding and reduce file size by not upsizing lower resolution sources during the transcode.

_________________
Download pyTivo
my pyTivo branch
Back to top
View user's profile Send private message
krkeegan
Site Admin


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

PostPosted: Wed Jan 23, 2008 4:00 am    Post subject: Reply with quote

Interesting, I have just used an ffmpeg-pram line that omits the aspect_Ratio parameter. So far I havent come across any dimensions that cause issues. I suppose your mod would do the same thing but would correct dimensions that are too large?? Do we know if files beyond 1080 in height cause issues?
Back to top
View user's profile Send private message Visit poster's website
wgw



Joined: 06 Jan 2008
Posts: 284

PostPosted: Wed Jan 23, 2008 11:59 am    Post subject: Reply with quote

Don't know. I've never run across a file with a height above 1080.

The main reason I choose to compare heights is because transcoding 1080 to 1080 is extremely slow. 2 fps on my computer. This method will allow users that do not care about retaining such high resolutions to downsize 1080 to 720 and triple the transcode speed instead of retaining all resolutions.

_________________
Download pyTivo
my pyTivo branch
Back to top
View user's profile Send private message
jm1fd



Joined: 19 Jan 2008
Posts: 7

PostPosted: Wed Jan 23, 2008 3:16 pm    Post subject: Reply with quote

Working well for me so far. Currently its beaming over a video file of 336x272, and playback is going just fine thus far.
Back to top
View user's profile Send private message
PaulS



Joined: 05 Jan 2008
Posts: 176

PostPosted: Wed Jan 23, 2008 9:56 pm    Post subject: Reply with quote

I can give this a spin later tonight. What would you recommend for a basic pytivo.conf setup ? Take the default ffmpeg_parms line ? Would something basic like this work :

Code:
[Server]
height = 1280
width = 720
aspect169 = true
audio_br = 384K
video_br = 12Mi

[Share]
auto_subshare = true
type = video
path = c:\videos
Back to top
View user's profile Send private message
wgw



Joined: 06 Jan 2008
Posts: 284

PostPosted: Thu Jan 24, 2008 12:05 am    Post subject: Reply with quote

I use those same settings with the exception of video_br=8Mi. I assume your spelling of auto_subshares is just a typo. aspect169 is a per tivo option but it defaults to true unless you have a backlisted Tivo 540 or 649. I use the default ffmpeg_prams with a few extra video options at the end as discussed in other threads.

Code:
[Server]
ffmpeg=c:\Program Files\pyTivo\plugins\video\ffmpeg_mp2.exe
height = 1280
width = 720
audio_br = 384K
video_br = 8Mi
optres=true

# S2 per tivo example
[_tivo_00000DEADBEEF]
width=720
height=480
audio_br=320K
video_br=6Mi

[Share]
type=video
path=d:\MyVideos
auto_subshares = true


As with my other mods, it's designed so that the average user will get the most out of pyTivo with minimal or no changes to the default settings. Just setting the above options should be sufficient. Which reminds me, pyTivo needs different default height width settings for HD tivos.

_________________
Download pyTivo
my pyTivo branch
Back to top
View user's profile Send private message
PaulS



Joined: 05 Jan 2008
Posts: 176

PostPosted: Thu Jan 24, 2008 12:24 am    Post subject: Reply with quote

Yeah, those were typos. I was typing it up off the top of my head.

A bit of clarification, if you don't mind. Specifically, I believe there's potential for entanglement between the "optres" parameter and your new modification.

Clearly, the S2 doesn't need "optres", since it can only digest essentially one video format. Was that just an oversight, or do you intend it to do something for you for the HD units ?
Back to top
View user's profile Send private message
wgw



Joined: 06 Jan 2008
Posts: 284

PostPosted: Thu Jan 24, 2008 4:36 am    Post subject: Reply with quote

PaulS wrote:
Specifically, I believe there's potential for entanglement
between the "optres" parameter and your new modification.


Yes, I did notice that but ignored it believing that simply passing all
resolutions to HD Tivo's, while retaining the ability to downsize 1080 to 720 is preferable to optres which still resizes SD if it does not meet an "S2" standard. SD is not resized with the solution of removing the aspect setting from the ffmpeg_prams, but then we lose the ability to downsize 1080 to 720 to speed up the transcode.

This is definitely a valid point for discussion.

At present, it's my opinion that this mod is a preferrable replacement unless a reason can be found to retain the ability to resize SD video to an "S2" standard when sending to an HD Tivo. For example, if you send an oddball SD resolution to an HD Tivo, can you then use MRV to send it to an S2 Tivo. That might be reason enough to back out this change. I imagine the S2 will choke. On the other hand, one could simply resend it directly to the S2 from pyTivo. The S2 won't play HD recordings sent from HD Tivo's either.

I don't know guys. Is this reason enough to back out this change?

_________________
Download pyTivo
my pyTivo branch
Back to top
View user's profile Send private message
PaulS



Joined: 05 Jan 2008
Posts: 176

PostPosted: Thu Jan 24, 2008 1:57 pm    Post subject: Reply with quote

What restrictions/protections are in place for S3->S2 transfers ? Is it possible to transfer an "oddball" piece of video to an S2, only to have the S2 choke and die on it ? Or are the S3/S2 smart enough to detect and prevent this sort of thing from occurring ?

If the smarts are in place on the S2/S3, then there's no worry.

If the smarts are NOT in place on the S2/S3, the options are to either ensure that the S3 gets legit content in the first place, or simply require the user to re-transmit the content directly to the S2 from pyTivo. I'd like to believe that the same pyTivo instance would likely be visible from both S3 and S2, and it would be a simple workaround for the problem.
Back to top
View user's profile Send private message
PaulS



Joined: 05 Jan 2008
Posts: 176

PostPosted: Fri Jan 25, 2008 1:50 am    Post subject: Reply with quote

OK, I've got it fired up using the following pytivo.conf file :

Code:
[Server]
ffmpeg=c:\Program Files\pyTivo-wgw-01-24-2008\wgw\plugins\video\ffmpeg_mp2.exe
height = 1280
width = 720
audio_br = 384K
video_br = 8Mi
optres=true
port=9040
GUID=112233
debug=true

[Share]
type=video
path=F:\Videos
auto_subshares = true


So far, so good.
Back to top
View user's profile Send private message
wgw



Joined: 06 Jan 2008
Posts: 284

PostPosted: Fri Jan 25, 2008 2:22 am    Post subject: Reply with quote

I found a way to enjoy the best of both worlds. It just took a little codger-tating. Very Happy

This update is now tied to the optres setting.

optres=false (default) - All resolutions are passed to HD Tivo's without resizing. Resolutions above pyTivo.conf height setting are downsized, same as always.

optres=true - Optres takes over and resizes all video, if necessary, to match nearest established valid width/heights. Resolutions above pyTivo.conf height setting are downsized, same as always.

If you have previously removed the aspect setting from your ffmpeg_prams, you should re-add it. Or better yet, use the newly updated pyTivo.conf.dist to make a new conf file.

Separate optimized defaults for HD Tivos have been added. Please read the new pyTivo.conf.dist for the HD Tivo defaults. pyTivo should now work quite well with HD Tivos without having to tweak any of the default settings.

_________________
Download pyTivo
my pyTivo branch
Back to top
View user's profile Send private message
PaulS



Joined: 05 Jan 2008
Posts: 176

PostPosted: Fri Jan 25, 2008 4:28 am    Post subject: Reply with quote

Excellent. Wasn't too invasive a change, either, based upon a quick glance at your diffs. Nice work!

BTW, I still encountered an ffmpeg crash while transfering a few of those MKV files I mentioned previously (in a different thread). I know there isn't a newer Windows snapshot available yet, so it's either roll back to a previous rev, or wait for a new rev. Either way, it's a roll of the dice...


edit : OK, I'm cut over to the newest version. My pytivo.conf file is now very, very sparse... Smile

Code:
[Server]
port=9032
ffmpeg=C:\Program Files\pyTivo-wgw-01-25-2008\wgw\plugins\video\ffmpeg_mp2.exe
debug=true

[Videos]
type=video
path=F:\Videos
auto_subshares=True
Back to top
View user's profile Send private message
windracer



Joined: 04 Jan 2008
Posts: 213
Location: St. Pete, FL

PostPosted: Mon Jan 28, 2008 2:47 am    Post subject: Reply with quote

Does the hack83 setting not work in the branch? I upgraded to this release to try it out and the transcoding works great to my THD, S3, and S2, but now I've got the subfolder problem again (where the contents of a folder are the contents of a previously viewed folder). The auto_subshares works, but I liked the hack83 fix better.
_________________
pyTiVo on Ubuntu 10.04
Back to top
View user's profile Send private message AIM Address Yahoo Messenger
PaulS



Joined: 05 Jan 2008
Posts: 176

PostPosted: Mon Jan 28, 2008 4:24 am    Post subject: Reply with quote

Sorry, I can't tell you since I don't use the hack83 option. I unintentionally tried it out when I experimented with another branch (I believe it was wmcbrine's from a while back), and I found that I preferred the auto_subshares method better.
Back to top
View user's profile Send private message
wmcbrine



Joined: 04 Jan 2008
Posts: 1333

PostPosted: Mon Jan 28, 2008 4:33 am    Post subject: Reply with quote

windracer wrote:
Does the hack83 setting not work in the branch?

It's not in the master (except in KRKeegan's fork); you have to get it from the subfolders-8.3 branch (linked at the bottom of the page).

A deeper question: Does hack83 work with my latest changes (which wgw has also accepted)? Well, it does for me, but I have a pending bug report from someone for whom it seems to be broken. I haven't quite sorted that out yet.

_________________
My pyTivo fork
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
Goto page 1, 2  Next
Page 1 of 2

 
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.1468s ][ Queries: 12 (0.0099s) ][ Debug on ]