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 December 2020, 17:29   #341  |  Link
quietvoid
Registered User
 
Join Date: Jan 2019
Location: Canada
Posts: 574
Okay, so it's back to having to specify the whole GOP structure. I can reproduce the same error when removing all the Frame lines.
In config files, it refers to this: https://vcgit.hhi.fraunhofer.de/jvet...vtm.cfg#L20-51

I don't know if they can be specified by command line
quietvoid is offline   Reply With Quote
Old 9th December 2020, 22:25   #342  |  Link
Jamaika
Registered User
 
Join Date: Jul 2015
Posts: 705
Quote:
Originally Posted by FranceBB View Post
Output:

Error: found fewer Reference Picture Sets than GOPSize
Error: Invalid GOP structure given
You aren't using correct codec. This one is experimental and for setting only GOP = 16 or 32 in config.
You should use the vvenc and vvdec with multithread versions.
Quote:
Originally Posted by FranceBB View Post
however I specified the correct GOP with a size of 4 and I set the --IntraPeriod to -1 which means automatic, so it should be ok.
I also took care of the CTU size and made sure that all the Slices were the same (so at least equal or less than it) and I set --Log2MaxTbSize to be less than 6, as suggested.
Still, it's complaining again. Why?
Besides, I think it should really allow default settings to go through rather than throwing errors all the time.
I mean, if someone doesn't specify anything, it throws an error 'cause it wants things to be specified.
If someone specifies them wrong, it doesn't clearly work, however there's very little documentation (at least, that's what I've found).
It's a bit of a pain to work with it, honestly....
These were the settings for screenshot at GOP = 1. Then you can skip config.

Last edited by Jamaika; 9th December 2020 at 22:29.
Jamaika is offline   Reply With Quote
Old 11th December 2020, 10:16   #343  |  Link
FranceBB
Broadcast Encoder
 
FranceBB's Avatar
 
Join Date: Nov 2013
Location: Royal Borough of Kensington & Chelsea, UK
Posts: 2,904
Quote:
Originally Posted by Jamaika View Post
You aren't using correct codec. This one is experimental and for setting only GOP = 16 or 32 in config.
You should use the vvenc and vvdec with multithread versions.

These were the settings for screenshot at GOP = 1. Then you can skip config.
Where can I find the stable multithreaded one, then?
FranceBB is offline   Reply With Quote
Old 11th December 2020, 10:27   #344  |  Link
Jamaika
Registered User
 
Join Date: Jul 2015
Posts: 705
https://github.com/fraunhoferhhi/vvdec
https://github.com/fraunhoferhhi/vvenc
plus my fix
I have added codecs and compilation issues in my threads
Jamaika is offline   Reply With Quote
Old 11th December 2020, 22:52   #345  |  Link
FranceBB
Broadcast Encoder
 
FranceBB's Avatar
 
Join Date: Nov 2013
Location: Royal Borough of Kensington & Chelsea, UK
Posts: 2,904
Quote:
Originally Posted by Jamaika View Post
https://github.com/fraunhoferhhi/vvdec
https://github.com/fraunhoferhhi/vvenc
plus my fix
I have added codecs and compilation issues in my threads
Thanks!
Last question: from what I see it's still uncompressed .yuv input file only, so I assume a -f yuv4mpegpipe - | from FFMpeg wouldn't work, right?
FranceBB is offline   Reply With Quote
Old 12th December 2020, 12:56   #346  |  Link
hajj_3
Registered User
 
Join Date: Mar 2004
Posts: 1,125
Does anyone know whether an open source optimised VVC software decoder is being made by anyone?
hajj_3 is online now   Reply With Quote
Old 13th December 2020, 09:37   #347  |  Link
birdie
Artem S. Tashkinov
 
birdie's Avatar
 
Join Date: Dec 2006
Posts: 345
Quote:
Originally Posted by hajj_3 View Post
Does anyone know whether an open source optimised VVC software decoder is being made by anyone?
I'm quite sure many companies are already developing coders and decoders behind closed doors but in terms of open source support/solutions it's been dead quiet except for an encoder from Multicoreware which was announced several months ago.

