In the same and other embodiments, the motion vector scaling based on POC difference for temporal motion vector prediction may be disabled across multiple pictures within an access unit. Hence, although each picture may have a different POC value within an access unit, the motion vector is not scaled and used for temporal motion vector prediction within an access unit. This is because a reference picture with a different POC in the same AU is considered a reference picture having the same time instance. Therefore, in the embodiment, the motion vector scaling function may return 1, when the reference picture belongs to the AU associated with the current picture.
In the same and other embodiments, the motion vector scaling based on POC difference for temporal motion vector prediction may be optionally disabled across multiple pictures, when the spatial resolution of the reference picture is different from the spatial resolution of the current picture. When the motion vector scaling is allowed, the motion vector is scaled based on both POC difference and the spatial resolution ratio between the current picture and the reference picture.
In the same or another embodiment, the motion vector may be scaled based on AUC difference instead of POC difference, for temporal motion vector prediction, especially when the poc_cycle_au has non-uniform value (when vps_contant_poc_cycle_per_au==0). Otherwise (when vps_contant_poc_cycle_per_au==1), the motion vector scaling based on AUC difference may be identical to the motion vector scaling based on POC difference.