6. 8.4.1.2.1 Derivation process for the co-located 4x4 sub-macroblock partitions Inputs to this process are mbPartIdx and subMbPartIdx. Outputs of this process are the picture colPic, the co-located macroblock mbAddrCol, the motion vector mvCol, the reference index refIdxCol, and the variable vertMvScale (which can be One_To_One, Frm_To_Fld or Fld_To_Frm). Let firstRefPicL1 be the reference picture referred by RefPicList1[ 0 ]. When firstRefPicL1 is a frame or a complementary field pair, let firstRefPicL1Top and firstRefPicL1Bottom be the top and bottom fields of firstRefPicL1, and let the following variables be specified as topAbsDiffPOC = Abs( DiffPicOrderCnt( firstRefPicL1Top, CurrPic )) …… H.264 is complicated Source: Recommendation H.264, page 148 of 540