Sharp meanwhile has announced a real time decoder for up to 8K VVC streams: https://global.sharp/corporate/news/201204-a.html I've tried to dig deeper but it looks like the corporation is averse to open source ;-)
birdie is offline   Reply With Quote
Old 13th December 2020, 10:37   #348  |  Link
birdie
Artem S. Tashkinov
 
birdie's Avatar
 
Join Date: Dec 2006
Posts: 345
Speaking of the reference encoder, vvcenc, it's already quite fast without tons of hand-written optimizations/assembly: https://www.streamingmedia.com/Artic...ow-144235.aspx

Looks like when it gets properly optimized it'll be a lot faster than aomenc (though now the reference AV1 encoder is SVT-AV1 which I haven't yet accepted as its quality is quite poor IMO).
birdie is offline   Reply With Quote
Old 14th December 2020, 21:51   #349  |  Link
Marsu42
Huba Huba
 
Marsu42's Avatar
 
Join Date: Aug 2005
Location: Palumbian Jungle
Posts: 78
Quote:
Originally Posted by birdie View Post
Looks like when it gets properly optimized it'll be a lot faster than aomenc
That shouldn't be a surprise, should it?

Afafik av1 ist a "simply try everything" encoder, because patented mpeg fast prediction tools aren't included.

So even if vvc has added complexity vs hevc vs avc, it should be still more tuned for fast encoding - while av1 is designed to avoid patents and tuned for either "quality doesn't matter" video calls or "cost doesn't matter' encoding by streaming providers.
__________________
"The innocent have nothing to fear" :stupid:
Marsu42 is offline   Reply With Quote
Old 17th December 2020, 04:48   #350  |  Link
foxyshadis
Angel of Night
 
foxyshadis's Avatar
 
Join Date: Nov 2004
Location: Tangled in the silks
Posts: 9,559
Quote:
Originally Posted by Marsu42 View Post
That shouldn't be a surprise, should it?

Afafik av1 ist a "simply try everything" encoder, because patented mpeg fast prediction tools aren't included.

So even if vvc has added complexity vs hevc vs avc, it should be still more tuned for fast encoding - while av1 is designed to avoid patents and tuned for either "quality doesn't matter" video calls or "cost doesn't matter' encoding by streaming providers.
I think it's more that AV1 followed a similar trajectory as the messy H.264/AVC spec process, with lots of freewheeling tools and an unmaintainable, unoptimizable codebase. JM was a joke for many years, but with a surprising amount of work it got much better despite not having a market; eventually the HM (H.265/HEVC) used its base to graft new tools on instead of starting from scratch, and H.266/VVC is doing the same with an even more mature and optimized base. What that also means is that you aren't going to see the kinds of staggering differences between JM and an x264 anymore.

AV1 threw out lots of baby with the bathwater in trying for a total do-over of codec development, instead of just building off of VP9, because it ended up so different. (Not the VP9 was any peach.) Other AV1 implementations have tons of freedom to do much better, which is both better and unfortunate. A future AV2 will have the benefit of whatever portion of aom's code and optimizations are reusable. It's not like AV1 finalized pie in the sky proposals, though; just like every MPEG process, there was a painful period of cutting them down to what met a size and performance budget, and that's a huge part of why the final spec was so delayed.

But also, AV1 didn't benefit from the large number of experienced chip designers who weigh in on all MPEG proposals regarding baking it into transistor budgets. C'est la vie.
foxyshadis is offline   Reply With Quote
Old 17th December 2020, 13:12   #351  |  Link
hajj_3
Registered User
 
Join Date: Mar 2004
Posts: 1,125
Quote:
Originally Posted by foxyshadis View Post
AV1 threw out lots of baby with the bathwater in trying for a total do-over of codec development, instead of just building off of VP9, because it ended up so different. (Not the VP9 was any peach.) Other AV1 implementations have tons of freedom to do much better, which is both better and unfortunate. A future AV2 will have the benefit of whatever portion of aom's code and optimizations are reusable.
Some of the nice things about a future AV2 codec are:

