2023-12-28 08:15:38 +02:00
|
|
|
clean::
|
|
|
|
$(RM) $(CLEANSUFFIXES:%=libavcodec/vvc/%)
|
|
|
|
|
vvcdec: add vvc decoder
vvc decoder plug-in to avcodec.
split frames into slices/tiles and send them to vvc_thread for further decoding
reorder and wait for the frame decoding to be done and output the frame
Features:
+ Support I, P, B frames
+ Support 8/10/12 bits, chroma 400, 420, 422, and 444 and range extension
+ Support VVC new tools like MIP, CCLM, AFFINE, GPM, DMVR, PROF, BDOF, LMCS, ALF
+ 295 conformace clips passed
- Not support RPR, IBC, PALETTE, and other minor features yet
Performance:
C code FPS on an i7-12700K (x86):
BQTerrace_1920x1080_60_10_420_22_RA.vvc 93.0
Chimera_8bit_1080P_1000_frames.vvc 184.3
NovosobornayaSquare_1920x1080.bin 191.3
RitualDance_1920x1080_60_10_420_32_LD.266 150.7
RitualDance_1920x1080_60_10_420_37_RA.266 170.0
Tango2_3840x2160_60_10_420_27_LD.266 33.7
C code FPS on a M1 Mac Pro (ARM):
BQTerrace_1920x1080_60_10_420_22_RA.vvc 58.7
Chimera_8bit_1080P_1000_frames.vvc 153.3
NovosobornayaSquare_1920x1080.bin 150.3
RitualDance_1920x1080_60_10_420_32_LD.266 105.0
RitualDance_1920x1080_60_10_420_37_RA.266 133.0
Tango2_3840x2160_60_10_420_27_LD.266 21.7
Asm optimizations still working in progress. please check
https://github.com/ffvvc/FFmpeg/wiki#performance-data for the latest
Contributors (based on code merge order):
Nuo Mi <nuomi2021@gmail.com>
Xu Mu <toxumu@outlook.com>
Frank Plowman <post@frankplowman.com>
Shaun Loo <shaunloo10@gmail.com>
Wu Jianhua <toqsxw@outlook.com>
Thank you for reporting issues and providing performance reports:
Łukasz Czech <lukaszcz18@wp.pl>
Xu Fulong <839789740@qq.com>
Thank you for providing review comments:
Ronald S. Bultje <rsbultje@gmail.com>
James Almer <jamrial@gmail.com>
Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Co-authored-by: Xu Mu <toxumu@outlook.com>
Co-authored-by: Frank Plowman <post@frankplowman.com>
Co-authored-by: Shaun Loo <shaunloo10@gmail.com>
Co-authored-by: Wu Jianhua <toqsxw@outlook.com>
2023-12-28 08:17:29 +02:00
|
|
|
OBJS-$(CONFIG_VVC_DECODER) += vvc/vvcdec.o \
|
|
|
|
vvc/vvcdsp.o \
|
2023-12-05 16:45:16 +02:00
|
|
|
vvc/vvc_cabac.o \
|
2023-12-05 16:45:09 +02:00
|
|
|
vvc/vvc_ctu.o \
|
|
|
|
vvc/vvc_data.o \
|
2023-12-05 16:45:15 +02:00
|
|
|
vvc/vvc_filter.o \
|
2023-12-05 16:45:12 +02:00
|
|
|
vvc/vvc_inter.o \
|
2023-12-05 16:45:14 +02:00
|
|
|
vvc/vvc_intra.o \
|
2024-02-28 16:04:45 +02:00
|
|
|
vvc/vvc_intra_utils.o \
|
2023-12-05 16:45:13 +02:00
|
|
|
vvc/vvc_itx_1d.o \
|
2023-12-05 16:45:11 +02:00
|
|
|
vvc/vvc_mvs.o \
|
2023-12-28 08:14:49 +02:00
|
|
|
vvc/vvc_ps.o \
|
2023-12-05 16:45:10 +02:00
|
|
|
vvc/vvc_refs.o \
|
2023-12-05 16:45:18 +02:00
|
|
|
vvc/vvc_thread.o \
|