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 9th April 2019, 12:21   #1581  |  Link
hajj_3
Registered User
 
Join Date: Mar 2004
Posts: 882
Intel to make their own AV1 software decoder:

https://www.phoronix.com/scan.php?pa...-Decode-FFmpeg
https://trello.com/c/oEZQai7L/26-av1-decoder
hajj_3 is offline   Reply With Quote
Old 9th April 2019, 13:19   #1582  |  Link
utack
Registered User
 
Join Date: Apr 2018
Posts: 38
Quote:
Originally Posted by hajj_3 View Post
Seems like they were not happy dav1d runs well on Ryzen
utack is offline   Reply With Quote
Old 9th April 2019, 14:00   #1583  |  Link
hajj_3
Registered User
 
Join Date: Mar 2004
Posts: 882
Quote:
Originally Posted by utack View Post
Seems like they were not happy dav1d runs well on Ryzen
Hopefully the dav1d decoder will copy any improvements that intel makes in their decoder. I have an intel kaby lake chip so i'm not complaining about intel making a new software decoder :P
hajj_3 is offline   Reply With Quote
Old 9th April 2019, 15:45   #1584  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 9,656
Quote:
Originally Posted by utack View Post
Seems like they were not happy dav1d runs well on Ryzen
Well dav1d certainly won't get slower through any of their efforts.
That said, dav1d puts a lot of effort into AVX2, which current-gen Ryzen doesn't even do particularly fast, so..

Additionally, that Trello "av1 decoder" task existed before dav1d was even a thing, and contrary to the Phoronix article, dav1d is actually quite decently fast on 8-bit content (work on speeding up 10-bit has started).
BUT, one should know that an encoder basically contains a decoder already, because it has to practically decode encoded frames to get accurate reference frame information, so splitting that out may always be an option.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders

Last edited by nevcairiel; 9th April 2019 at 15:49.
nevcairiel is offline   Reply With Quote
Old 9th April 2019, 16:13   #1585  |  Link
mandarinka
Registered User
 
mandarinka's Avatar
 
Join Date: Jan 2007
Posts: 714
Dav1d will be always better for us end users, I think that's almost certain. SVT encoders are kind enterprise code which likely won't be too receptive about various issues of users in the wild, who have weird needs like non-AVX2 CPUs, non-mod16/8/4 video (for example) and integration into various players which the coders of these server-side encoders for commercial use are not going to see as important or even be aware of.
Dav1d devs are going to be more in touch with this and generally, the ffmpeg circle sort of development has proved itself with decoders.
mandarinka is offline   Reply With Quote
Old 10th April 2019, 00:43   #1586  |  Link
foxyshadis
ангел смерти
 
foxyshadis's Avatar
 
Join Date: Nov 2004
Location: Lost
Posts: 9,408
Quote:
Originally Posted by nevcairiel View Post
Yeah, sort of optional. The spec says it should be there, but its not clear to me if you need to use one of its profiles. You can have a whole list of alternate/compatible brands in such a file. The AVIF spec lists them:
https://aomediacodec.github.io/av1-a...es-constraints

"avif" from the AVIF spec itself.
"mif1" from HEIF
"miaf" from the MIAF spec
and finally "MA1B" or "MA1A" to identify the AV1 profile in use.
Or various alterations of the above for special types of images.

... this ISOBMFF image format stuff is a real mess.
As I read it, "miaf" is required for AVIF, and defines a fair number of important constraints. I wish it was possible to view MIAF's draft standard, but if you aren't in MPEG, ISO, or IEC it looks like that's not possible at all for at least another month.
__________________
There are four boxes to be used in defense of liberty: soap, ballot, jury, and ammo. Please use in that order.

Last edited by foxyshadis; 10th April 2019 at 05:28.
foxyshadis is offline   Reply With Quote
Old 10th April 2019, 17:56   #1587  |  Link
Nintendo Maniac 64
Registered User
 
Nintendo Maniac 64's Avatar
 
Join Date: Nov 2009
Location: Northeast Ohio
Posts: 381
Quote:
Originally Posted by nevcairiel View Post
That said, dav1d puts a lot of effort into AVX2, which current-gen Ryzen doesn't even do particularly fast, so..
Though Intel does seem to like segmenting their CPU lineup with regards to AVX feature-set.
__________________
____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 11th April 2019, 07:47   #1588  |  Link
NikosD
Registered User
 
Join Date: Aug 2010
Location: Athens, Greece
Posts: 2,505
Even the current Ryzen architecture is very fast using dAV1d probably due to the highly multi-threaded nature of both (dAV1d and Ryzen)

