Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Video Encoding > New and alternative video codecs

Reply
 
Thread Tools Search this Thread Display Modes
Old 14th December 2018, 07:35   #1321  |  Link
SmilingWolf
I am maddo saientisto!
 
SmilingWolf's Avatar
 
Join Date: Aug 2018
Posts: 78
Quote:
Originally Posted by mandarinka View Post
Why do you think the bestest encoders haven't? Enlightened ones have stropped using frame threading.
I am unsure of the meaning of this.
My point was that there is no point in not using either frame threading, WPP (for x265) or tiling (for libaom) when the overhead is not only so low, but even very similar between the two.
Yet I have never seen WPP get the same amount of flack tiling gets, especially considering tile-threading in libdav1d can contribute up to +108% of the decoding performance on its own: https://docs.google.com/spreadsheets...gid=1238661928
SmilingWolf is offline   Reply With Quote
Old 14th December 2018, 11:34   #1322  |  Link
Kurosu
Registered User
 
Join Date: Sep 2002
Location: France
Posts: 426
Tiles will cause a coding efficiency loss, even if negligible in the big picture. But it is not such a boon either, except for encoders with particular limits, or software decoders. Same for WPP, which really is more a software decoder thing. Contrary to dav1d, your regular HEVC software decoder does not exploit the combined "threadability" of frames and tiles/WPP.

Last edited by Kurosu; 14th December 2018 at 11:39.
Kurosu is offline   Reply With Quote
Old 14th December 2018, 11:39   #1323  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 9,759
In the long run, features that allow faster software decoding are really just wasted coding efficiency. When a codec goes mainstream, you'll have a full stack of hardware decoders, which usually don't care that much about these things.
On top of that, if you look at frame threading numbers, the advantage from tile threading shrinks extremely rapidly. Comparing its speed advantage without frame threading is really only a very limited picture.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders

Last edited by nevcairiel; 14th December 2018 at 11:43.
nevcairiel is offline   Reply With Quote
Old 14th December 2018, 12:17   #1324  |  Link
SmilingWolf
I am maddo saientisto!
 
SmilingWolf's Avatar
 
Join Date: Aug 2018
Posts: 78
Quote:
Originally Posted by nevcairiel View Post
In the long run, features that allow faster software decoding are really just wasted coding efficiency. When a codec goes mainstream, you'll have a full stack of hardware decoders, which usually don't care that much about these things.
On top of that, if you look at frame threading numbers, the advantage from tile threading shrinks extremely rapidly. Comparing its speed advantage without frame threading is really only a very limited picture.
True, and true. I don't even have a retort to that.

I still think that we can care about removing tiling from a libaom encoding workflow whenever the hardware goes mainstream and makes 4K decodable even on budget CPUs like v0lt's Pentium G5600, which should be 2-3 years (?), but I'm ok with the above. Hopefully in the same time rav1e will get proper psy-RD and frame-parallel encoding, too, so we won't have to care about it anyway.

My main heat for the whole tiling debate comes from excluding from early adoption (i.e. right about now) a lot of low-medium tier systems with "inappropriate" encoding settings. In my early tests libdav1d could scale much better on my processor if combined with tiling rather than simply incresing the frame-threads above a certain threshold. Hard to justify a 4MB difference in 1GB of video when said video can't be decoded in real time at all.
Still, the spreadsheet I quoted makes me think I should run the numbers again for dav1d. It has been a couple of months after all.

Last edited by SmilingWolf; 14th December 2018 at 12:35.
SmilingWolf is offline   Reply With Quote
Old 14th December 2018, 17:37   #1325  |  Link
Mierastor
Registered User
 
Join Date: Nov 2010
Posts: 15
"Intel: AV1 support not yet in Gen11 Graphics, but coming soon after"
https://www.reddit.com/r/AV1/comment..._graphics_but/

Meaning late 2020, if Intel as usual introduces new CPU generations late in the year?

Since these introductions have often only been paper launches, large-scale availability will only occur in 2021?
Mierastor is offline   Reply With Quote
Old 14th December 2018, 18:45   #1326  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 9,759
Thats about the time frame most here would expect hardware support. Maybe in 2020, or thereabouts.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders
nevcairiel is offline   Reply With Quote
Old 14th December 2018, 20:36   #1327  |  Link
Nintendo Maniac 64
Registered User
 
Nintendo Maniac 64's Avatar
 
