Opened 16 months ago
Closed 16 months ago
#11601 closed defect (invalid)
VVC decode fails after decoding few frames
| Reported by: | Kirithika | Owned by: | |
|---|---|---|---|
| Priority: | normal | Component: | avcodec |
| Version: | 7.1 | Keywords: | vvc |
| Cc: | Kirithika | Blocked By: | |
| Blocking: | Reproduced by developer: | no | |
| Analyzed by developer: | no |
Description (last modified by )
Summary of the bug:
VVC decode using ffmpeg's native VVC decoder failed after decoding 68/300 frames.The message "Error allocating frame, DPB full" could be seen on the console. Decoding the bitstream using https://github.com/fraunhoferhhi/vvdec was successful. Hence suspecting this could be a bug in native VVC decoder related to max DPB size.
How to reproduce:
ffmpeg -v 9 -loglevel 99 -i input 960x540_8bit.vvc 960x540_8bit.yuv
ffmpeg version n7.1.1-17-g24de8a98cf-20250520 Copyright (c) 2000-2025 the FFmpeg developers built with gcc 15.1.0 (crosstool-NG 1.27.0.42_35c1e72)
Please find the console log and input file attached using the videolan file uploader
Change History (7)
comment:1 by , 16 months ago
comment:2 by , 16 months ago
| Description: | modified (diff) |
|---|
follow-up: 4 comment:3 by , 16 months ago
Hi,since the file size was large, it was attached using videolan file uploader
comment:4 by , 16 months ago
I can only see the log file in the uploads directory. Is there any chance you could try uploading it again?
Also I note you are using FFmpeg 7.1.1. Could you please try decoding the file with the latest revision on the master branch from git, to see if the issue has been resolved since the 7.1.1 release?
comment:5 by , 16 months ago
Sure, I have uploaded the input file to the directory.I shall check with latest revision and revert back.Thanks
comment:6 by , 16 months ago
Checked with the latest commit on git-master. The issue persists there as well. Please find the corresponding log attached as log_960x540_8bit_git_master_commit_4099d53.txt in the directory.
comment:7 by , 16 months ago
| Resolution: | → invalid |
|---|---|
| Status: | new → closed |
Hi, the input file you have provided is an illegal VVC bitstream. It contains NAL units with nuh_temporal_id_plus1 syntax elements whose value is equal to 0. The specification states "The value of nuh_temporal_id_plus1 shall not be equal to 0." (H.266v3 p. 92). FFmpeg isn't the only decoder which won't play the stream, the VVC reference software reports "The value of TemporalId of SPS NAL units shall be equal to 0". VVdeC also reports the same error, the difference between it and the reference software being that it is able to recover better.
In principle, FFmpeg should also be able to recover like VVdeC (both simply skip the NAL unit in the error case). Alternatively, I tested modifying the value of nuh_temporal_id_plus1 to be equal to 1 for these NAL units. Having done this, it appears that the bitstream is a multilayer bitstream, which is not currently supported by the FFmpeg VVC decoder.



Hi, could you please provide the input file? Thanks