Patents by Inventor Qunshan Gu

Qunshan Gu 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).

  • Patent number: 10756997
    Abstract: A method for bandwidth adjustment for real-time video transmission includes: transmitting, by a sender, a first portion of the video bitstream encoded using a current bitrate and transmitted as a series of data packets, receiving, by the sender, a back channel message from a receiver, in which the back channel message includes receiver-side bandwidth parameters determined by the receiver in response to receiving the series of data packets, in which the receiver-side bandwidth parameters include at least one of an accumulated time difference parameter, a received bitrate parameter, a packet loss ratio parameter, a bandwidth indicator parameter, and an FEC ratio parameter, adjusting, by the sender using the processor, the current bitrate for encoding the video bitstream based on the receiver-side bandwidth parameters, and transmitting, to the receiver, a second portion of the video bitstream encoded using the adjusted current bitrate.
    Type: Grant
    Filed: May 16, 2016
    Date of Patent: August 25, 2020
    Assignee: Cybrook Inc.
    Inventor: Qunshan Gu
  • Patent number: 10721482
    Abstract: Object-based intra-prediction encoding may include generating, by a processor in response to instructions stored on a non-transitory computer readable medium, an encoded block of a current frame of a video stream by encoding a current block from the current frame, including the encoded block in an output bitstream, and outputting or storing the output bitstream. Encoding the current block may include identifying a first spatial portion of the current block, wherein the first spatial portion includes a first pixel from the current block and omits a second pixel from the current block, encoding the first pixel using a first intra-prediction mode, and encoding the second pixel using a second intra-prediction mode, wherein the second intra-prediction mode differs from the first intra-prediction mode.
    Type: Grant
    Filed: June 9, 2017
    Date of Patent: July 21, 2020
    Assignee: GOOGLE LLC
    Inventors: Marco Paniconi, Qunshan Gu
  • Patent number: 10516892
    Abstract: A method for initial estimation of bandwidth for real-time video transmission is disclosed herein. The method comprises determining a round trip delay between a video sender and a video receiver, transmitting, by the sender starting from a first point in time, a series of data packets having a packet size based on a predetermined encoder bitrate, receiving, by the sender and at a second point in time, a message from the receiver, wherein the received message comprises a parameter indicative of a total number of bits received by the receiver, determining, by the sender using a processor, an initial estimated bandwidth, based on the received parameter, the first and second points in time, and the round trip delay, and transmitting, to the receiver, a video bitstream using the initial estimated bandwidth. The method can be implemented during a process of establishing a call between the sender and the receiver.
    Type: Grant
    Filed: May 16, 2016
    Date of Patent: December 24, 2019
    Assignee: Cybrook Inc.
    Inventor: Qunshan Gu
  • Patent number: 10506257
    Abstract: Systems, apparatuses and methods for decoding and encoding a video stream having multiple frames includes: when decoding, a decoder receives messages from an encoder. The encoder permits the decoder to determine network parameters including bandwidth. The network parameters are returned to the encoder using back channel messages. The encoder determines optimal encoding parameters based on the network parameters. Back channel messages are exchanged between decoder and encoder while the video stream is being decoded to permit the encoder to adapt encoding parameters to changing network conditions.
    Type: Grant
    Filed: September 28, 2015
    Date of Patent: December 10, 2019
    Assignee: Cybrook Inc.
    Inventor: Qunshan Gu
  • Patent number: 10506283
    Abstract: Systems, apparatuses and methods for decoding and encoding a video stream having a plurality of frames using a ring (circular) buffer are disclosed. When decoding, a decoder can receive packets from an encoder and store them in a circular buffer. The circular buffer can store packets until packets comprising complete frames are received. Storing multiple partial or complete frames in a circular buffer removes jitter and permits forward error correction to proceed by efficiently assembling complete frames and minimizing delay.
    Type: Grant
    Filed: December 29, 2015
    Date of Patent: December 10, 2019
    Assignee: Cybrook Inc.
    Inventor: Qunshan Gu
  • Patent number: 10506245
    Abstract: Systems, apparatuses, and methods for decoding a video sequence includes: receiving, by a ring buffer of the computer device, a packet associated with a frame of the video sequence; based on a determination that the frame occurs later in time than the most recent frame outputted from the ring buffer, determining whether the frame is stored in the ring buffer; when the frame is stored in the ring buffer, determining whether all packets associated with the frame have been received by the ring buffer; and when all packets associated with the frame have been received by the ring buffer and a preceding frame has been outputted from the ring buffer, outputting the frame from the ring buffer, where the preceding frame occurs immediately prior to the frame in the video sequence.
    Type: Grant
    Filed: November 18, 2015
    Date of Patent: December 10, 2019
    Assignee: Cybrook Inc.
    Inventor: Qunshan Gu
  • Patent number: 10382773
    Abstract: Encoding is accomplished using a reference picture list. Reference frames are identified with picture numbers and are assigned to reference picture buffers when used for encoding. The picture numbers associated the reference frames in the reference picture buffers are ranked. Reordering can occur to assign short word lengths to those reference frames used frequently for prediction. The resulting encoded reference picture list is sent to a decoder. The decoder decodes the reference picture list. By comparing picture numbers in the reference picture list with picture numbers of reference picture buffers of the decoder, the encoder and decoder buffers can remain in sync even under packet loss conditions. For example, the decoder can use the decoded reference picture list to determine missing and unused reference frames.
    Type: Grant
    Filed: March 9, 2017
    Date of Patent: August 13, 2019
    Assignee: GOOGLE LLC
    Inventors: Qunshan Gu, Marco Paniconi
  • Patent number: 10182043
    Abstract: Method for connecting multiple devices associated with an Internet of Things (IoT) network is provided. The method includes the steps of associating a first device identifier of a first device with a first account name and a second device identifier of at least a second device with a second account name, where each device is associated with at least one device identifier for each account name, authenticating each device with a server associated with the IoT network using the corresponding account name and the associated device identifier, determining whether the first account name and the second account name belong to the same group in response to authenticating the first device and the second device and connecting the first device and the second device for management and information exchange based on the determination whether the first and second account names belong to the same group.
    Type: Grant
    Filed: July 17, 2015
    Date of Patent: January 15, 2019
    Assignee: CYBROOK INC.
    Inventor: Qunshan Gu
  • Patent number: 10038743
    Abstract: Methods and apparatuses for management of an Internet of Things (IoT) network are herein disclosed as comprising, in an implementation, authenticating a first device associated with a first account name and a second device associated with a second account name with a server associated with the IoT network, connecting the authenticated first device and the authenticated second device over a communication system, and communicating data between the first device and the second device connected to the communication system by generating, by the first device, data representative of a data type using a component of one of the first device and the second device and transmitting, using the communication system, the data to the second device. The communicated data may be video data, image data, audio data, alert data, or location data generated using components associated with the first device.
    Type: Grant
    Filed: December 29, 2015
    Date of Patent: July 31, 2018
    Assignee: Cybrook Inc.
    Inventor: Qunshan Gu
  • Patent number: 9894381
    Abstract: Encoding and decoding is accomplished herein using a multi-reference picture buffer. Decoding includes receiving an encoded video stream, determining an expected error value representing possible frame errors, decoding a plurality of reference frames from the video stream, adding each of the plurality of reference frames to the reference picture buffers up to a maximum number of reference picture buffers, and determining an encoded video stream error value representing actual frame errors based on the decoded plurality of reference frames. If the encoded video stream error value is greater than the decoded expected error value, an error is signaled.
    Type: Grant
    Filed: July 25, 2016
    Date of Patent: February 13, 2018
    Assignee: GOOGLE INC.
    Inventors: Qunshan Gu, Marco Paniconi
  • Patent number: 9826250
    Abstract: A method for encoding a frame having a plurality of blocks in a video stream using transform-domain intra prediction is disclosed. The method includes generating, using a two-dimensional transform, a set of transform coefficients for a current block; generating, using a one-dimensional transform, a set of transform coefficients for previously coded pixel values in the frame; determining, using the set of transform coefficients for the previously coded pixel values, a set of transform coefficients for a prediction block; determining a residual based on the difference between the set of transform coefficients for the current block and the set of coefficients for the prediction block; and encoding the residual.
    Type: Grant
    Filed: May 3, 2016
    Date of Patent: November 21, 2017
    Assignee: GOOGLE INC.
    Inventors: Yaowu Xu, Qunshan Gu
  • Publication number: 20170280142
    Abstract: Object-based intra-prediction encoding may include generating, by a processor in response to instructions stored on a non-transitory computer readable medium, an encoded block of a current frame of a video stream by encoding a current block from the current frame, including the encoded block in an output bitstream, and outputting or storing the output bitstream. Encoding the current block may include identifying a first spatial portion of the current block, wherein the first spatial portion includes a first pixel from the current block and omits a second pixel from the current block, encoding the first pixel using a first intra-prediction mode, and encoding the second pixel using a second intra-prediction mode, wherein the second intra-prediction mode differs from the first intra-prediction mode.
    Type: Application
    Filed: June 9, 2017
    Publication date: September 28, 2017
    Inventors: Marco Paniconi, Qunshan Gu
  • Patent number: 9762931
    Abstract: Techniques for efficient coding of digital media data are presented. A resource controller component dynamically allocates computing resources between an estimator component and a coder component. The estimator component generates an initial motion estimation of a raw video frame of a sequence of raw video frames based on a previous raw video frame. The coder component encodes the previous raw video frame to generate a reconstructed video frame in parallel with the generation of the initial motion estimation. When the previous raw video frame is reconstructed, the coder component dynamically determines whether and/or how to refine the motion estimation to encode the raw video frame based on a predefined encoding criterion. In making that determination, the coder component selects and uses a mode(s) of motion estimation refinement from a plurality of available motion estimation refinement modes to encode the raw video frame.
    Type: Grant
    Filed: July 23, 2015
    Date of Patent: September 12, 2017
    Assignee: GOOGLE INC.
    Inventors: Wei Jia, Qunshan Gu
  • Patent number: 9756346
    Abstract: Edge-selective intra coding may include encoding a first input block, generating a first reconstructed block by decoding the first encoded block, determining a reconstruction error block based on a difference between the first input block and the first reconstructed block, identifying a second input block from the first input frame, and determining a plurality of refined context pixels. Determining a plurality of refined context pixels may include identifying a plurality of context pixels from the reconstruction error block, generating a plurality of encoded context pixels by encoding the plurality of context pixels, generating a plurality of reconstructed context pixels by decoding the plurality of encoded context pixels, and adding at least a portion of the reconstruction error block and the plurality of reconstructed context pixels. The method may include generating a second encoded block by encoding the second input block based on the plurality of refined context pixels.
    Type: Grant
    Filed: October 2, 2015
    Date of Patent: September 5, 2017
    Assignee: GOOGLE INC.
    Inventors: Qunshan Gu, Yaowu Xu
  • Patent number: 9729882
    Abstract: Coding a video stream having a plurality of frames is disclosed. A frame of a video stream is processed to determine if direct motion prediction can be applied to the macroblocks of the frame. Macroblocks to which direct motion can be applied are grouped into superblocks. The distribution of superblock size and configuration is analyzed to determine variable-length codes that can vary for each frame or segment encoded using direct prediction superblocks, thereby reducing the number of bits used to indicate superblock encoding in the encoded video stream.
    Type: Grant
    Filed: May 2, 2016
    Date of Patent: August 8, 2017
    Assignee: GOOGLE INC.
    Inventors: Wei Jia, Qunshan Gu
  • Patent number: 9693066
    Abstract: Object-based intra-prediction decoding may include generating a reconstructed block by decoding an encoded block, which may include identifying a first intra-prediction mode for a first portion of the reconstructed block and identifying a second intra-prediction mode for a second portion of the reconstructed block. Decoding the encoded block may include generating a first portion of a prediction block using the first intra-prediction mode, generating a second portion of the prediction block using the second intra-prediction mode, generating the first portion of the reconstructed block based on the first portion of the prediction block, such that the first portion of the reconstructed block corresponds to a first object represented in the reconstructed block, and generating the second portion of the reconstructed block based on the second portion of the prediction block, such that the second portion of the reconstructed block corresponds to a second object represented in the reconstructed block.
    Type: Grant
    Filed: June 27, 2016
    Date of Patent: June 27, 2017
    Assignee: GOOGLE INC.
    Inventors: Marco Paniconi, Qunshan Gu
  • Publication number: 20170142434
    Abstract: Systems, apparatuses and methods for decoding and encoding a video stream having a plurality of frames using a ring (circular) buffer are disclosed. When decoding, a decoder can receive packets from an encoder and store them in a circular buffer. The circular buffer can store packets until packets comprising complete frames are received. Storing multiple partial or complete frames in a circular buffer removes jitter and permits forward error correction to proceed by efficiently assembling complete frames and minimizing delay.
    Type: Application
    Filed: December 29, 2015
    Publication date: May 18, 2017
    Inventor: Qunshan GU
  • Publication number: 20170142433
    Abstract: Systems, apparatuses and methods for decoding and encoding a video stream having a plurality of frames using a ring buffer are disclosed. When decoding, a decoder can receive packets from an encoder and store them in a ring buffer. The ring buffer can store packets until packets comprising complete frames are received. Storing multiple partial or complete frames in a ring buffer permits forward error correction to proceed by efficiently assembling complete frames and minimizing wait times in the case of retransmission of packets.
    Type: Application
    Filed: November 18, 2015
    Publication date: May 18, 2017
    Inventor: Qunshan GU
  • Patent number: 9615100
    Abstract: Second-order orthogonal spatial intra-prediction may include generating a reconstructed frame by generating a plurality of reconstructed blocks by decoding a portion of the current encoded frame, generating a decoded residual block by decoding a current block from the current encoded frame, identifying a current pixel location in the current block, identifying reconstructed pixels in respective reconstructed blocks, wherein first and second reconstructed pixels are at respective oblique angle to the current pixel location, and a third reconstructed pixel at the second oblique angle to the first reconstructed pixel or at the first oblique angle to the second reconstructed pixel, determining a predictor pixel for the current pixel location using a difference between the third reconstructed pixel and a sum of the first reconstructed pixel and the second reconstructed pixel, and identifying a reconstructed pixel as a sum of the predictor pixel and a corresponding residual pixel.
    Type: Grant
    Filed: October 15, 2015
    Date of Patent: April 4, 2017
    Assignee: GOOGLE INC.
    Inventors: Qunshan Gu, Yaowu Xu
  • Publication number: 20170094294
    Abstract: Systems, apparatuses and methods for decoding and encoding a video bitstream with a computing device are disclosed. The method for encoding includes receiving, from a decoding computing device, data for encoding the video bitstream; determining encoding parameters based on the data for encoding the video bitstream; determining, by the computing device and for encoding a current frame of the video bitstream, a selected reference frame from reference frames preceding the current frame in display order, the reference frames comprising a good reference frame, wherein the good reference frame is a reference frame known to the encoder to be error-free; and encoding the current frame of the video bitstream using the selected reference frame and the encoding parameters.
    Type: Application
    Filed: December 29, 2015
    Publication date: March 30, 2017
    Inventor: Qunshan GU