View Full Version : Low treshold HW for HEVC decoding
jlpsvk
6th January 2015, 14:34
I am creating this thread to exchange practical expreriences from with HEVC decoding.
As I said earlier in another thread.
Intel Core2 Quad Q8300 @ 2.50GHz...no issues of 1080p 10-bit HEVC playback..only around 50-60% CPU usage and no frame drops/skips on KODIbuntu 14 (active decoder ff-hevc).
I would be interested in Intel J1900 or Intel 1037U performance, if anybody has the chance.
Also tried KODIbuntu 14 on MacBook Air 13" Early 2014 (booted from USB) with Intel Core i5-4260U and no go with the same video as on C2Q Q8300. Strange.
Kurtnoise
6th January 2015, 15:33
http://forum.doom9.org/showthread.php?t=171219
ArcticFox
6th January 2015, 15:41
I have a Sumvision Cyclone Android X4 device that has an Amlogic S805 which is a Cortex A5 1.6 GHz Quad core with Quad core ARM Mali 450 GPU which supports Hardware Playback of HEVC up to 1080p
Flashed with Openelec it plays back a short Main10 1080p CRF 14 Encode using Medium Profile in Handbrake flawlessly.
Not bad for £40.
jlpsvk
6th January 2015, 15:48
Handbrake is encoding only 8-bit...not 10-bit. Post MediaInfo of the file here to check. As far as I know, AMLogic S802/S805/S812 does not support 10-bit HEVC (have 2pcs of S812 boxes and only green screen in OpenElec when trying to decode 10 bit video.
@Kurtnoise
I know that thread....but my goal is to test mini-ITX boards with integrated CPU's. Want to use one of them for HTPC with OpenELEC 5.0 or KODIbuntu 14 and with DVB-S2 tuner. :)
jlpsvk
6th January 2015, 18:12
Also, if anyone hasoportunity to test Celeron G1850
foxyshadis
7th January 2015, 05:01
My work has a few Atom/Celeron systems and other low-rent PCs, so I'll download the test files from the above thread and see how they do tomorrow.
For future reference, the files are:
HD:
1.ProRes-1080p@30fps-2Mbps
https://www.sendspace.com/file/mo8exg
2.Elephants Dream-1080p@24fps-1.7Mbps
http://www.libde265.org/hevc-bitstreams/elephants-dream-1080-cfg02.mkv
3.Big Buck Bunny-1080p@60fps-2Mbps
http://www.libde265.org/hevc-bitstreams/bbb-1920x1080-cfg06.mkv
UHD:
1.Beauty-2160p@30fps-12.3Mbps
http://ultravideo.cs.tut.fi/video/Beauty_3840x2160_120fps_420_8bit_HEVC_MP4.mp4
2.Fitness-2160p@30fps-8Mbps
http://cloud.ultrahdtv.net/fitness-trailer-8000.mkv
3.Ducks-2160p@50fps-4Mbps
https://www.sendspace.com/file/cyiv49
There are also the 5 Samsung NX-1 UHD files:
http://www.imaging-resource.com/PRODS/samsung-nx1/FULLRES/yvid_SAM_0235-UHD_Sample1.MP4 30p 80Mbps
http://www.imaging-resource.com/PRODS/samsung-nx1/FULLRES/yvid_SAM_0161-C4K_Sample.MP4 24p 40Mbps
http://www.imaging-resource.com/PRODS/samsung-nx1/FULLRES/yvid_SAM_0164-C4K_Sample2.MP4 24p 36Mbps
http://www.imaging-resource.com/PRODS/samsung-nx1/FULLRES/yvid_SAM_0231-HQQuality.MP4 30p 40Mbps
http://www.imaging-resource.com/PRODS/samsung-nx1/FULLRES/yvid_SAM_0230-ProQuality.MP4 30p 80Mbps
That should cover a nice solid range.
jlpsvk
7th January 2015, 10:24
That would be great.
jlpsvk
7th January 2015, 11:21
Strange... :)
On Macbook Air 13" Early 2014 (Intel Core i5-4260U 1.4GHz).....
when I boot KODIbuntu from USB, 1080p HEVC is only about 10-15 fps. :(
When I install KODI for Mac OS X, everything plays smoothly with about 40-50% CPU usage. But in VLC Player it's still unplayable.
vivan
7th January 2015, 12:10
Try ffmpeg with the following cli
ffmpeg -benchmark -i INPUT -f null -
to get actual perfomance numbers on non-Windows systems...
foxyshadis
8th January 2015, 05:50
So the Atom D2550 was a hilarious fail, but the i3-2367M did pretty respectably. This i3 is a Sandy Bridge dinosaur. This is raw decoding times, no rendering involved, so remember that rendering might slow things down a bit.
+-------------------------------------------------------------+
| Title | Res | Frame | Size | KB/f | D2055 | i3-2367M |
+-----------+-------+-------+-------+------+-------+----------+
| ProRes | 1080p | 5692 | 44.2 | 1.0 | 14/6 | 85/53 |
| Elephants | 1080p | 15795 | 113.6 | 0.9 | 14/4 | 84/24 |
| Big Buck | 1080p | 38072 | 131.2 | 0.4 | 15/3 | 109/37 |
| Beauty | 2160p | 600 | 29.3 | 6.1 | | 18/6 |
| Fitness | 2160p | 2229 | 67.2 | 3.8 | | 24/14 |
| Ducks | 2160p | 500 | 4.7 | 1.2 | 3/0 | 26/18 |
| Sam 0161 | 2160p | 935 | 187.5 | 25.1 | | 11/5 |
| Sam 0164 | 2160p | 921 | 164.5 | 22.3 | | 11/5 |
| Sam 0230 | 2160p | 1016 | 323.9 | 39.9 | | 9/1 |
| Sam 0231 | 2160p | 1079 | 173.3 | 20.1 | | 11/2 |
| Sam 0235 | 2160p | 1394 | 443.3 | 39.8 | | 9/5 |
+-------------------------------------------------------------+
Average fps first, lowest second.
Given that the G1850 is twice as powerful, and the J1900 is at least 10% more powerful, either should be acceptable for 1080p60. Neither is acceptable for UHD. The 1037U is even crappier than the 2367M, but even that might barely be sufficient for 1080p30. It's hard to do a direct comparison because i3 includes AVX whereas your choices only have SSE4.
I'll hunt around and see what else I find.
xooyoozoo
8th January 2015, 07:21
Is this through mainline libav/ffmpeg or the modified decoder in LAV/nev's own ffmpeg fork?
foxyshadis
8th January 2015, 22:50
Is this through mainline libav/ffmpeg or the modified decoder in LAV/nev's own ffmpeg fork?
LAVFilter x64. Is there a significant difference? I thought most of nev's work gets committed to mainline pretty quickly.
jlpsvk
8th January 2015, 23:27
@foxyshadis
thanks!!! btw...how you testing like that? :) (i'm beginner in performance testing) :)
foxyshadis
9th January 2015, 01:48
Using DXVAChecker (http://www.videohelp.com/tools/DXVA-Checker), it's pretty easy, though it took me a few minutes to find it.
xooyoozoo
9th January 2015, 04:28
LAVFilter x64. Is there a significant difference? I thought most of nev's work gets committed to mainline pretty quickly.
LAVFilter also has some optimized intrinsics from OpenHEVC that aren't included in mainline because ffmpeg only accepts actual assembly.
IIRC, the speedups are significant (at least double), so this is an important distinction. :)
foxyshadis
9th January 2015, 06:47
LAVFilter also has some optimized intrinsics from OpenHEVC that aren't included in mainline because ffmpeg only accepts actual assembly.
IIRC, the speedups are significant (at least double), so this is an important distinction. :)
Huh, I had no idea. I never understood why someone who wants asm instead of intrinsics doesn't just compile and disassemble, but I guess that's just not good enough. :p Looking through, I see only up to SSE4, no AVX, so luckily that'll carry over into any other OpenHEVC user, win or lin.
jlpsvk
9th January 2015, 14:16
Ok. Did tests with the following setup:
Intel Core2 Quad Q8300 @ 2500MHz
6GB DDR2 800MHz RAM
GeForce GT430 PCIe VGA
500GB HDD SATA3
19" 4:3 old monitor 1280x1024 connected with HDMI-DVI cable
Windows 8.1 x64 with all updates
LAV filters 0.63
Latest DXVA Checker x64
ESET Endpoint Antivirus 5.0.2237 x64
Decode = decode performance (without rendering)
Playback Native = playback performance at native size
Playback 720p = playback performacne with scaling down to 1280x720 (to fit monitor resolution)
Results:
+---------------------------------+--------+---------+-------------------+---------------+
| Name | Frames | Time(s) | FPS avg (min-max) | CPU Usage (%) |
+---------------------------------+--------+---------+-------------------+---------------+
| ProRes Decode | 5692 | 44.154 | 128.914 (92-157) | 89 (81-97) |
| ProRes Playback Native | 5692 | 46.530 | 122.330 (89-147) | 87 (76-92) |
| ProRes Playback 720p | 5692 | 46.067 | 123.559 (89-149) | 86 (62-93) |
+---------------------------------+--------+---------+-------------------+---------------+
| Elephants Dream Decode | 15496 | 132.890 | 116.607 (49-171) | 78 (60-93) |
| Elephants Dream Playback Native | 15496 | 139.063 | 111.427 (43-164) | 76 (52-89) |
| Elephants Dream Playback 720p | 15496 | 137.679 | 112.551 (46-165) | 76 (59-89) |
+---------------------------------+--------+---------+-------------------+---------------+
| Big Buck Bunny Decode | 37916 | 287.113 | 132.059 (69-95) | 78 (60-95) |
| Big Buck Bummy Playback Native | 37916 | 297.606 | 127.403 (67-166) | 76 (57-89) |
| Big Buck Bunny Playback 720p | 37916 | 296.725 | 127.782 (66-166) | 77 (58-90) |
+---------------------------------+--------+---------+-------------------+---------------+
| Beauty Decode | 600 | 21.149 | 28.370 (15-32) | 82 (63-88) |
| Beauty Playback Native | 600 | 21.697 | 27.654 (9-31) | 80 (67-86) |
| Beauty Playback 720p | 600 | 21.108 | 28.425 (21-33) | 80 (50-86) |
+---------------------------------+--------+---------+-------------------+---------------+
| Fitness Trailer Decode | 2229 | 61.189 | 36.428 (23-47) | 92 (74-98) |
| Fitness Trailer Playback Native | 2229 | 62.774 | 35.508 (16-47) | 90 (75-96) |
| Fitness Trailer Playback 720p | 2229 | 61.672 | 36.143 (28-48) | 91 (75-96) |
+---------------------------------+--------+---------+-------------------+---------------+
| Ducks Decode | 500 | 13.062 | 38.278 (25-40) | 92 (33-99) |
| Ducks Playback Native | 500 | 13.730 | 36.417 (15-39) | 93 (74-98) |
| Ducks Playback 720p | 500 | 13.392 | 37.334 (28-39) | 94 (87-97) |
+---------------------------------+--------+---------+-------------------+---------------+
| Sam 0235 Decode | 1394 | 69.240 | 20.133 (14-23) | 96 (69-100) |
| Sam 0235 Playback Native | 1394 | 74.168 | 18.795 (11-23) | 91 (52-98) |
| Sam 0235 Playback 720p | 1394 | 68.467 | 20.360 (14-23) | 97 (87-100) |
+---------------------------------+--------+---------+-------------------+---------------+
| Sam 0161 Decode | 935 | 41.188 | 22.701 (17-27) | 97 (79-100) |
| Sam 0161 Playback Native | 935 | 43.322 | 21.582 (12-25) | 93 (73-99) |
| Sam 0161 Playback 720p | 935 | 41.103 | 22.748 (18-25) | 97 (69-99) |
+---------------------------------+--------+---------+-------------------+---------------+
| Sam 0164 Decode | 921 | 41.726 | 22.073 (13-27) | 97 (87-100) |
| Sam 0164 Playback Native | 921 | 44.079 | 20.894 (9-24) | 92 (44-99) |
| Sam 0164 Playback 720p | 921 | 41.732 | 22.070 (15-28) | 97 (89-100) |
+---------------------------------+--------+---------+-------------------+---------------+
| Sam 0231 Decode | 1079 | 44.067 | 24.486 (14-30) | 85 (48-93) |
| Sam 0231 Playback Native | 1079 | 45.622 | 23.651 (8-28) | 84 (56-92) |
| Sam 0231 Playback 720p | 1079 | 44.431 | 24.285 (15-30) | 85 (64-94) |
+---------------------------------+--------+---------+-------------------+---------------+
| Sam 0230 Decode | 1016 | 51.870 | 19.587 (14-22) | 88 (77-94) |
| Sam 0230 Playback Native | 1016 | 53.886 | 18.855 (7-22) | 87 (73-95) |
| Sam 0230 Playback 720p | 1016 | 52.212 | 19.459 (13-23) | 88 (69-94) |
+---------------------------------+--------+---------+-------------------+---------------+
jlpsvk
12th January 2015, 00:31
Very interesting thing. Seems, that Haswell Refresh CPU's have some sort of HEVC HW decoding. DXVA checker reporting DXVA2 for up to 1080p support for HEVC_VLD_Main (yes, only 8 bit). Go through Decode benchmark on Core i5-4260U:
Elaphants Dream - Lav Filters 0.63.0 with "DXVA2 native" acceleration enabled
Decoder Device: HEVC_VLD_Main
Frames: 15496
Time (s): 129.519
FPS: 119,643 (44-202)
CPU Usage: 45 (22-55)
In Playback Benchmark is was 85fps avg and CPU usage avg 37%!!! :)
nevcairiel
12th January 2015, 00:35
All Haswell GPUs have this feature, not only the "refresh". Any recent NVIDIA GPUs also do.
jlpsvk
12th January 2015, 01:11
Hmmm....but I think no support in KODI (KODIbuntu) or OpenELEC... :(
jlpsvk
22nd March 2015, 00:09
Ok.... tried AMD A4-5000 last week. Not able to decode 1080p@24fps HEVC.
MeteorRain
22nd March 2015, 08:40
The Japanese guys are using UHD 60fps 10bit encoding on their 4K channel. Any ideas on decoding these programs in realtime without using a GTX960?
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.