1. lots of patents will have expired.
2. sisvel published a list of patents they claim that av1 violates therefore av2 can be developed to make sure that those aren't violated.
3. unifiedpatents.com have been successfully invalidating some av1 and hevc patents which means that some of those patents will be able to be used.

I do hope that AV2 isn't ratified within 5yrs of AV1 though, otherwise it might make a difficult for AV1 to become popular.

Last edited by hajj_3; 20th December 2020 at 01:24.
hajj_3 is online now   Reply With Quote
Old 6th January 2021, 22:07   #352  |  Link
Jamaika
Registered User
 
Join Date: Jul 2015
Posts: 705
Untested info
No video player can show this. Full compatibility can be expected in a year's time!

mp4box.exe -new -info -add import.vvc output.mp4

Codec VVC in conteiner mp4.

Track Importing HEVC - Width 1280 Height 720 FPS 25000/1000 SAR 0/0
VVC Import results: 55 samples (144 NALUs) - 55 SEI - 3 IDR
VVC Stream uses forward prediction - stream CTS offset: 55 frames
VVC Max NALU size is 63768 - stream could be optimized by setting nal_length=2

# Movie Info - 1 track - TimeScale 600
Duration 00:00:00.000 (recomputed 00:00:04.240)
Fragmented: no
Major Brand iso4 - version 1 - compatible brands: iso4
Created: GMT Wed Jan 6 21:02:22 2021


# Track 1 Info - ID 1 - TimeScale 25000
Media Duration 00:00:00.000 (recomputed 00:00:02.200)
Track has 1 edit lists: track duration is 00:00:04.240
Media Info: Language "Undetermined (und)" - Type "vide:vvc1" - 55 samples
Visual Sample Entry Info: width=1280 height=720 (depth=24 bits)
Visual Track layout: x=0 y=0 width=1280 height=720
VVC Video - Visual Size 1280 x 720
VVC Info: Profile 1 @ Level 64 - Chroma Format YUV 4:2:0

NAL Unit length bits: 32
Parameter Sets: 1 SPS 1 PPS
Bit Depth 8 - 5 temporal layers
SPS#1 hash: CD7EE785B89AF3327C233B50CA28C755D751EAFA
PPS#1 hash: FF54700DA8418365C4BB4330DEE1EF986AA37AAC

RFC6381 Codec Parameters: vvc1.1.L64
Average GOP length: 27 samples
Max sample duration: 0 / 25000

0.500 secs Interleaving
Jamaika is offline   Reply With Quote
Old 7th January 2021, 12:30   #353  |  Link
FranceBB
Broadcast Encoder
 
FranceBB's Avatar
 
Join Date: Nov 2013
Location: Royal Borough of Kensington & Chelsea, UK
Posts: 2,904
Sweet, so it's possible to mux in mp4 as well and not just mkv. Good.
Apart from the container, is there any player at all (beside the DecoderApp.exe) that can play VVC files?
And last but not least: any news from Multicoreware about x266?
FranceBB is offline   Reply With Quote
Old 7th January 2021, 15:17   #354  |  Link
quietvoid
Registered User
 
Join Date: Jan 2019
Location: Canada
Posts: 574
There seems to be a x266 repo on MCW's Bitbucket since October or something, but it's still private.
quietvoid is offline   Reply With Quote
Old 8th January 2021, 13:11   #355  |  Link
FranceBB
Broadcast Encoder
 
FranceBB's Avatar
 
Join Date: Nov 2013
Location: Royal Borough of Kensington & Chelsea, UK
Posts: 2,904
Quote:
Originally Posted by quietvoid View Post
There seems to be a x266 repo on MCW's Bitbucket since October or something, but it's still private.
I see! So they're waiting to get things going before opening to open source. Well, it kinda makes sense, I think...
FranceBB is offline   Reply With Quote
Old 9th January 2021, 10:35   #356  |  Link
birdie
Artem S. Tashkinov
 
birdie's Avatar
 
