IP Library › Granted Patent US 12,732,637
Granted Patent B2
US 12,732,637 · App. 18/745,956 · Granted Sep 8, 2026

Systems and methods for streaming extensions for video encoding

Inventors: Sorin C Cismas (Saratoga, CA); Ganesh G Yadav (Fremont, CA)
Assignee: Apple Inc.
H04N19/70H04N19/174H04N19/184H04N19/186
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,732,637
App. No.
18/745,956
Granted
Sep 8, 2026
Kind
B2
Abstract

This disclosure is directed to systems and methods of streaming extensions for video encoding. The streaming extensions may enable the bitstream syntax for layered video data to be modified to reduce overhead for encoding. The bitstream syntax may be modified to enable variable length luma and chroma components, and enable the alignment between the layers and slice to be bit aligned to enable increased granularity in image encoding, and to minimize overhead between different elements within the layers.

Claims (28)

1 . An electronic device comprising:

a network interface configured to receive a stream of image data corresponding to High Efficiency Video Coding, AOMedia Video 1, ProRes, or Versatile Video Coding, wherein the stream of image data comprises one or more streaming extensions that define modification to a bitstream syntax for the stream of image data, wherein the bitstream syntax comprises a tile syntax that defines an image frame of the stream of image data, wherein the tile syntax comprises a tile header and a slice syntax, and wherein the tile header comprises a layer identification, a channel identification, a horizontal size of a frame, a vertical size of the frame, and a quantization index; and

video encoder circuitry configured to bit-align one or more layers based on concatenating bitstream sections of the stream of image data and to encode one or more slices of the bit-aligned one or more layers based on the bitstream syntax.

2 . The electronic device of claim 1 , wherein the bitstream syntax comprises a luma value that corresponds to a first variable-length code and a chroma value that corresponds to a second variable-length code.

3 . The electronic device of claim 2 , wherein the luma value comprises a first bit value and the chroma value comprises a second bit value.

4 . The electronic device of claim 3 , wherein each of the first bit value and the second bit value are within a range of five to sixteen bits.

5 . The electronic device of claim 1 , wherein the video encoder circuitry is configured to encode the one or more slices in a vertical slice order.

6 . The electronic device of claim 1 , wherein the slice syntax comprises a slice header, luma data, and chroma data.

7 . The electronic device of claim 1 , wherein the video encoder circuitry is configured to bit-align the one or more layers based on concatenating the bitstream sections of the stream of image data on a bit boundary.

8 . The electronic device of claim 1 , wherein the one or more layers comprise one or more scanned discrete cosine transform (DCT) coefficients.

9 . The electronic device of claim 8 , wherein the one or more layers comprise a base layer, and wherein the base layer comprises the one or more scanned DCT coefficients.

10 . The electronic device of claim 1 , wherein one or more elements of the bitstream syntax respectively correspond to a fixed-length bit-string, a fixed-length numerical value, a variable-length code, or any combination thereof.

11 . The electronic device of claim 10 , wherein the fixed-length bit-string, the variable-length code, or both are positioned at leftmost bits of the bitstream syntax, and wherein the fixed-length numerical value is positioned at a most-significant bit of the bitstream syntax.

12 . One or more tangible, non-transitory computer-readable media storing instructions that, when executed by processing circuitry, are configured to cause the processing circuitry to:

receive a stream of image data based on High Efficiency Video Coding, AOMedia Video 1, ProRes, or Versatile Video Coding, wherein the stream of image data comprises one or more streaming extensions that define modification to a bitstream syntax;

determine that the stream of image data comprises one or more layers;

bit-align the one or more layers based on concatenating bitstream sections of the stream of image data based on the bitstream syntax, wherein the bitstream syntax comprises a tile syntax that defines an image frame of the stream of image data, wherein the tile syntax comprises a tile header and a slice syntax, and wherein the tile header comprises a layer identification, a channel identification, a horizontal size of a frame, a vertical size of the frame, and a quantization index; and

encode one or more strips of an image frame of the bit-aligned one or more layers.

13 . The one or more tangible, non-transitory computer-readable media of claim 12 , wherein the one or more layers comprise scanned discrete cosine transform (DCT) coefficients coded within the one or more layers.

14 . The one or more tangible, non-transitory computer-readable media of claim 12 , wherein the bitstream syntax comprises a tile syntax that defines the image frame.

15 . A method comprising:

