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. |
8th December 2018, 11:13 | #1261 | Link |
Registered Developer
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,348
|
He can ramble about hardware influence all he wants, but if you don't get the hardware people onboard, your codec is DOA anyway.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders Last edited by nevcairiel; 8th December 2018 at 11:16. |
8th December 2018, 15:34 | #1262 | Link | |
Registered User
Join Date: Apr 2018
Posts: 63
|
Quote:
I also don't get how hardware seems to play a big role, VP9 was not made with hardware in mind, and Qualcomm Samsung Nvidia AMD Intel, as well as some random Chinese SOC vendors still managed to make a hardware decoder. So hardware designers can't be scared off that easily it seems? |
|
8th December 2018, 17:11 | #1263 | Link | |
Registered User
Join Date: Jun 2018
Posts: 7
|
Quote:
It's super clear to me that hardware is crucial because of playback. A codec cannot succeed if "OMG Youtube Is Killing My Battery" is a big reddit thread! |
|
8th December 2018, 17:39 | #1264 | Link | ||
I am maddo saientisto!
Join Date: Aug 2018
Posts: 95
|
Quote:
There are even some slides about why working on the existing libvpx-then-branched-libaom codebase made things hard in some xiph.org user folder, I'll edit if I can find them again. It mainly had to do with libaom being big, old and full of experiments anyway --- Alright found a couple right off the bat: https://people.xiph.org/~tdaede/rav1e_vdd_2017.pdf Code:
Started as a reimplementation of AV1 in order to find bitstream and specification bugs ● Could do an encoder or decoder: – Decoder (especially fuzzed) more useful to find mismatches – Encoder doesn’t need all features implemented to work ● Algorithmic improvements over libaom Code:
Background on libaom: Derived from libvpx codebase ● Reference implementation, “sort of usable” ● Much encoder behavior is inherited from previous VPx codecs – multiple frame passes – weird rate control One would think they learnt from that experience. Again, we can only speculate, but that would provide a good explanation for the veto power of hardware vendors this time around. Quote:
What are the modern alternatives to tiling? I remember reading somewhere WPP is patented, so what would be the next best alternative? Last edited by SmilingWolf; 9th December 2018 at 10:17. |
||
9th December 2018, 11:37 | #1265 | Link |
Registered User
Join Date: Jun 2018
Posts: 56
|
Oh no, Youtube coupled the high define resolution with the 60fps in all most every video. It uses a trivial motion interpolation that simply duplicates frame from previous and converts native frame-rate into 60fps. What a jerk. Thats why it works so hard on some low end PC with high speed Internet.
|
9th December 2018, 22:23 | #1266 | Link |
Registered User
Join Date: Nov 2009
Location: Northeast Ohio
Posts: 447
|
It seems that at some point YouTube actually implemented AV1 "in the wild". Much like how VP9 was rolled out, it seems that the larger the view count then the more likely you'll get an AV1 encode...but not entirely - this is most obvious on Linus Tech Tips where this LTT video with ~1.6M views has AV1 but this other LTT video posted just 1 day before with ~2.8M views does not...
Unless YouTube flipped an AV1 switch sometime specifically on December 3rd only for newly-posted video, making the first-linked video quality while the second-linked video did not? Anyway, I just finished a bunch of CPU decoding performance testing for one of SmilingWolf personal videos that he encoded in AV1, and while the absolute performance numbers are relatively meaningless since they largely depend on things like bitrate, framerate, and resolution, the relative decoding performance numbers should still be of interest. The way I measured included (but was not limited to) having a video clip play at 17fps and then seeing what the lowest clockrate required was for a given CPU architecture and thread configuration with a 45nm Core 2 Duo @ 3.5GHz as the baseline. I also tested within a single architecture for performance scaling at various clockrate, and save for Wolfdale (possibly due to the lack of an integrated memory controller), the performance scaling was for all intents and purposes identical between Nehalem and Haswell (that is, the percentage amount of extra clockrate necessary to play back 24fps vs 17fps was darned-near exactly the same) All of this was tested with MPC-HC 1.8.3 x64 (LAVfilters 0.73, libaom) and only on CPUs that supported SSE 4.1 as CPUs lacking this instruction set would have needed a 10+ GHz overclock (I'm not kidding) such as the Phenom II and the 65nm Conroe-based Core 2 Duo (even though the later supports SSSE3 and not just SSE3). And to clarify, the percentage below is simply how much faster a given CPU should be if it had the same clockrate as the baseline 2c/2t Wolfdale (which itself was clocked at 3.5GHz).
And from some of the other tests I did, I was able to extrapolate the performance of Haswell CPUs configured at 2c/4t, 4c/4t, and 4c/8t (again, relative to a 2c/2t Wolfdale) as I do not have access to Haswell CPUs with thread configurations greater than 2c/2t:
For those that don't know their CPU architectures...
__________________
____HTPC____ | __Desktop PC__
2.93GHz Xeon x3470 (4c/8t Nehalem) | 4.5GHz 1.24v dual-core Haswell G3258 Radeon HD5870 | Intel iGPU 2x2GB+2x1GB DDR3-1333 | 4x4GB DDR3-1600 Last edited by Nintendo Maniac 64; 3rd January 2020 at 23:47. |
10th December 2018, 00:18 | #1267 | Link | |
Registered User
Join Date: Apr 2015
Posts: 21
|
Quote:
Thanks for the benchmarks, it proves it's possible to do software decoding of AV1 on desktop, but it's quite heavy, and will be hard on laptop battery and probably too much for any smartphones. Do you plan to add ...lake, Ryzen or dav1d ? |
|
10th December 2018, 01:03 | #1268 | Link | |
Registered User
Join Date: Nov 2009
Location: Northeast Ohio
Posts: 447
|
Quote:
In particular, the video I was using I had manually slowed down to 17fps because that was the highest framerate my Nehalem x3470 could handle when configured as 2c/2t and turbo disabled (2.93GHz), which is why I did not provide any absolute performance numbers and focused on relative performance. I don't have any such CPUs, and I've no idea how to benchmark dav1d since coding and such is totally not my specialty (my expertise is much more in hardware). However, Zen-based CPUs should have per-GHz performance similar to Haswell while Sky/Kaby/Coffee lake will have slightly better per-GHz performance than Haswell, so for the most part you can just use the Haswell relative performance numbers (not the clockrate!) as a reference for those architectures.
__________________
____HTPC____ | __Desktop PC__
2.93GHz Xeon x3470 (4c/8t Nehalem) | 4.5GHz 1.24v dual-core Haswell G3258 Radeon HD5870 | Intel iGPU 2x2GB+2x1GB DDR3-1333 | 4x4GB DDR3-1600 |
|
11th December 2018, 17:11 | #1269 | Link |
Registered User
Join Date: Mar 2004
Posts: 1,126
|
dav1d v0.1 has been released: http://www.jbkempf.com/blog/post/201...lease-of-dav1d
|
11th December 2018, 17:52 | #1271 | Link | |
Registered User
Join Date: Dec 2008
Posts: 1,970
|
Quote:
I will wait for the ffmpeg build with both libaom and libda1d libraries. I want to compare the speed of work in the same conditions.
__________________
MPC-BE 1.7.0 and Nightly builds | VideoRenderer | ImageSource | ScriptSource | BassAudioSource |
|
11th December 2018, 20:07 | #1272 | Link |
I am maddo saientisto!
Join Date: Aug 2018
Posts: 95
|
64bits, GCC 8.2:
ffmpeg 4.2-92673-g876ed08b0d: https://mega.nz/#!QxpinIyQ!HBtUEzFOb...NxABGMlPcvgSWA - libaom 1.0.0-1024-g5b8f393fe - libdav1d 0.1.0 c0501f1 |
11th December 2018, 21:14 | #1274 | Link |
Registered Developer
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,348
|
SSE* code is still actively being worked on, and is actively coming in right now, so its getting faster day by day on those systems. AVX1 doesn't help a codec like this much, since AVX instructions are primarily floating point, and only AVX2 adds the required integer instructions.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders |
11th December 2018, 21:25 | #1275 | Link |
I am maddo saientisto!
Join Date: Aug 2018
Posts: 95
|
To follow the progress of SSSE3 implementation: https://code.videolan.org/videolan/dav1d/issues/216
Same thing for NEON: https://code.videolan.org/videolan/dav1d/issues/215 An article on dav1d 0.1.0 by the same guy who's been doing most of the benchmarks that appeared in the official blogposts: https://medium.com/@ewoutterhoeven/d...s-5404360e44e3 Last edited by SmilingWolf; 11th December 2018 at 21:31. |
12th December 2018, 04:03 | #1276 | Link | |||
Registered User
Join Date: Dec 2008
Posts: 1,970
|
Quote:
Quote:
Quote:
Code:
ffmpeg -t 10 -c:v libaom-av1 -i Stream2_AV1_4K_22.7mbps.webm -benchmark -f null - ffmpeg -t 10 -c:v libdav1d -i Stream2_AV1_4K_22.7mbps.webm -benchmark -f null - ffmpeg -t 10 -c:v libdav1d -threads 4 -tilethreads 4 -i Stream2_AV1_4K_22.7mbps.webm -benchmark -f null - Code:
libaom-av1 - 14 fps libdav1d - max 7.1 fps libdav1d -threads 4 -tilethreads 4 - max 9.6 fps
__________________
MPC-BE 1.7.0 and Nightly builds | VideoRenderer | ImageSource | ScriptSource | BassAudioSource |
|||
12th December 2018, 04:45 | #1277 | Link |
Helenium(Easter)
Join Date: Aug 2017
Location: Hsinchu, Taiwan
Posts: 99
|
__________________
Monochrome Anomaly |
12th December 2018, 05:04 | #1278 | Link |
Registered User
Join Date: Nov 2009
Location: Northeast Ohio
Posts: 447
|
Unfortunately, many people do not realize that Intel Pentiums do not support AVX at all.
At least going forward there's now an AMD alternative in the form of the Athlon 200GE which does support AVX2 (in addition to having a better iGPU and actual sane prices in lieu of Intel's 14nm shortage), but that processor was only just released a couple months ago.
__________________
____HTPC____ | __Desktop PC__
2.93GHz Xeon x3470 (4c/8t Nehalem) | 4.5GHz 1.24v dual-core Haswell G3258 Radeon HD5870 | Intel iGPU 2x2GB+2x1GB DDR3-1333 | 4x4GB DDR3-1600 |
12th December 2018, 05:48 | #1279 | Link | |
Registered User
Join Date: Jun 2013
Posts: 95
|
Quote:
__________________
https://github.com/MoSal |
|
12th December 2018, 10:55 | #1280 | Link | ||
Registered User
Join Date: Jul 2018
Posts: 80
|
Quote:
Code: Quote:
|
||
|
|