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 2nd April 2018, 17:39   #581  |  Link
paul97
Registered User
 
Join Date: Mar 2018
Posts: 3
I have a question.
Why AV1 has more relevance than VP9? VP9 is on par with H265, but on youtube doesn't offer signfiicant bitrate improvements, video bitrate is about the same as Mp4.
Because it is better? For 4K videos ? Supported by many companies?
paul97 is offline   Reply With Quote
Old 2nd April 2018, 19:20   #582  |  Link
LigH
German doom9/Gleitz SuMo
 
LigH's Avatar
 
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 5,852
Welcome.

How do you measure "more relevance"?

I suppose as soon as a more efficient format is announced already with a backing by major commercial companies, interest in the predecessor formats naturally subsides.
__________________

New German Gleitz board
MediaFire: x264 | x265 | VPx | AOM | Xvid
LigH is offline   Reply With Quote
Old 3rd April 2018, 00:14   #583  |  Link
TomV
VP Strategy, Beamr
 
Join Date: Jan 2018
Location: Palo Alto, CA
Posts: 49
FFMPEG AV1 encode syntax

Now that FFMPEG officially supports AV1, has anyone gotten FFMPEG to successfully encode an AV1 bitstream? What container are you using for output? FFMPEG rejects .av1, .bin, .webm and .mp4. It seems to run (SLOWLY) if you use .mkv or .ts

FFMPEG -f rawvideo -vcodec rawvideo -pix_fmt yuv420p -s 1920x1080 -r 60 -i Netflix_PierSeaside_1080p.yuv -c:v libaom-av1 -strict -2 Pier.mkv

I can't figure out how to pass parameters. -av1-params doesn't work, nor does any other syntax (-aom-params, etc.) I can guess.

If you've successfully encoded, have you been able to decode your AV1 bitstream back to YUV?

Last edited by TomV; 3rd April 2018 at 01:50.
TomV is offline   Reply With Quote
Old 3rd April 2018, 00:21   #584  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 9,737
Matroska is the only supported container for AV1 in ffmpeg so far. MPEG-TS will just result in an unplayable file, don't do that. AV1 will likely never fit into MPEG-TS, unless someone defines an additional wrapping with special bitstream startcodes to sync to.
Not sure about other containers, are the specs for those even finalized?

For the options, it doesn't work like x264 or the likes, you can't just pass arbitrary option strings to the library to parse.
Currently, the following options are available directly, plus the usual ffmpeg options for bitrate etc:
-cpu-used x
-auto-alt-ref x
-lag-in-frames x
-error-resilience {default|partitions}
-crf x
-static-thresh x
-drop-threshold x
-noise-sensitivity x
__________________
LAV Filters - open source ffmpeg based media splitter and decoders

Last edited by nevcairiel; 3rd April 2018 at 00:30.
nevcairiel is offline   Reply With Quote
Old 3rd April 2018, 01:54   #585  |  Link
TomV
VP Strategy, Beamr
 
Join Date: Jan 2018
Location: Palo Alto, CA
Posts: 49
Quote:
Originally Posted by nevcairiel View Post
Matroska is the only supported container for AV1 in ffmpeg so far. MPEG-TS will just result in an unplayable file, don't do that. AV1 will likely never fit into MPEG-TS, unless someone defines an additional wrapping with special bitstream startcodes to sync to.
Not sure about other containers, are the specs for those even finalized?

For the options, it doesn't work like x264 or the likes, you can't just pass arbitrary option strings to the library to parse.
Currently, the following options are available directly, plus the usual ffmpeg options for bitrate etc:
-cpu-used x
-auto-alt-ref x
-lag-in-frames x
-error-resilience {default|partitions}
-crf x
-static-thresh x
-drop-threshold x
-noise-sensitivity x
Thanks.

It would make sense for FFMPEG to be able pass AV1 specific encoder parameters to libaom just like you can with -x264-params or -x265-params.
TomV is offline   Reply With Quote
Old 3rd April 2018, 08:35   #586  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 9,737
Quote:
Originally Posted by TomV View Post
It would make sense for FFMPEG to be able pass AV1 specific encoder parameters to libaom just like you can with -x264-params or -x265-params.
libaom would need to have an API to parse string parameters like that, I do not know if that is the case.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders
nevcairiel is offline   Reply With Quote
Old 3rd April 2018, 21:15   #587  |  Link
benwaggoner
Moderator
 
