Bit-depth is hard-coded to 8 in get_refinemv_sad()
What version / commit were you testing with?
What is the issue?
In the function get_refinemv_sad(), the bit-depth argument passed to get_highbd_sad_ds()/ get_highbd_sad() is always 8, i.e., SAD value calculated is not scaled down for 10, 12-bit clips. Thus, the SAD value tends to be higher for high bit-depth clips. This SAD value is compared with a threshold (independent of bit-depth) to terminate the search process which results in fewer early terminations for high bit-depth clips. Hence, the correct bit-depth should be passed to get_highbd_sad_ds()/ get_highbd_sad(), so that the SAD value will be scaled down for 10, 12-bit clips to 8-bit and later compared with a threshold to early terminate the search process. The relevant code is as below:
#if CONFIG_SUBBLK_REF_DS
return get_highbd_sad_ds(src1, stride, src2, stride, 8, width, height);
#else
return get_highbd_sad(src1, stride, src2, stride, 8, width, height);
#endif