I guess many people (me included) found this question, trying just to use ffmpeg with the filter.
Those answers about compiling are great, but it's time-consuming and may be difficult for some people.
Nowadays there is a simple option to use Docker image that is already built with many filters, codecs and more.
Personally, I used this image https://github.com/jrottenberg/ffmpeg
Sample usage is very simple for deshake filter:
docker run -v $PWD:/temp/ \
jrottenberg/ffmpeg \
-i /temp/input.MTS \
-vf deshake \
/temp/out.avi
As well for vidstab filter:
# create vectors from input file
docker run -v $PWD:/temp/ jrottenberg/ffmpeg \
-i /temp/input.MTS \
-vf vidstabdetect=stepsize=6:shakiness=8:accuracy=9:result=/temp/transform_vectors.trf -f null -
# process file using vectors from step 1
docker run -v $PWD:/temp/ jrottenberg/ffmpeg \
-i /temp/input.MTS \
-vf vidstabtransform=input=/temp/transform_vectors.trf:zoom=1:smoothing=30,unsharp=5:5:0.8:3:3:0.4 \
/temp/out.avi
Just mind that created file "out.avi" will have root
owner and that should be changed.