Log in

View Full Version : another restore function


Pages : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 [15] 16 17 18

Sharc
26th March 2018, 18:07
Can a mod approve the attachment, please?

real.finder
10th June 2018, 20:53
srestore v2.793

pastebin (https://pastebin.com/sDXQM8mL) and attachment

fix bug in 12bit thanks to StainlessS, maybe it will be the last edit by me since StainlessS work on update for srestore

StainlessS
10th June 2018, 23:34
maybe it will be the last edit by me since ...
Absolutely not, no, you dont get out of it that easily. :)
I am only reformatting and moving stuff around, I've never used high bit depth stuff at all and dont even know what functions / filters are available.
Martin53 did a convert to an early form of the Multi-instance style developed by himself and Gavino, I am also converting to a later style of same.
[EDIT: also making possible to run under either Avs Std with GScript, or Avs+ without GScript, the real reason for my mods]

I look forward to many years of updates by the master himself, Real.Finder, https://www.cosgan.de/images/more/bigs/i117.gif

All Hail Real.Finder https://www.cosgan.de/images/smilie/musik/k015.gif https://www.cosgan.de/images/more/bigs/i040.gif https://www.cosgan.de/images/midi/figuren/h040.gif

StainlessS
11th June 2018, 16:57
Further to above, Adding GScript functionality can make it possible speed stuff up a bit, consider,

current script

### frame output calculation - resync - dup ###
dbb = select(pos+2, Srestore_d43%%%, Srestore_d32%%%, Srestore_d21%%%, Srestore_d10%%%, Srestore_d01%%%)
dbc = select(pos+2, Srestore_d32%%%, Srestore_d21%%%, Srestore_d10%%%, Srestore_d01%%%, Srestore_d12%%%)
dcn = select(pos+2, Srestore_d21%%%, Srestore_d10%%%, Srestore_d01%%%, Srestore_d12%%%, Srestore_d23%%%)
dnn = select(pos+2, Srestore_d10%%%, Srestore_d01%%%, Srestore_d12%%%, Srestore_d23%%%, Srestore_d34%%%)


The above Selects, are implemented (I think) as functions within Avisynth (rather than in the script parser), each of the possible
selections are evaluated before calling the Select() function to pick out the required one.
Each of the above Srestore_xxx%%% style names are Global variables, and so each of them is slower than local variable access,
and each select call accesses five such slow Globals.
(The '%%%' bit is replaced by some unique name for Function Multiple Instancing, we also replace these in our mod to '@@@' as there
is potential for problems with current '%%%').

With GSCript can use instead eg

### frame output calculation - resync - dup ###
if (pos+2==0) { dbb = Srestore_d43@@@ dbc = Srestore_d32@@@ dcn = Srestore_d21@@@ dnn = Srestore_d10@@@ }
else if(pos+2==1) { dbb = Srestore_d32@@@ dbc = Srestore_d21@@@ dcn = Srestore_d10@@@ dnn = Srestore_d01@@@ }
else if(pos+2==2) { dbb = Srestore_d21@@@ dbc = Srestore_d10@@@ dcn = Srestore_d01@@@ dnn = Srestore_d12@@@ }
else if(pos+2==3) { dbb = Srestore_d10@@@ dbc = Srestore_d01@@@ dcn = Srestore_d12@@@ dnn = Srestore_d23@@@ }
else { dbb = Srestore_d01@@@ dbc = Srestore_d12@@@ dcn = Srestore_d23@@@ dnn = Srestore_d34@@@ }

Only 1 of the above lines is processed, and so with each local var setting only a single Global access is required.

NOTE for Real.Finder only, for eg 'Srestore_d43%%%', the 'Srestore_' is purely ornamental, d43%%% would uniquely identify
the var even with multiple instances, so 'Srestore_' part is totally superfluous.

Reading the values of Global variables is slower than local variable access (locals are scanned first before Globals list).
AVS+, uses a hash table to access Local and Global variables, but Avs Std does not, and so for Avs Std the impact may be
somewhat higher than avs+.