The multi-threaded gain seems to be more significant than the AVX2 loss for current-gen Ryzen.
__________________
Win 10 x64 (17763.379) - Core i3-4170/ iGPU HD 4400 (v.5058)
HEVC decoding benchmarks
H.264 DXVA Benchmarks for all

Last edited by NikosD; 11th April 2019 at 16:35. Reason: Added the word "fast" :)
NikosD is offline   Reply With Quote
Old 14th April 2019, 17:02   #1589  |  Link
soresu
Registered User
 
Join Date: May 2005
Location: Swansea, Wales, UK
Posts: 63
Seems that rav1e is prioritising chunked/segment encoding early on to maximise parallelism, they just opened a new project list to target specific tasks. Link here.
soresu is offline   Reply With Quote
Old 14th April 2019, 18:11   #1590  |  Link
IgorC
Registered User
 
Join Date: Apr 2004
Posts: 1,300
Xiph update on one year of AV1 (slides from NAB 2019) [PDF]
https://people.xiph.org/~negge/NAB2019.pdf
IgorC is offline   Reply With Quote
Old 14th April 2019, 18:43   #1591  |  Link
user1085
Registered User
 
Join Date: Apr 2018
Posts: 21
Quote:
Originally Posted by soresu View Post
Seems that rav1e is prioritising chunked/segment encoding early on to maximise parallelism, they just opened a new project list to target specific tasks. Link here.
How does chunked/segment encoding work?
user1085 is offline   Reply With Quote
Old 14th April 2019, 22:11   #1592  |  Link
soresu
Registered User
 
Join Date: May 2005
Location: Swansea, Wales, UK
Posts: 63
Much like the name suggests, by splitting the file to be encoded by chunks/segments, each being encoded in a separate instance of the encoder, but each also having the lower parallelism of tile or frame based encoding on top of that.

Its more beneficial for systems like servers, or dual socket workstations with large core counts, where the WPP, tile and frame parallel techniques are not enough on their own to saturate all cores with work.

Apparently it has its own problems such as memory consumption and chiefly the time taken to initialise each instance.

Also the segments would have to be chosen based on detected scene change otherwise you could have some very obvious bitrate changes visible mid shot.

I dont think it is suitable for real time encoding, unless you have a significant time delay on transmission to detect scene changes before carving up a new segment to be encoded possibly?

Last edited by soresu; 14th April 2019 at 22:13.
soresu is offline   Reply With Quote
Old 15th April 2019, 16:58   #1593  |  Link
Dyomich
Codec Analysis Expert
 
Join Date: Feb 2006
Location: Moscow
Posts: 29
Quote:
Originally Posted by dapperdan View Post
MSU HEVC/AV1/VP9 encoding test results:


http://compression.ru/video/codec_comparison/hevc_2018/
dapperdan, thank you for the link. Here is more information about the results:

MSU received many requests on the results of announced AV1 participation in comparison.
AV1 is quickly being developed, but still too slow to participate in our usual fast-universal-ripping use cases.
This is why AV1 was included only in this special report (so as in 2017).

Download free PDF report: http://compression.ru/video/codec_co...Q_encoders.pdf

This part of the comparison usually releases later because of much lower encoding speed than in other use cases (formal limit was 0.005 fps but actually unlimited).
According to only quality scores, the places of the competitors are the following:
  1. AV1
  2. VP9, x265 and sz265
  3. sz264 and x264
On the speed-quality chart there are four Pareto-optimal participants: AV1, VP9, x264, and SIF Encoder:



You can compare the latest results to the results from out similar comparison in 2017,
(Important note: in 2017 we used VBR mode for AV1 encoder, and in 2018 constant QP was used, as VBR was several times slower).
Dyomich is offline   Reply With Quote
Old 16th April 2019, 18:57   #1594  |  Link
SmilingWolf
I am maddo saientisto!
 
SmilingWolf's Avatar
 
Join Date: Aug 2018
Posts: 75
Status report!
"MSU preceded me" edition

1st edition: https://forum.doom9.org/showthread.p...49#post1852449
2nd edition: https://forum.doom9.org/showthread.p...87#post1857587
3rd edition: https://forum.doom9.org/showthread.p...75#post1860475
Whatever paragraph I don't repeat here can be assumed to be the same as in the aforementioned post

First of all: graphs!
Click to enlarge

Y axis: chosen metric
X axis: bits per pixel

720p:


1080p:


BD rates for 720p:
Code:
Codecs ladder:              |  x264 relative:
x264 -> svtav1              |  x264 -> svtav1
        RATE (%) DSNR (dB)  |          RATE (%) DSNR (dB)
 MSSSIM -3.28672 0.142426   |   MSSSIM -3.28672 0.142426
