mvLeftX = mv[0];
mvLeftY = mv[1];
CAVLCWriter.writeSE(out, mv[0] - mvpx); // mvdx
CAVLCWriter.writeSE(out, mv[1] - mvpy); // mvdy
Picture8Bit mbRef = Picture8Bit.create(16, 16, sps.chroma_format_idc);
<BUG>Picture mb = Picture.create(16, 16, sps.chroma_format_idc);
interpolator.getBlockLuma(ref, mbRef, 0, (mbX << 6) + mv[0], (mbY << 6) + mv[1], 16, 16);</BUG>
interpolator.getBlockChroma(ref.getPlaneData(1), ref.getPlaneWidth(1), ref.getPlaneHeight(1),
mbRef.getPlaneData(1), 0, mbRef.getPlaneWidth(1), (mbX << 6) + mv[0], (mbY << 6) + mv[1], 8, 8);
interpolator.getBlockChroma(ref.getPlaneData(2), ref.getPlaneWidth(2), ref.getPlaneHeight(2),

mvLeftX = mv[0];
mvLeftY = mv[1];
CAVLCWriter.writeSE(out, mv[0] - mvpx); // mvdx
CAVLCWriter.writeSE(out, mv[1] - mvpy); // mvdy
Picture8Bit mbRef = Picture8Bit.create(16, 16, sps.chroma_format_idc);
int[][] mb = new int[][] {new int[256], new int[256 >> (cw + ch)], new int[256 >> (cw + ch)]};
interpolator.getBlockLuma(ref, mbRef, 0, (mbX << 6) + mv[0], (mbY << 6) + mv[1], 16, 16);
interpolator.getBlockChroma(ref.getPlaneData(1), ref.getPlaneWidth(1), ref.getPlaneHeight(1),
mbRef.getPlaneData(1), 0, mbRef.getPlaneWidth(1), (mbX << 6) + mv[0], (mbY << 6) + mv[1], 8, 8);
interpolator.getBlockChroma(ref.getPlaneData(2), ref.getPlaneWidth(2), ref.getPlaneHeight(2),
