-
公开(公告)号:US10666693B1
公开(公告)日:2020-05-26
申请号:US15965436
申请日:2018-04-27
Applicant: WhatsApp Inc.
Inventor: Ehren Andrew Kret , Manpreet Singh
Abstract: A messaging system establishes a secure call session between multiple parties. The call session is secured using an entropy value shared among parties in the call session. During the call session, the messaging system receives an instruction from a party in the call session to modify the call session. The call session may be modified by a party being added or removed from the session. Based on the received instruction, the messaging system performs an entropy value update to ensure that the call session is secure after the modification is made. A new entropy value is generated by a party in the call session and transmitted to other parties in the call session. Using the new entropy value, the messaging system establishes the modified secure call session.
-
公开(公告)号:US10412435B2
公开(公告)日:2019-09-10
申请号:US15813575
申请日:2017-11-15
Applicant: WhatsApp Inc.
Inventor: Manpreet Singh , Brian Lange Acton , Jan Boris Koum
IPC: H04N7/173 , H04N21/2662 , H04N21/647 , H04N19/186
Abstract: Techniques to dynamically engage a reduced-color mode for streaming video encoding are generally described. For example, in one embodiments, an apparatus may include an encoding configuration component operative to receive network performance information for a video stream at a sending device, the video stream using a first number of variable bits for color encoding; and assign a reduced-color mode to a media component based on the network performance information, the media component operative to generate the video stream in the reduced-color mode, wherein the reduced-color mode uses a second number of variable bits for color encoding, the second number less than the first number, and a network component operative to send the video stream from the sending device to a receiving device using the reduced-color mode. Other embodiments are described and claimed.
-
公开(公告)号:US10225395B2
公开(公告)日:2019-03-05
申请号:US14963374
申请日:2015-12-09
Applicant: WhatsApp Inc.
Inventor: Manpreet Singh , YuanYuan Wang
Abstract: Techniques to dynamically engage echo cancellation are described. In one embodiment, an apparatus may comprise a streaming component operative to establish a audio connection between the first client device and a second client device via the network interface controller; and receive a far-end audio stream at the first client device from the second client device via the audio connection; an audio capture component operative to capture a near-end audio stream at the first client device; and an echo processing component operative to compare the near-end audio stream and the far-end audio stream to determine whether a far-end echo is present in the near-end audio stream; and use an echo-cancellation module at the first client device where the far-end echo is present in the near-end audio stream. Other embodiments are described and claimed.
-
14.
公开(公告)号:US20190068678A1
公开(公告)日:2019-02-28
申请号:US15692475
申请日:2017-08-31
Applicant: WhatsApp Inc.
Inventor: Manpreet Singh , YuanYuan Wang
Abstract: Techniques to dynamically engage an all-intra-coded mode for streaming video encoding are described. In one embodiment, an apparatus may comprise an encoding configuration component operative to receive network performance information for a video stream at a sending device; and assign an all-intra-coded mode to a media component based on the network performance information; the media component operative to generate the video stream in the all-intra-coded mode, wherein the video stream uses exclusively intra-coded frames in the all-intra-coded mode; and a network component operative to send the video stream from the sending device to a receiving device using the all-intra-coded mode. Other embodiments are described and claimed.
-
公开(公告)号:US20170085420A1
公开(公告)日:2017-03-23
申请号:US14859141
申请日:2015-09-18
Applicant: WhatsAPP Inc.
Inventor: Manpreet Singh
CPC classification number: H04L41/0803 , H04L12/28 , H04L43/0864 , H04L43/0888 , H04L43/0894 , H04L65/1069 , H04L65/80 , H04L69/22
Abstract: Techniques to dynamically configure target bitrate for streaming network connections are described. An apparatus may comprise a streaming component operative to establish a streaming network connection with a second client device at a first client device; and a stream configuration component operative to determine inter-arrival rate information for the streaming network connection; provide the inter-arrival rate information to an inter-arrival rate analysis component; receive a preliminary target bitrate from the inter-arrival rate analysis component in response to providing the inter-arrival rate information to the inter-arrival rate analysis component; determine round-trip time information for the streaming network connection; determine an assigned target bitrate and a packet size setting for the streaming network connection based on the preliminary target bitrate and the round-trip time information; and configure the streaming component to perform the streaming network connection with the assigned target bitrate and the packet size setting. Other embodiments are described and claimed.
-
公开(公告)号:US10972726B2
公开(公告)日:2021-04-06
申请号:US15721496
申请日:2017-09-29
Applicant: WhatsApp Inc.
Inventor: YuanYuan Wang , Manpreet Singh
IPC: H04N19/156 , H04N19/184 , H04N19/164 , H04N19/12 , H04N19/179 , H04N21/24 , H04N21/4788 , H04N21/2343 , H04N19/115
Abstract: Techniques to dynamically select a video encoder for streaming video encoding are described. For example, in one embodiment, an apparatus may include an encoding configuration component operative to receive network performance information for a video stream at a sending device, the video stream at a first video bitrate with a first video encoding codec, and assign a second video bitrate with a second video encoding codec to a media component based on the network performance information, wherein the second video encoding codec is used based on generating the video stream at the second video bitrate, the media component operative to generate the video stream at the sending device at the second video bitrate with the second video encoding code, and the network component operative to send the video stream from the sending device to the receiving device using the second video encoding codec. Other embodiments are described and claimed.
-
公开(公告)号:US10129412B1
公开(公告)日:2018-11-13
申请号:US14480227
申请日:2014-09-08
Applicant: WhatsApp Inc.
Inventor: Manpreet Singh , Ehren A. Kret , Erik James Reed , Michael B. Donohue
Abstract: A system, apparatus, and methods are provided for establishing and supporting a VOIP (Voice Over Internet Protocol) call from one computing/communication device to another. The system receives a call offer from a caller, forwards it to the callee, and identifies to each party multiple candidate relay entities for relaying their digitized voice communications. Each device binds with one or all relays, and either or both of them select one of the relays to use in a relay mode of operation of the call, if necessary. One or more of the relays inform the devices of their external network addresses, and each device passes its (internal and external) addresses to each other, through the system. The devices attempt to establish a direct connection to conduct their call in a peer-to-peer mode of operation, but may dynamically switch between peer-to-peer and relay modes as necessary.
-
公开(公告)号:US11095769B1
公开(公告)日:2021-08-17
申请号:US16255133
申请日:2019-01-23
Applicant: WhatsApp Inc.
Inventor: Manpreet Singh , YuanYuan Wang
Abstract: Techniques to dynamically engage echo cancellation are described. In one embodiment, an apparatus may comprise a streaming component operative to establish a audio connection between the first client device and a second client device via the network interface controller; and receive a far-end audio stream at the first client device from the second client device via the audio connection; an audio capture component operative to capture a near-end audio stream at the first client device; and an echo processing component operative to compare the near-end audio stream and the far-end audio stream to determine whether a far-end echo is present in the near-end audio stream; and use an echo-cancellation module at the first client device where the far-end echo is present in the near-end audio stream. Other embodiments are described and claimed.
-
19.
公开(公告)号:US10462078B2
公开(公告)日:2019-10-29
申请号:US15817048
申请日:2017-11-17
Applicant: WhatsApp Inc.
Inventor: Jun Gong , Manpreet Singh
IPC: H04L12/58 , H04L12/801 , H04L12/841 , H04L12/18
Abstract: Two (or more) client devices engage in a chat session. Packets associated with the chat session are numbered using a predetermined pattern. When the packets are received, the receiving client device extracts signals from the packet metadata to determine whether the primary cause of packet loss during transit is network congestion or link losses. Based on the extracted signals, the receiving device sends a control message back to the other client device indicating how one or more chat parameters should be updated. On receiving the control message, the other client device updates the chat parameters accordingly.
-
公开(公告)号:US10348557B1
公开(公告)日:2019-07-09
申请号:US15987385
申请日:2018-05-23
Applicant: WhatsApp Inc.
Inventor: Manpreet Singh
Abstract: Techniques to dynamically configure target bitrate for streaming network connections are described. An apparatus may comprise a streaming component operative to establish a streaming network connection with a second client device at a first client device; and a stream configuration component operative to determine inter-arrival rate information for the streaming network connection; provide the inter-arrival rate information to an inter-arrival rate analysis component; receive a preliminary target bitrate from the inter-arrival rate analysis component in response to providing the inter-arrival rate information to the inter-arrival rate analysis component; determine round-trip time information for the streaming network connection; determine an assigned target bitrate and a packet size setting for the streaming network connection based on the preliminary target bitrate and the round-trip time information; and configure the streaming component to perform the streaming network connection with the assigned target bitrate and the packet size setting. Other embodiments are described and claimed.
-
-
-
-
-
-
-
-
-