Abstract:
A device implementing the subject technology may include at least one processor configured to receive downlink condition reports from device, each downlink condition report indicating a downlink channel condition of a respective device. The at least one processor is further configured to determine an uplink channel condition for each of the devices. The at least one processor is further configured to determine, for each respective device and based at least in part on the downlink condition reports and the uplink channel conditions, quality tiers, each of the quality tiers indicating a quality of at least one of an audio stream or a video stream. The at least one processor is further configured to provide for transmission, to each respective device, the quality tiers determined for the respective device.
Abstract:
In communication applications, aggregate source image data at a transmitter exceeds the data that is needed to display a rendering of a viewport at a receiver. Improved streaming techniques that include estimating a location of a viewport at a future time. According to such techniques, the viewport may represent a portion of an image from a multi-directional video to be displayed at the future time, and tile(s) of the image may be identified in which the viewport is estimated to be located. In these techniques, the image data of tile(s) in which the viewport is estimated to be located may be requested at a first service tier, and the other tile in which the viewport is not estimated to be located may be requested at a second service tier, lower than the first service tier.
Abstract:
Methods are described for encoding and decoding blocks of image data using intra block copying (IBC). A source block for intra block copying is selected from a source region of a current image that is closer to the current block than a threshold, wherein the source region does not include a portion of the current image that is further from the current block than the threshold.
Abstract:
Techniques are disclosed for coding video in applications where regions of video are inactive on a frame to frame basis. According to the techniques, coding processes update and reconstruct only a subset of pixel blocks of pixels within a frame, while other pixel blocks are retained from a previously coded frame stored in a coder's or decoder's reference frame buffer. The technique is called Backward Reference Updating (or “BRU”) for convenience. At a desired pixel block granularity, based on the activity between a current frame to be coded and its reference frame(s), BRU will only perform prediction, transform, quantization, and reconstruction on selected regions that are determined to be active. The reconstructed pixels in these active regions are directly placed onto a specified reference frame in memory instead of creating a new frame. Therefore, fewer memory transfers need to be performed.
Abstract:
In communication applications, aggregate source image data at a transmitter exceeds the data that is needed to display a rendering of a viewport at a receiver. Improved streaming techniques that include estimating a location of a viewport at a future time. According to such techniques, the viewport may represent a portion of an image from a multi-directional video to be displayed at the future time, and tile(s) of the image may be identified in which the viewport is estimated to be located. In these techniques, the image data of tile(s) in which the viewport is estimated to be located may be requested at a first service tier, and the other tile in which the viewport is not estimated to be located may be requested at a second service tier, lower than the first service tier.
Abstract:
Coded video data may be transmitted between an encoder and a decoder using multiple FEC codes and/or packets for error detection and correction. Only a subset of the FEC packets need be transmitted between the encoder and decoder. The FEC packets of each FEC group may take, as inputs, data packets of a current FEC group and also an untransmitted FEC packet of a preceding FEC group. Due to relationships among the FEC packets, when transmission errors arise and data packets are lost, there remain opportunities for a decoder to recover lost data packets from earlier-received FEC groups when later-received FEC groups are decoded. This opportunity to recover data packets from earlier FEC groups may be useful in video coding and other systems, in which later-received data often cannot be decoded unless earlier-received data is decoded properly.
Abstract:
In communication applications, aggregate source image data at a transmitter exceeds the data that is needed to display a rendering of a viewport at a receiver. Improved streaming techniques that include estimating a location of a viewport at a future time. According to such techniques, the viewport may represent a portion of an image from a multi-directional video to be displayed at the future time, and tile(s) of the image may be identified in which the viewport is estimated to be located. In these techniques, the image data of tile(s) in which the viewport is estimated to be located may be requested at a first service tier, and the other tile in which the viewport is not estimated to be located may be requested at a second service tier, lower than the first service tier.
Abstract:
Video coding techniques are disclosed that can accommodate low bandwidth events and preserve visual quality, at least in areas of an image that have high significance to a viewer. Region(s) of interest may be identified from content of input frame that will be coded. Two representations of the input frame may be generated at different resolutions. A low resolution representation of the input frame may be coded according to predictive coding techniques in which a portion outside the region of interest is coded at higher quality than a portion inside the region of interest. A high resolution representation of the input frame may be coded according to predictive coding techniques in which a portion inside the region of interest is coded at higher quality than a portion outside the region of interest. Doing so preserves visual quality, at least in areas of the input image that correspond to the region of interest.
Abstract:
Coding and decoding techniques are disclosed in which a plurality of coding parameter sets is transmitted between an encoder and a decoder, each of which is distinguishable from the others by a respective identifier. When a new frame of video is to be coded, an encoder may identify a coding parameter set to be applied during coding, it may code the new frame according to the identified coding parameter set, and it may transmit the coded frame to the decoder along with an identifier of the coding parameter set used during the coding. A plurality of coding parameter sets is persistent at an encoder and the decoder simultaneously.
Abstract:
A device implementing the subject technology may include at least one processor configured to establish a group communication session for two or more electronic devices utilizing a first communication modality. The at least one processor may be further configured to determine to utilize a second communication modality for the group communication session. The at least one processor may be further configured to transition the group communication session from the first communication modality to the second communication modality.