PSNRHVS -4.36439 0.235114   |  PSNRHVS -4.36439 0.235114
  HVMAF -7.28468 0.186648   |    HVMAF -7.28468 0.186648
----------------------------|-----------------------------
svtav1 -> vp9               |  x264 -> vp9
        RATE (%) DSNR (dB)  |          RATE (%) DSNR (dB)
 MSSSIM -14.9778 0.624669   |   MSSSIM -21.5937 1.19737
PSNRHVS -17.0162 0.881864   |  PSNRHVS -23.6381 1.70941
  HVMAF -17.6481 0.768638   |    HVMAF -21.7739 2.36707
----------------------------|-----------------------------
vp9 -> x265                 |  x264 -> x265
        RATE (%) DSNR (dB)  |          RATE (%) DSNR (dB)
 MSSSIM -5.14321 0.226527   |   MSSSIM -25.8745 1.38639
PSNRHVS -8.41874 0.455384   |  PSNRHVS -30.4345 2.09471
  HVMAF -13.8727 0.673276   |    HVMAF -31.395 3.32434
----------------------------|-----------------------------
x265 -> av1                 |  x264 -> av1
        RATE (%) DSNR (dB)  |          RATE (%) DSNR (dB)
 MSSSIM -17.7008 0.800381   |   MSSSIM -36.613 2.16722
PSNRHVS -14.1648 0.748597   |  PSNRHVS -37.5985 2.80939
  HVMAF -12.6967 0.474379   |    HVMAF -39.7078 2.87016
BD rates for 1080p:
Code:
Codecs ladder:               |  x264 relative:
x264 -> svtav1               |  x264 -> svtav1
        RATE (%) DSNR (dB)   |          RATE (%) DSNR (dB)
 MSSSIM -2.03138 0.058404    |   MSSSIM -2.03138 0.058404
PSNRHVS 3.95915 -0.147954    |  PSNRHVS 3.95915 -0.147954
  HVMAF -4.05114 -0.0123967  |    HVMAF -4.05114 -0.0123967
-----------------------------|------------------------------
svtav1 -> vp9                |  x264 -> vp9
        RATE (%) DSNR (dB)   |          RATE (%) DSNR (dB)
 MSSSIM -29.5206 1.00448     |   MSSSIM -33.7275 1.65389
PSNRHVS -32.951 1.40212      |  PSNRHVS -33.0678 2.11895
  HVMAF -34.7504 1.33459     |    HVMAF -33.0663 3.73028
-----------------------------|------------------------------
vp9 -> x265                  |  x264 -> x265
        RATE (%) DSNR (dB)   |          RATE (%) DSNR (dB)
 MSSSIM 6.91124 -0.232017    |   MSSSIM -30.515 1.24701
PSNRHVS 2.12517 -0.103003    |  PSNRHVS -32.954 1.71647
  HVMAF -5.87407 0.106315    |    HVMAF -35.0935 3.13962
-----------------------------|------------------------------
x265 -> av1                  |  x264 -> av1
        RATE (%) DSNR (dB)   |          RATE (%) DSNR (dB)
 MSSSIM -28.0678 0.994389    |   MSSSIM -47.6133 2.2674
PSNRHVS -23.2568 0.966762    |  PSNRHVS -45.5839 2.73622
  HVMAF -24.6825 0.769329    |    HVMAF -50.6976 3.39944
Encoders:
x264 157-2935-545de2f
x265 3.0-1-ed72af837053
libvpx-vp9 1.8.0-374-gb758ba795
SVT-AV1 0.0.1-525-5a8b857e
libaom 1.0.0-1605-g64a2ffb72

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
vpxenc --codec=vp9 --frame-parallel=0 --tile-columns=1 --auto-alt-ref=6 --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
SvtAv1EncApp.exe -i orig.i420.yuv -b test.svtav1.cq20.ivf -w 1280 -h 720 -q 20 -enc-mode 3 -fps-num 24000 -fps-denom 1001 -intra-period 23
aomenc --frame-parallel=0 --tile-columns=1 --auto-alt-ref=1 --cpu-used=4 --tune=psnr --passes=2 --threads=2 --row-mt=1 --end-usage=q --cq-level=20 --test-decode=fatal -o test.av1.cq20.webm orig.i420.y4m
VMAF: model used: vmaf_v0.6.1, pooling: harmonic_mean

Notes:
TearsOfSteel720 and TheFifthElement, two clips in the 720p category, have a vertical resolution incompatible with SvtAv1EncApp (not divisible by 8), so they have been excluded from all measurements this time.
Next time they will be padded, all the encodes re-made and quality measurements re-taken.
Meanwhile, rav1e has got a nasty bug that makes it bloat encodes, which brings up to 25% BD rate regression, so it has been excluded from this edition.
I'll try to post an amendment when the above problems have been fixed.

