We could deinterleave sad from mvs in the MVTools. Furthermore, having a header saying how the content is organized would help. But I don't see the point in caching many motion vectors. That won't speed up a filter as soon as it needs to do some processing.
In the header, we could have the following data :
* colorspace
* width of the analysed clip
* height of the analysed clip
* block width
* block height
* mv precision
* direction of the analysis ( forward / backward )
* number of frames between the analysed frame and the reference
* payload id
* payload size
* padding to align to 16
Then we would have the motion vectors ( each coordinate on a 16 bits signed integer ), and the payload ( which could contain all the data needed by MVTools but not by Motion )
|