Join Date: Nov 2009
Location: Northeast Ohio
Posts: 404
But lets be honest here - with AMD finally being a viable alternative again, who is really buying Intel for their graphics capabilities?
__________________
____HTPC____  | __Desktop PC__
2.93GHz Xeon x3470 (4c/8t Nehalem) | 4.6GHz Pentium G3258 (2c/2t Haswell)
Radeon HD5870  | Intel iGPU      
2x2GB+2x1GB DDR3-1333 | 4x4GB DDR3-1600       

Win7 x64
Nintendo Maniac 64 is offline   Reply With Quote
Old 14th December 2018, 21:14   #1328  |  Link
Motenai Yoda
Registered User
 
Motenai Yoda's Avatar
 
Join Date: Jan 2010
Posts: 701
the ones that don't care about gpu capabilities and still get a display without need a discrete card
__________________
powered by Google Translator
Motenai Yoda is offline   Reply With Quote
Old 14th December 2018, 21:19   #1329  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 9,759
Quote:
Originally Posted by Nintendo Maniac 64 View Post
But lets be honest here - with AMD finally being a viable alternative again, who is really buying Intel for their graphics capabilities?
Gen11 is also supposed to be significantly faster. And Intel has among the best media capabilities today already, while AMD has the worst.
So for a small form factor media PC, there would be no competition for me.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders

Last edited by nevcairiel; 14th December 2018 at 21:28.
nevcairiel is offline   Reply With Quote
Old 15th December 2018, 03:16   #1330  |  Link
Nintendo Maniac 64
Registered User
 
Nintendo Maniac 64's Avatar
 
Join Date: Nov 2009
Location: Northeast Ohio
Posts: 404
Quote:
Originally Posted by Motenai Yoda View Post
the ones that don't care about gpu capabilities and still get a display without need a discrete card
Uhhhh...
__________________
____HTPC____  | __Desktop PC__
2.93GHz Xeon x3470 (4c/8t Nehalem) | 4.6GHz Pentium G3258 (2c/2t Haswell)
Radeon HD5870  | Intel iGPU      
2x2GB+2x1GB DDR3-1333 | 4x4GB DDR3-1600       

Win7 x64
Nintendo Maniac 64 is offline   Reply With Quote
Old 17th December 2018, 12:43   #1331  |  Link
huhn
Registered User
 
Join Date: Oct 2012
Posts: 5,733
you are aware that amd is still missing VP9 for hardware decoding even on vega.

while AMD is very competitive in the CPU market there GPU's are currently at an all time low. vega is using a lot of power needs a huge die and is really slow if you take size into consideration and the hardware decoder is pretty much worse than the nvidia cards that are getting 4 years old.
huhn is offline   Reply With Quote
Old 17th December 2018, 17:53   #1332  |  Link
Mr_Khyron
Member
 
Mr_Khyron's Avatar
 
Join Date: Nov 2002
Location: Sweden
Posts: 103
Quote:
Originally Posted by huhn View Post
you are aware that amd is still missing VP9 for hardware decoding even on vega.

while AMD is very competitive in the CPU market there GPU's are currently at an all time low. vega is using a lot of power needs a huge die and is really slow if you take size into consideration and the hardware decoder is pretty much worse than the nvidia cards that are getting 4 years old.
https://en.wikichip.org/w/images/a/a...whitepaper.pdf
on page 14
Quote:
Vega” can also decode the VP9 format at resolutions up to 3840x2160 using a hybrid approach where the video and shader engines collaborate to offload work from the CPU.
Mr_Khyron is offline   Reply With Quote
Old 17th December 2018, 18:56   #1333  |  Link
sneaker_ger
Registered User
 
Join Date: Dec 2002
Posts: 5,417
AFAIK the newer AMD ones like Ryzen 5 2500U (Raven Ridge/ Vega 8) now have VP9 10 bit ASIC decoding.

But yeah, they are late. Don't expect it to be different for AV1.

Last edited by sneaker_ger; 17th December 2018 at 18:59.
sneaker_ger is offline   Reply With Quote
Old 17th December 2018, 20:39   #1334  |  Link
huhn
Registered User
 
Join Date: Oct 2012
Posts: 5,733
hybrid decoding has nothing todo with hardware decoding.

letting a CPU and GPU core do the work of an ASIC is simply not the same.

it would be nice if the newest APU have asic decoder but not that trust worth test i found told me the vega 11 is hybrid.
huhn is offline   Reply With Quote
Old 18th December 2018, 07:54   #1335  |  Link
alex1399
Registered User
 
