Patents by Inventor Mei-Hsuan Lu

Mei-Hsuan Lu 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: 9819949
    Abstract: 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: Grant
    Filed: December 16, 2011
    Date of Patent: November 14, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Mei-Hsuan Lu, Yongjun Wu, Ming-Chieh Lee, Gary J. Sullivan
  • Patent number: 9769485
    Abstract: Innovations described herein provide a generic encoding and decoding framework that includes some features of simulcast and some features of scalable video coding. For example, a bitstream multiplexer multiplexes component bitstreams into a multi-layer encoding (MLE) bitstream that provides temporal scalability, spatial resolution scalability and/or signal to noise ratio scalability. Each of the component bitstreams provides an alternative version of input video, and a given component bitstream can be a non-scalable bitstream or scalable bitstream. The multiplexer follows composition rules for the MLE bitstream and may rewrite values of certain syntax elements of component bitstreams using an approach that avoids bit shifting operations. A corresponding demultiplexer receives an MLE bitstream that includes component bitstreams and demultiplexes at least part of at least one of the component bitstreams from the MLE bitstream, following decomposition rules for the demultiplexing.
    Type: Grant
    Filed: January 20, 2017
    Date of Patent: September 19, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Mei-Hsuan Lu, Ming-Chieh Lee
  • Publication number: 20170134737
    Abstract: Innovations described herein provide a generic encoding and decoding framework that includes some features of simulcast and some features of scalable video coding. For example, a bitstream multiplexer multiplexes component bitstreams into a multi-layer encoding (MLE) bitstream that provides temporal scalability, spatial resolution scalability and/or signal to noise ratio scalability. Each of the component bitstreams provides an alternative version of input video, and a given component bitstream can be a non-scalable bitstream or scalable bitstream. The multiplexer follows composition rules for the MLE bitstream and may rewrite values of certain syntax elements of component bitstreams using an approach that avoids bit shifting operations. A corresponding demultiplexer receives an MLE bitstream that includes component bitstreams and demultiplexes at least part of at least one of the component bitstreams from the MLE bitstream, following decomposition rules for the demultiplexing.
    Type: Application
    Filed: January 20, 2017
    Publication date: May 11, 2017
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Mei-Hsuan Lu, Ming-Chieh Lee
  • Publication number: 20170078705
    Abstract: Techniques are described for verifying long-term reference (LTR) usage by a video encoder and/or a video decoder. For example, verifying that a video encoder and/or a video decoder is applying LTR correctly can done by encoding and decoding a video sequence in two different ways and comparing the results. In some implementations, verifying LTR usage is accomplished by decoding an encoded video sequence that has been encoded according to an LTR usage pattern, decoding a modified encoded video sequence that has been encoded according to the LTR usage pattern and modified according to a lossy channel model, and comparing decoded video content from both the encoded video sequence and the modified encoded video sequence. For example, the comparison can comprise determining whether both decoded video content match bit-exactly beginning from an LTR recovery point location.
    Type: Application
    Filed: September 10, 2015
    Publication date: March 16, 2017
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Mei-Hsuan Lu, Yongjun Wu, Ming-Chieh Lee, Firoz Dalal
  • Patent number: 9591318
    Abstract: Innovations described herein provide a generic encoding and decoding framework that includes some features of simulcast and some features of scalable video coding. For example, a bitstream multiplexer multiplexes component bitstreams into a multi-layer encoding (MLE) bitstream that provides temporal scalability, spatial resolution scalability and/or signal to noise ratio scalability. Each of the component bitstreams provides an alternative version of input video, and a given component bitstream can be a non-scalable bitstream or scalable bitstream. The multiplexer follows composition rules for the MLE bitstream and may rewrite values of certain syntax elements of component bitstreams using an approach that avoids bit shifting operations. A corresponding demultiplexer receives an MLE bitstream that includes component bitstreams and demultiplexes at least part of at least one of the component bitstreams from the MLE bitstream, following decomposition rules for the demultiplexing.
    Type: Grant
    Filed: September 16, 2011
    Date of Patent: March 7, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Mei-Hsuan Lu, Ming-Chieh Lee
  • Patent number: 9538137
    Abstract: Ways to mitigate loss in inter-operability scenarios for digital video are presented. For example, a bitstream modification tool (such as a bitstream rewriter running on a network node of a videoconferencing system) receives an incoming bitstream of encoded video (e.g., from an encoder that uses a first loss recovery strategy). The bitstream modification tool processes the incoming bitstream of encoded video to produce an outgoing bitstream of encoded video. In doing so, the bitstream modification tool changes at least one syntax element between the incoming bitstream and the outgoing bitstream so as to mitigate picture loss effects during decoding of the outgoing bitstream under lossy delivery conditions. The bitstream modification tool outputs the outgoing bitstream. In this way, the bitstream modification tool can help avoid blank screens, frozen screens, or other failures during decoding under lossy delivery conditions (e.g., with a decoder that uses a different loss recovery strategy).
    Type: Grant
    Filed: April 9, 2015
    Date of Patent: January 3, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Mei-Hsuan Lu, Ming-Chieh Lee
  • Publication number: 20160381396
    Abstract: A video bitstream can be encoded and sent over a computer network to a decoding computer system. The bitstream can follow a regular prediction structure when an encoding computer system is not notified of lost data from the bitstream. A notification of lost data in the bitstream can be received. The lost data can include at least a portion of a reference frame of the bitstream. In response, a synchronization predicted frame can be dynamically encoded with a prediction that references one or more other previously-sent frames in the bitstream and that does not reference the lost data. The synchronization predicted frame can be inserted in the bitstream in a position where the regular prediction structure would have dictated inserting a different predicted frame with a prediction that would have referenced the lost data according to the regular prediction structure.
    Type: Application
    Filed: September 7, 2016
    Publication date: December 29, 2016
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Mei-Hsuan Lu, Ming-Chieh Lee
  • Publication number: 20160301895
    Abstract: Ways to mitigate loss in inter-operability scenarios for digital video are presented. For example, a bitstream modification tool (such as a bitstream rewriter running on a network node of a videoconferencing system) receives an incoming bitstream of encoded video (e.g., from an encoder that uses a first loss recovery strategy). The bitstream modification tool processes the incoming bitstream of encoded video to produce an outgoing bitstream of encoded video. In doing so, the bitstream modification tool changes at least one syntax element between the incoming bitstream and the outgoing bitstream so as to mitigate picture loss effects during decoding of the outgoing bitstream under lossy delivery conditions. The bitstream modification tool outputs the outgoing bitstream. In this way, the bitstream modification tool can help avoid blank screens, frozen screens, or other failures during decoding under lossy delivery conditions (e.g., with a decoder that uses a different loss recovery strategy).
    Type: Application
    Filed: April 9, 2015
    Publication date: October 13, 2016
    Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Mei-Hsuan Lu, Ming-Chieh Lee
  • Publication number: 20160234522
    Abstract: Video content is relayed from a transmitting device to a receiving device via a video relay server. The content comprises a plurality of frames. Before encoding, each of the plurality of frames is formed of a respective array of desired image data to be displayed at the receiving device. Filler image data is added to each of the plurality of frames before encoding. Control data is generated, which comprises cropping data indicating that none, or only some, of the filler image data should be cropped out before the plurality of frames is displayed. The encoded video content and the control data is transmitted to the server. At the server, the filler image data is detected automatically; in response, the cropping data is modified to indicate that all of the filler data should be cropped out before displaying the frames.
    Type: Application
    Filed: February 5, 2015
    Publication date: August 11, 2016
    Inventors: Mei-Hsuan Lu, Satya Sasikanth Bendapudi
  • Publication number: 20160212468
    Abstract: A user device within a communication architecture, the user device comprising: an image capture device configured to determine image data for the creation of a video channel defining the shared scene; an intrinsic/extrinsic data determiner configured to determine intrinsic/extrinsic capture device data associated with the image capture device; and a video encoder configured to encode the image data and intrinsic/extrinsic capture device data within the video channel.
    Type: Application
    Filed: January 21, 2015
    Publication date: July 21, 2016
    Inventors: Ming-Chieh Lee, Mei-Hsuan Lu, Robert Aichner, Ryan S. Menezes, Abhishek Abhishek, Bofan Hsu, Ermin Kozica
  • Patent number: 9204061
    Abstract: Displaying video on a video display device is disclosed. A first video stream from a first video streaming source is displayed on the display device. A second video stream from a second video streaming source is processed on the display device without displaying the second video stream. Displaying the first video stream is ceased and instead the second video stream is displayed. Supporting operations on a video stream is also disclosed. At least one video chunk is received at a first granularity. A determination is made that an operation is to be performed at a different granularity. At least one video chunk is requested at the different granularity.
    Type: Grant
    Filed: February 14, 2013
    Date of Patent: December 1, 2015
    Assignee: Conviva Inc.
    Inventors: Ningning Hu, John W. Heffner, Mei-Hsuan Lu, Aditya R. Ganjam, Ion Stoica
  • Patent number: 9204156
    Abstract: Innovations described herein facilitate the addition of temporal scalability to non-scalable bitstreams. For example, a bitstream rewriter receives units of encoded video data for a non-scalable bitstream from components of a hardware-based encoder. The bitstream rewriter changes at least some of the units of encoded video data so as to produce a scalable bitstream with temporal scalability. In doing so, the bitstream rewriter can associate an original sequence parameter set (SPS) and original picture parameter set (PPS) with pictures for a temporal base layer, and associate a new SPS and new PPS with pictures for a temporal enhancement layer. The bitstream rewriter can also alter syntax elements in the units of encoded video data, for example, changing syntax elements in a slice header in ways that avoid bit shifting operations for following coded slice data for a unit of encoded video data for the temporal enhancement layer.
    Type: Grant
    Filed: November 3, 2011
    Date of Patent: December 1, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Mei-Hsuan Lu, Ming-Chieh Lee
  • Patent number: 8842159
    Abstract: Optimization of conference call encoding processes is provided. A first client of a multi-party conference call may receive client capability data, including video scalability support, from each of the other clients to the conference call. Based on the client capability data and the transmission capabilities of the first client, including video scalability support, the first client may determine a total number of data streams and properties for each data stream, such that the total number of data streams and the plurality of properties for each data stream are optimized and supported by the respective client capability data and the transmission capabilities. Subsequently, the first client generates one or more data streams according to the total number of data streams and the properties that were determined for each data stream and transmits the one or more data streams to the other clients of the conference call.
    Type: Grant
    Filed: February 13, 2012
    Date of Patent: September 23, 2014
    Assignee: Microsoft Corporation
    Inventors: Mei-Hsuan Lu, Ming-Chieh Lee
  • Publication number: 20140153643
    Abstract: Mean absolute difference (MAD) prediction for video encoding may be provided. Upon receiving a video stream comprising a plurality of quality layers, a first quantization parameter (QP) may be selected for a first frame of the video stream according to a second QP associated with a second frame and a third QP associated with a third frame. The first frame may then be encoded according to the selected first QP.
    Type: Application
    Filed: February 3, 2014
    Publication date: June 5, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: Mei-Hsuan Lu, Tin Qian
  • Patent number: 8644383
    Abstract: Mean absolute difference (MAD) prediction for video encoding may be provided. Upon receiving a video stream comprising a plurality of quality layers, a first quantization parameter (QP) may be selected for a first frame of the video stream according to a second QP associated with a second frame and a third QP associated with a third frame. The first frame may then be encoded according to the selected first QP.
    Type: Grant
    Filed: March 10, 2011
    Date of Patent: February 4, 2014
    Assignee: Microsoft Corporation
    Inventors: Mei-Hsuan Lu, Tin Qian
  • Publication number: 20130223524
    Abstract: A video bitstream can be encoded and sent over a computer network to a decoding computer system. The bitstream can follow a regular prediction structure when an encoding computer system is not notified of lost data from the bitstream. A notification of lost data in the bitstream can be received. The lost data can include at least a portion of a reference frame of the bitstream. In response, a synchronization predicted frame can be dynamically encoded with a prediction that references one or more other previously-sent frames in the bitstream and that does not reference the lost data. The synchronization predicted frame can be inserted in the bitstream in a position where the regular prediction structure would have dictated inserting a different predicted frame with a prediction that would have referenced the lost data according to the regular prediction structure.
    Type: Application
    Filed: February 29, 2012
    Publication date: August 29, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Mei-Hsuan Lu, Ming-Chieh Lee
  • Publication number: 20130208075
    Abstract: Optimization of conference call encoding processes is provided. A first client of a multi-party conference call may receive client capability data, including video scalability support, from each of the other clients to the conference call. Based on the client capability data and the transmission capabilities of the first client, including video scalability support, the first client may determine a total number of data streams and properties for each data stream, such that the total number of data streams and the plurality of properties for each data stream are optimized and supported by the respective client capability data and the transmission capabilities. Subsequently, the first client generates one or more data streams according to the total number of data streams and the properties that were determined for each data stream and transmits the one or more data streams to the other clients of the conference call.
    Type: Application
    Filed: February 13, 2012
    Publication date: August 15, 2013
    Applicant: Microsoft Corporation
    Inventors: Mei-Hsuan Lu, Ming-Chieh Lee
  • Publication number: 20130208809
    Abstract: Concepts and technologies are described herein for multi-layer rate control. In accordance with the concepts and technologies disclosed herein, a video server obtains video data and encodes the video data into a multi-layer video stream. Layers of the video stream cart be output buffers and the buffers can be monitored to determine bit usage. A rate controller can obtain bit usage feedback for each layer of the encoded video stream and determine, based upon the bit usage feedback, a quantization parameter associated with each layer of the encoded video stream. In determining the quantization parameters, the rate controller can consider not only bitrates of the entire encoded video stream, but also bitrates and bit usage feedback associated with each layer of the encoded video stream. Further encoding can be based upon the quantization parameters determined by the video server.
    Type: Application
    Filed: February 14, 2012
    Publication date: August 15, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Mei-Hsuan Lu, Ming-Chieh Lee
  • Publication number: 20130177071
    Abstract: Innovations described herein provide a framework for advertising encoder capabilities, initializing encoder configuration, and signaling run-time control messages for video coding and decoding. For example, an encoding controller receives a request for encoder capability data from a decoding host controller, determines the capability data, and sends the capability data in reply. The capability data can include data that indicate a number of bitstreams, each providing an alternative version of input video, as well as data that indicate scalable video coding capabilities. The decoding host controller creates stream configuration request data based on the encoder capability data, and sends the configuration request data to the encoding controller. During decoding, the decoding host controller can create and send a control message for run-time control of encoding, where the control message includes a stream identifier for a bitstream and layer identifiers for a given layer of the bitstream.
    Type: Application
    Filed: January 11, 2012
    Publication date: July 11, 2013
    Applicant: Microsoft Corporation
    Inventors: Mei-Hsuan Lu, Ming-Chieh Lee
  • Publication number: 20130156101
    Abstract: 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: Application
    Filed: December 16, 2011
    Publication date: June 20, 2013
    Applicant: Microsoft Corporation
    Inventors: Mei-Hsuan Lu, Yongjun Wu, Ming-Chieh Lee, Gary J. Sullivan