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 

Easily reduce transcode times by 25% or more...

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



Joined: 03 Sep 2010
Posts: 4

PostPosted: Sat Sep 18, 2010 11:28 pm    Post subject: Easily reduce transcode times by 25% or more... Reply with quote

Quite a sensational post title, I know, but this simple optimization deserves some attention.

Adding a simple value to your pyTivo.conf can improve transcode performance considerably, even with HD material.

If you have a multi-core CPU, login into the Web Configuration GUI and go to "Global Server Settings" > "ffmpeg_pram" section and add "-threads 2" in the text box.

Save the setting and soft reset pyTivo.

Here's an example of the performance delta I saw with this single change:

Source: Matroska x264, Length 00:01:13

Video: AVC High@L5.1, 5328 Kbps, 1280x544, 23.976 fps
Audio: AC3, 3/2/1 ch, 640 Kbps

Transcode using default settings (no multi-core): 51.8 sec
Transcode using "-threads 2" (multi-core enabled): 38.7 sec

That represents a nearly 26% improvement over the default settings!

The times here included transfer, and it appears that transcoding is constrained by transfer speed, as the times were roughly the same on both of my TiVo Premieres, despite one being connected via Gigabit Ethernet, and the other connected via the TiVo Wireless N Adapter.

For the curious, it took only 20-22 secs to pull the same, transcoded video back to the PC from the TiVo, demonstrating the degree of transcoding overhead in relation to transfer time.

So, if you have a multi-core CPU, or even one with Hyper-Threading, this simple optimization can provide some real improvements in getting video from the PC to your TiVo.

(It'll be interesting to see how multi-core transcoding scales once the ffmpeg devs finish adding GPU support, which could reduce 1080p transcoding by another 50%!)
Back to top
View user's profile Send private message
rdian06



Joined: 12 Apr 2008
Posts: 1420

PostPosted: Sun Sep 19, 2010 12:47 am    Post subject: Reply with quote

Transcoding speeds have a lot to do with the bitrate and complexity of the actual content. So you might be getting 25% speed up with that particular video clip, but that may not be the case with other videos.
Back to top
View user's profile Send private message
Tapper69



Joined: 02 May 2011
Posts: 12

PostPosted: Sun May 29, 2011 1:31 am    Post subject: Reply with quote

I didn't see a difference on my MacPro Quad-Core Intel Xeon with pyTivo 1.4.1b. It appears that the default config uses multiple processors. Can the developer confirm?
Back to top
View user's profile Send private message
Iluvatar



Joined: 29 Feb 2008
Posts: 337

PostPosted: Sun May 29, 2011 12:51 pm    Post subject: Reply with quote

Tapper69 wrote:
I didn't see a difference on my MacPro Quad-Core Intel Xeon with pyTivo 1.4.1b. It appears that the default config uses multiple processors. Can the developer confirm?


What is pyTivo 1.4.1b?

For your CPU I would place 'threads -4' or 'threads -8' if you have hyperthreading model.

Although due to the speed of your Mac it is entirely possible that you were saturating the available transfer speed to your TiVo with just 1 thread which may be why you don't see a speedup.
Back to top
View user's profile Send private message
wmcbrine



Joined: 04 Jan 2008
Posts: 2627
Location: Maryland

PostPosted: Sun May 29, 2011 3:42 pm    Post subject: Reply with quote

Iluvatar wrote:
What is pyTivo 1.4.1b?

He means pyTivoX.

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



Joined: 29 Feb 2008
Posts: 337

PostPosted: Sun May 29, 2011 9:57 pm    Post subject: Reply with quote

ah ok thanks.
_________________
My pyTivo fork - Read link for changes
FFmpeg for OS X
Back to top
View user's profile Send private message
TexasGrillChef



Joined: 07 Mar 2008
Posts: 49

PostPosted: Sun Jan 05, 2014 8:42 pm    Post subject: Reply with quote

Ok I am a bit confused.

-Threads 2 would be for a dual core.

-Threads 4 would be for a Quad Core.

I have a Quad Core CPU running Windows 7 64bit pro.

So if I use -threads 2 it would use only 2 of my 4 cores?

If I used -Threads 3 it would use 3 of my 4?

and if I use -threads 4 it would use all 4?

Is that correct?

Thanks
Back to top
View user's profile Send private message
chrispitude



Joined: 16 Nov 2013
Posts: 36

PostPosted: Sun Jun 07, 2015 2:59 pm    Post subject: Reply with quote

Tapper69 wrote:
I didn't see a difference on my MacPro Quad-Core Intel Xeon with pyTivo 1.4.1b. It appears that the default config uses multiple processors. Can the developer confirm?


I thought the default was to use multiple threads as well.
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 -> General 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.0659s ][ Queries: 12 (0.0089s) ][ GZIP on - Debug on ]