From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id A5AFB46B7A for ; Mon, 3 Jul 2023 22:54:29 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0ADED68C551; Tue, 4 Jul 2023 01:54:27 +0300 (EEST) Received: from w4.tutanota.de (w4.tutanota.de [81.3.6.165]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 3CB8E68A7AD for ; Tue, 4 Jul 2023 01:54:21 +0300 (EEST) Received: from tutadb.w10.tutanota.de (unknown [192.168.1.10]) by w4.tutanota.de (Postfix) with ESMTP id DC91F106019A for ; Mon, 3 Jul 2023 22:54:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1688424860; s=s1; d=lynne.ee; h=From:From:To:To:Subject:Subject:Content-Description:Content-ID:Content-Type:Content-Type:Content-Transfer-Encoding:Content-Transfer-Encoding:Cc:Date:Date:In-Reply-To:In-Reply-To:MIME-Version:MIME-Version:Message-ID:Message-ID:Reply-To:References:References:Sender; bh=W2zSkcJyNTtjDq/zXA/nQWS4LelyFzYoDn6lK02bCqg=; b=kuSBzCii79nXJ8F1USxt8vMjNv6/exPnDqZXknaXFdO0J8cvrw6OUqMFg73u8+x0 fKZGPU5I9oRUIxll9kSXPInQo+mhPw5qtNFEVJEOnOllmJnaSc0BtlscAJHaIwWhZnY iJzk+6feo+8kxS2yj/wrRGwVl4r8BFskqt1RCJbmxh2KMF9YkEI5euVl7jJ9+X5xiKN +VDTwFHajN3+/xz/hVJX12+pDB2uEL6v+16Knl2mtC2mcy6IHzsLiuaxKh4Haebzf2l myZfuPcZsRvYYL+ZMCQ2dvDqEdJr18OAxFmPcOxbIrxbPLwCmfOmA22G1u1FxR2CvjX PbcWIpPRvw== Date: Tue, 4 Jul 2023 00:54:20 +0200 (CEST) From: Lynne To: FFmpeg development discussions and patches Message-ID: In-Reply-To: References: MIME-Version: 1.0 Subject: Re: [FFmpeg-devel] [PATCH] lavfi/bwdif: remove interpolated sample clipping 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 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: Jul 4, 2023, 00:08 by tmundt75@gmail.com: > Am So., 2. Juli 2023 um 20:58 Uhr schrieb Lynne : > >> Jul 2, 2023, 20:41 by tmundt75@gmail.com: >> >> > Am So., 2. Juli 2023 um 18:57 Uhr schrieb Lynne : >> > >> >> Jul 2, 2023, 18:54 by dev@lynne.ee: >> >> >> >> > The issue is that clipping the interpolated temporal sample against >> >> > the spatially predicted sample causes artifacts to appear. >> >> > >> >> > Discovered while writing the Vulkan version (where I omitted the >> >> > same check). >> >> > >> >> > The clipping in the code is carried over from yadif. Removing the >> >> > same code in yadif does not make any difference to the output. >> >> > I think that the check was simply ill-adapted to the new prediction >> >> > code and does more harm. >> >> > >> >> > I tested replacing the range clip with only an FFMAX, and only an >> >> > FFMIN, but in both cases, artifacts still appeared. >> >> > >> >> > Test sample 1: >> >> https://files.lynne.ee/testsamples/mbaff_1080i60_idx.mkvTest sample 2: >> >> https://files.lynne.ee/testsamples/mbaff_bdmv_1080i60_8slice.mkv >> >> > >> >> > Command line: >> >> > ./ffmpeg_g -cpuflags 0 -i -vf bwdif=mode=send_field -c:v >> >> rawvideo -y .nut >> >> > Make sure to disable the assembly. >> >> > >> >> > Comparisons: >> >> > https://files.lynne.ee/bwdif_01_before.png >> >> > https://files.lynne.ee/bwdif_01_after.png >> >> > Generated from sample 1 via: >> >> > ffmpeg -ss 00:00:00.184 -i .nut -vf >> >> crop=w=420:h=240:x=700:y=300,scale=iw*2:ih*2 -y .png >> >> > >> >> > https://files.lynne.ee/bwdif_02_before.png >> >> > https://files.lynne.ee/bwdif_02_after.pngffmpeg -ss 00:00:00.417 -i >> >> .nut -vf crop=w=420:h=240:x=1100:y=200,scale=iw*2:ih*2 -y >> >> .png >> >> > >> >> >> >> Corrected links for the second sample: >> >> >> >> https://files.lynne.ee/bwdif_02_before.png >> >> https://files.lynne.ee/bwdif_02_after.png >> >> ffmpeg -ss 00:00:00.417 -i .nut -vf >> >> crop=w=420:h=240:x=1100:y=200,scale=iw*2:ih*2 -y .png >> >> >> >> I'm sure I hit a newline. The artifacts are a lot more noticeable in the >> >> second sample. >> >> >> > >> > I developed the bwdif to achieve the best possible balance between speed >> > and quality of all different image contents from the broadcast point of >> > view. This includes moving video as well as moving and static graphic >> > elements. Unfortunately, the improvement of one image content often leads >> > to the degradation of another. The code you removed fundamentally >> > stabilizes the static graphic elements. This outweighs the slightly more >> > frequent artifacts in moving video considering the general purpose of the >> > filter. >> > >> >> Could you post examples? I've been unable to find any that look worse >> with the patch. >> > > Unfortunately, I no longer have most of the test material that I used years > ago at the development of the bwdif. > But on the quick I have this clip with an "Archiv" insert. With your patch > the letters are jumping. Without your patch they stay static. > https://www.dropbox.com/s/jzoezjbi3ho9nja/bwdif-test.mov?dl=1 > ffmpeg.exe -cpuflags 0 -i "bwdif-test.mov" -vf "bwdif=1:-1:1, > scale=1920:1080" -sws_flags lanczos -aspect 16:9 -c:v libx264 -crf 21 > "bwdif_original.mp4" > ffmpeg_lynne_patch.exe -cpuflags 0 -i "bwdif-test.mov" -vf "bwdif=1:-1:1, > scale=1920:1080" -sws_flags lanczos -aspect 16:9 -c:v libx264 -crf 21 > "bwdif_lynne_patch.mp4" > https://www.dropbox.com/s/tonsomtkhyaha91/bwdif_original.mp4?dl=1 > https://www.dropbox.com/s/aaj8o5yzlocu55z/bwdif_lynne_patch.mp4?dl=1 > Can confirm the letters are jumping with my patch. Fair enough, consider this patch dropped. I've added the check in Vulkan to make that version exact to C. Thanks for testing and writing the filter! _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".