[FFmpeg-cvslog] avcodec/ffv1enc: Fix explicitly set -slicecrc 2

Andreas Rheinhardt git at videolan.org
Tue May 27 15:05:17 EEST 2025


ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinhardt at outlook.com> | Sun May 25 05:21:44 2025 +0200| [a6bcc773b5aa3ad5b50f4498f2e70c0ec6d9dbf0] | committer: Andreas Rheinhardt

avcodec/ffv1enc: Fix explicitly set -slicecrc 2

crcref needs to be set properly iff ec is two, regardless
of whether it has been explicitly set by the user or set
by default based on level/version.

Reviewed-by: Michael Niedermayer <michael at niedermayer.cc>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=a6bcc773b5aa3ad5b50f4498f2e70c0ec6d9dbf0
---

 libavcodec/ffv1enc.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/libavcodec/ffv1enc.c b/libavcodec/ffv1enc.c
index 40209f9935..463f46e091 100644
--- a/libavcodec/ffv1enc.c
+++ b/libavcodec/ffv1enc.c
@@ -629,7 +629,6 @@ av_cold int ff_ffv1_encode_init(AVCodecContext *avctx)
     if (s->ec < 0) {
         if (s->version >= 4) {
             s->ec = 2;
-            s->crcref = 0x7a8c4079;
         } else if (s->version >= 3) {
             s->ec = 1;
         } else
@@ -639,8 +638,10 @@ av_cold int ff_ffv1_encode_init(AVCodecContext *avctx)
     // CRC requires version 3+
     if (s->ec == 1)
         s->version = FFMAX(s->version, 3);
-    if (s->ec == 2)
+    if (s->ec == 2) {
         s->version = FFMAX(s->version, 4);
+        s->crcref = 0x7a8c4079;
+    }
 
     if ((s->version == 2 || s->version>3) && avctx->strict_std_compliance > FF_COMPLIANCE_EXPERIMENTAL) {
         av_log(avctx, AV_LOG_ERROR, "Version 2 or 4 needed for requested features but version 2 or 4 is experimental and not enabled\n");



More information about the ffmpeg-cvslog mailing list