receiving, via processing circuitry, a stream of High Efficiency Video Coding, AOMedia Video 1, ProRes, or Versatile Video Coding image data, wherein the stream comprises one or more layers and one or more streaming extensions that define modification to a bitstream syntax; and

transmitting, via the processing circuitry, the stream to encoder hardware that is operable to bit-align the one or more layers based on concatenating bitstream sections of the stream and encode one or more slices of the stream based on the bitstream syntax, wherein the bitstream syntax comprises a tile syntax that defines an image frame of the stream of image data, wherein the tile syntax comprises a tile header and a slice syntax, and wherein the tile header comprises a layer identification, a channel identification, a horizontal size of a frame, a vertical size of the frame, and a quantization index.

16 . The method of claim 15 , wherein the bitstream syntax comprises a variable length luma bit size and a variable length chroma bit size.

17 . The method of claim 15 , wherein the bitstream syntax comprises a tile syntax, and wherein the tile syntax comprises a tile header and a slice syntax.

18 . The electronic device of claim 1 , wherein the video encoder circuitry is configured to apply a rate control on the one or more slices of the bit-aligned one or more layers.

19 . The electronic device of claim 18 , wherein the rate control alters the quantization index used for each slice of the one or more slices.

20 . The electronic device of claim 6 , wherein the slice header comprises a first DC coefficient and one or more DC coefficient syntax elements.

Continuity (3)
Continuation 17589641 · Jan 31, 2022
Provisional Application 63243707 · Sep 13, 2021
Related Publication 20240422358A1 · Dec 19, 2024
References Cited (34)
US 5870497A · Galbi et al. · 1999 [cited by applicant]
US 5933642A · Greenbaum · 1999 [cited by examiner]
US 8363969B1 · Wang et al. · 2013 [cited by applicant]
US 9307256B2 · Rose et al. · 2016 [cited by applicant]
US 11671595B2 · Van et al. · 2023 [cited by applicant]
US 20020003905A1 · Sato · 2002 [cited by examiner]
US 20030198394A1 · Fukuhara · 2003 [cited by examiner]
US 20040213500A1 · Zeng · 2004 [cited by examiner]
US 20050053151A1 · Lin et al. · 2005 [cited by applicant]
US 20050139647A1 · Datta · 2005 [cited by examiner]
US 20080013633A1 · Ye · 2008 [cited by applicant]
US 20090224950A1 · Xu · 2009 [cited by examiner]
US 20120050454A1 · Eisenberg et al. · 2012 [cited by applicant]
US 20150358617A1 · Sato · 2015 [cited by examiner]
US 20160057441A1 · Skupin et al. · 2016 [cited by applicant]
US 20190014337A1 · Skupin · 2019 [cited by examiner]
US 20190191187A1 · Bordes · 2019 [cited by examiner]
US 20190261001A1 · Holland et al. · 2019 [cited by applicant]
US 20200296438A1 · Li et al. · 2020 [cited by applicant]
US 20210076036A1 · Yu et al. · 2021 [cited by applicant]
US 20210136422A1 · Huang et al. · 2021 [cited by applicant]
US 20210168369A1 · Li · 2021 [cited by examiner]
US 20220086443A1 · Lim et al. · 2022 [cited by applicant]
US 20220279185A1 · Zhu · 2022 [cited by examiner]
US 20230115541A1 · Deng · 2023 [cited by examiner]
US 20230247213A1 · Deshpande · 2023 [cited by examiner]
US 20230328285A1 · Oh · 2023 [cited by examiner]
US 20230358568A1 · Schuerman · 2023 [cited by examiner]
US 20240171754A1 · Wang · 2024 [cited by examiner]
US 20240212189A1 · Cavallari · 2024 [cited by examiner]
WO 2013128010A2 · 2013 [cited by applicant]
Doxygen (HEVC Test Model (HM) retrieved from https://hevc.hhi.fraunhofer.de/HM-doc//_t_enc_g_o_p_8cpp_source.html on Jan. 9, 2Doxygen (HEVC Test Model (HM) retrieved from https://hevc.hhi.fraunhofer.de/HM-doc//_t_enc_g_… [cited by examiner]
Alexandre Willème, et al., “Quality and Error Robustness Assessment of Low-Latency Lightweight Intra-Frame Codecs for Screen Content Compression,” IEEE Journal on Emerging and Selected Topics in Circuits and Systems, vo… [cited by applicant]
International Search Report and Written Opinion for PCT Application No. PCT/US2022/035350 dated Oct. 19, 2022; 13 pgs. [cited by applicant]