I've been doing some comparison between
Deshaker and
Mercalli ProDad v4. I wanted to share my results.
First, Deshaker is a VirtualDub plugin and is hard to use. I'm trying to program it within my own software to automate the process but am encountering a few challenges.
Mercalli ProDad is a commercial software. It used to integrate within Adobe Premiere but v3 and v4 are stand-alone software.
So here are the results, for those interested.
Deshaker
Pros:
- Cleaner image
- Better efforts at reconstructing borders and not zooming unecessarily
Cons:
- Difficult to configure and use
- Slow
- Some wobble or jello effects
Mercalli ProDad
Pros:
- Much easier to use
- Much faster
- Wobble and jello effects are still there but weaker
Cons:
- Image is blurrier
- It zooms a lot more
- Requires a lossy re-encoding of the file -- not ideal in a video processing chain
I am aware that some of the settings can be tweaked in both software to improve the results. Here I have gone mostly with default settings with just minor customization.
I would have expected Mercalli ProDad to do a much better job because it analyzes the movements in 3D and is a lot more sophisticated.
Overall, Deshaker wins. It will be worth spending more time to program its easy integration within an AviSynth script.
However, whenever I use "fill borders with previous or future frames", it fails to render the video. First the video processes, then the output jams on a frame, and after being jammed on the same frame for a while, it aborts the encoding. Will have to investigate.
There was a bug in AviSynth+ where it crashed in the destructor and I fixed it.
You need this updated VDubFilter.dll.
I'll have to keep testing whether the issues I'm seeing are related to AviSynth+ or I'm doing something wrong.