[mythtv-users] hardware considerations: fast CPU vs nvidia/vdpau?
Matt Garman
matthew.garman at gmail.com
Mon Jul 18 15:34:04 UTC 2011
On Sun, Jul 17, 2011 at 11:08 PM, Ronald Frazier <ron at ronfrazier.net> wrote:
> It happened quite a bit, on several movies. I definitely had it set it
> set to 2 CPUs. Some movies I'd see both CPUs plugging along. In other
> movies, it would just be one sitting idle. Some movies change from
> scene to scene. I think transformers 2 was one specific example. It
> would playback using only 1 core for the first few chapters of the
> movies (and thus was incredibly choppy), then suddenly switch to 2
> core decoding and play fine from there on out.Here was the post I made
> about it at the time:
>
> http://www.gossamer-threads.com/lists/mythtv/users/409627
That thread you linked is very interesting. Although it is dated from
November, 2009, so I wonder if the situation is improved?
Looks like the crux of the issue is high bitrate, single-sliced H264.
It may or may not be possible to smoothy decode this in software. You
suggested your Core i7-920 (2.6 GHz) could *almost* do it (at least with
Transformers 2). Looking at synthetic benchmarks, the lowest-end Sandy
Bridge quad core (i5-2400, 3.1 GHz (3.4 turbo)) beats the i7-920 almost
every time[1].
Although I don't know which of those benchmarks comes closest to
simulating h264 decoding. Non-Linux people don't care about this: Sandy
Bridge actually has hardware h264 decoding support, but looks like it
may be a while before it's properly supported on Linux[2].
In the thread above, you also said...
> it appears that the slice thing isn't a limitation of h264, but merely
> of the current implementation of ffmpeg. Other codecs (such as coreavc
> on windows) do not have this limitation. Apparently the multithread
> branch of ffmpeg fixes this
That suggests that even single-sliced content can be decoded in
parallel. If so, that would almost certainly solve the issue (you have
to go out of your way to find a non-multi core CPU these days).
According to this[3], the ffmpeg-mt branch has been merged into the
mainline. But on the other hand, I don't see anything in the ffmpeg
changelog[4] regarding multithreaded H264 decoding... One comment in
this thread[5], says "all the state-of-the-art H.264 decoders
(ffmpeg-MT, CoreAVC, DivX H.264, etc.) use frame-level multi-treading
and hence work with single-slice streams just fine." <shrug>
Anyway, I think it would be instructional to figure out what the
"toughest" h264 video is (i.e. single-sliced, high-bitrate) for use in a
benchmark. Then we could run some tests to determine what the minimum
needed CPU spec is for software decoding.
Worst-case, I think this issue could be worked around by re-encoding
these "tough" videos at a lower bitrate. For me, personally, I can
*barely* tell the difference between upscaled DVD content and native
Bluray content.
Also, what about the Broadcom "Crystal HD", e.g. BCM970015[6]? The
Logic Supply page says this devices uses less than 1 Watt. Looks like
there's a working driver for it now[7], but the myth wiki says, "the
MythTV application doesn't yet support [the Broadcom Crystal HD], you
can't test it within MythTV (on Feb-10-2010)". That comment was made
over a year ago, has the situation changed for MythTV? Looks like at
least one person is reporting success with manually compiling myth after
configuring with --enable-crystalhd[8]. I guess it's still too
"bleeding edge" to be the nvidia/vdpau killer.
[1] Andandtech i7-920 vs i5-2400 benchmark:
http://www.anandtech.com/bench/Product/47?vs=363
[2] Hardware decoding for Intel HD 2000/3000 graphics is through VAAPI,
which needs work.
http://www.gossamer-threads.com/lists/mythtv/users/473208
[3] FFmpeg Becomes Multi-Threaded Happy
http://www.phoronix.com/scan.php?page=news_item&px=OTI0NA
[4] FFmpeg Changelog
http://ffmpeg.org/changelog.html
[5] Doom9 thread on x264, slices
http://forum.doom9.org/showthread.php?t=148826
[6] Logic Supply - Broadcom BCM970015 PCIe mini card
http://www.logicsupply.com/products/bcm970015
[7] New crystalhd support has landed
http://wilsonet.com/?p=82
[8] MythTV Talk "Broadcom Crystal HD"
http://www.mythtvtalk.com/broadcom-crystal-hd-14732/
More information about the mythtv-users
mailing list