IP Library › Granted Patent US 12,238,273
Granted Patent B2
US 12,238,273 · App. 17/095,765 · Granted Feb 25, 2025

Video coding system

Inventors: Dotan David Levi (Kiryat Motzkin, IL); Assaf Weissman (Moreshet, IL); Ohad Markus (Haifa, IL); Uri Gadot (Haifa, IL); Aviad Raveh (Bat Hefer, IL); Dror Gill (Haifa, IL); Nikolay Terterov (Saint Petersburg, RU); Pavel Titkov (Saint Petersburg, RU); Alexey Mitkovets (Saint Petersburg, RU); Alexey Martemyanov (Saint Petersburg, RU); Alexander Zheludkov (Saint Petersburg, RU)
Assignee: Mellanox Technologies, Ltd
H04N19/105H04N19/119H04N19/159H04N19/176H04N19/51
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,238,273
App. No.
17/095,765
Granted
Feb 25, 2025
Kind
B2
Abstract

A video coding system including an acceleration device including input circuitry configured, for each of a first plurality of video frames to be encoded, to receive an input including at least one raw video frame and at least one reference frame, and to divide each of the first plurality of video frames to be encoded into a second plurality of blocks, and similarity computation circuitry configured, for each one of the first plurality of video frame to be encoded: for each the block of the second plurality of blocks, to produce an intra-prediction hint and an intra-prediction direction. Related apparatus and methods are also provided.

Claims (31)

1. A video coding system comprising:

an acceleration device comprising hardware logic to receive a stream of video frames to be encoded, to divide each video frame in the stream into multiple blocks, and to compute an intra-prediction cost associated with intra-coding of the blocks in each video frame; and

a control unit to compute, in software, an estimate of motion in each video frame relative to a reference frame in the stream, to compute, responsively to the estimate of motion, an inter-prediction cost associated with inter-coding of the blocks in each video frame, to make a comparison between the intra-prediction cost and the inter-prediction cost for each video frame, and to select, responsively to the comparison, an encoding mode for each video frame from a set of encoding modes consisting of inter-coding in software by the control unit and intra-coding by the hardware logic,

wherein the acceleration device is to compute an intra-prediction hint with respect to one or more angles for intra-coding of each block, and the control unit is to apply the intra-prediction hint in specifying an angle for intra-coding each of the blocks, and the acceleration device is to intra-code the blocks in the intra-coding mode such that pixels in each of the blocks are propagated along the angle specified by the control unit, and

wherein the acceleration device is to compute a map of motion vector prediction, for application by the control unit in inter-coding of the video frames.

2. The system according to claim 1 , wherein the acceleration device is to compute the intra-prediction hint by estimating the intra-prediction cost for each of a plurality of different angles.

3. The system according to claim 1 , wherein the acceleration device is to compute the intra-prediction cost by calculating a DC intra-encoding prediction over each block.

4. The system according to claim 1 , wherein the acceleration device is to compute the intra-prediction cost by calculating a planar intra-encoding prediction over each block.

5. The system according to claim 1 , wherein the reference frame comprises a target frame.

6. The system according to claim 5 , wherein the reference frame does not comprise a reconstructed frame.

7. The system according to claim 1 , wherein the control unit is to encode the video frames using inter-coding and intra-coding in accordance with a specified video coding standard, selected from a group of multiple different video coding standards.

8. The system according to claim 7 , wherein the acceleration device is to compute the intra-prediction cost and to intra-code the frames for application by the control unit in implementing all the different video coding standards.

9. The system according to claim 7 , wherein the group of multiple different video coding standards comprises AVC, VP9, HEVC, AV1, and VVC.

10. A video coding method comprising:

receiving a stream of video frames to be encoded in an acceleration device comprising hardware logic;

dividing each video frame in the stream into multiple blocks;

computing by the hardware logic an intra-prediction cost associated with intra-coding of the blocks in each video frame;

computing by the hardware logic an intra-prediction hint with respect to one or more angles for intra-coding of each block;

computing, in software by a control unit, an inter-prediction cost associated with inter-coding of the blocks in each video frame responsively to an estimate of motion in each video frame relative to a reference frame in the stream;

making a comparison by the control unit between the intra-prediction cost and the inter-prediction cost for each video frame; and selecting, responsively to the comparison, an encoding mode for each video frame from a set of encoding modes consisting of inter-coding in software by the control unit and intra-coding by the hardware logic,

