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?