[Cellar] Re: Proposal to embed FFV1 as a compression method into PNG or another format
Jerome Martinez <jerome@mediaarea.net> Tue, 28 May 2024 20:22 UTC
Return-Path: <jerome@mediaarea.net>
X-Original-To: cellar@ietfa.amsl.com
Delivered-To: cellar@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3B4A6C14CE31 for <cellar@ietfa.amsl.com>; Tue, 28 May 2024 13:22:38 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.894
X-Spam-Level:
X-Spam-Status: No, score=-6.894 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id hf0bJsIeJeJP for <cellar@ietfa.amsl.com>; Tue, 28 May 2024 13:22:33 -0700 (PDT)
Received: from 5.mo560.mail-out.ovh.net (5.mo560.mail-out.ovh.net [87.98.181.248]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D5059C14CEFF for <cellar@ietf.org>; Tue, 28 May 2024 13:22:32 -0700 (PDT)
Received: from director1.ghost.mail-out.ovh.net (unknown [10.108.2.141]) by mo560.mail-out.ovh.net (Postfix) with ESMTP id 4VpkTK3sBPz1VWg for <cellar@ietf.org>; Tue, 28 May 2024 20:22:29 +0000 (UTC)
Received: from ghost-submission-6684bf9d7b-6pdcx (unknown [10.110.168.159]) by director1.ghost.mail-out.ovh.net (Postfix) with ESMTPS id 22BF31FD7A for <cellar@ietf.org>; Tue, 28 May 2024 20:22:29 +0000 (UTC)
Received: from mediaarea.net ([37.59.142.110]) by ghost-submission-6684bf9d7b-6pdcx with ESMTPSA id eE7zBAU9VmaCCQUALQqQ+A (envelope-from <jerome@mediaarea.net>) for <cellar@ietf.org>; Tue, 28 May 2024 20:22:29 +0000
Authentication-Results: garm.ovh; auth=pass (GARM-110S0049dc40378-3369-4ac8-a213-4e2617c3a26f, B71390364AFD10F2A63261463D63D16557D2C0EE) smtp.auth=jerome@mediaarea.net
X-OVh-ClientIp: 84.143.144.4
Content-Type: multipart/alternative; boundary="------------27qlStWRsR20WbgzyJi7Sfw4"
Message-ID: <ed095fcb-18a6-42f5-82bc-6ca5a74bc690@mediaarea.net>
Date: Tue, 28 May 2024 22:22:28 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
References: <54164f45-d657-4443-8839-07374bf3e3a4@gmx.net>
Content-Language: en-US, fr, de-DE
From: Jerome Martinez <jerome@mediaarea.net>
To: Codec Encoding for LossLess Archiving and Realtime transmission <cellar@ietf.org>
In-Reply-To: <54164f45-d657-4443-8839-07374bf3e3a4@gmx.net>
X-Ovh-Tracer-Id: 4396920612871440443
X-VR-SPAMSTATE: OK
X-VR-SPAMSCORE: 0
X-VR-SPAMCAUSE: gggruggvucftvghtrhhoucdtuddrgedvledrvdejkedguddulecutefuodetggdotefrodftvfcurfhrohhfihhlvgemucfqggfjpdevjffgvefmvefgnecuuegrihhlohhuthemucehtddtnecunecujfgurheptgfkffggfgfufhfhvfgjsegrtderredtvdejnecuhfhrohhmpeflvghrohhmvgcuofgrrhhtihhnvgiiuceojhgvrhhomhgvsehmvgguihgrrghrvggrrdhnvghtqeenucggtffrrghtthgvrhhnpeegfeehffegudfgtdelteehffetheeggfejffekteejleeiiefgfeeuvefguedvtdenucffohhmrghinheprhhftgdqvgguihhtohhrrdhorhhgpdiffedrohhrghdpghhithhhuhgsrdgtohhmpdgrfigrrhgvshihshhtvghmshdrsggvnecukfhppeduvdejrddtrddtrddupdekgedrudegfedrudeggedrgedpfeejrdehledrudegvddruddutdenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepihhnvghtpeduvdejrddtrddtrddupdhmrghilhhfrhhomhepjhgvrhhomhgvsehmvgguihgrrghrvggrrdhnvghtpdhnsggprhgtphhtthhopedupdhrtghpthhtoheptggvlhhlrghrsehivghtfhdrohhrghdpoffvtefjohhsthepmhhoheeitddpmhhouggvpehsmhhtphhouhht
Message-ID-Hash: JTVWBMABL45AA4E6HCBWWAN277D32OFE
X-Message-ID-Hash: JTVWBMABL45AA4E6HCBWWAN277D32OFE
X-MailFrom: jerome@mediaarea.net
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-cellar.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
X-Mailman-Version: 3.3.9rc4
Precedence: list
Subject: [Cellar] Re: Proposal to embed FFV1 as a compression method into PNG or another format
List-Id: Codec Encoding for LossLess Archiving and Realtime transmission <cellar.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/cellar/rHLe7CvTfUh1yd36J3UDXGK6wzg>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cellar>
List-Help: <mailto:cellar-request@ietf.org?subject=help>
List-Owner: <mailto:cellar-owner@ietf.org>
List-Post: <mailto:cellar@ietf.org>
List-Subscribe: <mailto:cellar-join@ietf.org>
List-Unsubscribe: <mailto:cellar-leave@ietf.org>
Hello, On 25/05/2024 21:57, K Y Ō D Ʌ I K Ξ N wrote: > > I am working on an image container format and tested several loslsess > single (still) image formats. > FFV1 is the fastest with very good compression, sometimes even > rivaling jxl's lossless compression depending on the content of the > image and jxl's compression effort level. > Happy to read that, because usually the speed is criticized. > [...] Proposal to embed FFV1 as a compression method into PNG or > another format > This is at the edge of the scope of this working group, which is focused on FFV1 and Matroska but participants like me already worked on having FFV1 registered elsewhere, for example in MXF (SMPTE RDD48:2018 Amendment 1). During FFV1 spec development we also worked on indicating how it is stored in a couple of containers: https://www.rfc-editor.org/rfc/rfc9043.html#name-mapping-ffv1-into-container but it was easy, it was already de facto there and there is less risk of conflict with other people willing to use the same codec identifier when e.g. 4-byte identifiers are used. back to PNG: PNG 1.0 was handled by IETF PNG 1.2 and later is handled by W3C A PNG third edition is in draft: https://www.w3.org/TR/png-3/#10Compression With development activity at this place: https://github.com/w3c/PNG-spec There is a 8-bit (256 possibilities) "compression method" field: https://www.w3.org/TR/png-3/#10Compression Currently only value 0, meaning "deflate" compression, is registered. So the first task, before adapting encoders and decoders e.g. FFmpeg for handling such file, is to register a compression method number with the PNG working group. We talked during our IETF meeting about that, nothing is technically blocking to have FFV1 in PNG (there is no spec update to do) but there is this need of convincing the PNG working group to accept to register a compression method number for FFV1 and as there is currently only 1 value registered it may be an hard task. We could also arbitrary use a (more or less) random value and try to make it a defacto number for FFV1 but in that case there is a huge task of convincing every major PNG tool (including PNG) maintainer to support that. A similar work could be done with TIFF. The most up to date (de facto?) list of compression identifiers I found is at: https://www.awaresystems.be/imaging/tiff/tifftags/compression.html But I don't know if there is an more official registry, looks like that there is a common usage of choosing a random value above 32768 when it comes to support a new compression method. Personally I would be happy to see FFV1 used in PNG and TIFF but I don't have the time for trying to convince the PNG working group and tools developers to accept FFV1 compression method in PNG or TIFF (or another image format). Would you try to convince the PNG working group to accept FFV1 compression method in their specs? Note that for FFV1 v3 there is also the need to register a PNG or TIFF chunk for storing the FFV1 configuration Record but it not the biggest task. > [...] Additionally, this could also be interesting for NASA, > especially with the v4 proposals for arbitrary channel formats. Do you have any point of contact of someone interested in using FFV1 in PNG (or other image container) there or is it only a speculation? > The maximum canvas size should be increased, for example like PNG, > which is the maximum number of 31 bit per dimension. > Is there a need of width of more than 4 billion (PNG uses 32-bit unsigned integers for width and height) pixels somewhere, or even just 100 times less? As far as I know, even BigTIFF (used by entities using huge pictures) authors didn't want to go there and they worked on having 4+ GB images, but the list of TIFF fields authorized to be more than 32-bit does not include width and height, only the ones related to the file size. And this part is for the image format spec authors, not related to FFV1 itself (width/height is currently not stored in FFV1 bitstream). Jérôme
- [Cellar] Proposal to embed FFV1 as a compression … K Y Ō D Ʌ I K Ξ N
- [Cellar] Re: Proposal to embed FFV1 as a compress… Ralph Giles
- [Cellar] Re: Proposal to embed FFV1 as a compress… Martin Leese
- [Cellar] Re: Proposal to embed FFV1 as a compress… Jerome Martinez