This is an automated email from the git hooks/post-receive script. Git pushed a commit to branch master in repository ffmpeg.
commit 74f1a4a16027331f0e0c95feee6330f29ba18387 Author: guy-with-a-why <[email protected]> AuthorDate: Fri Aug 28 09:19:14 2026 +0100 Commit: Timo Rothenpieler <[email protected]> CommitDate: Mon Aug 31 18:13:21 2026 +0000 avcodec: add FF_BUG_H264_DP_NNZ 9.2.1 makes an inter neighbour unavailable for the coeff_token nC derivation under constrained intra prediction with slice data partitioning, and step 7 then drops it from the (nA + nB + 1) >> 1 average. JM instead treats it as available with nN = 0, so it still contributes. Every partitioned stream in the wild comes from JM or a derivative, so the decoder has to be able to do both. Signed-off-by: guy-with-a-why <[email protected]> --- doc/APIchanges | 3 +++ doc/codecs.texi | 3 +++ libavcodec/avcodec.h | 1 + libavcodec/options_table.h | 1 + libavcodec/version.h | 4 ++-- 5 files changed, 10 insertions(+), 2 deletions(-) diff --git a/doc/APIchanges b/doc/APIchanges index 40b4ba3580..7d878a630c 100644 --- a/doc/APIchanges +++ b/doc/APIchanges @@ -2,6 +2,9 @@ The last version increases of all libraries were on 2026-06-23. API changes, most recent first: +2026-08-28 - xxxxxxxxxx - lavc 63.9.100 - avcodec.h + Add FF_BUG_H264_DP_NNZ. + 2026-08-23 - xxxxxxxxxx - lavu 61.6.100 - channel_layout.h Add AV_CH_LAYOUT_5POINT1POINT4 and AV_CHANNEL_LAYOUT_5POINT1POINT4. Add AV_CH_LAYOUT_7POINT1POINT4 and AV_CHANNEL_LAYOUT_7POINT1POINT4. diff --git a/doc/codecs.texi b/doc/codecs.texi index 63319551de..e905282f1e 100644 --- a/doc/codecs.texi +++ b/doc/codecs.texi @@ -178,6 +178,9 @@ edge padding bug (autodetected per fourcc/version) Workaround various bugs in microsoft broken decoders. @item trunc trancated frames +@item h264_dp_nnz +H.264 nC derivation for partitioned slices, as done by JM rather than by +9.2.1 (autodetected) @end table @item strict @var{integer} (@emph{decoding/encoding,audio,video}) diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index efcfb7200e..cf2257f3c9 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -1358,6 +1358,7 @@ typedef struct AVCodecContext { #define FF_BUG_MS 8192 ///< Work around various bugs in Microsoft's broken decoders. #define FF_BUG_TRUNCATED 16384 #define FF_BUG_IEDGE 32768 +#define FF_BUG_H264_DP_NNZ 65536 ///< H.264: JM's nC derivation for partitioned slices. /** * strictly follow the standard (MPEG-4, ...). diff --git a/libavcodec/options_table.h b/libavcodec/options_table.h index a16fc84df4..23fe7d3409 100644 --- a/libavcodec/options_table.h +++ b/libavcodec/options_table.h @@ -125,6 +125,7 @@ static const AVOption avcodec_options[] = { {"ms", "work around various bugs in Microsoft's broken decoders", 0, AV_OPT_TYPE_CONST, {.i64 = FF_BUG_MS }, INT_MIN, INT_MAX, V|D, .unit = "bug"}, {"trunc", "truncated frames", 0, AV_OPT_TYPE_CONST, {.i64 = FF_BUG_TRUNCATED}, INT_MIN, INT_MAX, V|D, .unit = "bug"}, {"iedge", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = FF_BUG_IEDGE }, INT_MIN, INT_MAX, V|D, .unit = "bug"}, +{"h264_dp_nnz", "H.264 nC derivation for partitioned slices (autodetected)", 0, AV_OPT_TYPE_CONST, {.i64 = FF_BUG_H264_DP_NNZ }, INT_MIN, INT_MAX, V|D, .unit = "bug"}, {"strict", "how strictly to follow the standards", OFFSET(strict_std_compliance), AV_OPT_TYPE_INT, {.i64 = DEFAULT }, INT_MIN, INT_MAX, A|V|D|E, .unit = "strict"}, {"very", "strictly conform to a older more strict version of the spec or reference software", 0, AV_OPT_TYPE_CONST, {.i64 = FF_COMPLIANCE_VERY_STRICT }, INT_MIN, INT_MAX, A|V|D|E, .unit = "strict"}, {"strict", "strictly conform to all the things in the spec no matter what the consequences", 0, AV_OPT_TYPE_CONST, {.i64 = FF_COMPLIANCE_STRICT }, INT_MIN, INT_MAX, A|V|D|E, .unit = "strict"}, diff --git a/libavcodec/version.h b/libavcodec/version.h index fb4cb6c86b..230d5fa13e 100644 --- a/libavcodec/version.h +++ b/libavcodec/version.h @@ -29,8 +29,8 @@ #include "version_major.h" -#define LIBAVCODEC_VERSION_MINOR 8 -#define LIBAVCODEC_VERSION_MICRO 101 +#define LIBAVCODEC_VERSION_MINOR 9 +#define LIBAVCODEC_VERSION_MICRO 100 #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \ LIBAVCODEC_VERSION_MINOR, \ -- To stop receiving notification emails like this one, please contact [email protected]. _______________________________________________ ffmpeg-cvslog mailing list -- [email protected] To unsubscribe send an email to [email protected]
