Is there a filter for Avisynth that can compare frames? It takes two values (int - the position of the first frame, int - the position of the second frame), and returns bool (true or false)? And to test with 100% veracity.
Try StreamFab Downloader and download from Netflix, Amazon, Youtube! Or Try DVDFab and copy Blu-rays! or rip iTunes movies!
+ Reply to Thread
Results 1 to 5 of 5
Thread
-
-
I'm not sure I understand. If you're looking to find out if one frame is a true duplicate of another then, yes, the first pass of the 2-pass MultiDecimate can do that. It creates an mfile.txt with metrics and frame numbers which can be studied for true duplicates.
But, no true or false. It's 100% accurate and when you see 0.000000 (I forget the exact number of zeroes), you can be sure that frame is an exact duplicate of the frame before. You have to run that first pass on the whole video, or trim off just the parts you want to study.
TDecimate(Display=True) does something similar, showing 5 frames at a time with the one most like a duplicate being marked. Those are only to two decimal points and I don't know if that's accurate enough for you. I'm sure there are others. If this isn't what you had in mind, maybe provide more information. I'm sure others have other ideas. -
You might find some help here:
Comparing frames from two videos
Syncing Two Videos
This isn't quite as close to your question, but still might be of some value:
MatchFrames/LocateFrames v1.06
Do a search at doom9.org for what you are looking for, but restrict it to user name "StainlessS". He has written a LOT of AVISynth functions that let you compare and sync two clips. -
Set FRAME1 and FRAME2 to the numbers of the frames you want to compare:
Visually (any deviation from flat grey indicates they are not identical)
Code:FRAME1=100 FRAME2=200 f1= Trim(FRAME1, FRAME1) f2= Trim(FRAME2, FRAME2) Subtract(f1,f2).Levels(120,1,136,0,255)
Code:FRAME1=100 FRAME2=200 f1= Trim(FRAME1, FRAME1) f2= Trim(FRAME2, FRAME2) Interleave(v1,v2) ScriptClip(clip, "Subtitle(String(YDifferenceToNext))")
Last edited by jagabo; 9th Mar 2018 at 09:01.
-
For an even greater visual check to add to Jagabo's script you can use a 'Quadrophonic?' scrip[t for more detail.
Code:v1=directshowsource("C:\PathToVideo\[dp]Manjandani-1.mp4", audio=false).ConvertToYV12() v2=directshowsource("C:\PathToVideo\[dp]Manjandani-1_2.mp4", audio=false).ConvertToYV12() sub = v1.subtract(v2) substrong = sub.levels (122,1,132,0,255) StackVertical (StackHorizontal (v1.subtitle ("original"),v2.subtitle("encoded")), StackHorizontal(sub.subtitle("Difference"),substrong.subtitle("Difference amplified")))
[Attachment 44876 - Click to enlarge]
Similar Threads
-
How to compare between two images?
By BlurayHD in forum Video ConversionReplies: 6Last Post: 12th Feb 2018, 22:06 -
batch that compare filename in 2 folder
By marcorocchini in forum Newbie / General discussionsReplies: 2Last Post: 3rd Oct 2017, 04:58 -
How Can I Visually Compare Two Encodes?
By Pilotwings_64 in forum Video ConversionReplies: 10Last Post: 4th Jun 2014, 07:06 -
why is VLC so unstable compare to others?
By muffinman123 in forum Software PlayingReplies: 14Last Post: 22nd Jul 2013, 13:13 -
I want to compare two cuptures and see Which frames have a change
By gil900 in forum RestorationReplies: 37Last Post: 5th Apr 2013, 10:35