The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
Aug. 19, 2025
Filed:
Mar. 01, 2024
Apple Inc., Cupertino, CA (US);
Yeqing Wu, Cupertino, CA (US);
Yunfei Zheng, Santa Clara, CA (US);
Yixin Du, Milpitas, CA (US);
Alican Nalci, Cupertino, CA (US);
Hilmi E. Egilmez, Santa Clara, CA (US);
Guoxin Jin, San Diego, CA (US);
Alexandros Tourapis, Los Gatos, CA (US);
Jun Xin, San Jose, CA (US);
Hsi-Jung Wu, San Jose, CA (US);
APPLE INC., Cupertino, CA (US);
Abstract
Techniques are proposed to improve temporal motion projection in video coding. Candidate reference frames available for use in temporal motion projection are sorted in processing order according to scores assigned based on estimates of the reference frames' suitability for prediction. Such estimates may be based on temporal distance between each candidate reference frame and that reference frame's prediction references. Estimates may be based, for each reference frame, based on an estimate of coding quality of a reference frame from which the respective candidate reference frame makes a prediction reference. Once sorted, the candidate reference frames may be processing in the sorting order to supply prediction data to a current frame that is to be coded from the candidate reference frames. Additionally, hardware friendly designs of motion field hole filling and motion vector smoothing operations are proposed. Such designs can reduce hardware implementation complexity and benefit hardware parallel processing in several aspects: by removing the dependency among different processing block rows for hole filling and motion vector smoothing so that it is becomes easier and friendlier to achieve hardware parallel processing; by reducing the hardware bandwidth loading overhead; by improving hardware pipeline throughput; and/or by avoiding adding a line buffer to store the data from the above row since a line buffer will increase hardware cost.