Wow - this is probably the best stuff I've seen released for ages.
It has a LOT of potential for framerate conversion, deinterlacing and denoising!
Wow! Great work!
@scharfi: You need to explicitly give the first video parameter, etc:
Code:
vec = mvanalyse(fth=30, isb=true)
mvshow(last, vec)
This is because the vector clip is optional, and therefore your vector information is assumed to be the clip you'd like to apply your motion stuff on.
A bit about the implementation (feel free to ignore)
- I really like the idea of having motion information as a clip.
- Forward backward considerations. It seems a bit strange you need to do both backward and forward prediction. Why not simply alsways do forward prediction, and request the previous (cached) motion frame?
- Binary format. A separate index file, and a motion vector file would probably be the nicest implementation. When frame 'n' is requested:
1) Check if present in index. If yes, read MV's from file.
2) Calculate MV's.
3) Append MV information to binary file.
4) Write index of frame 'n' to index file.
That way you only need to keep the index (two integers per frame) in memory, and you get random access.