From patchwork Fri Dec 15 07:24:45 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thilo Borgmann X-Patchwork-Id: 35030 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:1225:b0:181:818d:5e7f with SMTP id v37csp5480306pzf; Thu, 14 Dec 2023 23:24:59 -0800 (PST) X-Google-Smtp-Source: AGHT+IHGh6mmbItermsXIV42b3A7fA4uNcuDBlvTXqnFbfgeu9fiR9FjyeMzvEdzm7HPclJoAkUB X-Received: by 2002:a17:907:60c7:b0:a1c:4c3e:99e2 with SMTP id hv7-20020a17090760c700b00a1c4c3e99e2mr11038325ejc.22.1702625099485; Thu, 14 Dec 2023 23:24:59 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702625099; cv=none; d=google.com; s=arc-20160816; b=XNBnL4biK3H54nzeuPcYP5+NppDsFAZJgj0IU0CtarOVE5MLckMQUg3Jb2VBygBXdO LGyMCYNrtYUIh0IQF/SgzlVVBMJktRLOMhKbxx/RIOyVz5457wkxGZTnnNi+kyNCP7qW mM9KzAl+D2wLGtQKKy5SvYjzQw1EybSLyY59KK9+9RJrFAKVYObseKEfK2velPzD7tNp HILVNMkDUQNIxYz1l/ia23mQgfGWKVBfWAw5LV02ugD/bxO5Mb/CmHdlwE25jVgFBR4m ZTNJf28xh/4MdG7zatwrAyI4MCIs4Ldkkchw8n0exGsGiT4K4f8I8wSjS7jFlfHWoDAe WhXA== 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=etEyLhT6zfL66sbsrTQ8KEpS4EWclbDxFtMPV2iY6Pg=; fh=uZWItAgYCSLFS5Zum7Ip+PilGyWYOeCwun+We0BTHAs=; b=jZsggKqCeY9VZxJP58m9JLZUasdtXdpcZlry72n16japOdImISUtNkrGd/8yNRah60 yF9KeQBWyJv+zJN0+sIpyjioFQ4hxawuZ2KSENQ0FkzXu53EsS4qxiEx4x1p47oQEDLH JrJvUXkYnifSZyDj4dEWd1fnp8/2EAN1JZJ8lty8NdrHepJmqf/5LRCIQPvRRNANWCRh Oag5jZfi6DW58K8KaCPD+0JV+zo1vLGj+LxyT7qM6j1ncu75/FlLQjZIj5FEKt5/KSQ7 uHfKoPpZvGxrillEG0F7PiUbtorDiPIxqkqWxivRwpiUFvJZBcqG6sUUVWrmu2QGgBbl 3vMQ== 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 a16-20020a17090680d000b00a1dfc541281si6998339ejx.704.2023.12.14.23.24.59; Thu, 14 Dec 2023 23:24:59 -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 6F7D468D216; Fri, 15 Dec 2023 09:24:56 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from shout01.mail.de (shout01.mail.de [62.201.172.24]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 5DCE268D099 for ; Fri, 15 Dec 2023 09:24:50 +0200 (EET) Received: from postfix01.mail.de (postfix01.bt.mail.de [10.0.121.125]) by shout01.mail.de (Postfix) with ESMTP id A7CDE245CB0 for ; Fri, 15 Dec 2023 08:24:49 +0100 (CET) Received: from smtp01.mail.de (smtp02.bt.mail.de [10.0.121.212]) by postfix01.mail.de (Postfix) with ESMTP id 900F380151 for ; Fri, 15 Dec 2023 08:24:49 +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 AEE98240A4D for ; Fri, 15 Dec 2023 08:24:48 +0100 (CET) To: ffmpeg-devel@ffmpeg.org Date: Fri, 15 Dec 2023 08:24:45 +0100 Message-Id: <20231215072447.31761-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: 1317 X-purgate-ID: 154282::1702625088-1B52A878-6F3B3564/0/0 Subject: [FFmpeg-devel] [PATCH 0/2] avfilter: Add fsync filter 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: nY6X9rtfEpxa Synchronize video frames with an external mapping from a file. Follows up on the idea in https://lists.ffmpeg.org/pipermail/ffmpeg-devel/2023-January/305986.html implemented as a filter. Not storing the frame map in a probably huge string but buffering piece-wise. Using a fixed format string. Thilo Borgmann (2): avfilter: Add fsync filter fate: Add fsync filter tests Changelog | 1 + MAINTAINERS | 1 + doc/filters.texi | 33 ++++ libavfilter/Makefile | 1 + libavfilter/allfilters.c | 1 + libavfilter/version.h | 2 +- libavfilter/vf_fsync.c | 304 +++++++++++++++++++++++++++++++ tests/Makefile | 6 +- tests/fate/filter-video.mak | 6 + tests/maps/fsync-down | 7 + tests/maps/fsync-up | 57 ++++++ tests/ref/fate/filter-fsync-down | 12 ++ tests/ref/fate/filter-fsync-up | 62 +++++++ 13 files changed, 491 insertions(+), 2 deletions(-) create mode 100644 libavfilter/vf_fsync.c create mode 100644 tests/maps/fsync-down create mode 100644 tests/maps/fsync-up create mode 100644 tests/ref/fate/filter-fsync-down create mode 100644 tests/ref/fate/filter-fsync-up