Join Date: Jan 2006
Location: Portland, OR
Posts: 2,878
Quote:
Originally Posted by paul97 View Post
I have a question.
Why AV1 has more relevance than VP9? VP9 is on par with H265, but on youtube doesn't offer signfiicant bitrate improvements, video bitrate is about the same as Mp4.
Because it is better? For 4K videos ? Supported by many companies?
Practical HEVC encoders substantially outperform any VP9 encoder for pretty much any scenario I can think of. AV1 is a substantial upgrade versus VP9.
__________________
Ben Waggoner
Principal Video Specialist, Amazon Prime Video

My Compression Book
benwaggoner is offline   Reply With Quote
Old 4th April 2018, 01:25   #588  |  Link
Blue_MiSfit
Derek Prestegard IRL
 
Blue_MiSfit's Avatar
 
Join Date: Nov 2003
Location: Los Angeles
Posts: 5,508
^^ Exactly
Blue_MiSfit is offline   Reply With Quote
Old 4th April 2018, 14:23   #589  |  Link
hajj_3
Registered User
 
Join Date: Mar 2004
Posts: 893
Quote:
Originally Posted by benwaggoner View Post
Practical HEVC encoders substantially outperform any VP9 encoder for pretty much any scenario I can think of. AV1 is a substantial upgrade versus VP9.
The EVE vp9 encoder claims to have better compression and offer faster encode times than x265.
hajj_3 is offline   Reply With Quote
Old 4th April 2018, 14:56   #590  |  Link
LigH
German doom9/Gleitz SuMo
 
LigH's Avatar
 
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 5,852
AOM v0.1.0-9043-g6f49b5a21 (I noticed several CLI changes)
__________________

New German Gleitz board
MediaFire: x264 | x265 | VPx | AOM | Xvid
LigH is offline   Reply With Quote
Old 5th April 2018, 07:11   #591  |  Link
wiak
Registered User
 
Join Date: Jul 2003
Location: somewhere north
Posts: 260
Quote:
Originally Posted by nevcairiel View Post
Matroska is the only supported container for AV1 in ffmpeg so far. MPEG-TS will just result in an unplayable file, don't do that. AV1 will likely never fit into MPEG-TS, unless someone defines an additional wrapping with special bitstream startcodes to sync to.
Not sure about other containers, are the specs for those even finalized?

For the options, it doesn't work like x264 or the likes, you can't just pass arbitrary option strings to the library to parse.
Currently, the following options are available directly, plus the usual ffmpeg options for bitrate etc:
-cpu-used x
-auto-alt-ref x
-lag-in-frames x
-error-resilience {default|partitions}
-crf x
-static-thresh x
-drop-threshold x
-noise-sensitivity x
the official container for av1 is webm i believe and it support ivf too per aomenc output

webm 1 (vp8/vorbis)
webm 2 (vp9/opus)
webm 3 (av1/opus)

when all browsers and players get support hehe you should be able to just play it fine

and the current av1 encoder is so slow that even vp9 with row-mt=1 runs circles around it
__________________
Woah! Ninja?! http://nwgat.ninja/ (AV1 Overview)
"Not available in your region" has now been redefined as "Go Pirate, you filthy scum" Nwgat

Last edited by wiak; 5th April 2018 at 07:17.
wiak is offline   Reply With Quote
Old 5th April 2018, 07:40   #592  |  Link
Mosu
MKVToolNix author
 
Mosu's Avatar
 
Join Date: Sep 2002
Location: Braunschweig, Germany
Posts: 3,766
The storage format for AV1-in-Matroska is the same as the one for AV1-in-WebM, it's even the same for AV1-in-IVF. No CodecPrivate, each Block starts with a TD OBU and contains all following OBUs up to but excluding the following TD OBU. Dead simple.

And yes, they're still changing the bitstream. Just yesterday an additional bit ("still_picture") was added to the sequence header OBU, and five days ago the profile indicator was changed from two to three bits. Luckily reading AV1 from IVF or WebM doesn't require parsing the sequence header OBU (and therefore mkvmerge already supports those two source containers for AV1), but it is required for reading raw OBU streams. I do have the code for that already, but I won't include it as long as the bitstream is in that much flux.
__________________
Latest MKVToolNix is v35.0.0