Join Date: Jun 2018
Posts: 50
No sense, the amd hybrid decoding of vp9 just works as the way that intel do on the hybrid decoding of hevc in their 6th generation processor skylake. They ARE hardware decode.
alex1399 is offline   Reply With Quote
Old 18th December 2018, 18:33   #1336  |  Link
Blue_MiSfit
Derek Prestegard IRL
 
Blue_MiSfit's Avatar
 
Join Date: Nov 2003
Location: Los Angeles
Posts: 5,512
Keep things on topic, please.
Blue_MiSfit is offline   Reply With Quote
Old 18th December 2018, 21:31   #1337  |  Link
SmilingWolf
I am maddo saientisto!
 
SmilingWolf's Avatar
 
Join Date: Aug 2018
Posts: 78
Status report, redux
"rav1e is doing well" edition

1st edition: http://forum.doom9.org/showthread.ph...49#post1852449
2nd edition: http://forum.doom9.org/showthread.ph...87#post1857587
Whatever paragraph I don't repeat here can be assumed to be the same as in the aforementioned posts

First of all: graphs! Click to enlarge
Y axis: chosen metric
X axis: bits per pixel

720p:


1080p:


Encoders improvement over time:
720p:


1080p:


BD rates for 720p:
Code:
Codecs ladder:              |  x264 relative:
x264 -> rav1e               |  x264 -> rav1e
        RATE (%) DSNR (dB)  |          RATE (%) DSNR (dB)
 MSSSIM -10.7345 0.541324   |   MSSSIM -10.7345 0.541324
PSNRHVS -15.3271 1.07245    |  PSNRHVS -15.3271 1.07245
  HVMAF -7.40703 2.07138    |    HVMAF -7.40703 2.07138
----------------------------|-----------------------------
rav1e -> vp9                |  x264 -> vp9
        RATE (%) DSNR (dB)  |          RATE (%) DSNR (dB)
 MSSSIM -15.1057 0.68453    |   MSSSIM -21.81   1.08927
PSNRHVS -11.2436 0.654976   |  PSNRHVS -22.9586 1.51188
  HVMAF -19.2883 2.57019    |    HVMAF -24.1102 3.58993
----------------------------|-----------------------------
vp9 -> x265                 |  x264 -> x265
        RATE (%) DSNR (dB)  |          RATE (%) DSNR (dB)
 MSSSIM -4.25723 0.169151   |   MSSSIM -25.6195 1.21115
PSNRHVS -8.19042 0.41409    |  PSNRHVS -29.8289 1.83058
  HVMAF -10.6714 0.708441   |    HVMAF -31.2046 4.45371
----------------------------|-----------------------------
x265 -> av1                 |  x264 -> av1
        RATE (%) DSNR (dB)  |          RATE (%) DSNR (dB)
 MSSSIM -18.9088 0.7852     |   MSSSIM -38.0511 1.97653
PSNRHVS -15.3123 0.761791   |  PSNRHVS -38.6659 2.56119
  HVMAF -18.0023 1.0489     |    HVMAF -44.0411 4.3982
BD rates for 1080p:
Code:
Codecs ladder:                |  x264 relative:
x264 -> rav1e                 |  x264 -> rav1e
        RATE (%) DSNR (dB)    |          RATE (%) DSNR (dB)
 MSSSIM -20.0683 1.00011      |   MSSSIM -20.0683 1.00011
PSNRHVS -21.9935 1.47903      |  PSNRHVS -21.9935 1.47903
  HVMAF -18.4773 3.96202      |    HVMAF -18.4773 3.96202
------------------------------|-----------------------------
rav1e -> vp9                  |  x264 -> vp9
        RATE (%) DSNR (dB)    |          RATE (%) DSNR (dB)
 MSSSIM -18.2653 0.729489     |   MSSSIM -31.1754 1.49143
PSNRHVS -14.922  0.755605     |  PSNRHVS -30.1275 1.87845
  HVMAF -20.1645 2.31195      |    HVMAF -32.4505 4.72978
------------------------------|-----------------------------
vp9 -> x265                   |  x264 -> x265
        RATE (%) DSNR (dB)    |          RATE (%) DSNR (dB)
 MSSSIM 5.13717 -0.177855     |   MSSSIM -28.9956 1.18206
PSNRHVS -0.096748 -0.0123981  |  PSNRHVS -31.474  1.63676
  HVMAF -3.78107 0.0881882    |    HVMAF -34.6185 4.22357
