Patents by Inventor Gary J. Sullivan
Gary J. Sullivan has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20180234698Abstract: Innovations for signaling state of a decoded picture buffer (“DPB”) and reference picture lists (“RPLs”). In example implementations, rather than rely on internal state of a decoder to manage and update DPB and RPLs, state information about the DPB and RPLs is explicitly signaled. This permits a decoder to determine which pictures are expected to be available for reference from the signaled state information. For example, an encoder determines state information that identifies which pictures are available for use as reference pictures (optionally considering feedback information from a decoder about which pictures are available). The encoder sets syntax elements that represent the state information. In doing so, the encoder sets identifying information for a long-term reference picture (“LTRP”), where the identifying information is a value of picture order count least significant bits for the LTRB. The encoder then outputs the syntax elements as part of a bitstream.Type: ApplicationFiled: April 13, 2018Publication date: August 16, 2018Applicant: Microsoft Technology Licensing, LLCInventors: Gary J. Sullivan, Yongjun Wu
-
Publication number: 20180234686Abstract: Video frames of a higher-resolution chroma sampling format such as YUV 4:4:4 are packed into video frames of a lower-resolution chroma sampling format such as YUV 4:2:0 for purposes of video encoding. For example, sample values for a frame in YUV 4:4:4 format are packed into two frames in YUV 4:2:0 format. After decoding, the video frames of the lower-resolution chroma sampling format can be unpacked to reconstruct the video frames of the higher-resolution chroma sampling format. In this way, available encoders and decoders operating at the lower-resolution chroma sampling format can be used, while still retaining higher resolution chroma information. In example implementations, frames in YUV 4:4:4 format are packed into frames in YUV 4:2:0 format such that geometric correspondence is maintained between Y, U and V components for the frames in YUV 4:2:0 format.Type: ApplicationFiled: April 17, 2018Publication date: August 16, 2018Applicant: Microsoft Technology Licensing, LLCInventors: Lihua Zhu, Sridhar Sankuratri, B. Anil Kumar, Yongjun Wu, Sandeep Kanumuri, Shyam Sadhwani, Gary J. Sullivan
-
Patent number: 10003817Abstract: Innovations for signaling state of a decoded picture buffer (“DPB”) and reference picture lists (“RPLs”). In example implementations, rather than rely on internal state of a decoder to manage and update DPB and RPLs, state information about the DPB and RPLs is explicitly signaled. This permits a decoder to determine which pictures are expected to be available for reference from the signaled state information. For example, an encoder determines state information that identifies which pictures are available for use as reference pictures (optionally considering feedback information from a decoder about which pictures are available). The encoder sets syntax elements that represent the state information. In doing so, the encoder sets identifying information for a long-term reference picture (“LTRP”), where the identifying information is a value of picture order count least significant bits for the LTRB. The encoder then outputs the syntax elements as part of a bitstream.Type: GrantFiled: November 5, 2012Date of Patent: June 19, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Gary J. Sullivan, Yongjun Wu
-
Patent number: 10003824Abstract: Techniques and tools for reducing latency in video encoding and decoding by constraining latency due to reordering of video frames, and by indicating the constraint on frame reordering latency with one or more syntax elements that accompany encoded data for the video frames. For example, a real-time communication tool with a video encoder sets a syntax element that indicates a constraint on frame reordering latency, which is consistent with inter-frame dependencies between multiple frames of a video sequence, then outputs the syntax element. A corresponding real-time communication tool with a video decoder receives the syntax element that indicates the constraint on frame reordering latency, determines the constraint on frame reordering latency based on the syntax element, and uses the constraint on frame reordering latency to determine when a reconstructed frame is ready for output (in terms of output order).Type: GrantFiled: July 12, 2017Date of Patent: June 19, 2018Assignee: Microsoft Technology Licensing, LLCInventor: Gary J. Sullivan
-
Patent number: 9979960Abstract: Video frames of a higher-resolution chroma sampling format such as YUV 4:4:4 are packed into video frames of a lower-resolution chroma sampling format such as YUV 4:2:0 for purposes of video encoding. For example, sample values for a frame in YUV 4:4:4 format are packed into two frames in YUV 4:2:0 format. After decoding, the video frames of the lower-resolution chroma sampling format can be unpacked to reconstruct the video frames of the higher-resolution chroma sampling format. In this way, available encoders and decoders operating at the lower-resolution chroma sampling format can be used, while still retaining higher resolution chroma information. In example implementations, frames in YUV 4:4:4 format are packed into frames in YUV 4:2:0 format such that geometric correspondence is maintained between Y, U and V components for the frames in YUV 4:2:0 format.Type: GrantFiled: September 13, 2013Date of Patent: May 22, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Lihua Zhu, Sridhar Sankuratri, B. Anil Kumar, Yongjun Wu, Sandeep Kanumuri, Shyam Sadhwani, Gary J. Sullivan
-
Publication number: 20180131947Abstract: Approaches to selection of motion vector (“MV”) precision during video encoding are presented. These approaches can facilitate compression that is effective in terms of rate-distortion performance and/or computational efficiency. For example, a video encoder determines an MV precision for a unit of video from among multiple MV precisions, which include one or more fractional-sample MV precisions and integer-sample MV precision. The video encoder can identify a set of MV values having a fractional-sample MV precision, then select the MV precision for the unit based at least in part on prevalence of MV values (within the set) having a fractional part of zero. Or, the video encoder can perform rate-distortion analysis, where the rate-distortion analysis is biased towards the integer-sample MV precision. Or, the video encoder can collect information about the video and select the MV precision for the unit based at least in part on the collected information.Type: ApplicationFiled: January 9, 2018Publication date: May 10, 2018Applicant: Microsoft Technology Licensing, LLCInventors: Gary J. Sullivan, You Zhou, Chih-Lung Lin
-
Publication number: 20180109806Abstract: A format for use in encoding moving image data, comprising: a sequence of frames including plurality of the frames in which at least a region is encoded using motion estimation; a respective set of motion vector values representing motion vectors of the motion estimation for each respective one of these frames or each respective one of one or more regions within each of such frames; and at least one respective indicator associated with each of the respective frames or regions, indicating whether the respective motion vector values of the respective frame or region are encoded at a first resolution or a second resolution.Type: ApplicationFiled: September 21, 2017Publication date: April 19, 2018Applicant: Microsoft Technology Licensing, LLCInventors: You Zhou, Sergey Silkin, Sergey Sablin, Chih-Lung Lin, Ming-Chieh Lee, Gary J. Sullivan
-
Publication number: 20180077421Abstract: Video data is received at a decoding device. An encoded first frame of the video data is received with a current frame description for the first frame comprising: an identifier of the first frame, and an indicator of a storage location at the receiving device for the first frame and its frame identifier. An encoded second frame of the video data is also received with at least one reference frame description for the second frame comprising: a reference frame identifier, and an indicator of said storage location. This allows the decoding device to check that the correct reference frame for decoding the second frame is stored thereat. Corresponding encoding operations are also disclosed.Type: ApplicationFiled: December 13, 2016Publication date: March 15, 2018Applicant: Microsoft Technology Licensing, LLCInventors: Sergey Sablin, Adriana Dumitras, Gary J. Sullivan
-
Patent number: 9900603Abstract: Approaches to selection of motion vector (“MV”) precision during video encoding are presented. These approaches can facilitate compression that is effective in terms of rate-distortion performance and/or computational efficiency. For example, a video encoder determines an MV precision for a unit of video from among multiple MV precisions, which include one or more fractional-sample MV precisions and integer-sample MV precision. The video encoder can identify a set of MV values having a fractional-sample MV precision, then select the MV precision for the unit based at least in part on prevalence of MV values (within the set) having a fractional part of zero. Or, the video encoder can perform rate-distortion analysis, where the rate-distortion analysis is biased towards the integer-sample MV precision. Or, the video encoder can collect information about the video and select the MV precision for the unit based at least in part on the collected information.Type: GrantFiled: August 28, 2017Date of Patent: February 20, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Gary J. Sullivan, You Zhou, Chih-Lung Lin
-
Patent number: 9892188Abstract: Innovations for category-prefixed data batching (“CPDB”) of entropy-coded data or other payload data for coded media data, as well as innovations for corresponding recovery of the entropy-coded data (or other payload data) formatted with CPDB. The CPDB can be used in conjunction with coding/decoding for video content, image content, audio content or another type of content. For example, after receiving coded media data in multiple categories from encoding units, a formatting tool formats payload data with CPDB, generating a batch prefix for a batch of the CPDB-formatted payload data. The batch prefix includes a category identifier and a data quantity indicator. The formatting tool outputs the CPDB-formatted payload data to a bitstream. At the decoder side, a formatting tool receives the CPDB-formatted payload data in a bitstream, recovers the payload data from the CPDB-formatted payload data, and outputs the payload data (e.g., to decoding units).Type: GrantFiled: November 8, 2012Date of Patent: February 13, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Gary J. Sullivan, Leon Bottou, Sandeep Kanumuri, Yongjun Wu
-
Publication number: 20180014033Abstract: Syntax structures that indicate the completion of coded regions of pictures are described. For example, a syntax structure in an elementary bitstream indicates the completion of a coded region of a picture. The syntax structure can be a type of network abstraction layer unit, a type of supplemental enhancement information message or another syntax structure. For example, a media processing tool such as an encoder can detect completion of a coded region of a picture, then output, in a predefined order in an elementary bitstream, syntax structure(s) that contain the coded region as well as a different syntax structure that indicates the completion of the coded region. Another media processing tool such as a decoder can receive, in a predefined order in an elementary bitstream, syntax structure(s) that contain a coded region of a picture as well as a different syntax structure that indicates the completion of the coded region.Type: ApplicationFiled: September 22, 2017Publication date: January 11, 2018Applicant: Microsoft Technology Licensing, LLCInventors: Yongjun Wu, Lihua Zhu, Shyam Sadhwani, Gary J. Sullivan
-
Publication number: 20170359587Abstract: Approaches to selection of motion vector (“MV”) precision during video encoding are presented. These approaches can facilitate compression that is effective in terms of rate-distortion performance and/or computational efficiency. For example, a video encoder determines an MV precision for a unit of video from among multiple MV precisions, which include one or more fractional-sample MV precisions and integer-sample MV precision. The video encoder can identify a set of MV values having a fractional-sample MV precision, then select the MV precision for the unit based at least in part on prevalence of MV values (within the set) having a fractional part of zero. Or, the video encoder can perform rate-distortion analysis, where the rate-distortion analysis is biased towards the integer-sample MV precision. Or, the video encoder can collect information about the video and select the MV precision for the unit based at least in part on the collected information.Type: ApplicationFiled: August 28, 2017Publication date: December 14, 2017Applicant: Microsoft Technology Licensing, LLCInventors: Gary J. Sullivan, You Zhou, Chih-Lung Lin
-
Publication number: 20170353725Abstract: Innovations in use of chroma quantization parameter (“QP”) offsets when determining a control parameter for deblock filtering. For example, as part of encoding, an encoder sets a picture-level chroma QP offset and slice-level chroma QP offset for encoding of a slice of a picture. The encoder also performs deblock filtering of at least part of the slice, where derivation of a control parameter considers only the picture-level chroma QP offset. The encoder outputs at least part of a bitstream including the encoded content. As part of decoding, a corresponding decoder sets a picture-level chroma QP offset and a slice-level chroma QP offset for decoding of a slice of a picture, but derivation of a control parameter for deblock filtering considers only the picture-level chroma QP offset.Type: ApplicationFiled: August 24, 2017Publication date: December 7, 2017Applicant: Microsoft Technology Licensing, LLCInventor: Gary J. Sullivan
-
Patent number: 9819949Abstract: In various respects, hardware-accelerated decoding is adapted for decoding of video that has been encoded using scalable video coding. For example, for a given picture to be decoded, a host decoder determines whether a corresponding base picture will be stored for use as a reference picture. If so, the host decoder directs decoding with an accelerator such that the some of the same decoding operations can be used for the given picture and the reference base picture. Or, as another example, the host decoder groups encoded data associated with a given layer representation in buffers. The host decoder provides the encoded data for the layer to the accelerator. The host decoder repeats the process layer-after-layer in the order that layers appear in the bitstream, according to a defined call pattern for an acceleration interface, which helps the accelerator determine the layers with which buffers are associated.Type: GrantFiled: December 16, 2011Date of Patent: November 14, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Mei-Hsuan Lu, Yongjun Wu, Ming-Chieh Lee, Gary J. Sullivan
-
Publication number: 20170318288Abstract: Control data for a motion-constrained tile set (“MCTS”) indicates that inter-picture prediction processes within a specified set of tiles are constrained to reference only regions within the same set of tiles in previous pictures in decoding (or encoding) order. For example, a video encoder encodes multiple pictures partitioned into tiles to produce encoded data. The encoder outputs the encoded data along with control data (e.g., in a supplemental enhancement information message) that indicates that inter-picture prediction dependencies across tile set boundaries are constrained for a given tile set of one or more of the tiles. A video decoder or other tool receives the encoded data and MCTS control data, and processes the encoded data. Signaling and use of MCTS control data can facilitate region-of-interest decoding and display, transcoding to limit encoded data to a selected set of tiles, loss robustness, parallelism in encoding and/or decoding, and other video processing.Type: ApplicationFiled: July 13, 2017Publication date: November 2, 2017Applicant: Microsoft Technology Licensing, LLCInventors: Yongjun Wu, Gary J. Sullivan, Yifu Zhang
-
Publication number: 20170318301Abstract: Innovations in encoding or decoding when switching color spaces are presented. For example, some of the innovations relate to signaling of control information for adaptive color space transformation (“ACT”). Other innovations relate to ACT operations. These innovations can improve coding efficiency when switching between color spaces during encoding and decoding.Type: ApplicationFiled: October 8, 2014Publication date: November 2, 2017Applicant: Microsoft Technology Licensing, LLCInventors: Bin Li, Jizheng Xu, Gary J. Sullivan
-
Publication number: 20170318309Abstract: Innovations in signaling of reference picture list (“RPL”) modification information. For example, a video encoder evaluates a condition that depends at least in part on a variable indicating a number of total reference pictures. Depending on the results of the evaluation, the encoder signals in a bit stream a flag that indicates whether an RPL is modified according to syntax elements explicitly signaled in the bit stream. A video decoder evaluates the condition and, depending on results of the evaluation, parses from a bit stream a flag that indicates whether an RPL is modified according to syntax elements explicitly signaled in the bit stream. The condition can be evaluated as part of processing for an RPL modification structure that includes the flag, or as part of processing for a slice header. The encoder and decoder can also evaluate other conditions that affect syntax elements for list entries of the RPL modification information.Type: ApplicationFiled: July 20, 2017Publication date: November 2, 2017Applicant: Microsoft Technology Licensing, LLCInventors: Gary J. Sullivan, Sandeep Kanumuri
-
Publication number: 20170311000Abstract: Techniques and tools for reducing latency in video encoding and decoding by constraining latency due to reordering of video frames, and by indicating the constraint on frame reordering latency with one or more syntax elements that accompany encoded data for the video frames. For example, a real-time communication tool with a video encoder sets a syntax element that indicates a constraint on frame reordering latency, which is consistent with inter-frame dependencies between multiple frames of a video sequence, then outputs the syntax element. A corresponding real-time communication tool with a video decoder receives the syntax element that indicates the constraint on frame reordering latency, determines the constraint on frame reordering latency based on the syntax element, and uses the constraint on frame reordering latency to determine when a reconstructed frame is ready for output (in terms of output order).Type: ApplicationFiled: July 12, 2017Publication date: October 26, 2017Applicant: Microsoft Technology Licensing, LLCInventor: Gary J. Sullivan
-
Patent number: 9800898Abstract: Syntax structures that indicate the completion of coded regions of pictures are described. For example, a syntax structure in an elementary bitstream indicates the completion of a coded region of a picture. The syntax structure can be a type of network abstraction layer unit, a type of supplemental enhancement information message or another syntax structure. For example, a media processing tool such as an encoder can detect completion of a coded region of a picture, then output, in a predefined order in an elementary bitstream, syntax structure(s) that contain the coded region as well as a different syntax structure that indicates the completion of the coded region. Another media processing tool such as a decoder can receive, in a predefined order in an elementary bitstream, syntax structure(s) that contain a coded region of a picture as well as a different syntax structure that indicates the completion of the coded region.Type: GrantFiled: May 6, 2015Date of Patent: October 24, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Yongjun Wu, Lihua Zhu, Shyam Sadhwani, Gary J. Sullivan
-
Patent number: 9781421Abstract: Innovations in use of chroma quantization parameter (“QP”) offsets when determining a control parameter for deblock filtering. For example, as part of encoding, an encoder sets a picture-level chroma QP offset and slice-level chroma QP offset for encoding of a slice of a picture. The encoder also performs deblock filtering of at least part of the slice, where derivation of a control parameter considers only the picture-level chroma QP offset. The encoder outputs at least part of a bitstream including the encoded content. As part of decoding, a corresponding decoder sets a picture-level chroma QP offset and a slice-level chroma QP offset for decoding of a slice of a picture, but derivation of a control parameter for deblock filtering considers only the picture-level chroma QP offset.Type: GrantFiled: January 20, 2017Date of Patent: October 3, 2017Assignee: Microsoft Technology Licensing, LLCInventor: Gary J. Sullivan