From patchwork Wed Aug 2 20:33:30 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Leo Izen X-Patchwork-Id: 43097 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:c11f:b0:130:ccc6:6c4b with SMTP id bh31csp896107pzb; Wed, 2 Aug 2023 13:34:02 -0700 (PDT) X-Google-Smtp-Source: APBJJlGQ0B4Blxfqy55TkhvGaJ4JdFVyaJ3R620cfHzAqLtStwaLWVOK/fRO089DTnz48aBsy2tK X-Received: by 2002:aa7:c657:0:b0:51e:4439:f474 with SMTP id z23-20020aa7c657000000b0051e4439f474mr5554130edr.35.1691008441917; Wed, 02 Aug 2023 13:34:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1691008441; cv=none; d=google.com; s=arc-20160816; b=OCEEBFMTLCjtX1rk+zOp5k2sV1Us0ZResqqMD+4lYu+izhmVlB6gk0f5lCf4TLkbfV qFgkSa0spkt9h6LBALuoCQ3NfRR7jfeibLIVAwFfx3xnexVTwLjf8S8cMEtQkAuzUiuP 4NTg/fLiutKACyIWtvYggcaJfyA1elVUM/r4Ji3d3MJmKfqTF/iNv3d30ZgP6maNvI8j 6xA1ixKp85oVYFBmIwHtyU5ufEpTLl7K+10LhejrImblf7DP2XsXmpDdtq7JeMb1T3Mr iWn186PX4fgd+TroB6Ub1JHL3DK2RPrZPkMt6r0+EtMpK3X6+U6dle9j8vWHK1BbJTgE CQmQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:delivered-to; bh=PnfB5NfDkMiYpYBGlWtgLMQqx/Su/ClISFn3AY1c13g=; fh=W57KVLPaTz0tbsYsrKIbKYuBNANpg4Tl/mHbnGjtYGU=; b=y3a4lzvpyiQpHKoVVYWR3vlbvslOwVGWh/Y7TMBnzFSA0qXAe5dBmy8sDj+EhBfztC tAEMRH9r9wLmvtfMk4GG1j9i62h6/pflAn/EZ69yzum5QnFHaXtCN8MOs1GChmSDuSmo mrC5uXCXRXTfcWKgiB3rSMTBhqVG1GykZ6az8FrSaBiaYBZiYiZSbmaDuPs4ay1dZJSY BnhTVqFuFDWwaYXjEDZChfsqqQSBge5+3mpSPjS/i/rhAlQkdYkRrnc2Q0pOgyKX9fkg bJsGs8dzD1MdcEoSvAZIYhGmLWiA3Fb/HvAyZvdsGor+jw1TQeyayOnFWJgm+u8CElnY qdoA== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20221208 header.b=lSFPAHPA; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id bm10-20020a0564020b0a00b0052250b9a185si6363359edb.95.2023.08.02.13.34.01; Wed, 02 Aug 2023 13:34:01 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20221208 header.b=lSFPAHPA; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 52E2968C684; Wed, 2 Aug 2023 23:33:47 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-ot1-f42.google.com (mail-ot1-f42.google.com [209.85.210.42]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 86A52689975 for ; Wed, 2 Aug 2023 23:33:40 +0300 (EEST) Received: by mail-ot1-f42.google.com with SMTP id 46e09a7af769-6bca018afe8so53840a34.0 for ; Wed, 02 Aug 2023 13:33:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1691008419; x=1691613219; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ggKbLNu8SI4CcalFD5iIyy3T41pmTrx3El/vncsspus=; b=lSFPAHPACw3m0V1moily4yah1RPnT8d/F9A22gpjNGvmgi0XjvJftW/w7bhzf0uXNc maWS8HBIVBAlEGaX5gR8aTaECjODEc0jpgeVXW2jtN2HrZsYD3Bmxdo+ncrcob5EN1bn tZF6n29xptrPh3Kjk6ZwRB6mh1eTajGdMcR5ryzTnaWshLlmMfOpCc6daU3Da+jOgP+4 v+tk1xjCo6iG0whNQEv+SDnjDOhTsqFjRE6+eLjPgKFzrievtxs3VnrjnYW/Kii74kRz wQe8jyc5qj78daXHbPFJaJLeumJiviWx2/wbLJ3py9iPei2dOT/MrhEhPVsh0LjLxTee Kgiw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1691008419; x=1691613219; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ggKbLNu8SI4CcalFD5iIyy3T41pmTrx3El/vncsspus=; b=VIZuBAjJ21sE3O0imXnZLySIdMEdp1UKdr8OceXlYI3AKncoM+/3PNYWvPNFCAdNCK 3MTCAf7R2zAD31tEYMBmcl7fJcrl0TrK2DuO67rISXPTmdGclGytfleVd++0YmIxUIHZ GMtYvy3L+C07GPsMnQgplLAo+TO1R20AUXySBKb3MlxKpWLZhQWH1Dkjq3zP1Jezxh70 ln6RLxmaJe5IVFKsbCXPKTw/GMUgBBvkgKcN+ONH56v8ztegvF9fGocfSXeve5feGcPa pzCq2CjaMirkilOag06+8SmP11wsx88pPlfgALaZcmz2ExorCEV/PVfNLGojx98xpyla HcuQ== X-Gm-Message-State: ABy/qLaJgkPu6q7wvG++mxbYC1rLuTeKvoH7B4tzjFe+PkDHiHKf0JC1 saQoKObQlQkIJGgh+tPxUe6He1xknlA= X-Received: by 2002:a05:6830:4602:b0:6b9:db20:4d25 with SMTP id ba2-20020a056830460200b006b9db204d25mr9896979otb.1.1691008418781; Wed, 02 Aug 2023 13:33:38 -0700 (PDT) Received: from gauss.local (c-68-56-149-176.hsd1.mi.comcast.net. [68.56.149.176]) by smtp.gmail.com with ESMTPSA id cf4-20020a056902180400b00c654cc439fesm3930524ybb.52.2023.08.02.13.33.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Aug 2023 13:33:38 -0700 (PDT) From: Leo Izen To: ffmpeg-devel@ffmpeg.org Date: Wed, 2 Aug 2023 16:33:30 -0400 Message-ID: <20230802203334.23640-2-leo.izen@gmail.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230802203334.23640-1-leo.izen@gmail.com> References: <20230802203334.23640-1-leo.izen@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v7 1/5] avcodec/libjxldec: fix errors when decoding grayscale after rgb X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Leo Izen Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: DqcUi/SsPIvv Fixes an error that's caused by decoding a grayscale JXL image after an RGB image is decoded, with the same decoder instance. Signed-off-by: Leo Izen --- libavcodec/libjxldec.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/libjxldec.c b/libavcodec/libjxldec.c index e45ac02c07..9be1d9295a 100644 --- a/libavcodec/libjxldec.c +++ b/libavcodec/libjxldec.c @@ -298,7 +298,7 @@ static int libjxl_color_encoding_event(AVCodecContext *avctx, AVFrame *frame) } avctx->color_range = frame->color_range = AVCOL_RANGE_JPEG; - if (ctx->jxl_pixfmt.num_channels >= 3) + if (ctx->basic_info.num_color_channels > 1) avctx->colorspace = AVCOL_SPC_RGB; avctx->color_primaries = AVCOL_PRI_UNSPECIFIED; avctx->color_trc = AVCOL_TRC_UNSPECIFIED; @@ -334,7 +334,7 @@ static int libjxl_color_encoding_event(AVCodecContext *avctx, AVFrame *frame) } /* all colors will be in-gamut so we want accurate colors */ jxl_color.rendering_intent = JXL_RENDERING_INTENT_RELATIVE; - jxl_color.color_space = avctx->colorspace == AVCOL_SPC_RGB ? JXL_COLOR_SPACE_RGB : JXL_COLOR_SPACE_GRAY; + jxl_color.color_space = ctx->basic_info.num_color_channels > 1 ? JXL_COLOR_SPACE_RGB : JXL_COLOR_SPACE_GRAY; jret = JxlDecoderSetPreferredColorProfile(ctx->decoder, &jxl_color); if (jret != JXL_DEC_SUCCESS) { av_log(avctx, AV_LOG_WARNING, "Unable to set fallback color encoding\n");