Join Date: Dec 2006
Posts: 345
ffmpeg hasn't even begun adding support for VVC. That looks weird, the codec uptake seems to be extremely slow.
birdie is offline   Reply With Quote
Old 9th January 2021, 11:18   #357  |  Link
Jamaika
Registered User
 
Join Date: Jul 2015
Posts: 705
What is this talking about?
GPAC did what it could. I exerted pressure. There aren't resources for modifying new codecs in GPAC jpeg2000, avif, heif.
I remind you that in jpeg.org propaganda heif photos can contain and convert to HTJPEG2000. It is fantasy right now. There are no funds or there are paid programs somewhere.
https://jpeg.org/jpeg2000/index.html
JPEGXS will not come out free this year. It was supposed to be the successor to jpeg2000.
https://www.iis.fraunhofer.de/en/ff/...on/jpegxs.html
https://www.intopix.com/ffmpeg
Google codecs are for google and the rest don't count. The rest as competition will not support google.
The mpeg5 container had new features mainly anti-piracy in the network under vvc, evc codecs. The strange thing is we have mp4 and matroska from vvc. SONY is sure to be happy as he fought with matroska.
https://github.com/MPEGGroup/isobmff
The creators of m-ad-s laughed at me with the answer. Write better, create your own library, but they advertise google codec aom.
https://github.com/m-ab-s/media-auto...commits/master

Last edited by Jamaika; 9th January 2021 at 11:25.
Jamaika is offline   Reply With Quote
Old 9th January 2021, 11:28   #358  |  Link
Jamaika
Registered User
 
Join Date: Jul 2015
Posts: 705
x266 Open-Source Encoder for VVC by MulticoreWare
https://ottverse.com/x266-vvc-multic...ource-encoder/
If you have any questions for the MulticoreWare team, please get in touch with Shivakumar Narayanan at x266@multicorewareinc.com.

Last edited by Jamaika; 9th January 2021 at 11:35.
Jamaika is offline   Reply With Quote
Old 9th January 2021, 11:33   #359  |  Link
Jamaika
Registered User
 
Join Date: Jul 2015
Posts: 705
Untested
Code:
Main Features
Spliting video by scenes for parallel encoding because AV1 encoders are currently not good at multithreading, encoding is limited to single or couple of threads at the same time.

PySceneDetect used for spliting video by scenes and running multiple encoders.
Fastest way to encode AV1 without losing quality, as fast as many CPU cores you have :).
Target Quality mode. Targeting end result reference visual quality. VMAF used as substructure
Resuming encoding without loss of encoded progress.
Simple and clean console look.
Automatic detection of the number of workers the host can handle.
Building encoding queue with bigger files first, minimizing waiting for the last scene to encode.
Both video and audio transcoding with FFmpeg.
Logging of progress of all encoders.
Install
Prerequisites:

Install Python3
When installing under Windows, select the option add Python to PATH in the installer
Install FFmpeg
Recommended to install vapoursynth with lsmash for faster and better processing
Encoder of choice:

Install AOMENC
Install rav1e
Install SVT-AV1
Install SVT-VP9
Install vpx VP9, VP8 encoding
Install VTM VVC encoding test model
Optional :

Vapoursynth
ffms2
lsmash
mkvmerge
If someone compiles, let him praise it.
https://github.com/master-of-zen/Av1an
Jamaika is offline   Reply With Quote
Old 9th January 2021, 13:40   #360  |  Link
FranceBB
Broadcast Encoder
 
FranceBB's Avatar
 
Join Date: Nov 2013
Location: Royal Borough of Kensington & Chelsea, UK
Posts: 2,904
Quote:
Originally Posted by Jamaika View Post
x266 Open-Source Encoder for VVC by MulticoreWare
https://ottverse.com/x266-vvc-multic...ource-encoder/
Well, it really just says:

Quote:
For the larger open source community, it will be made available when we have reached critical mass required for its first release. As we near readiness, we will update here on how you can get hold of it.
so, again, they're working on it, but we can't see it yet, so all we have is the encoder_app.exe reference encoder
FranceBB 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 12:12.


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