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 > VP9 and AV1

Reply
 
Thread Tools Search this Thread Display Modes
Old 22nd August 2018, 21:02   #841  |  Link
Blue_MiSfit
Derek Prestegard IRL
 
Blue_MiSfit's Avatar
 
Join Date: Nov 2003
Location: Los Angeles
Posts: 5,989
Quote:
Originally Posted by olduser217 View Post
Just curious whether the bit distribution of AV1 is similar as VP9 too, i.e. the non-display inter frames are being allocated with much higher bits (more than 10 times) compared to the displayed inter frames.
This seems like not mentioned in the AV1 specification.
Wouldn't this behavior be a result of encoder implementation, and not have anything to do with the bitstream specs?
Blue_MiSfit is offline   Reply With Quote
Old 22nd August 2018, 22:01   #842  |  Link
benwaggoner
Moderator
 
Join Date: Jan 2006
Location: Portland, OR
Posts: 4,770
Quote:
Originally Posted by Blue_MiSfit View Post
Wouldn't this behavior be a result of encoder implementation, and not have anything to do with the bitstream specs?


Yeah, that would be my assumption as well.

Using WAY more bits on non-visible Intra frames than intra frames seems pathological. Unless there’s some reason why the displayed frame is just one big skip block of the golden frame or something. It would be interesting to look at the per-frame allocation with/without non-display frames on. I’d guess that having only visible intra frames would result in having a lot larger intra frames.

Is there any good data on the efficiency improvements from golden & non-visible intra frames?


Sent from my iPad using Tapatalk
__________________
Ben Waggoner
Principal Video Specialist, Amazon Prime Video

My Compression Book
benwaggoner is offline   Reply With Quote
Old 23rd August 2018, 10:29   #843  |  Link
olduser217
Registered User
 
Join Date: Jun 2015
Posts: 21
Quote:
Originally Posted by Blue_MiSfit View Post
Wouldn't this behavior be a result of encoder implementation, and not have anything to do with the bitstream specs?
Yes, this definitely about the encoder implementation rather than specification/standard.
However, since both Youtube and Neflix VP9 bitstreams show similar bit distribution pattern, just wondering whether the same will happen to AV1.

Last edited by olduser217; 23rd August 2018 at 10:44.
olduser217 is offline   Reply With Quote
Old 23rd August 2018, 11:03   #844  |  Link
olduser217
Registered User
 
Join Date: Jun 2015
Posts: 21
Quote:
Originally Posted by benwaggoner View Post
Yeah, that would be my assumption as well.

Using WAY more bits on non-visible Intra frames than intra frames seems pathological. Unless thereÂ’s some reason why the displayed frame is just one big skip block of the golden frame or something. It would be interesting to look at the per-frame allocation with/without non-display frames on. IÂ’d guess that having only visible intra frames would result in having a lot larger intra frames.

Is there any good data on the efficiency improvements from golden & non-visible intra frames?


Sent from my iPad using Tapatalk
The non-display frames (invisible frames) are actually inter frames. The bit allocated for each of these non-display inter frames are still less than the Key frame (but much higher than other displayed inter frame).

Take the example decoding order of VP9 bitstream below:
I0 NP0 P0 P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11 P12

I0 is the Key frame, NP0 is the non-display inter frame and Pn are the displayed inter frames.

The display order is:
I0 P0 P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11 P12

NP0 is actually encoded using the same input frame to encode P12.
In the sequence above, I0 is always used as the GOLDEN frame, NP0 always the ALTREF frame and the last decoded frame as the LAST FRAME.

This NP0 is actually encoded mainly for backward prediction in bi-directional prediction.

Last edited by olduser217; 23rd August 2018 at 11:44.
olduser217 is offline   Reply With Quote
Old 23rd August 2018, 13:25   #845  |  Link
marcomsousa
Registered User
 
Join Date: Jul 2018
Posts: 80
AV1 will be disable in Chome 69.


Quote:
AV1 is not ready. Disable it on the M69 branch.

https://chromium.googlesource.com/ch...96192818654436
marcomsousa is offline   Reply With Quote
Old 25th August 2018, 13:57   #846  |  Link
v0lt
Registered User
 
