Thanks for the lossless video samples. They take a lot of guesswork out of it, compared to screenshots.
It would be better to test with a full-frame tape instead of letterboxed, as then you would immediately see the black lines being added to certain captures. In fact, there are 3 lines "added" to the top of the 6317. (Any odd number of lines would reverse the field order, and only 1 of these lines is pure black.)
It's a lot easier to work with fields in Avisynth than
VirtualDub. Field Swap is definitely the wrong filter to use.
I decided that it was easier to show what I'm talking about by making a little screen capture video rather than trying to type up a long explanation with a bunch of attached screenshots. No audio though. In the video, I demonstrate using Avisynth viewed via AvsPmod to match the 6317 capture to the 6314 one.
https://youtu.be/BQZKRtI3x2M (view at 1080p)
There is a diagonal interference pattern in these composite captures. It isn't visible when looked at in weaved "frame" mode, because it changes between fields, and looking at the 50Hz video as 25fps frames is effectively a 50% temporal average. I demonstrate it from about the middle of the video until the end, but YouTube's compression smoothed it over a lot so it isn't as noticeable.
These are the Avisynth scripts I used. Lines that begin with
# are "comments" that are ignored when the script is read. An Avisynth filter line can be "commented-out" so that it is ignored. I toggle these commented-out lines with AvsPmod's ALT+Q command in the video. They begin with
#~ specifically.
Code:
AVISource("HS930_Sharpen_720x576_TvWonderUSB2.0_Composite_TBC5000_Driver_6.14.10.6314_.avi")
#~ AssumeBFF().SeparateFields() # To compare fields to 6317 capture.
# Cut 1st frame (2 fields) to match length of "fixed" 6317 capture.
Trim(1,0)
Code:
AVISource("HS930_Sharpen_720x576_TvWonderUSB2.0_Composite_TBC5000_Driver_6.14.10.6317_.avi")
AssumeTFF().SeparateFields()
# This capture starts one field later than 6314 capture, because of the different field order.
Trim(1,0) # Trim one field from start: this changes the temporal field order from TFF to BFF.
Weave()
# Match spatial alignment to 6314 capture.
Crop(0,3,0,0).AddBorders(0,0,0,3)
#~ AssumeBFF().SeparateFields() # Double-check that AssumeBFF matches 6314 capture.