fraunhoferhhi/vvenc

Bad quality when use VVC

phanluchoafptpoly opened this issue · 13 comments

Hello,

I have try to use this codec for encode my video for give the optimize file size and quality but when I use this I see that the quality after it encoded is so bad, so blur, I have use the FFmpeg that have VVC for encode it and it same. I have try using FastFlix for change the default ffmpeg to ffmpeg that have this codec for easier to use and not use any command to it. This is the settings that I use for encode (i have try to change preset to slower for hope getting high quality but it the same, so blur).

image

Thanks!

Can you show some actual issues?

Best would be providing the raw video and the exact VVenC cmd line. And even better a command line for some other encoder that works better.

Sure,

Here is the video that I use for encoding (otherwise, i use FastFlix for doing mp4 input) so I will send you my mp4 video file and command that use for encode show on FastFlix:

VIdeo link: https://drive.google.com/file/d/1LVPaV0GmcL2d5b_v4SJ0v1h2GixYIoqY/view?usp=sharing

FFMPEG path (I change it from FastFlix for apply VVC):
image

image

Command that I use: "D:\ffmpeg.exe" -y -i "D:\1.mp4" -max_muxing_queue_size 1024 -filter_complex "[0:0]crop=3840:1812:0:174[v]" -map "[v]" -c:v libvvenc -pix_fmt yuv420p10le -tier:v high -levelidc 5.1 -qp:v 20 -preset:v slower -metadata:s:v rotate=0 -map_metadata 0 -map_chapters -1 -map 0:1 -metadata:s:1 title="" -metadata:s:1 handler="" -metadata:s:1 language=eng -c:1 eac3 -b:1 128k -disposition:1 default -default_mode infer_no_subs "D:\1\1-fastflix-a26d.mkv" (This is the command shows on FastFlix)

image

image

image

image

P/s: You can download FastFlix on here: https://github.com/cdgriffith/FastFlix/releases | I use FastFlix because of it can change ffmpeg with any we want and so I can easier to using without using command line - with others I can't such as Handbrake,....

Thanks!

@adamjw24 Do you have any idea ?

vp9, av1, h264 and h265 is ok for me but when i try to use this new codec i have that issue

Have patience. It will take come time

It seems to be a bug in the VVenC ffmpeg integration, as constant QP mode is not working properly.
The translated ffmpeg command line will still use VBR mode with 200kbit/s.
This happens as 200kbit/s is the default video bitrate and as long as the video bitrate is not set to 0, the VBR mode is used.

You can force the fix QP mode by setting bitrate=0
in the Advanced section under Additional vvc params

To verify the settings you also can increase the vvenc verbosity: verbosity=details:bitrate=0 to log what parameters are set in VVenC.

It seems to be a bug in the VVenC ffmpeg integration, as constant QP mode is not working properly. The translated ffmpeg command line will still use VBR mode with 200kbit/s. This happens as 200kbit/s is the default video bitrate and as long as the video bitrate is not set to 0, the VBR mode is used.

You can force the fix QP mode by setting bitrate=0 in the Advanced section under Additional vvc params

To verify the settings you also can increase the vvenc verbosity: verbosity=details:bitrate=0 to log what parameters are set in VVenC.

How about with 2 pass bitrate ?

image

When I use, i dont see any value on log file in pass 1

It seems to be a bug in the VVenC ffmpeg integration, as constant QP mode is not working properly. The translated ffmpeg command line will still use VBR mode with 200kbit/s. This happens as 200kbit/s is the default video bitrate and as long as the video bitrate is not set to 0, the VBR mode is used.

You can force the fix QP mode by setting bitrate=0 in the Advanced section under Additional vvc params

To verify the settings you also can increase the vvenc verbosity: verbosity=details:bitrate=0 to log what parameters are set in VVenC.

The quality is better after add those params, thanks!

I assume the issue is resolved? Closing

It seems to be a bug in the VVenC ffmpeg integration, as constant QP mode is not working properly. The translated ffmpeg command line will still use VBR mode with 200kbit/s. This happens as 200kbit/s is the default video bitrate and as long as the video bitrate is not set to 0, the VBR mode is used.
You can force the fix QP mode by setting bitrate=0 in the Advanced section under Additional vvc params
To verify the settings you also can increase the vvenc verbosity: verbosity=details:bitrate=0 to log what parameters are set in VVenC.

How about with 2 pass bitrate ?

image

When I use, i dont see any value on log file in pass 1

That´s an issue as well.
The application uses -passlogfile to define the log file for rate controll, but the used patches don´t recognize this parameter as it only reads the logfile name from the -vvenc-params section, e.g. '--vvenc-params "pass=1:rcstatsfile=file.json".
As the option no-slow-firstpass=1 is a x265 parameter and not existing in vvenc, I guess the command line is just copied from the x265 syntax.
The first pass log file is written into the file vvenc-rcstats.json per default.

Oh, sorry for too eager closing. Let me know when all questions are resolved

Oh, sorry for too eager closing. Let me know when all questions are resolved

It fixed, thanks for support