wherein intra-coding the video frames comprises applying the intra-prediction hint by the control unit in specifying an angle for intra-coding of each of the blocks, and

intra-coding the blocks by the acceleration device such that pixels in each of the blocks are propagated along the angle specified by the control unit;

computing, by the acceleration device, a map of motion vector prediction, for application by the control unit in inter-coding of the video frames.

11. The method according to claim 10 , wherein computing the intra-prediction hint comprises estimating the intra-prediction cost for each of a plurality of different angles.

12. The method according to claim 10 , wherein computing the intra-prediction cost comprises calculating a DC intra-encoding prediction over each block.

13. The method according to claim 10 , wherein computing the intra-prediction cost comprises calculating a planar intra-encoding prediction over each block.

14. The method according to claim 10 , wherein the reference frame comprises a target frame.

15. The method according to claim 14 , wherein the reference frame does not comprise a reconstructed frame.

16. The method according to claim 10 , and comprising encoding the video frames using the inter-coding and intra-coding in accordance with a specified video coding standard, selected from a group of multiple different video coding standards.

17. The method according to claim 16 , wherein the acceleration device is to compute the intra-prediction cost and to intra-code the frames for application by the control unit in implementing all the different video coding standards.

18. The method according to claim 16 , wherein the group of multiple different video coding standards comprises AVC, VP9, HEVC, AV1, and VVC.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 12, 2020
From: LEVI, DOTAN DAVID; WEISSMAN, ASSAF; MARKUS, OHAD; GADOT, URI; RAVEH, AVIAD
To: MELLANOX TECHNOLOGIES, LTD.
Reel/Frame 054342/0711 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 12, 2020
From: GILL, DROR; TERTEROV, NIKOLAY; TITKOV, PAVEL; MITKOVETS, ALEXEY; MARTEMYANOV, ALEXEY; ZHELUDKOV, ALEXANDER
To: BEAMR IMAGING LTD.
Reel/Frame 054342/0726 →
Priority Claims (1)
RU RU2019139362 · Dec 3, 2019 · national
Continuity (1)
Related Publication 20210168354A1 · Jun 3, 2021
References Cited (123)
US 4783698A · Harney · 1988 [cited by applicant]
US 5949441A · Ristau · 1999 [cited by applicant]
US 6075900A · Sakazawa et al. · 2000 [cited by applicant]
US 6151360A · Kato et al. · 2000 [cited by applicant]
US 7733464B2 · David et al. · 2010 [cited by applicant]
US 7881496B2 · Camilleri et al. · 2011 [cited by applicant]
US 7936818B2 · Jayant et al. · 2011 [cited by applicant]
US 8498493B1 · Choudhary · 2013 [cited by applicant]
US 8682108B2 · Tian et al. · 2014 [cited by applicant]
US 8693551B2 · Zheludkov et al. · 2014 [cited by applicant]
US 8737469B1 · Huang et al. · 2014 [cited by applicant]
US 9131235B2 · Zheludkov et al. · 2015 [cited by applicant]
US 9270299B2 · Luby et al. · 2016 [cited by applicant]
US 9367746B2 · Ishihara · 2016 [cited by applicant]
US 9451266B2 · Zheludkov et al. · 2016 [cited by applicant]
US 9767529B1 · Liu et al. · 2017 [cited by applicant]
US 10136131B2 · Zheludkov · 2018 [cited by examiner]
US 10200719B2 · Zhang · 2019 [cited by examiner]
US 20020015446A1 · Miyaji et al. · 2002 [cited by applicant]
US 20020041089A1 · Yasui · 2002 [cited by applicant]
US 20030152148A1 · Laksono · 2003 [cited by applicant]
US 20040146203A1 · Yoshimura et al. · 2004 [cited by applicant]
US 20040165091A1 · Takemura et al. · 2004 [cited by applicant]
US 20050220353A1 · Karczewicz et al. · 2005 [cited by applicant]
US 20050276323A1 · Martemyanov et al. · 2005 [cited by applicant]
US 20060017843A1 · Shi et al. · 2006 [cited by applicant]
US 20060129909A1 · Butt et al. · 2006 [cited by applicant]
US 20060180670A1 · Acosta et al. · 2006 [cited by applicant]
US 20060256851A1 · Wang et al. · 2006 [cited by applicant]
US 20070110160A1 · Wang et al. · 2007 [cited by applicant]
US 20070140591A1 · Kurata · 2007 [cited by applicant]
US 20070147496A1 · Sherigar et al. · 2007 [cited by applicant]
US 20070153008A1 · Song et al. · 2007 [cited by applicant]
US 20070211157A1 · Humpoletz et al. · 2007 [cited by applicant]
US 20070296849A1 · Sano et al. · 2007 [cited by applicant]
US 20080043842A1 · Nakaishi · 2008 [cited by applicant]
US 20080084491A1 · He et al. · 2008 [cited by applicant]
US 20080095240A1 · Choi et al. · 2008 [cited by applicant]
US 20080126278A1 · Bronstein et al. · 2008 [cited by applicant]
US 20090021612A1 · Hamilton, Jr. et al. · 2009 [cited by applicant]
US 20090153699A1 · Satoh et al. · 2009 [cited by applicant]
US 20090180539A1 · Kudana et al. · 2009 [cited by applicant]
US 20090244288A1 · Fujimoto et al. · 2009 [cited by applicant]
US 20090323810A1 · Liu et al. · 2009 [cited by applicant]
US 20100002770A1 · Motta et al. · 2010 [cited by applicant]
US 20100034270A1 · Nagaraj et al. · 2010 [cited by applicant]
US 20100086049A1 · Ye et al. · 2010 [cited by applicant]
US 20100149393A1 · Zarnowski et al. · 2010 [cited by applicant]
US 20100226438A1 · Saunders et al. · 2010 [cited by applicant]
US 20100265316A1 · Sali et al. · 2010 [cited by applicant]
US 20100278269A1 · Andersson et al. · 2010 [cited by applicant]
US 20110268194A1 · Nagano · 2011 [cited by applicant]
US 20120020413A1 · Chen et al. · 2012 [cited by applicant]
US 20120033039A1 · Sasaki et al. · 2012 [cited by applicant]
US 20120044990A1 · Bivolarsky et al. · 2012 [cited by applicant]
US 20120147975A1 · Ju · 2012 [cited by applicant]
US 20120281924A1 · Coulombe et al. · 2012 [cited by applicant]
US 20130077690A1 · Wei et al. · 2013 [cited by applicant]
US 20130101039A1 · Florencio · 2013 [cited by applicant]
US 20130163674A1 · Zhang · 2013 [cited by applicant]
US 20130208795A1 · Xu et al. · 2013 [cited by applicant]
US 20130265388A1 · Zhang et al. · 2013 [cited by applicant]
US 20130301727A1 · Huang et al. · 2013 [cited by applicant]
US 20130301732A1 · Hsu et al. · 2013 [cited by applicant]
US 20130322753A1 · Lim et al. · 2013 [cited by applicant]
US 20130329006A1 · Boles et al. · 2013 [cited by applicant]
US 20140161188A1 · Zhang et al. · 2014 [cited by applicant]
US 20140177726A1 · Okajima · 2014 [cited by applicant]
US 20150237356A1 · Wu et al. · 2015 [cited by applicant]
US 20150312588A1 · Yamamoto et al. · 2015 [cited by applicant]
US 20160100186A1 · Gisquet · 2016 [cited by examiner]
US 20160191946A1 · Zhou et al. · 2016 [cited by applicant]
US 20160286232A1 · Li et al. · 2016 [cited by applicant]
US 20160345018A1 · Sadhwani et al. · 2016 [cited by applicant]
US 20170006294A1 · Huang · 2017 [cited by examiner]
US 20170134732A1 · Chen · 2017 [cited by examiner]
US 20170332099A1 · Lee et al. · 2017 [cited by applicant]
US 20180098070A1 · Chuang et al. · 2018 [cited by applicant]
US 20180124418A1 · Van Leuven et al. · 2018 [cited by applicant]
US 20180152699A1 · Kumar · 2018 [cited by examiner]
US 20180302640A1 · Li · 2018 [cited by examiner]
US 20180316929A1 · Li et al. · 2018 [cited by applicant]
US 20180343448A1 · Possos et al. · 2018 [cited by applicant]
US 20180359483A1 · Chen · 2018 [cited by examiner]
US 20180376160A1 · Zhang et al. · 2018 [cited by applicant]
US 20190037227A1 · Holland et al. · 2019 [cited by applicant]
US 20190058882A1 · Hinz et al. · 2019 [cited by applicant]
US 20190110058A1 · Chien et al. · 2019 [cited by applicant]
US 20190141318A1 · Li · 2019 [cited by examiner]
US 20190158882A1 · Chen et al. · 2019 [cited by applicant]
US 20190188829A1 · Wei · 2019 [cited by applicant]
US 20190200044A1 · Galpin et al. · 2019 [cited by applicant]
US 20190230376A1 · Hu · 2019 [cited by examiner]
US 20190327484A1 · Grange et al. · 2019 [cited by applicant]
US 20200014918A1 · Levi et al. · 2020 [cited by applicant]
US 20200014945A1 · Levi et al. · 2020 [cited by applicant]
US 20200077116A1 · Lee et al. · 2020 [cited by applicant]
US 20200098132A1 · Kim · 2020 [cited by applicant]
US 20200245016A1 · Levi et al. · 2020 [cited by applicant]
US 20210250605A1 · Lee · 2021 [cited by examiner]
CN 107113422A · 2017 [cited by applicant]
EP 3151560A1 · 2017 [cited by applicant]
GB 2547754A · 2017 [cited by applicant]
De Rivaz et al., “AV1 Bitstream & Decoding Process Specification”, pp. 1-681, Jan. 8, 2019. [cited by applicant]
Grange et al., “A VP9 Bitstream Overview draft-grange-vp9-bitstream-00”, Network Working Group, pp. 1-14, Feb. 18, 2013. [cited by applicant]
ITU-T Recommendation H.264., “Series H: Audiovisual and Multimedia Systems: Infrastructure of audiovisual services—Coding of moving video; Advanced video coding for generic audiovisual services”, pp. 1-282, May 2003. [cited by applicant]
ITU-T Recommendation H.265., “Series H: Audiovisual and Multimedia Systems: Infrastructure of audiovisual services—Coding of moving video; High efficiency video coding”, pp. 1-634, Apr. 2015. [cited by applicant]
Wikipedia., ‘Versatile Video Coding’, pp. 1-5, Feb. 22, 2019 (https://en.wikipedia.org/w/index.php?title=Versatile_Video_Coding&oldid=884627637). [cited by applicant]
Mellanox Technologies, “ConnectX®-5 EN Card,” Adapter Card Product Brief, , pp. 1-4, year 2020. [cited by applicant]
“MainConcept Accelerates HEVC Encoding with NVIDIA RTX GPUs,” news article, MainConcept GmbH newsletter, pp. 1-4, Apr. 8, 2019, downloaded from https://www.mainconcept.com/company/news/news-article/article/mainconcept-a… [cited by applicant]
U.S. Appl. No. 16/442,581 Office Action dated Jun. 23, 2021. [cited by applicant]
U.S. Appl. No. 16/291,023 Office Action dated Jun. 24, 2021. [cited by applicant]
U.S. Appl. No. 16/850,036 Office Action dated Sep. 8, 2021. [cited by applicant]
Sjoberg et al., “RTP Payload Format and File Storage Format for the Adaptive Multi-Rate (AMR) and Adaptive Multi-Rate Wideband (AMR-WB) Audio Codecs,” Network Working Group, Request for Comments 4867, pp. 1-59, Apr. 200… [cited by applicant]
Gharai et al., “RTP Payload Format for Uncompressed Video”, Internet Engineering Task Force, Internet-Draft, pp. 1-14, Nov. 3, 2002. [cited by applicant]
SMPTE Standard—“Transport of High Bit Rate Media Signals over IP Networks (HBRMT)”, The Society of Motion Picture and Television Engineers, pp. 1-16, Oct. 9, 2012. [cited by applicant]
U.S. Appl. No. 16/442,581 Office Action dated May 3, 2022. [cited by applicant]
U.S. Appl. No. 16/291,023 Office Action dated May 27, 2022. [cited by applicant]
U.S. Appl. No. 17/542,426 Office Action dated Nov. 4, 2022. [cited by applicant]
U.S. Appl. No. 17/493,877 Office Action dated Mar. 11, 2024. [cited by applicant]
CN Application # 2019106022492 Office Action dated Aug. 3, 2022. [cited by applicant]
U.S. Appl. No. 16/291,023 Office Action dated Sep. 30, 2022. [cited by applicant]
U.S. Appl. No. 17/898,496 Office Action dated Feb. 3, 2023. [cited by applicant]