|
| Author |
Message |
wgw
Joined: 06 Jan 2008 Posts: 284
|
Posted: Wed Jan 23, 2008 12:23 am Post subject: pyTivo update to retain resolution of source |
|
|
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 |
|
 |
krkeegan Site Admin

Joined: 04 Jan 2008 Posts: 448 Location: Los Angeles, CA
|
Posted: Wed Jan 23, 2008 4:00 am Post subject: |
|
|
| 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 |
|
 |
wgw
Joined: 06 Jan 2008 Posts: 284
|
Posted: Wed Jan 23, 2008 11:59 am Post subject: |
|
|
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 |
|
 |
jm1fd
Joined: 19 Jan 2008 Posts: 7
|
Posted: Wed Jan 23, 2008 3:16 pm Post subject: |
|
|
| 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 |
|
 |
PaulS
Joined: 05 Jan 2008 Posts: 176
|
Posted: Wed Jan 23, 2008 9:56 pm Post subject: |
|
|
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 |
|
 |
wgw
Joined: 06 Jan 2008 Posts: 284
|
Posted: Thu Jan 24, 2008 12:05 am Post subject: |
|
|
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 |
|
 |
PaulS
Joined: 05 Jan 2008 Posts: 176
|
Posted: Thu Jan 24, 2008 12:24 am Post subject: |
|
|
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 |
|
 |
wgw
Joined: 06 Jan 2008 Posts: 284
|
Posted: Thu Jan 24, 2008 4:36 am Post subject: |
|
|
| 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 |
|
 |
PaulS
Joined: 05 Jan 2008 Posts: 176
|
Posted: Thu Jan 24, 2008 1:57 pm Post subject: |
|
|
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 |
|
 |
PaulS
Joined: 05 Jan 2008 Posts: 176
|
Posted: Fri Jan 25, 2008 1:50 am Post subject: |
|
|
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 |
|
 |
wgw
Joined: 06 Jan 2008 Posts: 284
|
Posted: Fri Jan 25, 2008 2:22 am Post subject: |
|
|
I found a way to enjoy the best of both worlds. It just took a little codger-tating.
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 |
|
 |
PaulS
Joined: 05 Jan 2008 Posts: 176
|
|
| Back to top |
|
 |
windracer

Joined: 04 Jan 2008 Posts: 213 Location: St. Pete, FL
|
Posted: Mon Jan 28, 2008 2:47 am Post subject: |
|
|
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 |
|
 |
PaulS
Joined: 05 Jan 2008 Posts: 176
|
Posted: Mon Jan 28, 2008 4:24 am Post subject: |
|
|
| 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 |
|
 |
wmcbrine

Joined: 04 Jan 2008 Posts: 1333
|
Posted: Mon Jan 28, 2008 4:33 am Post subject: |
|
|
| 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 |
|
 |
|