From patchwork Fri Dec 15 19:59:12 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thilo Borgmann X-Patchwork-Id: 35031 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:1225:b0:181:818d:5e7f with SMTP id v37csp5908374pzf; Fri, 15 Dec 2023 11:59:37 -0800 (PST) X-Google-Smtp-Source: AGHT+IEPwGJGVvmuCUZ0v96RIDAZdMgnVfe2d41pQ0NXUDIboyKNhYMhLB0dSeRynfjTPwFhPEpQ X-Received: by 2002:a50:c055:0:b0:551:d98c:145d with SMTP id u21-20020a50c055000000b00551d98c145dmr2215119edd.26.1702670377568; Fri, 15 Dec 2023 11:59:37 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702670377; cv=none; d=google.com; s=arc-20160816; b=z690NkfNFvRR9EbX6l+NxPKM34NOj4SNvWlwnkbDIyBmxZLNYP71+hrcqrkh9QyAIx OML9t4kjcq+O+Vt+lA4mdkJHJ8itO2gXQWeZ6j9ATo+Ri5DvWBq/mW3QrlNLPWSOnb/N mho5QdRVHwHl8S7oCw8wHyB91g/7xkoDPmOkUks/8dnVT/tmnGFq8cxUqKgRb/p/PbKH a1W95NSSQbkBzC9nYnUtFPEeFEOLCkDHYPlKTZL3oTGWS0+Fi0NxHgHCsCE1ZKkmHvpl /4cipzfEBHTBJ7X6fSob2OyK7krhUdvoFqNmue9AXorTMRNv1zbrPo3mDFIMiJ0CAjYC 8FJQ== 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:from :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:message-id:date:to :delivered-to; bh=GtjDfYhqYSVv7XNOo6f/19u/bE3RPziyZrtv4KaKhxU=; fh=uZWItAgYCSLFS5Zum7Ip+PilGyWYOeCwun+We0BTHAs=; b=ZX91XlKrIQ6/TQjajCR07YN9YoMP+gKRhRS1jJrK6b08WJlb3h4MICziMk9/Im7hj/ evbaL79ly/oNBX5maV9SfId5tR+opjIE4scac7bol3Ipsb3qYdC53i85Yf6Lu0vvz88r zT7r7eV+HDFBovrp5xyDof9UJ33zGmfIyPr0c812OQJ7Yo+LaZx6RzSI1GR2kMIu8ySO ZOvjFu7p8uSQ6M5zA3xgyjlvumO38/OT/MioR0noNvTcQTei23w9xhi3D1uxInISIWeJ FTuuY4q5TplhUa0dkoMhNdlIh2cGrNMU75UfV8T+MjU8Gb09jg6NqXDf9h2PuuB4Ki5c Hm2A== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id y13-20020a056402358d00b0054c7420a603si8061475edc.70.2023.12.15.11.59.37; Fri, 15 Dec 2023 11:59:37 -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; 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 Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 6D93268D0C7; Fri, 15 Dec 2023 21:59:27 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from shout02.mail.de (shout02.mail.de [62.201.172.25]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 2655268D06E for ; Fri, 15 Dec 2023 21:59:19 +0200 (EET) Received: from postfix02.mail.de (postfix02.bt.mail.de [10.0.121.126]) by shout02.mail.de (Postfix) with ESMTP id 8F9F3240DD3 for ; Fri, 15 Dec 2023 20:59:18 +0100 (CET) Received: from smtp01.mail.de (smtp01.bt.mail.de [10.0.121.211]) by postfix02.mail.de (Postfix) with ESMTP id 7707CA00E2 for ; Fri, 15 Dec 2023 20:59:18 +0100 (CET) Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp01.mail.de (Postfix) with ESMTPSA id 47272240F3B for ; Fri, 15 Dec 2023 20:59:18 +0100 (CET) To: ffmpeg-devel@ffmpeg.org Date: Fri, 15 Dec 2023 20:59:12 +0100 Message-Id: <20231215195917.91300-1-thilo.borgmann@mail.de> MIME-Version: 1.0 X-purgate: clean X-purgate: This mail is considered clean (visit http://www.eleven.de for further information) X-purgate-type: clean X-purgate-Ad: Categorized by eleven eXpurgate (R) http://www.eleven.de X-purgate: This mail is considered clean (visit http://www.eleven.de for further information) X-purgate: clean X-purgate-size: 1805 X-purgate-ID: 154282::1702670358-225BF670-CB86E19A/0/0 Subject: [FFmpeg-devel] [PATCH v8 0/5] webp: add support for animated WebP decoding 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: , X-Patchwork-Original-From: Thilo Borgmann via ffmpeg-devel From: Thilo Borgmann Reply-To: FFmpeg development discussions and patches Cc: Thilo Borgmann Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: Ty8GHNNcW07v Still images fixed, includes FATE tests, VP8 decoder decoupled so there are no more data races, fixed more asserts, fixed ffprobe regression, removed unnecessary parser changes, put the whole animated sequence into one packet. Patch 3/5 is still there for making changes in lavc/webp reviewable but shall be stashed when pushing. -Thilo Josef Zlomek (2): libavcodec/webp: add support for animated WebP decoding libavformat/webp: add WebP demuxer Thilo Borgmann (3): avcodec/webp: remove unused definitions avcodec/webp: make init_canvas_frame static fate: add test for animated WebP Changelog | 2 + doc/demuxers.texi | 28 + libavcodec/codec_desc.c | 3 +- libavcodec/version.h | 2 +- libavcodec/webp.c | 748 ++++++++++++++++++-- libavformat/Makefile | 1 + libavformat/allformats.c | 1 + libavformat/version.h | 2 +- libavformat/webpdec.c | 383 ++++++++++ tests/fate/image.mak | 3 + tests/ref/fate/exif-image-webp | 8 +- tests/ref/fate/webp-anim | 22 + tests/ref/fate/webp-rgb-lena-lossless | 2 +- tests/ref/fate/webp-rgb-lena-lossless-rgb24 | 2 +- tests/ref/fate/webp-rgb-lossless | 2 +- tests/ref/fate/webp-rgb-lossy-q80 | 2 +- tests/ref/fate/webp-rgba-lossless | 2 +- tests/ref/fate/webp-rgba-lossy-q80 | 2 +- 18 files changed, 1141 insertions(+), 74 deletions(-) create mode 100644 libavformat/webpdec.c create mode 100644 tests/ref/fate/webp-anim