From patchwork Thu Feb 2 15:09:35 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Leo Izen X-Patchwork-Id: 34887 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:5494:b0:bf:7b3a:fd32 with SMTP id i20csp425065pzk; Thu, 2 Feb 2023 07:09:59 -0800 (PST) X-Google-Smtp-Source: AK7set+szMCuYMu3JqfMKyLp9PFuBU6mGkR0n5zMueZEf6snfOzZwou4LeDxnXoDKZpfSO7a788V X-Received: by 2002:a17:907:1c0f:b0:88d:ba89:1836 with SMTP id nc15-20020a1709071c0f00b0088dba891836mr2485925ejc.7.1675350599012; Thu, 02 Feb 2023 07:09:59 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1675350599; cv=none; d=google.com; s=arc-20160816; b=NzspgvmkmR9NEEkc6vfxjASx68nOWeyD3npaJDGaacodQLUqoMtCw/eq+0GK/3rXc8 9vE5YxOO/7yn3Ab+tbsFHdPAEDVyE5kFslpGlBVVEz2YDBbXmXlGT7YWAfaCnDxYh9gi 4VRnWcp5l4ue+75GiF3FNHQX62v6Ahys6CEMbOaiEv0q4rtBsMHpxg9XC34gZCsdM3UF QN5NoYrlUKYf7iy0LID+QQuflxTgfO9CGa7V9SFY9GvNouKC+LL52WY4TU+Yesd9ouWa TwcA4PFTEITgzMmOXVyVoWtGYestimJ334wiJ4FSwwwnCOouGSleJjjaFZqG2aHBj56b tyuw== 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:message-id:date:to:from :dkim-signature:delivered-to; bh=g8NNm3xFL/54ee1jBbtd25aKkGBeSe6kN/WAzeCwYaE=; b=GfX80vdMGcgvMewO4gsWQjI4MuKX6EbPIOeX10zh1kQFcefquDys1NGfGFYHhnnTZb yNPVr6Ps32Hl4A3V7yszsJ+1hywPR87mPW6pCKm43v8resU4dEBZF/+PZMkwQns6TkLA 37ci8mpu22E6QaDwrWAq+18VTHPJA1SeVku+FoRaGODLiCZU7ZfMwqYTWqYYvLCtFESX 3iz5d/KIZgsqq1BL1rSrxaKQsvaSnK/w67KHAaHY6aO1nxi0YHJXNlBwpWC63NTlj/I+ L+36LgaSgQRHVDfaaXPJqBQ9w/idpxkv2Hx1cmQbKrBr4r5RNxya5OVq62qF9J2JP0C1 ZNKg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20210112 header.b=IB2p4JF7; 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 fp29-20020a1709069e1d00b00886a0d683acsi14898071ejc.33.2023.02.02.07.09.53; Thu, 02 Feb 2023 07:09:58 -0800 (PST) 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=20210112 header.b=IB2p4JF7; 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 52F2868BD86; Thu, 2 Feb 2023 17:09:49 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-il1-f180.google.com (mail-il1-f180.google.com [209.85.166.180]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id A1B6868B4A7 for ; Thu, 2 Feb 2023 17:09:42 +0200 (EET) Received: by mail-il1-f180.google.com with SMTP id z2so864434ilq.2 for ; Thu, 02 Feb 2023 07:09:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=MW8C1rD0ALJ2gv4Q6L3ZYQRSOsPXH/faQJgCWB5Y4bg=; b=IB2p4JF7zO2tT9Qfqy6O689OIH+WxK4BlDBw5Cb7zGn3cfZUkq8v98nrS3v4ncONnQ x/6CzC8O+AD1FjyPqZndEgRu60qkFqs5M+MZn1biySmAW1dL2jAHdcFeuOFBrVpbhw9h Vr3VffABBlp9mKaFIOmtYSg4Gz0pG98vy9NBE+wR24Y8pgwaeG/m7LTpXv0OInLdmIyy TUJQJB8/Pt31g2zqlz7L1ZNfp77+ic22s/cuz8et3ZPQqpEayrEiLdtRQ4hfclzBkX/+ uXdefJYd1Na55csG/TqsbDLkPJtHm+EafqosYoCP3DxGGwphZfhwy6IyCfoEbq/KInJ4 8DEQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=MW8C1rD0ALJ2gv4Q6L3ZYQRSOsPXH/faQJgCWB5Y4bg=; b=IInljC3pS6hvL1vAONNTO099lKAeqjU7cD0stWzyK+GXUQtM+A2aDOyKYoLbGDDqnf PfkrcaehPeYZBEH4oFrJTnAlbxr+TYMm5qoJxlBSV2RgcM7YcVYAwKtg2FAXcSP+/rWQ V+w3KsOK74GTBHXikhIz51+L/PDW6g0H6tlVdlKxahWq32xVkua+dCh/cFUxqmqqZ485 x0CRL34zcQZVAnsshzVNaxzscx42/c9A3sXFEphaoQ+Fr+TNvj9TCnCXa7E7/7IRhv16 MUWr5ARqCysI9M724pBQ3Oj7uo5QvgSj+zIGS7FK+LJoN6sZJ2fHpoDQawYTa9cNwRUT D3iw== X-Gm-Message-State: AO0yUKVzXaAi/fadxJmV1YdSYSElKhYZVGsi1M/pZs/hRSyXJH6fQstE Aw1QG7VtqUmTxWZVVYWELl7sU3aN0EGadQ== X-Received: by 2002:a05:6e02:152:b0:310:cc70:a152 with SMTP id j18-20020a056e02015200b00310cc70a152mr4355280ilr.2.1675350580964; Thu, 02 Feb 2023 07:09:40 -0800 (PST) Received: from gauss.local (c-68-41-54-207.hsd1.mi.comcast.net. [68.41.54.207]) by smtp.gmail.com with ESMTPSA id r7-20020a92d987000000b0030f43cefc4bsm6570122iln.53.2023.02.02.07.09.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Feb 2023 07:09:40 -0800 (PST) From: Leo Izen To: ffmpeg-devel@ffmpeg.org Date: Thu, 2 Feb 2023 10:09:35 -0500 Message-Id: <20230202150938.22297-1-leo.izen@gmail.com> X-Mailer: git-send-email 2.39.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v3 0/3] PNG color tagging improvements 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: t9zrE3ozdyWQ The first patch fixes a FATE issue with cICP and iCCP. The second patch was discussed on IRC. I got a LGTM from Kasper, but sending to ML here and applying in a few days if there's no objections. A few things discussed: 1) There's no need to expose the gamma table as another function as it's only used here. 2) This patch includes the patch on the ML sent as "avcodec/pngdec: warn when reading tv-range cICP chunks" which got a LGTM from Lynne on IRC. If this is applied that one has no need to be applied. Changes from v2: - Split off the gAMA chunk handling into a second patch at Andreas' suggestion. Changes from v1: - The second patch broke FATE because I didn't change the fate ref to accommodate the new metadata. I've since updated the fate reference. Leo Izen (3): avcodec/pngenc: avoid writing cICP when inappropriate avcodec/pngdec: read colorspace info when decoding with AVDISCARD_ALL avcodec/pngdec: populate enum transfer values from gAMA chunk libavcodec/pngdec.c | 128 +++++++++++++++++++++-------------- libavcodec/pngenc.c | 21 ++++-- tests/ref/fate/png-icc | 8 +-- tests/ref/fate/png-side-data | 2 +- 4 files changed, 96 insertions(+), 63 deletions(-)