See here thread on slow access to Global Variables Names, in particular those defined early in Avisynth system, eg False and True.
Informational: Compare with Bool literal is SLOW!:- https://forum.doom9.org/showthread.php?p=1650952#post1650952
[EDIT: Above link really no more than an interesting read, not really related to the slower Global access in this case]

I have not done any speed tests so far, comparing original prev version SRestore with my mod, but it should at least be a little
faster I think, I'll post when more complete. There will likely be no mod to the algorithm used, only shuffling stuff about.

StainlessS
12th June 2018, 00:45
Sorry, Real.Finder, I added a second suspect bug via EDIT to my post in your other thread, seems you did not see the EDIT before posting the fix.

Here, https://forum.doom9.org/showthread.php?p=1844187#post1844187

EDIT: Not sure but think maybe this line also screwed up (was not sure what it was supposed to be).

sscalva = sdoscal ? shbdbpc == 10 ? 4 : shbdbpc == 12 ? 8 : shbdbpc == 14 ? 64 : 256 : 1

Looks like it might be supposed to be 12 : 16, where something like for 12 bit, 128 * 8 = 1024,
and should (maybe be) 128 * 16 = 2048.


I'm not sure that above is a bug, only suspect that it may be.

real.finder
12th June 2018, 02:55
yes, it's bug, it has relation with the previous one

srestore v2.794

