In one representative aspect, the disclosed technology may be used to provide a method for video encoding. This method includes partitioning a first component of a current video block into a first set of sub-blocks and partitioning a second component of the current video block into a second set of sub-blocks. A sub-block of the second component corresponds to one or more sub-blocks of the first component. The method also includes deriving, based on a color format of the current video block, motion vectors for the sub-block of the second component based on motion vectors for one or more corresponding sub-blocks of the first color component.
In another representative aspect, the disclosed technology may be used to provide a method for video decoding. The method includes receiving a block of video data that comprises a first component and at least a second component. The first component is partitioned into a first set of sub-blocks and the second component is partitioned into a second set of sub-blocks. A sub-block of the second component corresponds to one or more sub-blocks of the first component. The method includes deriving, based on a color format of the block of video data, motion vectors for a sub-block of the second component based on motion vectors for one or more corresponding sub-blocks of the first color component. The method also includes reconstructing, based on the derived motion vectors, the block of video data or decoding other blocks of video data in a same picture.
In yet another representative aspect, the above-described method is embodied in the form of processor-executable code and stored in a computer-readable program medium.
In yet another representative aspect, a device that is configured or operable to perform the above-described method is disclosed. The device may include a processor that is programmed to implement this method.