This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

How to understand the motion vectors from HDVICP ME

When we design our DM6467 encoder algorithm, we met a problem.

The motion vector output from ME module should become the input of the ECD module.

The result from ME (ref_h264e_me.txt) is as following:

(MBpair 0)
mv_offsets[0] = 133
mv_offsets[1] = 104
mv_offsets[2] = 128
mv_offsets[3] = 104
(MBpair 1)
mv_offsets[0] = 128
mv_offsets[1] = 104
mv_offsets[2] = 128
mv_offsets[3] = 104
(MBpair 2)
mv_offsets[0] = 128
mv_offsets[1] = 105
mv_offsets[2] = 128
mv_offsets[3] = 104
(MBpair 3)
mv_offsets[0] = 128
mv_offsets[1] = 104
mv_offsets[2] = 128
mv_offsets[3] = 104

But the ECD's input file: inp_h264e_ecd.txt

The content is something like:

sliceType = 5
(MBpair 0)
puiMotionVector[0] = 4
puiMotionVector[1] = 0
(MBpair 1)
puiMotionVector[0] = 131072
puiMotionVector[1] = 6
(MBpair 2)
puiMotionVector[0] = 6
puiMotionVector[1] = 2
(MBpair 3)
puiMotionVector[0] = 5
puiMotionVector[1] = 1

They are completely different. How to understand those motion vectors output?