If I ever ask you to upload something, please use my file server.

Last edited by Mosu; 5th April 2018 at 07:42.
Mosu is offline   Reply With Quote
Old 5th April 2018, 08:10   #593  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 9,737
I talked with a few people involved in AV1 the other day and they said that AV1 in WebM/MKV is not actually finally specified yet. For example, AV1 in ISOMBFF (MP4) is still under discussion, among other things about the bitstream format allowed in the container, since AV1 has two of those (Annex B and "normal"), and if both would be allowed you would need CodecPrivate to tell the difference. For consistencies sake, I would hope that WebM/MKV would follow the same logic that MP4 takes, so we don't have to deal with yet another difference.

I definitely didn't find a AV1-in-WebM/MKV spec written down anywhere, for that matter.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders

Last edited by nevcairiel; 5th April 2018 at 08:14.
nevcairiel is offline   Reply With Quote
Old 5th April 2018, 08:21   #594  |  Link
Mosu
MKVToolNix author
 
Mosu's Avatar
 
Join Date: Sep 2002
Location: Braunschweig, Germany
Posts: 3,766
I've read both the current AV1-in-MP4 spec draft as well as Annex B storage method. What I don't quite get is why there's the Annex B format when the OBUs themselves already contain a length field, albeit an optional one (the "obu_size" syntax element with "obu_has_size_field" set to 1). Wouldn't it have sufficed to make that mandatory in certain situations?

I definitely agree that storage-in-WebM/Matroska and storage-in-MP4 should work the same way as much as possible.
__________________
Latest MKVToolNix is v35.0.0

If I ever ask you to upload something, please use my file server.
Mosu is offline   Reply With Quote
Old 5th April 2018, 08:50   #595  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 9,737
Yeah I don't understand that part either. One reasoning I have stumbled upon seems to be that RTP transport tries to optimize transmission for every single byte, so they don't have the size field in the OBU, and instead of wanting to re-write the OBU header to add it on the RTP depacketizers side, they prefer to just add the Annex B size headers.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders
nevcairiel is offline   Reply With Quote
Old 5th April 2018, 10:36   #596  |  Link
mzso
Registered User
 
Join Date: Oct 2009
Posts: 838
Quote:
Originally Posted by Quikee View Post
There is "rav1e" - rust AV1 encoder from Mozilla/Xiph guys: https://github.com/xiph/rav1e
Interesting. Is this completely written from scratch?
mzso is offline   Reply With Quote
Old 5th April 2018, 10:40   #597  |  Link
mzso
Registered User
 
Join Date: Oct 2009
Posts: 838
Quote:
Originally Posted by hajj_3 View Post
I don't know about you guys, but the large notice and the watermark gives me a suspicious draft vibe.
mzso is offline   Reply With Quote
Old 5th April 2018, 10:44   #598  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 9,737
The spec is indeed not finished yet, people all fell victim to a PR marketing push for the upcoming tradeshow. But presumably its on a deadline to actually get finished soon.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders
nevcairiel is offline   Reply With Quote
Old 5th April 2018, 11:07   #599  |  Link
bstrobl
Registered User
 
Join Date: Jun 2016
Posts: 55
Quote:
Originally Posted by nevcairiel View Post
The spec is indeed not finished yet, people all fell victim to a PR marketing push for the upcoming tradeshow. But presumably its on a deadline to actually get finished soon.
It is probable that HW manufacturers wanted something to work with as well, since most of the large tools need to be implemented at one point or another in silicon which takes time. A couple minor issues in the bitstream can be fixed later before tape-out.
bstrobl is offline   Reply With Quote
Old 5th April 2018, 11:10   #600  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 9,737
Quote:
Originally Posted by bstrobl View Post
It is probable that HW manufacturers wanted something to work with as well, since most of the large tools need to be implemented at one point or another in silicon which takes time. A couple minor issues in the bitstream can be fixed later before tape-out.
You don't need to post a big PR thing that its finished (when its not) for the HW people to start working on it. The big HW companies are involved in the development of the codec anyway. Its pure marketing.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders
nevcairiel 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 00:44.


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