摘要:
Video coders may perform perspective transformation of reference frames during coding in a manner that conserves processing resources. When a new input frame is available for coding, a camera position for the input frame may be estimated. A video coder may search for reference pictures having similar camera positions as the position of the input frame and, for each reference picture identified, the video coder may perform a prediction search to identify a reference picture that is the best prediction match for the input frame. Once the video coder identifies a reference picture to serve as a prediction source for the input frame, the video coder may derive a transform to match the reference frame data to the input frame data and may transform the reference picture accordingly. The video coder may code the input frame using the transformed reference picture as a prediction reference and may transmit coded frame data and the camera position of the input frame to a decoder. Thus, the video coder may perform derivation and execution of transforms on a limited basis which conserves system resources.
摘要:
Embodiments of the present invention provide techniques for efficiently coding/decoding video data during circumstances where a decoder only requires or utilizes a portion of coded frames. A coder may exchange signaling with a decoder to identify unused areas of frames and prediction modes for the unused areas. An input frame may be parsed into a used area and an unused area based on the exchanged signaling. If motion vectors of the input frame are not limited to the used areas of the reference frames, the unused area of the input frame may be coded using low complexity. If the motion vectors of the input frame are limited to the used areas of the reference frames, the pixel blocks in the unused area of the input frame may not be coded, or the unused area of the input frame may be filled with gray, white, or black pixel blocks.
摘要:
A system and method for switching between multiple encoders or decoders may be implemented to quickly and seamlessly transfer coding operations between two encoders. Before switching from a first encoder to a second encoder, the second encoder is initialized and updated with a copy of the necessary information from the first encoder. Similarly when switching from a first decoder to a second decoder, the second decoder is initialized and the necessary information from the first decoder is passed to the second decoder. A controller may monitor the system to identify a condition that would trigger an encoder switch and identify the encoder that best suits the system conditions. A shared memory unit accessible by either encoder may store the initialization information. A shared decode unit accessible by either encoder may transmit decoded frames between encoders.
摘要:
A deep-pipeline system substantially reduces the overhead of setup delays and pipeline delays by dynamically controlling access of a plurality of configuration register sets by both a host central processing unit (CPU) and the stages of the pipelines. A master configuration register set is loaded with configuration parameters by the host CPU in response to an index count provided by a setup-index counter. A plurality of other counters are employed to track timing events in the system. In one embodiment, a run-index counter provides a run-index count to the first stage of the pipeline that is propagated along the stages, enabling configuration register sets to transfer configuration parameters to the stages of the pipeline when required to enable processing of a task. In an alternative embodiment, a plurality of D flip-flops sequentially propagates a state for successive registers, so that the setup-index counter is not required.
摘要:
Embodiments of the present invention provide techniques for efficiently coding/decoding video data during circumstances where a decoder only requires or utilizes a portion of coded frames. A coder may exchange signaling with a decoder to identify unused areas of frames and prediction modes for the unused areas. An input frame may be parsed into a used area and an unused area based on the exchanged signaling. If motion vectors of the input frame are not limited to the used areas of the reference frames, the unused area of the input frame may be coded using low complexity. If the motion vectors of the input frame are limited to the used areas of the reference frames, the pixel blocks in the unused area of the input frame may not be coded, or the unused area of the input frame may be filled with gray, white, or black pixel blocks.
摘要:
Synchronizing uplink and downlink transmissions by a wireless user equipment (UE) device. A connection with a network may be established via a wireless link with a cell. The UE may operate in an active state during first periods of time in which uplink or downlink communications may be performed between the UE and the network. The UE may operate in a reduced-power state during second periods of time in which uplink and downlink communications are not performed. The first periods of time may alternate with the second periods of time in a repeating manner. Uplink data generated by the UE may be buffered during second periods of time and transmitted during first periods of time. Buffering uplink data in this manner may prevent the UE from immediately transitioning from the reduced-power state to the active state to transmit uplink data, which may conserve battery of the UE.
摘要:
Synchronizing uplink and downlink transmissions by a wireless user equipment (UE) device. A connection with a network may be established via a wireless link with a cell. The UE may operate in an active state during first periods of time in which uplink or downlink communications may be performed between the UE and the network. The UE may operate in a reduced-power state during second periods of time in which uplink and downlink communications are not performed. The first periods of time may alternate with the second periods of time in a repeating manner. Uplink data generated by the UE may be buffered during second periods of time and transmitted during first periods of time. Buffering uplink data in this manner may prevent the UE from immediately transitioning from the reduced-power state to the active state to transmit uplink data, which may conserve battery of the UE.
摘要:
A system and method for switching between multiple encoders or decoders may be implemented to quickly and seamlessly transfer coding operations between two encoders. Before switching from a first encoder to a second encoder, the second encoder is initialized and updated with a copy of the necessary information from the first encoder. Similarly when switching from a first decoder to a second decoder, the second decoder is initialized and the necessary information from the first decoder is passed to the second decoder. A controller may monitor the system to identify a condition that would trigger an encoder switch and identify the encoder that best suits the system conditions. According to an embodiment, a shared memory unit accessible by either encoder may store the initialization information. According to an embodiment, a shared decode unit accessible by either encoder may transmit decoded frames between encoders.
摘要:
A system and method for coding video data wherein a coding mode decision process may be dynamically adjusted according to any of a plurality of factors including video image content, image complexity, motion, channel conditions, the status of the video system components, or other relevant factor. Each of a plurality of potential coding modes may be assigned a weight reflecting an estimation of the likelihood that the coding mode will result in quality image data. The coding mode decision process may then be altered by changing the order of coding modes attempted according to the assigned weight. Code removal and early termination may further alter the coding mode decision process.
摘要:
A video coding system and method that dynamically controls coding parameters to satisfy a resource usage requirement. A resource controller may set parameters or parameter thresholds to change the coding complexity of the video coding system and to effectuate a change in the resource usage rate. Parameters may include the frame rate, the frame resolution, the bit rate, or pixel block sizes. A parameter or parameter threshold adjustment may be based on system resource data, for example, power consumption, CPU usage, fan speed, battery status, input video statistics, coding latency, and other video encoder internal states.