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. |
![]() |
#821 | Link | |
Artem S. Tashkinov
Join Date: Dec 2006
Posts: 312
|
Quote:
It's quite possible FFmpeg 6.1 will support VVC decoding. 6.2 surely will. Sadly we have next to zero consumer devices supporting HW VVC decoding aside from two TV set models, that's it. Software VVC decoding is quite taxing though vvdec is not yet fully optimized, hopefully FFMpeg will be. |
|
![]() |
![]() |
![]() |
#822 | Link | |
Broadcast Encoder
Join Date: Nov 2013
Location: Royal Borough of Kensington & Chelsea, UK
Posts: 2,725
|
Quote:
![]() Hopefully by the end of the years the x266 guys will be ready too with a public release and everything will come together. So... if everything goes well, in 2024 we might finally begin to see the adoption of H.266, which is a good thing 'cause as soon as people are gonna start putting contents out there, manufacturers will jump in, I'm sure. ![]() |
|
![]() |
![]() |
![]() |
#823 | Link |
Artem S. Tashkinov
Join Date: Dec 2006
Posts: 312
|
Oh, I've just found a huge number of VVC test/sample files in case someone is interested.
|
![]() |
![]() |
![]() |
#824 | Link | |
Registered User
Join Date: Aug 2018
Location: Germany
Posts: 102
|
Quote:
I'm pretty sure, if we have VVC software support, hardware support will follow. There is already the MediaTek Pentonic series and the Realtek RTD1319D that supports VVC. |
|
![]() |
![]() |
![]() |
#825 | Link | ||
Moderator
![]() Join Date: Jan 2006
Location: Portland, OR
Posts: 4,652
|
Quote:
Quote:
|
||
![]() |
![]() |
![]() |
#826 | Link | |
Broadcast Encoder
Join Date: Nov 2013
Location: Royal Borough of Kensington & Chelsea, UK
Posts: 2,725
|
Quote:
I mean, nowadays pretty much everything relies on it (not necessarily on FFMpeg itself, but rather on libavcodec), so if it truly is an internal decoder and not an external one (like VVDec), then I would expect it to be in libav and therefore everything using libav will "automagically" gain support. ![]() pretty much xD |
|
![]() |
![]() |
![]() |
#827 | Link |
Registered User
Join Date: Jul 2023
Posts: 6
|
Hi. I don't know I should ask my question here or not. However, How do I go about extracting motion vectors from vtm software for VVC and have the value of each motion vector?
For example for GOP: I P P P ... or I P B B B P |
![]() |
![]() |
![]() |
#828 | Link |
Registered User
Join Date: Jul 2015
Posts: 681
|
Hi. In libbpg for jvetvvc 19.2 GOP : I P P P ... use:
Code:
if (s->params.intra_only) { add_opt(&argc, argv, "--BitstreamFile=image.vvc"); add_opt(&argc, argv, "--GOPSize=1"); add_opt(&argc, argv, "--DecodingRefreshType=1"); add_opt(&argc, argv, "--IntraPeriod=1"); add_opt(&argc, argv, "--OnePictureOnlyConstraintFlag=1"); add_opt(&argc, argv, "--GciPresentFlag=1"); add_opt(&argc, argv, "--Level=15.5"); add_opt(&argc, argv, "--Tier=high"); add_opt(&argc, argv, "--SearchRange=64"); add_opt(&argc, argv, "--CIIP=0"); add_opt(&argc, argv, "--AffineAmvr=0"); add_opt(&argc, argv, "--LMCSUpdateCtrl=1"); add_opt(&argc, argv, "--LMCSOffset=0"); add_opt(&argc, argv, "--ISPFast=1"); add_opt(&argc, argv, "--FastMIP=1"); add_opt(&argc, argv, "--FastLFNST=1"); add_opt(&argc, argv, "--FastLocalDualTreeMode=0"); add_opt(&argc, argv, "--AffineAmvrEncOpt=0"); add_opt(&argc, argv, "--MmvdDisNum=8"); add_opt(&argc, argv, "--TemporalSubsampleRatio=8"); } else { add_opt(&argc, argv, "--BitstreamFile=animation.vvc"); add_opt(&argc, argv, "--GOPSize=1"); add_opt(&argc, argv, "--DecodingRefreshType=2"); add_opt(&argc, argv, "--IntraPeriod=-1"); add_opt(&argc, argv, "--FastSearch=1"); add_opt(&argc, argv, "--SearchRange=96"); add_opt(&argc, argv, "--BipredSearchRange=4"); add_opt(&argc, argv, "--IntraQPOffset=-1"); add_opt(&argc, argv, "--LambdaFromQpEnable=1"); add_opt(&argc, argv, "--CIIP=1"); add_opt(&argc, argv, "--AffineAmvr=0"); add_opt(&argc, argv, "--LMCSUpdateCtrl=2"); add_opt(&argc, argv, "--LMCSOffset=1"); add_opt(&argc, argv, "--AllowDisFracMMVD=1"); add_opt(&argc, argv, "--ISPFast=0"); add_opt(&argc, argv, "--FastMIP=0"); add_opt(&argc, argv, "--FastLocalDualTreeMode=2"); add_opt(&argc, argv, "--MaxMergeRdCandNumTotal=5"); add_opt(&argc, argv, "--AffineAmvrEncOpt=0"); add_opt(&argc, argv, "--MmvdDisNum=6"); add_opt(&argc, argv, "--ALFAllowPredefinedFilters=1"); add_opt(&argc, argv, "--ALFStrengthTargetLuma=1.0"); add_opt(&argc, argv, "--ALFStrengthTargetChroma=1.0"); add_opt(&argc, argv, "--CCALFStrengthTarget=1.0"); add_opt(&argc, argv, "--EncDbOpt=1"); for(i = 0; i < s->frame_count - 1; i++) { snprintf(buf, sizeof(buf), "--Frame%d=P 1 4 -6.5 0.2590 0 0 1.0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0", i + 1); add_opt(&argc, argv, buf); } add_opt(&argc, argv, "--DeblockingFilterOffsetInPPS"); add_opt(&argc, argv, "--DeblockingFilterOffsetInPPS=1"); add_opt(&argc, argv, "--DeblockingFilterDisable=0"); add_opt(&argc, argv, "--DeblockingFilterBetaOffset_div2=-2"); add_opt(&argc, argv, "--DeblockingFilterTcOffset_div2=0"); add_opt(&argc, argv, "--DeblockingFilterCbBetaOffset_div2=-2"); add_opt(&argc, argv, "--DeblockingFilterCbTcOffset_div2=0"); add_opt(&argc, argv, "--DeblockingFilterCrBetaOffset_div2=-2"); add_opt(&argc, argv, "--DeblockingFilterCrTcOffset_div2=0"); add_opt(&argc, argv, "--TemporalFilter=0"); add_opt(&argc, argv, "--RateControl=0"); add_opt(&argc, argv, "--TargetBitrate=1000000"); add_opt(&argc, argv, "--KeepHierarchicalBit=2"); add_opt(&argc, argv, "--LCULevelRateControl=1"); add_opt(&argc, argv, "--RCLCUSeparateModel=1"); add_opt(&argc, argv, "--InitialQP=0"); add_opt(&argc, argv, "--RCForceIntraQP=0"); } Last edited by Jamaika; 18th July 2023 at 15:24. |
![]() |
![]() |
![]() |
#829 | Link | |
Registered User
Join Date: Jul 2023
Posts: 6
|
![]() Quote:
|
|
![]() |
![]() |
![]() |
#830 | Link |
Registered User
Join Date: May 2023
Posts: 5
|
Introduction:
In the realm of video coding, two prominent contenders, VVC (Versatile Video Coding) and AV1 (AOMedia Video 1), have been vying for the throne of next-generation video compression. A recent comparative study sheds light on the performance disparities between these codecs, providing valuable insights into their strengths and weaknesses. In this article, we delve into the study's findings, methodology, and implications for video enthusiasts and industry professionals. Source : https://codecwar.com Study Highlights: The study examined 62 diverse video streams and drew several significant conclusions: VVC Takes the Lead: On average, the VVC reference codec outperformed AV1, delivering superior video quality. The study indicated that AV1 trailed behind VVC by approximately 7.12% across all analyzed video streams. Codec Specifications: The study employed VTM (Versatile Video Coding Test Model) implementation, revision 17.0, with the RA (Random Access) configuration, as the reference VVC codec. Meanwhile, AV1 was evaluated using the libAOM (AOMedia codec library) implementation, revision av1-normative, with the RA configuration. Methodology: To facilitate a fair and objective comparison, the study employed a BD-Rate (Bjontegaard Delta Rate) analysis with AOM PCHIP (Piecewise Cubic Hermite Interpolating Polynomial) interpolation. This method allowed for precise measurement and comparison of the PSNR (Peak Signal-to-Noise Ratio): Y metric, widely utilized to gauge video quality. Implications and Future Prospects: The findings of this comparative study have several implications for the video coding landscape. While VVC emerged as the stronger performer in the analyzed scenarios, AV1 should not be dismissed outright. The open-source nature of AV1, coupled with ongoing development and refinement efforts, presents the possibility of future improvements, narrowing the performance gap between the two codecs. Additionally, industry professionals should consider the specific requirements of their use cases. Factors such as available bandwidth, hardware support, and compatibility across devices and platforms must be weighed when selecting a video codec. Both VVC and AV1 have unique features and advantages that make them suitable for different applications. Conclusion: The comparative study between VVC and AV1 has shed light on the performance disparities between these codecs. While VVC demonstrated superior video quality in this particular study, the dynamic nature of video coding warrants continuous evaluation and exploration. As technology advances and requirements evolve, the choice of a video codec should be carefully considered based on the specific needs of each scenario. Research visualization: FULL REPORT with all the charts (avaliable after registration) : https://codecwar.com/compare/vvc-vs-av1 |
![]() |
![]() |
![]() |
#831 | Link |
Registered User
Join Date: Jul 2015
Posts: 681
|
I answer. How can you compile with frames IPPPP in jvetvvc?
It's complicated because jvetvvc has lot of features. Each new version of the codec may have changed functions. JVETVVC has P/B frame limiter to 64. This can be increased by changing the MAX_GOP value. How to decode such movie? Using jvetvvc decoder in this case only version 21.0. Does ffvvc decode 444/420/rgb videos? Currently not decoding. Example below: del *.png del *.jpg ffmpeg_rsvg.exe -y -i "video.mp4" -s 360x180 -frames:v 33 image%%d.png bpgenc_jvetvvc.exe -v -a -q 0 -b 8 -f 444 -c ycbcr_bt709 -m 9 image%%d.png -o output3.bpg DecoderApp.exe -b animation.vvc -d 8 --SEIDecodedPictureHash=0 -o animation.yuv ffplay_vvc.exe animation.vvc Last edited by Jamaika; 18th July 2023 at 15:23. |
![]() |
![]() |
![]() |
#832 | Link | |
Artem S. Tashkinov
Join Date: Dec 2006
Posts: 312
|
Quote:
Could you run whatever you had in mind through Deepl or Google Translate? It's really hard to understand what you meant. |
|
![]() |
![]() |
![]() |
#833 | Link |
German doom9/Gleitz SuMo
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 6,696
|
New uploads: [Windows][GCC 13.1.0][64 bit]
VTM Encoder/Decoder Version 21.0 d4aa80320 Fraunhofer VVC Encoder ver. 1.9.0-rc2 3fcfd93 Fraunhofer VVC Decoder ver. 2.1.0 5b31cd4 |
![]() |
![]() |
![]() |
#834 | Link | |
Registered User
Join Date: Jul 2015
Posts: 681
|
Quote:
Why is it presented so intricately? Manually typing functions in EncoderApp.exe --FrameX from 1 to 10000 is a bit of a hassle. There is no way to add only P-frames in vvenc. https://www.sendspace.com/file/o5c3fd Last edited by Jamaika; 18th July 2023 at 18:43. |
|
![]() |
![]() |
![]() |
#835 | Link | |
Moderator
![]() Join Date: Jan 2006
Location: Portland, OR
Posts: 4,652
|
Quote:
|
|
![]() |
![]() |
![]() |
#837 | Link |
Registered User
Join Date: Jul 2023
Posts: 6
|
Ok. Thanks. I have two issues with VTM. 1) Can I have every desired GOP? even if it includes multiple P frames, such as I P P P P P? If it is so complicated, a simpler GOP structure like I P B B B P or I P B B .... is appropriate.
2) The main goal is to have the value of motion vectors that encoder send to channel. I want to extract only these values. However, it is important to have the motion vectors for each frame separately, as well as the values of each individual motion vector. Thus if I have motion vectors for a GOP structure such as I P B B B P, it would be very helpful. |
![]() |
![]() |
![]() |
#838 | Link |
Registered User
Join Date: Jul 2015
Posts: 681
|
Originally GOP Size must be between 1 and 64. For IPPP... GOP is always 1.
Motion vectors details are set in CTUsize. For jvetvvc this will be a problem. In the given example ctusize is added 32 when standard is 128. Unfortunately codec doesn't have thread support so you wait 20 minutes for FullHD screenshot. https://www.mainconcept.com/mainconc...d-mpeg-h-audio https://www.youtube.com/watch?v=mtaC_lQO2-4 I think that in a year MainConcept VCC codecs will be in all paid editors and it will be the easiest way for you to test the movie. |
![]() |
![]() |
![]() |
#840 | Link |
Artem S. Tashkinov
Join Date: Dec 2006
Posts: 312
|
GStreamer is working on a VVC demuxer/parser/decoder (using vvdec): https://gitlab.freedesktop.org/gstre.../-/issues/2842
And a free MacOS video player with full VVC decoding support has been released: https://www.elmedia-video-player.com/ Things are moving. |
![]() |
![]() |
![]() |
Thread Tools | Search this Thread |
Display Modes | |
|
|