pastebin (https://pastebin.com/wG2Sus1y) and attachment

fix another bug in 12bit thanks to StainlessS

manolito
12th June 2018, 06:09
Just a quick question about using the latest version 2.794 on an ancient computer (WinXP, CPU without SSE2 capability).

Right now I still use srestore 2.7e because at the time when I installed it this was the last version which worked on my machine. Probably because I have to use masktools-v2.0a48, all later versions do not run on my computer.

Now I just gave v. 2.794 a quick whirl (using the same old masktools version under AVS 2.6), and to my surprise it worked. I just used the frate param though. As you might guess I do not care for high bitdepth or high colors. So my question is if it is safe to switch to the current version of srestore, or am I playing with fire? Does the new version have any advantages over the old 2.7e on my ancient system?


Cheers
manolito

real.finder
12th June 2018, 06:51
Just a quick question about using the latest version 2.794 on an ancient computer (WinXP, CPU without SSE2 capability).

Right now I still use srestore 2.7e because at the time when I installed it this was the last version which worked on my machine. Probably because I have to use masktools-v2.0a48, all later versions do not run on my computer.

Now I just gave v. 2.794 a quick whirl (using the same old masktools version under AVS 2.6), and to my surprise it worked. I just used the frate param though. As you might guess I do not care for high bitdepth or high colors. So my question is if it is safe to switch to the current version of srestore, or am I playing with fire? Does the new version have any advantages over the old 2.7e on my ancient system?


Cheers
manolito

it's not safe since there are scale functions in almost every lut line, which make it give wrong output in old masktools2, you can go back to some older mods from v2.7i and down

manolito
12th June 2018, 06:59
:thanks: for the quick reply...

real.finder
12th July 2018, 02:17
srestore v2.795 pastebin (https://pastebin.com/DDk5W6T9) and attachment

srestore v2.796 (need SMDegrain.avsi (v3.1.2.101s or up)) pastebin (https://pastebin.com/JYBjMBvx) and attachment

Katie Boundary
30th August 2018, 01:51
Should this be applied before bob-deinterlacing? After? Does it replace a bob-deinterlacer? Where in my workflow should I put this filter?

johnmeyer
30th August 2018, 03:36
Should this be applied before bob-deinterlacing? After? Does it replace a bob-deinterlacer? Where in my workflow should I put this filter?It depends on your source. You might want to read this part of the Wiki:

http://avisynth.nl/index.php/Srestore#Examples

It shows one example where SRestore is placed after the bob deinterlacing. I don't think I've ever used it that way. My advice is to try it out and experiment a bit.

Boulder
30th August 2018, 04:09
I'd say that if working with non-animation type of material, at least 95% of the time, SRestore is applied after bob-deinterlacing the source.

Katie Boundary
30th August 2018, 04:14
I'd say that if working with non-animation ...

What if I'm working with animation? Specifically Transformers Armada and The Real Ghostbusters

Boulder
30th August 2018, 04:16
I don't have any experience with that, but I think that there are better alternatives for processing those than SRestore. SRestore works wonders for standard screwed up PAL->NTSC/NTSC->PAL conversions but animation is a very different beast.

manono
30th August 2018, 09:26
Should this be applied before bob-deinterlacing? After? Does it replace a bob-deinterlacer? Where in my workflow should I put this filter?

Do you understand what its purpose is?

As Boulder mentioned, it's designed to fix field-blended videos resulting from bad standards conversions - PAL to NTSC or NTSC to PAL. If that's what you intend to do, you first bob the video followed by the use of SRestore. As usual, an untouched sample should be provided if you'd like more informed help.

Sharc
30th August 2018, 11:22
srestore v2.795

pastebin (https://pastebin.com/DDk5W6T9) and attachment
With v2.795 I am getting the error
mt_lutxy does not have a named argument "use_expr"
(SRestore_avsi, line 105)

There was no problem with v2.794

I am on Avisynth 2.60

ChaosKing
30th August 2018, 11:47
Update your masktools plugin

Sharc
30th August 2018, 12:03
Update your masktools plugin
Yep, that helped. Thanks.

Katie Boundary
30th August 2018, 20:47
I don't have any experience with that, but I think that there are better alternatives for processing those than SRestore. SRestore works wonders for standard screwed up PAL->NTSC/NTSC->PAL conversions

it's designed to fix field-blended videos resulting from bad standards conversions - PAL to NTSC or NTSC to PAL.

So what's best to use for a botched NTSC -> NTSC conversion?

SaurusX
30th August 2018, 21:12
What if I'm working with animation? Specifically Transformers Armada and The Real Ghostbusters

Some of those Real Ghostbusters episodes have 3+ frames blended. Nothing is going to undo that.

manono
30th August 2018, 22:00
So what's best to use for a botched NTSC -> NTSC conversion?
Still SRestore. But rather than allowing SRestore to set the default framerate (25fps for PAL sources poorly converted to NTSC and 23.976 for film sources poorly converted to PAL), you have it set for 23.976. An example:

Bob ###use your favorite bobber
Srestore(Frate=23.976)

A sample will still prove useful. However, if it's as SaurusX says you might get vastly improved, but still far from perfect results. For Srestore to work well, for every field pair you need at least one of the fields 'clean' (unblended). Depending on how much work you're willing to do, you can go through it afterwards manually to fix it with interpolation or freezeframing (since it's animation).

wonkey_monkey
30th August 2018, 23:19
So what's best to use for a botched NTSC -> NTSC conversion?

Post. A. Sample.

Katie Boundary
30th August 2018, 23:56
Still SRestore. But rather than allowing SRestore to set the default framerate (25fps for PAL sources poorly converted to NTSC and 23.976 for film sources poorly converted to PAL), you have it set for 23.976. An example:

Bob ###use your favorite bobber
Srestore(Frate=23.976)

Will it still de-blend if I need 60hz output?

For Srestore to work well, for every field pair you need at least one of the fields 'clean' (unblended). Depending on how much work you're willing to do, you can go through it afterwards manually to fix it with interpolation or freezeframing (since it's animation).

By field pair, do you mean frame? Both shows were edited on tape, so they have things like natively 60hz effects and sometimes orphaned fields around scene changes. What's the best solution for deblending such content?

manono
31st August 2018, 00:24
Will it still de-blend if I need 60hz output?

It'll do the best it can, yes. But the output won't be 60fps, not with the script I posted earlier.

By field pair, do you mean frame?
I meant field pair, the top and bottom fields that made up the original frames before bobbing. After bobbing, yes, it would be the frame pairs - the even and odd frames each forming a pair. One from each pair has to be clean for SRestore to do its job properly.

If you want 59.94fps, then you might bob it followed by trying CDeblend (http://avisynth.nl/index.php/Cdeblend). No promises, though. In the absence of a sample, neither I nor anyone else can try out different ideas.

hello_hello
31st August 2018, 00:31
Will it still de-blend if I need 60hz output?

It's generally used to deblend PAL converted to NTSC with field blending, or NTSC field blended from PAL, so you end up with 23.976fps or 25fps progressive.

By field pair, do you mean frame? Both shows were edited on tape, so they have things like natively 60hz effects and sometimes orphaned fields around scene changes. What's the best solution for deblending such content?

It's usually converted by blending fields, not frames, and due to the way it's done, when the top fields have blending the bottom fields don't and vice versa, so after bob-interlacing and the fields are interpolated to frame height, there should always be unblended frames to keep.

This field blends NTSC to PAL, although you'd probably want to use a better bobber..

AviSource("NTSC_clip.avi")
Bob(height=576)
BicubicResize(720,576)
ConvertFPS(50)
SeparateFields()
SelectEvery(4,0,3)
Weave()

If SRestore has a hard time with animation due to it having lots of duplicate frames (it works very well for video), you can try deblending with one of these functions, but it requires some trial and error to find the best "select" value, and if the blending pattern changes (it usually doesn't), you'll have to adjust it where it breaks.
https://forum.doom9.org/showthread.php?p=1848202#post1848202

Edit: Damn! manono beat me to it. :(

Katie Boundary
31st August 2018, 01:36
It'll do the best it can, yes. But the output won't be 60fps, not with the script I posted earlier.

I mean if I set frate=59.94, will it still de-blend?

I meant field pair, the top and bottom fields that made up the original frames before bobbing. After bobbing, yes, it would be the frame pairs - the even and odd frames each forming a pair. One from each pair has to be clean for SRestore to do its job properly.

That sounds like a very elaborate way of saying "yes".

What I'm getting out of this is that Srestore is built upon the assumption that the content was originally 100% progressive, and it should not be applied to anything that was originally edited on tape and therefore has orphaned fields around scene changes, 60hz effects, etc. Is that accurate?

If you want 59.94fps, then you might bob it followed by trying CDeblend (http://avisynth.nl/index.php/Cdeblend). No promises, though.

:thanks:

In the absence of a sample, neither I nor anyone else can try out different ideas.

I just got done digging through my TF Armada episodes. I still had some un-converted VOBs in there from last year, so I had to index them all and open them in Vdub to see if they were affected. They weren't. Only episodes 27-40 are blended, but the leftover Vobs were all from 41+, so I'll have to re-rip some stuff. Give me a few hours.

EDIT: oh, this is interesting. For The Real Ghostbusters, it looks like the ABC episodes and the syndicated episodes each have their own set of "wipes". Only the ABC episodes use the 60 hz wipes, but they're also the episodes that were transferred correctly. As for the syndicated episodes, Saurus is correct; they look like they've gone through multiple rounds of blending and should probably be written off as a lost cause. Ironically, the syndicated episodes have perfectly preserved openings. I'll give you an Armada episode.

EDIT 2: here's the blended version of the TF Armada opening www.sendspace.com/file/3ldeo2

manono
31st August 2018, 04:48
Ordinarily one wouldn't post an anime opening as a sample as they're often different from the body of the episodes. However, it's far from perfect but it's a definite improvement:

Yadifmod(mode=1, edeint=nnedi3(field=-2))
SRestore(Frate=23.976)

https://www.sendspace.com/file/7m07dp

It's 23.976fps because that's what it is. I see no benefit to making it 59.94FPS, although it can be done with:

SelectEvery(2,0,0,0,1,1)

placed at the end of the script. I didn't have much luck bobbing it and then trying to unblend that, keeping it at 59.94fps. Others might have different ideas and have better luck than I.

What I'm getting out of this is that Srestore is built upon the assumption that the content was originally 100% progressive, and it should not be applied to anything that was originally edited on tape and therefore has orphaned fields around scene changes, 60hz effects, etc. Is that accurate?

It's far and away the best filter when working with field-blended garbage. Only the worst fly-by-night companies take film and then field-blend it to get 29.97fps out of it. Editing as video doesn't mean field-blending afterwards. Not when they could have just hard telecined it. You've worked with all those sci-fi shows before with the 60Hz effects. Those companies didn't feel the need to ruin it by field-blending it. You could just bob those and be done with them. Not this crap.

hello_hello
31st August 2018, 17:34
What I'm getting out of this is that Srestore is built upon the assumption that the content was originally 100% progressive, and it should not be applied to anything that was originally edited on tape and therefore has orphaned fields around scene changes, 60hz effects, etc. Is that accurate?

I'm pretty sure field blending can be applied to both interlaced video and progressive sources, and "orphan fields" would be blended along with the rest. Using the method I posted earlier, interlaced video would be bob deinterlaced first, converted to a new frame rate with blending (50fps progressive for PAL), then fields are decimated to output interlaced video again (25fps or 50i for PAL).

I think it'd be unusual to field blend hard telecined sources, You'd convert them to a new frame rate from their progressive state.

Katie Boundary
1st September 2018, 20:23
Armada DOES have orphaned fields around scene changes and therefore interruptions in the pulldown pattern. They might not be apparent in the opening but they do exist. I can rip one of the clean episodes to prove it.

Editing as video doesn't mean field-blending afterwards. Not when they could have just hard telecined it.

Well, obviously. But that doesn't stop anyone from taking a finished episode with clean 60 hz or otherwise edited-on-tape content and then needlessly blending it anyway. That's the kind of content that I'm interested in de-blending right now.

hello_hello
2nd September 2018, 20:19
Armada DOES have orphaned fields around scene changes and therefore interruptions in the pulldown pattern. They might not be apparent in the opening but they do exist. I can rip one of the clean episodes to prove it.

I believe you. DVDs are an interlaced format intended for CRTs expecting interlaced video. The TV draws the odd scanlines from the first field, then the even lines from the next field, and so on. As far as I know, "orphan fields" don't matter to an interlaced display because it has no concept of frames. It's only when you try to make frames.....

Anyway, I was simply saying the field blending conversion process wouldn't be concerned with orphaned fields.

Well, obviously. But that doesn't stop anyone from taking a finished episode with clean 60 hz or otherwise edited-on-tape content and then needlessly blending it anyway. That's the kind of content that I'm interested in de-blending right now.

Where did your sample come from? If you compare the fields it appears to have been frame blended in places and it's 23.976 progressive, so maybe it was detelecined and the blending is the result blend de-interlacing combed frames, or something....

The original DVD source might be a different story, but I doubt you'll be able to fix that.

Kurogane
28th September 2018, 10:15
I've a problem w ith avs+


SetFilterMTMode("DEFAULT_MT_MODE", 2)
sanimebob()
srestore()
Prefetch(6)


Give me this error "I don't know what ''dm"means. Line 4 (Prefetch)"

- MaskTools2 - v2.7.31
- TIVTC - v1.0.11
- RgTools - v0.97.0
- GRunT - grunt-x64/1.0.1a

real.finder
28th September 2018, 13:48
I've a problem w ith avs+


SetFilterMTMode("DEFAULT_MT_MODE", 2)
sanimebob()
srestore()
Prefetch(6)


Give me this error "I don't know what ''dm"means. Line 4 (Prefetch)"

- MaskTools2 - v2.7.31
- TIVTC - v1.0.11
- RgTools - v0.97.0
- GRunT - grunt-x64/1.0.1a

its known thing, you can't use mt (Prefetch) with any runtime function like srestore

Kurogane
28th September 2018, 19:01
its known thing, you can't use mt (Prefetch) with any runtime function like srestore

Any solution? even outside of MT not work.

real.finder
28th September 2018, 22:09
Any solution? even outside of MT not work.

no solution for now (unless pinterf or anyone find fix for it)

what you mean outside of MT? you must not use Prefetch at all (remove it from the script) to make it work

color
29th September 2018, 12:54
The links does not longer work. Does anyone have this plugin?

color
29th September 2018, 14:45
Thank you Wolfberry

ChaosKing
29th September 2018, 15:11
@real.finder Why not push your scripts to github? It often feels like a quest to find the up to date version. Wouldn't it be easier for everyone?

real.finder
29th September 2018, 21:29
@real.finder Why not push your scripts to github? It often feels like a quest to find the up to date version. Wouldn't it be easier for everyone?

cuz pastebin is easier for me (for now and before), but I was thinking about change to github but because of lack of time and sometimes laziness I didn't

ChaosKing
29th September 2018, 21:36
I can recommend GitKraken (it's free for non commercial projects) One click and it's on github. It's even faster than pastebin :D
It's very easy to use and has a nice gui. https://www.gitkraken.com/

You do not want to go back afterwards.

Kurogane
29th September 2018, 22:10
no solution for now (unless pinterf or anyone find fix for it)

what you mean outside of MT? you must not use Prefetch at all (remove it from the script) to make it work

SetFilterMTMode("DEFAULT_MT_MODE", 2)
.....
Prefetch(6)
sanimebob()
srestore()

Boulder
11th December 2018, 20:05
Does anyone have something to try to restore this video? It's from Dream Theater Live at Budokan Blu-ray.

https://drive.google.com/open?id=11fwcTY9Uc9Rb2HO0lm9noVkd85CbslmV

To me it looks like hard telecined content encoded in a very wrong way but I cannot figure out how to make it look good (enough).

Sharc
11th December 2018, 21:02
Does anyone have something to try to restore this video? It's from Dream Theater Live at Budokan Blu-ray.

https://drive.google.com/open?id=11fwcTY9Uc9Rb2HO0lm9noVkd85CbslmV

To me it looks like hard telecined content encoded in a very wrong way but I cannot figure out how to make it look good (enough).
This looks like a messed up framerate (multiple) conversion. Blended progressive frames, and both fields of the interlaced/telecined sections also blended….
I doubt there is a fix for that…….
Perhaps try to catch the clean frames and interpolate the gaps?

hello_hello
11th December 2018, 22:14
Does anyone have something to try to restore this video? It's from Dream Theater Live at Budokan Blu-ray.

https://drive.google.com/open?id=11fwcTY9Uc9Rb2HO0lm9noVkd85CbslmV

To me it looks like hard telecined content encoded in a very wrong way but I cannot figure out how to make it look good (enough).

The frame rate is a little odd, and there's still a couple of blended frames on scene changes. Maybe the blending pattern changes. I'm not sure. You might be able to tune SRestore's double blend removal a bit. Or maybe drop TDeint or the frame rate conversion to see if they're the cause. This seems to clean it up reasonably well though. If there's still aliasing in places, you might want to try QTGMC(FPSDivisor=2) instead of TDeint. Not perfect yet, but it's a start.

LWLibavVideoSource("D:\dreamtheater.mkv.lwi", fpsnum=30000, fpsden=1001)
TDeint()
Srestore(mode=-4,omode="pp0")
TDecimate()
Gradfun3()

dreamtheater.mkv (https://ufile.io/3ree3)

PS. Where it says dmode in the SRestore wiki (if it still does), it should say mode.

Boulder
12th December 2018, 04:45
Thanks, I'll give that one a go :) The scene changes are not a big problem since it's usually quite hard to make things work around them, especially with this kind of material with lots of flashes etc.

StainlessS
17th December 2018, 14:31
Boulder,
I ran your sample through ExBlend (latest beta Edition), and it seemed to be detecting about 96% of blends.
See this thread first for Didee's Blur inspiration:- https://forum.doom9.org/showthread.php?t=162599&highlight=exblend

And then here:- https://forum.doom9.org/showthread.php?p=1558840#post1558840

NOTE, The ExbFile arg dont work properley on Win7 (think M$ must have broken it, also recently seen similar problems posted about Avs+ paths),
so you need give full path (defaults to "ExBlend", need set eg "D:\ExBlend" to fix on Win7+, & maybe Vista).

ExBlend is definitely not intended for this sort of clip, it does however seem to detect it.
Good luck.

EDIT: It even seems to detect without the blur, but give it a whirl with/without.
I did not try with blur.

EDIT: Path problem, where ExbFile="ExBlend" on XP, works fine writing data file to current dir, on W7, says it wrote ok, but file nowhere to be found, dont know where it gets written (if indeed it does at all, search did not find it).

EDIT:

AVISource("D:\ExB\dreamtheater.264.AVI")
#ExBlend(mode=1,PAL=0,ExBFile="D:\EXB\ExBlend",Debug=true)
ExBlend(mode=2,PAL=0,ExBFile="D:\EXB\ExBlend",Debug=true,Show=5)
Return Last

Dont use directshow.

EDIT: Seems that ChiDragon already reported problems in paths, although I had no idea as to the cause back then.

On my system, the default location for writing "Exbfile" is the Plugin's dir rather than the script dir. This is a problem because it gets written to the VirtualStore and then isn't read back when set to mode=2. (My plugin is located in %PROGRAMFILES(x86)%\AviSynth 2.5\plugins\)

Boulder
17th December 2018, 14:58
Thanks, I'll have to try that one too. There seems to be something seriously wrong with that release, I noticed a section where there were dupes all over the place after the deblending of SRestore. I was already resigned to leaving everything as they are :)

StainlessS
17th December 2018, 15:26
dupes all over the place after the deblending of SRestore
I think you could do worst than give DropDeadGorgeous a try on the dupes [EDIT: After SRestore or ExBlend].
If you do, then please give some kind of feedback, good or bad, thanx.

Incidentally, I think I totally misinterpreted (mis-remembered) JohnMeyer description of the DropDeadGorgeous problem, should have been
dupes followed by eventual drops, but I implemented drops followed by eventual dupes
(John must have decided not to let on, and leave me in suspense, likes a good giggle does john).
Anyways, does a bloody good job even though I fixed the wrong problem, maybe I try fix the right prob when I get time.

StainlessS
18th December 2018, 17:17
Use something like


AVISource("D:\ExB\dreamtheater.264.AVI")
ORG=Last
DC=ORG.Blur(0,1)
#ORG.ExBlend(DClip=DC,mode=1,PAL=0,ExBFile="D:\EXB\ExBlend",Debug=true)
ORG.ExBlend(DClip=DC,mode=2,PAL=0,ExBFile="D:\EXB\ExBlend",Debug=true,Show=5)
Return Last


EDIT: Shows detection of blends @ 95.44% on last frame from of your sample.
92 blend pairs detected out of maximum possible 96.

EDIT:
Hope this works ok, long time since I use ExBlend.

AVISource("D:\ExB\dreamtheater.264.AVI")
DC=Last.Blur(0,1)

#return Last.ExBlend(mode=1,PAL=0,ExBFile="D:\EXB\ExBlend",Debug=true,DClip=DC) # Pass 1

SHOW =0 # 0(off) or 5
DISP_EXBLEND = 1
COMP_UB = 1 # DeBlended frame from DC, Adjacent from Source)
# Combed Clip, Deblended, Decimated
EXB=Last.ExBlend(mode=2,PAL=0,disp=DISP_EXBLEND,CompUB=COMP_UB,ExBFile="D:\EXB\ExBlend",Debug=true,Show=SHOW,dclip=DC)
MC=EXB.MCDegrain(1) # Denoise all frames
ClipClop(EXB,MC,CMD="ExBlend_Decimated.Txt") # ExBlend clip with denoised De-blended frames only
Return Last

Boulder
18th December 2018, 18:05
Is there an x64 version of ExBlend available or will I need to install a 32-bit Avisynth+ environment?