I could continue to tweeze this, but must be past the point of diminishing returns
so instead I'll just turn it loose:
Mallwalker said:
s1p11= side1raw.assumetff.separatefields.trim(1760,1761).weave.assumefps("ntsc_film")
s1p12= side1raw.assumetff.separatefields.trim(1762,40721).doubleweave.pulldown(0,3)#(0,2)
s1p1 = s1p11 ++ s1p12 ##_______________________________________________________________________# 2+2:3...2:3
s1p21= side1raw.assumetff.separatefields.trim(40722,-1).nnedi2(dh=true).assumefps("ntsc_film")
s1p22= side1raw.assumetff.separatefields.trim(40723,78587).doubleweave.pulldown(1,3)#(0,3)
s1p23= side1raw.assumetff.separatefields.trim(78588,78589).weave.assumefps("ntsc_film")
s1p2 = s1p21 ++ s1p22 ++ s1p23 #_______________________________________________________________# 1+3:2...3:2+2
s1p31= side1raw.assumetff.separatefields.trim(78590,-1).nnedi2(dh=true).assumefps("ntsc_film")
s1p32= side1raw.assumetff.separatefields.trim(78591,82190).doubleweave.pulldown(1,3)#(0,3)
s1p33= side1raw.assumetff.separatefields.trim(82191,-1).nnedi2(dh=true).assumefps("ntsc_film")
s1p3 = s1p31 ++ s1p32 ++ s1p33 #_______________________________________________________________# 1+3:2...3:2+1
s1 = s1p1 ++ s1p2 ++ s1p3
s2p11= side2raw.assumetff.separatefields.trim(804,-1).nnedi2(dh=true).assumefps("ntsc_film")
s2p12= side2raw.assumetff.separatefields.trim(805,36611).doubleweave.pulldown(0,3)#(0,2)
s2p13= side2raw.assumetff.separatefields.trim(36612,36613).weave.assumefps("ntsc_film")
s2p1 = s2p11 ++ s2p12 ++ s2p13 #_______________________________________________________________# 1+2:3...3:2+2
s2p2 = side2raw.assumetff.separatefields.trim(36614,69211).doubleweave.pulldown(0,3)#(1,3)
s2p2 = s2p2 ##________________________________________________________________________________# 3:2...2:3
s2p31= side2raw.assumetff.separatefields.trim(69212,-1).nnedi2(dh=true).assumefps("ntsc_film")
s2p32= side2raw.assumetff.separatefields.trim(69213,102202).doubleweave.pulldown(1,3)#(0,3)
s2p33= side2raw.assumetff.separatefields.trim(102203,-1).nnedi2(dh=true).assumefps("ntsc_film")
s2p3 = s2p31 ++ s2p32 ++ s2p33 #_______________________________________________________________# 1+3:2...3:2+1
s2 = s2p1 ++ s2p2 ++ s2p3
s3p11= side3raw.assumetff.separatefields.trim(824,825).weave.assumefps("ntsc_film")
s3p12= side3raw.assumetff.separatefields.trim(826,6517).doubleweave.pulldown(0,3)#(0,2)
s3p1 = s3p11 ++ s3p12 ##_______________________________________________________________________# 2+2:3...3:2
s3p2 = side3raw.assumetff.separatefields.trim(6518,46069).doubleweave.pulldown(0,2)#(0,3)
s3p2 = s3p2 ##________________________________________________________________________________# 2:3...3:2
s3p31= side3raw.assumetff.separatefields.trim(46070,84142).doubleweave.pulldown(0,3)#(1,3)
s3p32= side3raw.assumetff.separatefields.trim(84143,-1).nnedi2(dh=true).assumefps("ntsc_film")
s3p3 = s3p31 ++ s3p32 ##_______________________________________________________________________# 3:2...2:3+1
s3 = s3p1 ++ s3p2 ++ s3p3
s4p11= side4raw.assumetff.separatefields.trim(726,727).weave.assumefps("ntsc_film")
s4p12= side4raw.assumetff.separatefields.trim(728,39619).doubleweave.pulldown(0,2)#(0,3)
s4p1 = s4p11 ++ s4p12 ##_______________________________________________________________________# 2+2:3...3:2
s4p21= side4raw.assumetff.separatefields.trim(39620,39621).weave.assumefps("ntsc_film")
s4p22= side4raw.assumetff.separatefields.trim(39622,72123).doubleweave.pulldown(0,3)#(0,2)
s4p23= side4raw.assumetff.separatefields.trim(72124,72125).weave.assumefps("ntsc_film")
s4p2 = s4p21 ++ s4p22 ++ s4p23 #_______________________________________________________________# 2+2:3...3:2+2
s4p31= side4raw.assumetff.separatefields.trim(72126,72127).weave.assumefps("ntsc_film")
s4p32= side4raw.assumetff.separatefields.trim(72128,92867).doubleweave.pulldown(0,3)#(0,2)
s4p3 = s4p31 ++ s4p32 ##_______________________________________________________________________# 2+2:3...2:3
s4 = s4p1 ++ s4p2 ++ s4p3
s5p11= side5raw.assumetff.separatefields.trim(696,-1).nnedi2(dh=true).assumefps("ntsc_film")
s5p12= side5raw.assumetff.separatefields.trim(697,18609).doubleweave.pulldown(1,3)#(0,3)
s5p1 = s5p11 ++ s5p12 ##_______________________________________________________________________# 1+3:2...2:3
s5p21= side5raw.assumetff.separatefields.trim(18610,18611).weave.assumefps("ntsc_film")
s5p22= side5raw.assumetff.separatefields.trim(18612,56196).doubleweave.pulldown(0,3)#(0,2)
s5p23= side5raw.assumetff.separatefields.trim(56197,-1).nnedi2(dh=true).assumefps("ntsc_film")
s5p2 = s5p21 ++ s5p22 ++ s5p23 #_______________________________________________________________# 2+2:3...2:3+1
s5p3 = side5raw.assumetff.separatefields.trim(56198,0).doubleweave.pulldown(0,3).trim(0,14350) # pulldown(1,3)
s5 = s5p1 ++ s5p2 ++ s5p3 #________________________________________________________________# 3:2...
In the comments I've attempted to show the orphan frames at the head/tail of each clip.
The 1's get nnedi()ed. The orphan 2's (those which should have been 3 but one field is missing) they get weave()ed.
Each time pulldown(a,b) is called, I've also provided the other working (a,b) parameter in the comments.
Because sometimes you have a specific reason to choose the last two fields, or the first two, from each 3-field-frame.
The following GOUT frames are added, which were missing from your first ESB release:
30745 (I already mentioned this one)
32186
32192
59577
72774
106159
143038, 143042
These GOUT frames were nnedi()ed in you first MKV, but should've been weave()ed if two fields are present in the source:
30739 (already mentioned)
46516
134728