Patents by Inventor Renat Vafin

Renat Vafin 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: 11044290
    Abstract: There is provided a method of controlling a rate at which content data is received at a receiver over a network, wherein the receiver has caused a first strew of real-time communication event data to be received at the receiver, and a second stream of content data to be received at the receiver, the method comprising steps of: dynamically measuring network conditions of the network based on the real-time communication event data; and limiting the rate at which the content data is received at the receiver based on the dynamically measured network conditions.
    Type: Grant
    Filed: January 16, 2018
    Date of Patent: June 22, 2021
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Mingyu Chen, Adriana Dumitras, Mattias Nilsson, Renat Vafin, Christoffer Asgaard Rödbro
  • Patent number: 10903853
    Abstract: Correction data units for data packets of a data stream are generated. A correction data unit is based on a set of the data packets of the stream. The stream is transmitted over a communication channel. A performance measure to be optimized is selected, which relates to the recovery of lost data packets of the stream. To optimize the performance measure, a plurality of correction data vectors are determined, and a plurality of a plurality of non-recovery probabilities, corresponding to the correction data vectors, are initialized. One or more of the correction data vectors are selected that contribute towards a non-recovery probability of an original data packet. The non-recovery probability associated with the original data packet is then minimized based on the selected one or more correction data vectors. The selected one or more correction data vectors are then used to determine which of the original data packets or data correction units to transmit.
    Type: Grant
    Filed: August 14, 2018
    Date of Patent: January 26, 2021
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Renat Vafin, Soren Vang Andersen, Mattias Nilsson
  • Patent number: 10498359
    Abstract: Correction data units for data packets of a data stream are generated. A correction data unit is based on a set of the data packets of the stream. The stream is transmitted over a lossy communication channel. A performance measure to be optimized is selected, which relates to the recovery of lost data packets of the stream. A coding requirement is determined. For the generation of the correction data units, it is determined, within the constraints of the coding requirement and based on previously generated correction data units, which of the data packets in the stream to include in the set on which the generation of the correction data unit is to be based to thereby optimize the selected performance measure. A generated correction data unit is generated based on a respective set of the data packets of the stream. The generated correction data units are included in the stream.
    Type: Grant
    Filed: October 15, 2013
    Date of Patent: December 3, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Renat Vafin, Soren Vang Andersen, Mattias Nilsson
  • Publication number: 20190007060
    Abstract: Correction data units for data packets of a data stream are generated. A correction data unit is based on a set of the data packets of the stream. The stream is transmitted over a communication channel. A performance measure to be optimized is selected, which relates to the recovery of lost data packets of the stream. To optimize the performance measure, a plurality of correction data vectors are determined, and a plurality of a plurality of non-recovery probabilities, corresponding to the correction data vectors, are initialized. One or more of the correction data vectors are selected that contribute towards a non-recovery probability of an original data packet. The non-recovery probability associated with the original data packet is then minimized based on the selected one or more correction data vectors. The selected one or more correction data vectors are then used to determine which of the original data packets or data correction units to transmit.
    Type: Application
    Filed: August 14, 2018
    Publication date: January 3, 2019
    Inventors: Renat Vafin, Soren Vang Andersen, Mattias Nilsson
  • Publication number: 20180278664
    Abstract: There is provided a method of controlling a rate at which content data is received at a receiver over a network, wherein the receiver has caused a first strew of real-time communication event data to be received at the receiver, and a second stream of content data to be received at the receiver, the method comprising steps of: dynamically measuring network conditions of the network based on the real-time communication event data; and limiting the rate at which the content data is received at the receiver based on the dynamically measured network conditions.
    Type: Application
    Filed: January 16, 2018
    Publication date: September 27, 2018
    Inventors: Mingyu Chen, Adriana Dumitras, Mattias Nilsson, Renat Vafin, Christoffer Asgaard Rödbro
  • Publication number: 20180224948
    Abstract: Methods and systems for controlling a computing-based device based on gestures made within a predetermined range of a camera wherein the predetermined range is a subset of the field of view of the camera. Any gestures made outside of the predetermined range are ignored and do not cause the computing-based device to perform any action. In some examples, the gestures are used to control a drawing canvas that is implemented in a video conference session. In these examples, a single camera may be used to generate an image of a video conference user which is used to detect gestures in the predetermined range and provide other parties to the video conference session a visual image of the user.
    Type: Application
    Filed: April 3, 2018
    Publication date: August 9, 2018
    Inventors: Henrik Turbell, Mattias Nilsson, Renat Vafin, Jekaterina Pinding, Antonio Criminisi, Indeera Munasinghe
  • Patent number: 9900357
    Abstract: There is provided a method of controlling a rate at which content data is received at a receiver over a network, wherein the receiver has caused a first stream of real-time communication event data to be received at the receiver, and a second stream of content data to be received at the receiver, the method comprising steps of: dynamically measuring network conditions of the network based on the real-time communication event data; and limiting the rate at which the content data is received at the receiver based on the dynamically measured network conditions.
    Type: Grant
    Filed: September 10, 2013
    Date of Patent: February 20, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Mingyu Chen, Adriana Dumitras, Mattias Nilsson, Renat Vafin, Christoffer Asgaard Rödbro
  • Patent number: 9854274
    Abstract: A method of performing a rate-distortion optimization process comprising selecting a preferred encoding mode by optimizing a function comprising an estimate of distortion for a target image portion and a measure of bit rate required to encode that portion. The estimate of distortion is based on source coding distortion and an estimate of error propagation distortion due to loss. The method further comprises transmitting the same encoded version of the video stream from the transmitting terminal to each of a plurality of receiving terminals over respective lossy channels, using the same rate-distortion optimization process in relation to each of the plurality of receiving terminals, making the same encoding mode selection per target image portion based on the same optimization of said function. The estimate of error propagation distortion comprises an aggregate estimate of error propagation distortion that would be experienced due to possible loss over the plurality of channels.
    Type: Grant
    Filed: October 17, 2011
    Date of Patent: December 26, 2017
    Assignee: SKYPE LIMITED
    Inventors: Mattias Nilsson, Renat Vafin, Soren Vang Andersen
  • Patent number: 9819358
    Abstract: An encoder stage, and corresponding encoded bitstream and decoder. The encoder stage comprises: a variable length encoder for encoding an input signal; and a counter configured to dynamically detect an observed frequency at which different symbols are found to occur within each of a plurality of predetermined portions of the input signal, prior to the symbols of each respective portion being encoded by the variable length encoder. The variable length encoder is configured to encode the symbols of each portion using variable length coding performed in dependence on the observed frequencies detected within the respective portion of the input signal, to generate an encoded bitstream comprising the encoded symbols along with an additional element indicating information regarding the observed frequencies detected for each portion, and to output the encoded bitstream to at least one of a storage medium and a transmission medium for supply to a decoder.
    Type: Grant
    Filed: July 16, 2010
    Date of Patent: November 14, 2017
    Assignee: Skype
    Inventors: Renat Vafin, Lazar Bivolarsky, Mattias Nilsson, Soren Vang Andersen
  • Patent number: 9609342
    Abstract: A method of selecting reference blocks for intra or inter prediction coding of a current block of a video signal. Each reference blocks is selected by: (i) determining a group of candidate blocks comprising at least some candidate blocks other than immediately adjacent spatial neighbors of the current block; and (ii) selecting one of the candidate blocks as the reference block based on a second metric, different from the first metric, the second metric relating to a number of bits that would be required in the encoded bitstream to encode both the residual block and the side information identifying the respective reference block.
    Type: Grant
    Filed: July 16, 2010
    Date of Patent: March 28, 2017
    Assignee: Skype
    Inventors: Lazar Bivolarsky, Mattias Nilsson, Renat Vafin, Soren Vang Andersen
  • Patent number: 9558451
    Abstract: The disclosure relates to a communication client application for running on a user terminal to conduct calls over a network. The client is configured to access a model which models quality of user experience for calls based on a set of technical parameters of each call. The model itself is based on user feedback indicating subjective quality of multiple past calls as experienced by multiple users, modeled with respect to the technical parameters collected from each of the past calls. The model generates a predicted call quality score predicting the quality of user experience for the call given its technical parameters. Based on this process, one or more of the technical parameters of the call can be adapted to try to increase the quality experienced by the user.
    Type: Grant
    Filed: March 6, 2014
    Date of Patent: January 31, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Mattias Nilsson, Ando Saabas, Renat Vafin, Markus Vaalgamaa, Adriana Dumitras, Teele Tamme, Andre Veski
  • Patent number: 9437216
    Abstract: A method of receiving at a terminal a first signal transmitted via a communication network, said method comprising the steps of; receiving at the terminal the first signal comprising a plurality of data elements; analyzing characteristics of the first signal; receiving from a user of the terminal a second signal to be transmitted from the terminal; analyzing characteristics of the second signal to detect audio activity in the second signal; and applying a delay between receiving at the terminal and outputting from the terminal at least one of said plurality of data elements; and adjusting the delay based on the analyzed characteristics of the first signal and on the detection of audio activity in the second signal.
    Type: Grant
    Filed: February 22, 2013
    Date of Patent: September 6, 2016
    Assignee: Skype
    Inventors: Renat Vafin, Jonas Lindblom, Markus Vaalgamaa
  • Patent number: 9338473
    Abstract: A method of performing a rate-distortion optimization process comprising, for each of a plurality of target image portions to be encoded in each of a plurality of frames, selecting a preferred one of a set of encoding modes by optimizing a function comprising an estimate of distortion for the target image portion and a measure of bit rate required to encode the target image portion, wherein the estimate of distortion is based on source coding distortion and an estimate of a distortion that would be experienced due to possible loss over the channel; encoding the target image portion into the encoded video stream using the selected encoding mode; and transmitting the encoded video stream over the channel. The rate-distortion optimization process for a current one of the frames is performed in dependence on feedback received from the receiving terminal based on an earlier one of the frames.
    Type: Grant
    Filed: October 17, 2011
    Date of Patent: May 10, 2016
    Assignee: Skype
    Inventors: David Zhao, Mattias Nilsson, Renat Vafin, Andrei Jefremov, Sören Vang Andersen, Pontus Carlsson
  • Patent number: 9313526
    Abstract: The present invention provides a technique for performing one or more aspects of video coding such as quantization, intra prediction coding or inter prediction coding in dependence on a perceptual model taking into account human sensitivity to data in the video signal. The perceptual model may relate to spatial frequency, temporal frequency, contrast sensitivity, color sensitivity, a structural metric, and/or one or more parameters affecting perception such as motion in the video, the distance of a recipient user from the screen, and the size, aspect ratio or resolution of the screen of the recipient terminal.
    Type: Grant
    Filed: February 17, 2011
    Date of Patent: April 12, 2016
    Assignee: Skype
    Inventors: Lazar Bivolarsky, Renat Vafin, Mattias Nilsson, Soren Vang Andersen
  • Patent number: 9307265
    Abstract: A method comprising: encoding a video image at each of a plurality of frames, including by using inter frame encoding to encode at least portions of some of the frames, thereby generating an encoded video stream; transmitting the encoded video stream over a lossy channel to be decoded at a receiver to produce decoded video; and performing a recovery operation to refresh the encoding of the video image, cutting off error propagation that has occurred in the decoded video due to an effect of inter prediction in presence of loss over said channel; wherein said recovery operation is triggered by a report fed back from the receiver indicative of loss; and wherein the recovery operation is performed over a plural number of frames, refreshing the encoding of different partial frame regions at different respective frames.
    Type: Grant
    Filed: November 17, 2014
    Date of Patent: April 5, 2016
    Assignee: Skype
    Inventors: Mattias Nilsson, Renat Vafin, Soren Vang Andersen
  • Patent number: 9276606
    Abstract: Various embodiments provide a method for processing encoded data bits transmitted over a lossy communication channel. In some embodiments, the method receives the encoded data bits over the communication channel, the encoded data bits including redundant data units; decodes the encoded data bits at an error correction decoder, wherein the recovery of lost data is implemented at the error correction decoder using at least one of the redundant data units; determining if at least one data bit is unable to be recovered due to the decoder finding a plurality of candidate bit values for the at least one data bit; receives information relating to the transmitter; analyzing the plurality of candidate bit values to exclude at least one of the candidate bit values for the at least one data bit using information relating to the transmitter; and resolves the at least one data bit based on the analysis.
    Type: Grant
    Filed: November 1, 2012
    Date of Patent: March 1, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Renat Vafin, Soren Vang Andersen, Mattias Nilsson
  • Patent number: 9246644
    Abstract: Methods, transmitter, receiver and computer program product for transmitting or receiving data of a real-time communication event, the data being transmitted from the transmitter to a jitter buffer of the receiver. At least one processing parameter describing how data is to be processed for transmission from the transmitter to the jitter buffer in the real-time communication event is determined at the transmitter. Data is processed for transmission from the transmitter to the jitter buffer in accordance with the determined at least one processing parameter. Control information based on the determined at least one processing parameter is transmitted from the transmitter to the receiver, wherein the control information is for use by the receiver to control a state of the jitter buffer. The processed data is transmitted from the transmitter to the jitter buffer of the receiver in the real-time communication event.
    Type: Grant
    Filed: January 5, 2015
    Date of Patent: January 26, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Renat Vafin, Mattias Nilsson, Soren Vang Andersen, Andrei Jefremov
  • Patent number: 9166735
    Abstract: Correction data units for data packets of a data stream are generated. A correction data unit is based on a set of the data packets of the stream. The stream is transmitted over a lossy communication channel. A performance measure to be optimized is selected, which relates to the recovery of lost data packets of the stream. A coding requirement is determined. For the generation of the correction data units, it is determined, within the constraints of the coding requirement and based on previously generated correction data units, which of the data packets in the stream to include in the set on which the generation of the correction data unit is to be based to thereby optimize the selected performance measure. A generated correction data unit is generated based on a respective set of the data packets of the stream. The generated correction data units are included in the stream.
    Type: Grant
    Filed: November 14, 2011
    Date of Patent: October 20, 2015
    Assignee: Skype
    Inventors: Renat Vafin, Sören Vang Andersen, Mattias Nilsson
  • Patent number: 9143806
    Abstract: A video coding method includes for each target image portion to be encoded, selecting a preferred one of a set of encoding modes by optimizing a function comprising an estimate of distortion and a measure of bit rate required to encode the target image portion, the encoding modes comprising at least an intra frame mode and an inter frame mode; and transmitting the encoded video stream over a lossy channel. The estimate of distortion is based on a contribution from possible new loss over the channel comprising possible loss of the target block, and on a contribution from possible past loss over the channel comprising possible loss in a history of the encoded video stream upon which decoding of the target portion depends. The method includes accumulating the contribution from past loss over time, such that the estimate of distortion grows irrespective of the contribution from new loss.
    Type: Grant
    Filed: October 17, 2011
    Date of Patent: September 22, 2015
    Assignee: Skype
    Inventors: Mattias Nilsson, Renat Vafin, Soren Vang Andersen
  • Patent number: 9131248
    Abstract: A method of encoding an outgoing video stream comprising a plurality of frames, each frame comprising a plurality of image portions, the method including for each target image portion to be encoded, selecting a preferred one of a set of encoding modes by optimizing a function comprising an estimate of distortion and a measure of bit rate required to encode the target image portion; encoding the target image portion into the outgoing video stream using the selected encoding mode; and transmitting the encoded outgoing video stream over a lossy channel. The estimate of distortion comprises a first term representing source coding distortion, and a bias term representing an estimate of distortion that would be experienced due to loss over said channel. The bias term is determined based on a trained parameter trained based on a sample video stream.
    Type: Grant
    Filed: October 17, 2011
    Date of Patent: September 8, 2015
    Assignee: Skype
    Inventors: Mattias Nilsson, Renat Vafin, Soren Vang Andersen