Latest release:
ExactDedup 0.03.
The 0.03 primarily incorporates changes from Aktan to fix some incompatibilities with AVISynth's Crop() function (and likely other AVISynth functions) and some VirtualDub usage patterns. There is also a 64-bit binary courtesy of Velitha.
Previous releases:
- ExactDedup 0.02 fixes a bug resulting in incorrect timecodes being output for some framerates (such as NTSC NES), and also outputs timecodes to nanosecond precision (as opposed to the microsecond precision of 0.01).
- ExactDedup 0.01 was the initial release.
---
Our old standby of DeDup only supports YV12 and YUY2 input/output, which doesn't play nicely with our current projects involving YUV444. Having written a
console-based filter of this nature which works in RGB24, I thought to myself, "this should be easy enough to improve upon for our purposes".
Thus, I present:
ExactDedup 0.01.
As the name suggests, ExactDedup functions only on exact frame duplicates, which is (not at all coincidentally) what we're looking for in the [wiki EncoderGuidelines]Encoder Guidelines[/wiki], and offers the advantage of (theoretically) working in any colorspace AVISynth supports (though I've only tested it with RGB input/output).
It functions in two passes, similar to DeDup; however the timecodes file is generated on the first pass, so you will not need to run the second pass twice to generate the timecodes file before actually encoding the run.
If you want to use this as a drop-in replacement for DupMC/DeDup calls, you'll need to:
- load the plugin (as usual);
- replace the DupMC call with an ExactDedup(firstpass = true) call; and
- replace the DeDup call with an ExactDedup(firstpass = false) call.
Further documentation's available in the package; otherwise, feel free to ask questions here about it.