Patents Assigned to Agora Lab, Inc.
  • Patent number: 11586528
    Abstract: An improved SDK includes a set of APIs and a crash handler registered with the operating system. Each API is an interface accessible by a computer software application. Up on entrance, each API determines the current thread identifier, and inserts it into a list if it is not already in the list. Each thread identifier corresponds to an API call counter, which is incremented by one at the entrance and decremented by one at the exit point of the API. The SDK also records the identifier of the thread it creates for callback functions. When a crash occurs, the crash handler is executed. It determines that the crash is related to a callback interface if the crash thread identifier matches the callback thread identifier. The crash is determined to be caused by the SDK if the API call counter corresponding to the crash thread identifier is greater than zero.
    Type: Grant
    Filed: June 18, 2021
    Date of Patent: February 21, 2023
    Assignee: Agora Lab, Inc.
    Inventors: Weibo Wang, Cheng Zhou, Lianfu Hao
  • Patent number: 11544571
    Abstract: Training a generator G of a GAN includes generating, by G and in response to receiving a first input Z, a first output G(Z); generating, by an encoder E of the GAN and in response to receiving the first output G(Z) as input, a second output E(G(Z)); generating, by G and in response to receiving the second output E(G(Z)) as input, a third output G(E(G(Z))); generating, by E and in response to receiving the third output G(E(G(Z))) as input, a fourth output E(G(E(G(Z)))); training E to minimize a difference between the second output E(G(Z)) and the fourth output E(G(E(G(Z)))); and using the second output E(G(Z)) and fourth output E(G(E(G(Z)))) to constrain a training of the generator G. G(Z) is an ambient space representation Z. E(G(Z)) is a latent space representation of G(Z). G(E(G(Z))) is an ambient space representation of E(G(Z)). E(G(E(G(Z)))) is a latent space representation of G(E(G(Z))).
    Type: Grant
    Filed: October 23, 2019
    Date of Patent: January 3, 2023
    Assignee: Agora Lab, Inc.
    Inventors: Sheng Zhong, Shifu Zhou
  • Patent number: 11533355
    Abstract: A method for content moderation in real-time communication includes receiving a first portion of a media stream from a sending user; scaling the first portion of the media stream to obtain a scaled first portion of the media stream; transmitting, to a centralized content moderation device, the scaled first portion of the media stream; receiving, from the centralized content moderation device, a centralized determination of whether the first portion is appropriate; and, in response to the centralized determination indicating that the first portion of the media stream is inappropriate: blurring the first portion to obtain a blurred first portion; and transmitting, to a receiving user, the blurred first portion.
    Type: Grant
    Filed: February 2, 2021
    Date of Patent: December 20, 2022
    Assignee: Agora Lab, Inc.
    Inventor: Sheng Zhong
  • Patent number: 11495200
    Abstract: A method of converting a frame of a voice sample to a singing frame includes obtaining a pitch value of the frame; obtaining formant information of the frame using the pitch value; obtaining aperiodicity information of the frame using the pitch value; obtaining a tonic pitch and chord pitches; using the formant information, the aperiodicity information, the tonic pitch, and the chord pitches to obtain the singing frame; and outputting or saving the singing frame.
    Type: Grant
    Filed: January 14, 2021
    Date of Patent: November 8, 2022
    Assignee: Agora Lab, Inc.
    Inventors: Jianyuan Feng, Ruixiang Hang, Linsheng Zhao, Fan Li
  • Patent number: 11470531
    Abstract: An improved Wi-Fi access point dynamically determines the interference level of each channel. The access point determines that a new channel is better suited to serve an RTC/RTE application over the present channel based on the interference levels and a set of interference measure thresholds. The access point automatically creates a new basic service set on the new channel and associates the RTC/RTE device running the RTC/RTE application with the new basic service set. The access point further refuses to associate the RTC/RTE device with the previous channel when the interference level on the new channel remains low based on a second set of interference measure thresholds. In addition, the access point allows additional RTC/RTE devices to join the new basic service set with the first RTC/RTE device when the interference level on the new channel remains low based on the second set of interference measure thresholds.
    Type: Grant
    Filed: July 13, 2020
    Date of Patent: October 11, 2022
    Assignee: Agora Lab, Inc.
    Inventor: Yue Cao
  • Patent number: 11455237
    Abstract: A highly scalable automated SDK testing system includes an automated testing controller, an automated testing message server and an automated testing message terminal running on a set of target devices. The controller and the terminals register themselves with the message server. A testing case is programmed for testing an SDK on a number of target devices concurrently and transformed into a set of command messages in JSON message format. The controller sends the set of messages to the message server. The message server then distributes the set of command messages to the terminals. In response, the terminal calls corresponding APIs of the SDK. The APIs called can be the same or different between the devices within the set of target devices. The SDK returns a result that is forwarded to the server. The server sends the results from the target devices to the controller. The controller verifies the results.
    Type: Grant
    Filed: June 1, 2020
    Date of Patent: September 27, 2022
    Assignee: Agora Lab, Inc.
    Inventors: Jiyu Bai, Yuhua Gong
  • Patent number: 11404055
    Abstract: A method includes extracting, from a frame of the audio sample, spectral features indicative of cochlear impulse response of an auditory system; obtaining an estimate of a speech signal in the frame from a neural network that is trained, during a training phase, to accept the spectral features as input and output the estimate of the speech signal, where the estimate of the speech signal includes reverberation and excludes noise present in the frame; mapping the estimate of the speech signal to a frequency domain of the frame using mapping parameters obtained during the training phase to obtain an estimate of a reverberant speech spectrum in the frame; and obtaining, from a time-distributed neural network, a dereverberant frame of the frame, where the estimate of the reverberant speech spectrum in the frame is used as an input to the time-distributed neural network.
    Type: Grant
    Filed: October 16, 2020
    Date of Patent: August 2, 2022
    Assignee: Agora Lab, Inc.
    Inventors: Yunyun Ji, Ruofei Chen, Zihe Liu, Xiaohan Zhao, Siqiang Yao
  • Patent number: 11380345
    Abstract: Transforming a voice of a speaker to a reference timbre includes converting a first portion of a source signal of the voice of the speaker into a time-frequency domain to obtain a time-frequency signal; obtaining frequency bin means of magnitudes over time of the time-frequency signal; converting the frequency bin magnitude means into a Bark domain to obtain a source frequency response curve (SR), where SR(i) corresponds to magnitude mean of the ith frequency bin; obtaining respective gains of frequency bins of the Bark domain with respect to a reference frequency response curve (Rf); obtaining equalizer parameters using the respective gains of the frequency bins of the Bark domain; and transforming the first portion to the reference timbre using the equalizer parameters.
    Type: Grant
    Filed: October 15, 2020
    Date of Patent: July 5, 2022
    Assignee: Agora Lab, Inc.
    Inventors: Jianyuan Feng, Ruixiang Hang, Linsheng Zhao, Fan Li
  • Patent number: 11363089
    Abstract: The present invention relates to systems and methods for network labeling in order to enhance real time data transfers. A network for a real time data transfer is identified and predictive models for network performance are compared against to determine if the network is suitable for the data transfer. If so, then the real time data transfer may be completed as expected. However, if the network is predicted to be unsuitable for transmission an alternate means for connection may be suggested. The alternate suggestion may include delaying the data transfer until the network is expected to be in better conditions, connecting to another access point in the network, or switching to another network entirely. During the data transfer, the quality of the network is monitored in order to update the predictive models for the network's quality. Identifiers for the network may be utilized to keep track of the networks.
    Type: Grant
    Filed: August 31, 2021
    Date of Patent: June 14, 2022
    Assignee: AGORA LAB, INC.
    Inventors: Wei Li, Bin Zhao
  • Patent number: 11350314
    Abstract: An improved Wi-Fi access point classifies network data packets with classification identifiers provided by RTC/RTE devices without scanning the content of them. The access point receives inbound and outbound packet classification identifiers from the RTC/RTE applications running on the RTC/RTE devices. The identifiers are provided to a hardware data packet classifier. The hardware data packet classifier applies the identifiers against ingress packets and egress packets respectively. Data packets of the same class are assigned with a same priority. The prioritized network data packets are scheduled for transmission based on their respective priorities. The scheduled network data packets are forwarded to respective network interfaces for transmission.
    Type: Grant
    Filed: July 13, 2020
    Date of Patent: May 31, 2022
    Assignee: Agora Lab, Inc.
    Inventor: Yue Cao
  • Patent number: 11343467
    Abstract: A new real-time video communication system and method improves the clarity of shared screen by automatically adjusting the key frame's quantization parameter values. The adjustment depends on the underlying network's connection condition. When the connection bandwidth deteriorates, the key frame's quantization parameter value is further decreased on the value output from a standard H.264 encoder to derive a desirable quantization parameter value and thus achieve a desirable user experience of the shared screen. Moreover, the new real-time video communication system and method adjusts the frame rate of the shared screen based on the present quantization parameter value to achieve a more desirable user experience of the screen sharing.
    Type: Grant
    Filed: February 10, 2021
    Date of Patent: May 24, 2022
    Assignee: Agora Lab, Inc.
    Inventors: Jiang Li, Zheyuan Zhang
  • Patent number: 11290725
    Abstract: A new real-time video communication system includes a set of electronic devices. Each device runs a specialized real-time video communication software application including a video quality module. The video quality module retrieves network connection statistic data from a network connection module, and video encoder statistic data from a video quality module. The video quality module uses the network connection statistic data and the video encoder statistic data to determine a first objective video quality measure without extensive mathematical operations. The video quality module also uses the first objective video quality measure, the network connection statistic data and the video encoder statistic data to determine a second objective quality measure without extensive mathematical operations.
    Type: Grant
    Filed: January 21, 2021
    Date of Patent: March 29, 2022
    Assignee: Agora Lab, Inc.
    Inventors: Xiaoran Wu, Tianbo Chen, Kai Wang, Lin Feng
  • Patent number: 11277460
    Abstract: A method for use in a communications network includes obtaining, at a control node, respective bandwidth information of respective connected devices of media sessions; determining at least one scaling factor of a respective bandwidth of at least one of the respective connected devices of a media session of the media sessions; and transmitting the at least one scaling factor to the at least one of the respective connected devices. The at least one of the respective connected devices uses the scaling factor to adjust an available bandwidth. The at least one of the respective connected devices uses the scaling factor to adjust encoding parameters of the media session.
    Type: Grant
    Filed: April 5, 2021
    Date of Patent: March 15, 2022
    Assignee: Agora Lab, Inc.
    Inventor: Sheng Zhong
  • Patent number: 11159598
    Abstract: The present invention relates to systems and methods for network labeling in order to enhance real time data transfers. A network for a real time data transfer is identified and predictive models for network performance are compared against to determine if the network is suitable for the data transfer. If the network is predicted to be unsuitable for transmission an alternate means for connection may be suggested. The alternate suggestion may include delaying the data transfer until the network is expected to be in better conditions, connecting to another access point in the network, or switching to another network entirely. During the data transfer, the quality of the network is monitored in order to update the predictive models for the network's quality.
    Type: Grant
    Filed: September 9, 2019
    Date of Patent: October 26, 2021
    Assignee: Agora Lab, Inc.
    Inventors: Wei Li, Bin Zhao
  • Patent number: 11048980
    Abstract: A method of training a generator G of a Generative Adversarial Network (GAN) includes receiving, by an encoder E, a target data Y; receiving, by the encoder E, an output G(Z) of the generator G, where the generator G generates the output G(Z) in response to receiving a random sample Z that is a noisy sample, and where a discriminator D of the GAN is trained to distinguish which of the G(Z) and the target data Y is real data; training the encoder E to minimize a difference between a first latent space representation E(G(Z)) of the output G(Z) and a second latent space representation E(Y) of the target data Y, where the output G(Z) and the target data Y are input to the encoder E; and using the first latent space representation E(G(Z)) and the second latent space representation E(Y) to constrain the training of the generator G.
    Type: Grant
    Filed: August 2, 2019
    Date of Patent: June 29, 2021
    Assignee: Agora Lab, Inc.
    Inventor: Sheng Zhong
  • Patent number: 11048974
    Abstract: A method of training a generator G of a Generative Adversarial Network (GAN) includes generating a real contextual data set {x1, . . . , xN} for a high resolution image Y; generating a generated contextual data set {g1, . . . , gN} for a generated high resolution image G(Z); calculating a perceptual loss Lpcept value using the real contextual data set {x1, . . . , xN} and the generated contextual data set {g1, . . . , gN}; and training the generator G using the perceptual loss Lpcept value. The generated high resolution image G(Z) is generated by the generator G of the GAN in response to receiving an input Z, where the input Z is a random sample that corresponds to the high resolution image Y.
    Type: Grant
    Filed: August 5, 2019
    Date of Patent: June 29, 2021
    Assignee: Agora Lab, Inc.
    Inventors: Sheng Zhong, Shifu Zhou
  • Patent number: 10990812
    Abstract: A method, an apparatus, and a system for tagging a video for video communications include: transmitting, from a first apparatus using a network, a first video stream of a first user to a second apparatus of a second user that is in video communication with the first user; receiving, from the second apparatus using the network, a second video stream of the second user; determining, using the second video stream by a processor, a reaction of the second user to the first video stream; and associating the reaction of the second user with the first video stream. The apparatus includes a processor and a memory coupled to the processor. The memory is configured to store instructions which when executed by the processor become operational with the processor to perform the method.
    Type: Grant
    Filed: June 20, 2018
    Date of Patent: April 27, 2021
    Assignee: Agora Lab, Inc.
    Inventors: Sheng Zhong, Yue Feng
  • Patent number: 10986017
    Abstract: A method, an apparatus, and a system for real-time multimedia communications using a software-defined network (SDN) are provided. The method includes receiving, by a processor, a path metric indicative of transmission capacity between directly-connected service nodes in the SDN, determining, by the processor based on the path metric, a cascade network topology comprising an optimal path between a first edge node and a second edge node, wherein the optimal path has the lowest transmission latency among data transmission paths in the SDN between the first edge node and the second edge node, and based on a determination that multimedia data is to be transmitted between the first edge node and the second edge node, transmitting the multimedia data between the first edge node and the second edge node in accordance with the optimal path.
    Type: Grant
    Filed: August 23, 2018
    Date of Patent: April 20, 2021
    Assignee: Agora Lab, Inc.
    Inventors: Yong Liu, Yurun Sun, Bin Zhao
  • Patent number: 10944805
    Abstract: Content moderation in real-time communication includes receiving, by a sending device of a sending user, a first portion of a media stream from the sending user; determining, by the sending device, that the first portion of the media stream is classified as uncertain for transmission to a receiving user; transmitting, by the sending device to a centralized content moderation device, the first portion of the media stream, where the centralized content moderation device determines a centralized determination of whether the first portion is appropriate; in response to the centralized determination indicating that the first portion is appropriate, transmitting, by the sending device to the receiving user, the first portion; and, in response to the centralized determination indicating that the first portion is inappropriate, transmitting, by the sending device to the receiving user, a blurred first portion of the first portion.
    Type: Grant
    Filed: August 5, 2020
    Date of Patent: March 9, 2021
    Assignee: Agora Lab, Inc.
    Inventor: Sheng Zhong
  • Patent number: 10779012
    Abstract: A method, an apparatus, and a system for error concealment of video communications include determining, by a processor in an encoding process, a current block of a current slice of a current picture of a video sequence for error concealment, determining recovery data of the current block, wherein the recovery data comprises at least one of a coefficient of a discrete transform performed to the current block and similarity data associated with a first block similar to the current block, and the first block is in a first slice different from the current slice, and transmitting the current block and the recovery data using a network, wherein the current block is transmitted as in-band data and the recovery data is transmitted as out-of-band data.
    Type: Grant
    Filed: December 4, 2018
    Date of Patent: September 15, 2020
    Assignee: Agora Lab, Inc.
    Inventors: Sheng Zhong, Wei Dai