Join Date: Dec 2008
Posts: 1,968
Quote:
Originally Posted by olduser217 View Post
NP0 is actually encoded using the same input frame to encode P12.
In the sequence above, I0 is always used as the GOLDEN frame, NP0 always the ALTREF frame and the last decoded frame as the LAST FRAME.

This NP0 is actually encoded mainly for backward prediction in bi-directional prediction.
It's wrong to call the frame. This is additional information for the GOP sequence. It could simply be added to the first frame and you would not have to invent the unseen frames.
v0lt is offline   Reply With Quote
Old 26th August 2018, 17:22   #847  |  Link
IgorC
Registered User
 
Join Date: Apr 2004
Posts: 1,315
rav1e improves quite fast
https://twitter.com/fg118942/status/1033280738869706752

IgorC is offline   Reply With Quote
Old 26th August 2018, 18:48   #848  |  Link
mzso
Registered User
 
Join Date: Oct 2009
Posts: 930
So now it has motion compensation. It's still a fair bit worse than x264, what other basic features might be missing?


I suppose you don't happen to have a graph on speed improvement?

Last edited by mzso; 27th August 2018 at 10:17.
mzso is offline   Reply With Quote
Old 26th August 2018, 21:04   #849  |  Link
Rumbah
Registered User
 
Join Date: Mar 2003
Posts: 480
Quote:
Originally Posted by mzso View Post
It's still a fair worse than x264, what other basic features might be missing?
I think it's still intra only.
Rumbah is offline   Reply With Quote
Old 26th August 2018, 22:28   #850  |  Link
fg118942
Registered User
 
Join Date: Aug 2018
Posts: 10
I use google translation.

I created not only the graph but also uploaded the encoded image to imgur.
https://imgur.com/a/ifs2bn3

Also rav1e is still late, it takes over an hour to convert 1080p 375 frames of movies.
fg118942 is offline   Reply With Quote
Old 26th August 2018, 22:31   #851  |  Link
Tommy Carrot
Registered User
 
Tommy Carrot's Avatar
 
Join Date: Mar 2002
Posts: 863
Quote:
Originally Posted by Rumbah View Post
I think it's still intra only.
Nah, it definitely has inter frames, and some basic motion compensation. It doesnt have deblocking filter, b-frames and many other features yet, and the quality is not very good, but it has improved a lot in the last few days. The encoding speed is getting slower though, in the slower speed settings it's getting close to aomenc level, and they still need to keep adding a lot of new features to the encoder.
Tommy Carrot is offline   Reply With Quote
Old 27th August 2018, 04:14   #852  |  Link
olduser217
Registered User
 
Join Date: Jun 2015
Posts: 21
Quote:
Originally Posted by v0lt View Post
It's wrong to call the frame. This is additional information for the GOP sequence. It could simply be added to the first frame and you would not have to invent the unseen frames.
Hi, what do you mean by "It's wrong to call the frame"?
This is NOT just simply an "additional information for the GOP sequence". The data of the non-display frame is there and the decoder has to spend time to decode that like a normal frame, except it doesn't display it.

And what do you mean by "It could simply be added to the first frame"?
I didn't invent the frame, it was encoded by VP9 encoder of libvpx.
olduser217 is offline   Reply With Quote
Old 27th August 2018, 04:20   #853  |  Link
v0lt
Registered User
 
Join Date: Dec 2008
Posts: 1,968
Quote:
Originally Posted by olduser217 View Post
This is NOT just simply an "additional information for the GOP sequence". The data of the non-display frame is there and the decoder has to spend time to decode that like a normal frame, except it doesn't display it.
This is additional information for the GOP sequence that needs to be decoded. Calling it frames is wrong.
v0lt is offline   Reply With Quote
Old 27th August 2018, 04:31   #854  |  Link
v0lt
Registered User
 
Join Date: Dec 2008
Posts: 1,968
I have a problem with the rav1e encoder. The resulting IVF files play poorly in ffplay and mpv. I can not convert these frames to MKV using ffmpeg or mkvtoolnix.
My IVF AV1 files.
v0lt is offline   Reply With Quote
Old 27th August 2018, 06:47   #855  |  Link
Mosu
MKVToolNix author
 
