Patents by Inventor Tin Qian

Tin Qian 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: 20230308729
    Abstract: Techniques are described for low-latency streaming of media content using a lossless protocol. For example, a media stream, comprising encoded video data, can be streamed to a plurality of streaming clients via the lossless protocol. The plurality of streaming clients can be monitored to determine whether any of them have fallen behind in streaming the media stream. When a streaming client falls behind, a portion of video data to be streamed to the streaming client can be selectively dropped based on scalability information and/or long term reference (LTR) frame information. The low-latency streaming can be performed without using per-client quality feedback from the plurality of streaming clients. When streaming using a semi-lossy protocol, a plurality of delivery modes can be used, where each delivery mode is for a different type of encoded video data and provides a different level of reliability.
    Type: Application
    Filed: June 2, 2023
    Publication date: September 28, 2023
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Rajesh GUNNALAN, Mihhail KONOVALOV, Tin QIAN, Satya Sasikanth BENDAPUDI
  • Patent number: 11736552
    Abstract: Techniques are described for streaming (e.g., low-latency streaming) of media content by performing sender-based adaptive bit rate control operations. The operations can include streaming a media stream to a streaming client. While streaming the media stream, an outgoing queue of buffered streaming content to be sent to the streaming client can be monitored. When a step down condition is satisfied, based at least in part on the monitoring, a switch can be made to a lower bit rate media stream for streaming to the streaming client. When a step up condition is satisfied, based at least in part on the monitoring, a switch can be made to a higher bit rate media stream for streaming to the streaming client. The operations are performed without receiving any quality feedback from the streaming client and without measuring bandwidth of the network channel.
    Type: Grant
    Filed: September 21, 2022
    Date of Patent: August 22, 2023
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Rajesh Gunnalan, Ilja Tsahhirov, Mihhail Konovalov, Tin Qian
  • Patent number: 11706497
    Abstract: Techniques are described for low-latency streaming of media content using a lossless protocol. For example, a media stream, comprising encoded video data, can be streamed to a plurality of streaming clients via the lossless protocol. The plurality of streaming clients can be monitored to determine whether any of them have fallen behind in streaming the media stream. When a streaming client falls behind, a portion of video data to be streamed to the streaming client can be selectively dropped based on scalability information and/or long term reference (LTR) frame information. The low-latency streaming can be performed without using per-client quality feedback from the plurality of streaming clients. When streaming using a semi-lossy protocol, a plurality of delivery modes can be used, where each delivery mode is for a different type of encoded video data and provides a different level of reliability.
    Type: Grant
    Filed: February 11, 2022
    Date of Patent: July 18, 2023
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Rajesh Gunnalan, Mihhail Konovalov, Tin Qian, Satya Sasikanth Bendapudi
  • Publication number: 20230117444
    Abstract: Techniques are described for low-latency real-time streaming of media content. For example, streaming media content can be received from a media source, where the streaming media content comprises audio and/or video content. An audio/video stream can be streamed to one or more streaming clients. The audio/video stream is streamed as a sequence of encoded audio and/or video frames, which are independent encoded audio and/or video frames that are not grouped into chunks for streaming. The sequence of encoded audio and/or video frames is streamed to the one or more streaming clients as a one-way stream and without receiving any requests from the one or more streaming clients for subsequent frames or chunks.
    Type: Application
    Filed: October 19, 2021
    Publication date: April 20, 2023
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Rajesh Gunnalan, Mihhail Konovalov, Tin Qian, Timothy Mark Moore
  • Patent number: 11418568
    Abstract: Techniques for providing improved online communication are provided herein. In one example, a model may be used to predict network parameters of a network connection of a computing device. One or more attributes specifying characteristics of the network connection for the computing device may be received and used by the model to predict the network parameters. The predicted network parameters may be provided to a computing device for initiation of a media session.
    Type: Grant
    Filed: July 19, 2021
    Date of Patent: August 16, 2022
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Rajesh Gunnalan, Huazhou Liu, Jiannan Zheng, Tin Qian
  • Patent number: 11245734
    Abstract: A conferencing computing device, including memory storing one or more dispatch data structures. The conferencing computing device may further include a processor configured to, at a port, receive, from a sender computing device, a first input packet including first input packet data and a second input packet that includes a copy of the first input packet data, via a first communication channel and a second communication channel, respectively. Based on the input packet data and the one or more dispatch data structures, the processor may add the input packets to a queue of a transport provider bound to the port. The processor may transmit the input packets to an application program instance associated with the queue. The processor may determine that the first communication channel or the second communication channel is disconnected and may maintain communication with the sender computing device through the port via a remaining communication channel.
    Type: Grant
    Filed: September 10, 2020
    Date of Patent: February 8, 2022
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Rajesh Gunnalan, Mihhail Konovalov, Tin Qian
  • Patent number: 11240277
    Abstract: A conferencing computing device, including memory storing one or more dispatch data structures. The conferencing computing device may further include a processor configured to receive a plurality of input packets at a shared port from a plurality of sender computing devices. Based on input packet data and the one or more dispatch data structures, the processor may add each input packet to an input queue bound to the shared port. The processor may transmit the input packets to a plurality of application program instances associated with the input queues. The processor may generate a plurality of output packets at the application program instances. The processor may add each output packet to an output queue associated with the application program instance at which that output packet was generated. The processor may, through the shared port, transmit the output packets to a plurality of recipient computing devices.
    Type: Grant
    Filed: September 10, 2020
    Date of Patent: February 1, 2022
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Rajesh Gunnalan, Mihhail Konovalov, Tin Qian
  • Patent number: 11228957
    Abstract: Techniques to select a network interface herein can be used with an application that is configured to send and receive data. These techniques include detecting an event indicative of a problem with network connectivity associated with a first network interface of the plurality of network interfaces in an application utilizing the first network interface; testing connectivity of each network interface of the plurality of network interfaces other than the first network interface to produce a set of candidate network interfaces; selecting a candidate network interface from the candidate network interfaces; and routing data for the application through the selected candidate network interface.
    Type: Grant
    Filed: September 13, 2019
    Date of Patent: January 18, 2022
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Rajesh Gunnalan, Mihhail Konovalov, Tin Qian
  • Publication number: 20210344737
    Abstract: Techniques for providing improved online communication are provided herein. In one example, a model may be used to predict network parameters of a network connection of a computing device. One or more attributes specifying characteristics of the network connection for the computing device may be received and used by the model to predict the network parameters. The predicted network parameters may be provided to a computing device for initiation of a media session.
    Type: Application
    Filed: July 19, 2021
    Publication date: November 4, 2021
    Inventors: Rajesh Gunnalan, Huazhou Liu, Jiannan Zheng, Tin Qian
  • Patent number: 11089078
    Abstract: Techniques for providing improved online communication are provided herein. In one example, a model may be used to predict network parameters of a network connection of a computing device. One or more attributes specifying characteristics of the network connection for the computing device may be received and used by the model to predict the network parameters. The predicted network parameters may be provided to a computing device for initiation of a media session.
    Type: Grant
    Filed: September 13, 2019
    Date of Patent: August 10, 2021
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Rajesh Gunnalan, Huazhou Liu, Jiannan Zheng, Tin Qian
  • Patent number: 11019117
    Abstract: In a device including a processor and a memory in communication with the processor, the memory includes executable instructions that, when executed by the processor, cause the processor to control the device to perform functions of connecting to a plurality of remote devices, using a network address and a port number that are usable for a plurality of remote devices to access the device; providing a plurality of tokens to a plurality of remote devices, respectively, each token being unique and associated with a different one of the plurality of remote devices; receiving from a first remote device, a first data packet including first media data and a first token associated with the first remote device; and identifying, based on the received first token, the first remote device as a source of the received first data packet.
    Type: Grant
    Filed: July 8, 2019
    Date of Patent: May 25, 2021
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Tin Qian, Rajesh Gunnalan, Timothy Mark Moore
  • Patent number: 10972510
    Abstract: A media session is established between a first device (e.g., endpoint) and a second device (e.g., endpoint) via a communication network based on connectivity checks performed by the devices. A set of candidate pairs, including network addresses available to the first device and the second device, is generated. Among the candidate pairs of the candidate pair set, a respective priority is initially assigned for connectivity checks. If a connectivity check modification condition is determined to be met for candidate pairs used for connectivity checks, the priority ordering of the candidate pairs is modified to produce a second priority ordering. This second priority ordering assigns a higher priority for a candidate pair which meets the connectivity check modification condition than a candidate pair that does not meet the condition. Based on the modified ordering, connectivity checks are performed, and the media session is configured and established using a candidate pair determined to be valid.
    Type: Grant
    Filed: December 12, 2018
    Date of Patent: April 6, 2021
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Timothy Mark Moore, Tin Qian, Rajesh Gunnalan
  • Publication number: 20210084093
    Abstract: Techniques for providing improved online communication are provided herein. In one example, a model may be used to predict network parameters of a network connection of a computing device. One or more attributes specifying characteristics of the network connection for the computing device may be received and used by the model to predict the network parameters. The predicted network parameters may be provided to a computing device for initiation of a media session.
    Type: Application
    Filed: September 13, 2019
    Publication date: March 18, 2021
    Inventors: Rajesh Gunnalan, Huazhou Liu, Jiannan Zheng, Tin Qian
  • Publication number: 20210084556
    Abstract: Techniques to select a network interface herein can be used with an application that is configured to send and receive data. These techniques include detecting an event indicative of a problem with network connectivity associated with a first network interface of the plurality of network interfaces in an application utilizing the first network interface; testing connectivity of each network interface of the plurality of network interfaces other than the first network interface to produce a set of candidate network interfaces; selecting a candidate network interface from the candidate network interfaces; and routing data for the application through the selected candidate network interface.
    Type: Application
    Filed: September 13, 2019
    Publication date: March 18, 2021
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Rajesh GUNNALAN, Mihhail KONOVALOV, Tin QIAN
  • Publication number: 20200412775
    Abstract: A conferencing computing device, including memory storing one or more dispatch data structures. The conferencing computing device may further include a processor configured to, at a port, receive, from a sender computing device, a first input packet including first input packet data and a second input packet that includes a copy of the first input packet data, via a first communication channel and a second communication channel, respectively. Based on the input packet data and the one or more dispatch data structures, the processor may add the input packets to a queue of a transport provider bound to the port. The processor may transmit the input packets to an application program instance associated with the queue. The processor may determine that the first communication channel or the second communication channel is disconnected and may maintain communication with the sender computing device through the port via a remaining communication channel.
    Type: Application
    Filed: September 10, 2020
    Publication date: December 31, 2020
    Applicant: Micosoft Technology Licensing, LLC
    Inventors: Rajesh GUNNALAN, Mihhail Konovalov, Tin Qian
  • Publication number: 20200412774
    Abstract: A conferencing computing device, including memory storing one or more dispatch data structures. The conferencing computing device may further include a processor configured to receive a plurality of input packets at a shared port from a plurality of sender computing devices. Based on input packet data and the one or more dispatch data structures, the processor may add each input packet to an input queue bound to the shared port. The processor may transmit the input packets to a plurality of application program instances associated with the input queues. The processor may generate a plurality of output packets at the application program instances. The processor may add each output packet to an output queue associated with the application program instance at which that output packet was generated. The processor may, through the shared port, transmit the output packets to a plurality of recipient computing devices.
    Type: Application
    Filed: September 10, 2020
    Publication date: December 31, 2020
    Applicant: Microsoft Technology Licensing, LLC.
    Inventors: Rajesh GUNNALAN, Mihhail KONOVALOV, Tin QIAN
  • Patent number: 10862863
    Abstract: Techniques for a session identifier for a communication session are described. According to various implementations, a session identifier that is usable for initiating a communication session is allocated prior to the communication session being initiated. The session identifier can then be activated to enable the session identifier to be used for routing data packets of a communication session.
    Type: Grant
    Filed: June 25, 2018
    Date of Patent: December 8, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Timothy Mark Moore, Tin Qian, Rajesh Gunnalan
  • Patent number: 10855654
    Abstract: Techniques for a session identifier for a communication session are described. According to various implementations, a session identifier that is usable for initiating a communication session is allocated prior to the communication session being initiated. The session identifier can then be activated to enable the session identifier to be used for routing data packets of a communication session.
    Type: Grant
    Filed: June 26, 2018
    Date of Patent: December 1, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Timothy Mark Moore, Tin Qian, Rajesh Gunnalan
  • Patent number: 10785271
    Abstract: A conferencing computing device, including memory storing one or more dispatch data structures. The conferencing computing device may further include a processor configured to receive a plurality of input packets at a port from a plurality of sender computing devices. Based on input packet data and the one or more dispatch data structures, for each input packet, the processor may to add that input packet to a queue of a transport provider bound to the port. The processor may transmit the plurality of input packets to a plurality of application program instances and instantiate a respective plurality of concurrent multipoint conferencing sessions. The processor may transmit a plurality of output packets from the plurality of application program instances to a plurality of recipient computing devices. The plurality of output packets may be multiplexed through the port and each have a multiplexed local socket address of the port.
    Type: Grant
    Filed: June 4, 2019
    Date of Patent: September 22, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Rajesh Gunnalan, Mihhail Konovalov, Tin Qian
  • Patent number: 10778726
    Abstract: A method for bidirectional data exchange includes, on a network computing device, receiving a first request from a first computing device via a request and response protocol, the first request including a first-device-provided portion of a data stream. The first-device-provided portion of the data stream is sent to a second computing device. A second-device-provided portion of the data stream is received from the second computing device. A second request is received from the first computing device via the request and response protocol, the second request soliciting the second-device-provided portion of the data stream. A response to the second request is sent to the first computing device via the request and response protocol, the response including the second-device-provided portion of the data stream.
    Type: Grant
    Filed: August 31, 2017
    Date of Patent: September 15, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ilja Tsahhirov, Tin Qian, Rajesh Gunnalan, Mihhail Konovalov, Marcin Goliszewski, Aadu Adok, Mykhailo Moroz