------------------------------|-----------------------------
x265 -> av1                   |  x264 -> av1
        RATE (%) DSNR (dB)    |          RATE (%) DSNR (dB)
 MSSSIM -26.486  0.938124     |   MSSSIM -45.4959 2.12535
PSNRHVS -21.7431 0.905916     |  PSNRHVS -43.4792 2.56047
  HVMAF -22.7091 1.17861      |    HVMAF -48.0404 4.69582
Encoders:
x264 157-2935-545de2f
x265 2.9-4-471726d3a046
rav1e 0.1.0-977-64b9f501
libaom 1.0.0-908-g3a607f7b0
libvpx 1.7.0-1352-gea57f9acd

Cmdlines:
x264 --preset veryslow --tune ssim --crf 16 -o test.x264.crf16.264 orig.i420.y4m
x265 --preset veryslow --tune ssim --crf 16 -o test.x265.crf16.hevc orig.i420.y4m
rav1e --low_latency false -o test.rav1e.cq80.ivf --quantizer 80 -s 2 --tune psnr orig.i420.y4m
aomenc --frame-parallel=0 --tile-columns=3 --auto-alt-ref=1 --cpu-used=4 --tune=psnr --passes=2 --threads=2 --end-usage=q --cq-level=20 --test-decode=fatal -o test.av1.cq20.webm orig.i420.y4m
vpxenc --codec=vp9 --frame-parallel=0 --tile-columns=2 --good --cpu-used=0 --tune=psnr --passes=2 --threads=2 --end-usage=q --cq-level=20 --test-decode=fatal --ivf -o test.vp9.cq20.ivf orig.i420.y4m

Quality settings:
x264: CRF 16-24 step 1, and 24-34 step 2
x265: CRF 16-24 step 1, and 24-34 step 2
rav1e: CQ 80-160 step 16
aomenc: CQ 20-40 step 4
vpxenc: CQ 20-48 step 4
VMAF: model used: nflxall_vmafv4, pooling: harmonic_mean

Notes:
Revisiting the sequences from the previous report:
Code:
F.Y.C, x264 -> rav1e
        RATE (%) DSNR (dB)
 MSSSIM -21.8223 1.2258
PSNRHVS -28.408 2.29056
  HVMAF -18.7682 3.89782

PresageFlowerFight, x264 -> rav1e
        RATE (%) DSNR (dB)
 MSSSIM -33.8353 1.95641
PSNRHVS -33.5774 2.47118
  HVMAF -29.2079 7.17318

PresageFlowerWalk, x264 -> rav1e
        RATE (%) DSNR (dB)
 MSSSIM -6.98635 0.333085
PSNRHVS -3.78743 0.244148
  HVMAF 2.23865 -0.150589
MAJOR improvements in static/very low motion scenes thanks to adaptive keyframe selection, marginal improvements in the others.
SmilingWolf is offline   Reply With Quote
Old 18th December 2018, 23:36   #1338  |  Link
Phanton_13
Registered User
 
Join Date: May 2002
Posts: 93
SmilingWolf, can you also indicates the encoding speed, it don't need to be in fps as it can be in relation of a specific encoder, is more to see the variation in the speed of aoemc and rav1e due to optimizations or other improvements.
Phanton_13 is offline   Reply With Quote
Old 19th December 2018, 04:26   #1339  |  Link
utack
Registered User
 
Join Date: Apr 2018
Posts: 39
The cpu-used heuristics in libaom seems to be poorly tuned in lossless mode.
Tested with a digitally animated gif
hitting 50% size increase at 1/4 encode time saved compared to cpu-used=0, and double the size at 60% the encode time of cpu-used=0
each dot presets one cpu-used value

Last edited by utack; 19th December 2018 at 04:29.
utack is offline   Reply With Quote
Old 19th December 2018, 06:31   #1340  |  Link
Nintendo Maniac 64
Registered User
 
Nintendo Maniac 64's Avatar
 
Join Date: Nov 2009
Location: Northeast Ohio
Posts: 404
Quote:
Originally Posted by utack View Post
digitally animated gif
If you ever want to test higher-quality animation examples (read: not limited to 256 colors), then perhaps try an animated PNG.
__________________
____HTPC____  | __Desktop PC__
2.93GHz Xeon x3470 (4c/8t Nehalem) | 4.6GHz Pentium G3258 (2c/2t Haswell)
Radeon HD5870  | Intel iGPU      
2x2GB+2x1GB DDR3-1333 | 4x4GB DDR3-1600       

Win7 x64
Nintendo Maniac 64 is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 17:17.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.