Mosu's Avatar
 
Join Date: Sep 2002
Location: Braunschweig, Germany
Posts: 4,281
The mapping for AV1 in Matroska hasn't been finalized yet. Therefore you cannot convert IVF to Matroska, and even if you could, the resulting files would be invalid.
__________________
Latest MKVToolNix is v83.0

If I ever ask you to upload something, please use my file server.
Mosu is offline   Reply With Quote
Old 27th August 2018, 07:42   #856  |  Link
LigH
German doom9/Gleitz SuMo
 
LigH's Avatar
 
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 6,781
Quote:
Originally Posted by olduser217 View Post
Hi, what do you mean by "It's wrong to call the frame"?
I believe v0lt dropped an 'm': "It's wrong to call them frame".

And as we are just discussing little details:

Besides WebM and IVF (funny to discover it is based on a legacy container known as "Indeo Video Format"), aomenc also can create "OBU" (Open Bitstream Units); am I right that this format is more similar to the one of raw AVC?
__________________

New German Gleitz board
MediaFire: x264 | x265 | VPx | AOM | Xvid
LigH is offline   Reply With Quote
Old 27th August 2018, 08:02   #857  |  Link
olduser217
Registered User
 
Join Date: Jun 2015
Posts: 21
Quote:
Originally Posted by v0lt View Post
This is additional information for the GOP sequence that needs to be decoded. Calling it frames is wrong.
I do not agree about this.
Even though these frames are not going to be displayed, they definitely need to be decoded as a frame, stored and take up memory space of a frame in the decoded picture buffer as a reference frame for future frame decoding.

Even the requirement of Youtube mentions that the decoding frame rate can be higher than displaying frame rate, which implying that these "additional information" are exact frame(s).

Anyway, there is no point arguing about this, if your implementation can ignore the performance required to encode/decode these "additional information".
olduser217 is offline   Reply With Quote
Old 27th August 2018, 10:02   #858  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,346
Quote:
Originally Posted by LigH View Post
Besides WebM and IVF (funny to discover it is based on a legacy container known as "Indeo Video Format"), aomenc also can create "OBU" (Open Bitstream Units); am I right that this format is more similar to the one of raw AVC?
OBU is the AV1 name for "NALU" (ie. the generic name for every high level element of a bitstream), it does not indicate a specific storage format. You cannot really store AV1 without a container, much like VP9. Thats why IVF exists, an extremely no-frills container serving as a "raw" format, since pure "raw" is not something you should do.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders
nevcairiel is offline   Reply With Quote
Old 27th August 2018, 10:18   #859  |  Link
Mosu
MKVToolNix author
 
Mosu's Avatar
 
Join Date: Sep 2002
Location: Braunschweig, Germany
Posts: 4,281
Quote:
Originally Posted by LigH View Post
Besides WebM and IVF (funny to discover it is based on a legacy container known as "Indeo Video Format"), aomenc also can create…
Just to make this very clear: the WebM aomenc produces is not valid. As I said before, the mapping for AV1 in Matroska & WebM hasn't been finalized yet, and what aomenc produces is definitely not going to be what the specs will say how it should be.
__________________
Latest MKVToolNix is v83.0

If I ever ask you to upload something, please use my file server.
Mosu is offline   Reply With Quote
Old 27th August 2018, 11:26   #860  |  Link
Aleksoid1978
Registered User
 
Aleksoid1978's Avatar
 
Join Date: Apr 2008
Location: Russia, Vladivostok
Posts: 2,787
Hello all. Can somebody build static .lib(for me need only AV1 decoder) x86/x64 version.
I want try add to MPC-BE/ffmpeg library.
__________________
AMD Ryzen 5 3600 /GIGABYTE B450 Gaming X /Patriot 32Gb@3200 /Kingston 500Gb M.2 /RTX 4060 /Samsung U28R550UQI /OLED Philips 55OLED707 /Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215
Aleksoid1978 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 19:26.


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