This concludes this report.
As always, I'm open to any kind of feedback to improve my comparisons and my encodes.
SmilingWolf is offline   Reply With Quote
Old 16th April 2019, 20:52   #1595  |  Link
Nintendo Maniac 64
Registered User
 
Nintendo Maniac 64's Avatar
 
Join Date: Nov 2009
Location: Northeast Ohio
Posts: 381
Quote:
Originally Posted by SmilingWolf View Post
Status report!
Good to see you're not dead - you hadn't logged in for nearly 4 months.


Anyway quick question - since dav1d seems to be pretty much the standard go-to AV1 decoder nowadays, I don't suppose you'd be interested in the possibility of more decoder performance tests?

Basically I'm thinking how that Presage Flower video clip you had me test is going to have pretty outdated results regarding AV1's relative CPU software decoding requirements seeing as dav1d is like 50% faster even on CPUs that don't support AVX (I've not yet tested it on CPUs without SSE4.1 and/or SSSE3 however).
__________________
____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 16th April 2019, 23:02   #1596  |  Link
singhkays
Registered User
 
Join Date: Aug 2018
Posts: 17
Quote:
Originally Posted by SmilingWolf View Post
Status report!
Glad to see this! I'm working on a sub-500Kbps comparison myself for AV1/x264/VP9 (this is to replace GIF with the smallest video that'll play natively in a browser)

Do you know how these new commandline options in ffmpeg affect quality/speed for AV1?

Quote:
enable_cdef, enable_global_motion, and intrabc
https://git.ffmpeg.org/gitweb/ffmpeg...99c7c89526d1d6
singhkays is offline   Reply With Quote
Old Yesterday, 18:00   #1597  |  Link
marcomsousa
Registered User
 
Join Date: Jul 2018
Posts: 45
1) Comparision of libaom, SVT-AV1 and rav1e for still-image coding on subset1 from derf's collection. JPEG files are also encoded with libjpeg for the reference.

https://github.com/Kagami/av1-bench

2) go-avif comes with handy CLI utility avif. It supports encoding of JPEG and PNG files to AVIF
Static 64-bit builds for Windows, macOS and Linux are available at releases page.
https://github.com/Kagami/go-avif


3) AVIF (AV1 Still Image File Format) polyfill for the browser
https://github.com/Kagami/avif.js
demo https://kagami.github.io/avif.js/
__________________
AV1 win64 VS2017 builds
Last build here | History
I also open source the build scripts at Github: here
marcomsousa is offline   Reply With Quote
Old Yesterday, 18:15   #1598  |  Link
Nintendo Maniac 64
Registered User
 
Nintendo Maniac 64's Avatar
 
Join Date: Nov 2009
Location: Northeast Ohio
Posts: 381
Any comparisons for lossless AVIF?
__________________
____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 Yesterday, 18:17   #1599  |  Link
marcomsousa
Registered User
 
Join Date: Jul 2018
Posts: 45
Chrome will use dav1d by default for decoding.
Chromium 74 [1] (week of 2019-Apr-23)
https://chromium.googlesource.com/ch...abd54d5%5E%21/
__________________
AV1 win64 VS2017 builds
Last build here | History
I also open source the build scripts at Github: here
marcomsousa is offline   Reply With Quote
Old Yesterday, 20:54   #1600  |  Link
SmilingWolf
I am maddo saientisto!
 
SmilingWolf's Avatar
 
Join Date: Aug 2018
Posts: 75
Quote:
Originally Posted by Nintendo Maniac 64 View Post
Any comparisons for lossless AVIF?
I've got you covered... somewhat. My comparison was made with a mix of CG wallpapers and Pixiv anime fanart. Here: https://docs.google.com/spreadsheets...2xX5AWagKn1ak/
The numbers are 3 months old but I don't think they have moved too much.

Yup, not ded, but busy

Unless dav1d has started adding 10bit asm or has made big improvements in the multithreading department I don't think there'll be much to see w.r.t. improvements against my Presage Flower encode (10bit YUV420P), but you're very welcome to try and prove me wrong of course, benchmarks are always good!

Quote:
Originally Posted by singhkays View Post
Do you know how these new commandline options in ffmpeg affect quality/speed for AV1?
https://git.ffmpeg.org/gitweb/ffmpeg...99c7c89526d1d6
I never tested any of that flags with the exception of frame_parallel, which I always set to 0 (disabled).
I'd imagine one would want to leave the CDEF filter on, but I have hardly any idea what most of the others do.

Last edited by SmilingWolf; Yesterday at 21:20.
SmilingWolf 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 20:59.


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