[mythtv-users] ffmpeg and multiple CPUs. Was: Should I be switching to 0.21?
Phil Bridges
gravityhammer at gmail.com
Mon Apr 14 17:19:32 UTC 2008
On Mon, Apr 14, 2008 at 1:07 PM, Tom Dexter <digitalaudiorock at gmail.com> wrote:
> On Sun, Apr 13, 2008 at 1:33 PM, Tom Dexter <digitalaudiorock at gmail.com> wrote:
> >
> > I just wanted to report back on my experience regarding CPU usage. I
> > upgraded today from 0.20.2 to 0.21 SVN 16944 under Gentoo. First of
> > all, the upgrade from everything I've tested appears to have gone
> > flawlessly.
> >
> > My frontend (dedicated frontend only) is a Dell Dimension 4700C 3.0
> > Ghz with hyper threading enabled. Under 0.20.2 I was using libmpeg2
> > and bob de-interlacing. It should be noted that I'm using Viktor's
> > patch to allow bob de-interlacing on my 1080i interlaced display:
> >
> > http://svn.mythtv.org/trac/ticket/2903
> >
> > ...though other than allowing me to use bob, that shouldn't be a factor.
> >
> > First thing after upgrading I setup my own custom playback profile
> > group to mimic my old settings with only one entry as follows:
> >
> > Resolution: >= 0 0
> > Decoder: libmpeg2
> > Video Renderer: xv-blit
> > OSD Renderer: softblend
> > OSD fade: ON
> > Deinterlacer: bobdeint
> > Secondary Deinterlacer: none
> > Filters: none
> >
> > For max cpus under the Decoder I assumed 2 made sense for my hyper-threaded CPU.
> >
> > Because of all the talk about increased CPU usage in 0.21, I did
> > several checks before upgrading, noting the CPU usage on the frontend
> > for 720p (that doesn't require de-interlacing) as well as 1080i (which
> > of course does) for several different OTA channels, both watching
> > recordings and livetv (though those really didn't differ).
> >
> > I can say beyond question that the CPU usage under 0.21 with the above
> > profile is identical to that under 0.20.2. As a matter of fact, on
> > occasion when watching 720p it's slightly less.
> >
>
> I was experimenting with some changes to my above profile and I've
> made a rather interesting discovery.
>
> On my frontend I found that using the Standard (ffmpeg) decoder in
> place of libmpeg2 in the above profile used a fairly significant
> amount of extra CPU. In 0.20.2 I also found it used more, but this
> difference was quite a bit more significant.
>
> Playing 720p recordings with my above profile (with libmpeg2) used
> 18-20% of both hyper-threaded CPUs, while the exact same profile with
> ffmpeg used around 38%. Playing 1080i recordings with my above
> profile (with libmpeg2) used slightly less than 30% of both CPUs,
> while that profile with ffmpeg used 50% or more, with mythfrontend
> often using 100% of one CPU. I believe that the difference in 0.20.2
> was more in the 10% range as apposed to this near 20% change.
>
> However...and this is the interesting part...if I use ffmpeg but
> switch the number of CPUs to 1 instead of 2 the performance of the two
> is virtually identical. It seems that, at least with my
> hyper-threaded 3 Ghz P4, ffmpeg works much better with a single core.
>
> Very cool...now I can used captions if I want. Speaking of ATSC
> captions though...is there any way to control the font color of ATSC
> captions? I see all sorts of choices for fonts but nothing for color.
> The grayish color I get right now over most video content can be
> unreadable. I also wish I could control the position...is that
> controlled by the broadcaster? I often have the captions chopped off
> due to overscan.
>
That is interesting. I wonder if the same applies for AMD chips?
IIRC, the on-screen documentation recommends not using libmpeg2 with
64-bit processors, but I may be incorrect.
More information about the mythtv-users
mailing list