Abstract:
In one example, a video coder is configured to code a first slice, wherein the first slice comprises one of a texture slice and a corresponding depth slice, wherein the first slice has a slice header comprising complete syntax elements representative of characteristics of the first slice. The video coder is further configured to determine common syntax elements for a second slice from the slice header of the first slice. The video coder is also configured to code the second slice after coding the first slice at least partially based on the determined common syntax elements, wherein the second slice comprises one of the texture slice and the depth slice that is not the first slice, wherein the second slice has a slice header comprising syntax elements representative of characteristics of the second slice, excluding values for syntax elements that are common to the first slice.
Abstract:
This disclosure describes techniques for 3D video coding. In particular, this disclosure is related to techniques for advanced residual prediction (ARP) in 3D-HEVC. According to one techniques of this disclosure, when performing inter-view ARP for a bi-directionally predicted block, the video coder may determine a motion vector for a first corresponding block as part of performing ARP for a first prediction direction and reuse that determined motion vector when performing ARP for a second prediction direction. According to another technique, for a bi-directionally predicted block, a video coder may apply ARP in only one direction for a chroma component of a block but apply ARP in two directions for a luma component of the block. According to another technique, a video coder may selectively apply ARP to chroma components based on block size. These simplifications, as well as other techniques included in this disclosure, may reduce overall coding complexity.
Abstract:
This disclosure describes techniques for simplifying depth inter mode coding in a three-dimensional (3D) video coding process, such as 3D-HEVC. The techniques include generating a motion parameter candidate list, e.g., merging candidate list, for a current depth prediction unit (PU). In some examples, the described techniques include determining that a sub-PU motion parameter inheritance (MPI) motion parameter candidate is unavailable for inclusion in the motion parameter candidate list for the current depth PU if motion parameters of a co-located texture block to a representative block of the current depth PU are unavailable. In some examples, the described techniques include deriving a sub-PU MPI candidate for inclusion in the motion parameter candidate list for the current depth PU only if a partition mode of the current depth PU is 2N×2N.
Abstract:
A device for coding three-dimensional includes a video coder configured to add one or more motion vector candidates to a motion vector candidate list; identify, from the one or more motion vector candidates in the motion vector candidate list, a disparity motion vector candidate; based on the disparity motion vector candidate, determine a disparity shifted motion vector (DSMV) candidate; and add the DSMV candidate to the motion vector candidate list; and code the block of video data using a motion vector corresponding to the identified candidate.
Abstract:
In an example, a process for coding video data includes determining a partitioning pattern for a block of depth values comprising assigning one or more samples of the block to a first partition and assigning one or more other samples of the block to a second partition. The process also includes determining a predicted value for at least one of the first partition and the second partition based on the determined partition pattern. The process also includes coding the at least one of the first partition and the second partition based on the predicted value.
Abstract:
In one example, a device for coding video data includes a video coder configured to code, for a bitstream, information representative of which of a plurality of video coding dimensions are enabled for the bitstream, and code values for each of the enabled video coding dimensions, without coding values for the video coding dimensions that are not enabled, in a network abstraction layer (NAL) unit header of a NAL unit comprising video data coded according to the values for each of the enabled video coding dimensions. In this manner, NAL unit headers may have variable lengths, while still providing information for scalable dimensions to which the NAL units correspond.
Abstract:
An improved system and method for implementing efficient decoding of scalable video bitstreams is provided. A virtual decoded picture buffer is provided for each lower layer of the scalable video bitstream. The virtual decoded picture buffer stores decoded lower layer pictures for reference. The decoded lower layer pictures used for reference are compiled to create a reference picture list for each layer. The reference picture list generated by the virtual decoded picture buffer is used during a direct prediction process instead of a target reference list to correctly decode a current macroblock.
Abstract:
This disclosure describes techniques for coding 3D video block units. In one example, a video encoder is configured to receive one or more texture components from at least a portion of an image representing a view of three dimensional video data, receive a depth map component for at least the portion of the image, code a block unit indicative of pixels of the one or more texture components for a portion of the image and the depth map component. The coding comprises receiving texture data for a temporal instance of a view of video data, receiving depth data corresponding to the texture data for the temporal instance of the view of video data, and encapsulating the texture data and the depth data in a view component for the temporal instance of the view, such that the texture data and the depth data are encapsulated within a common bitstream.
Abstract:
This disclosure describes techniques relevant to HTTP streaming of media data. According to these techniques, a server device may signal a byte range for at least one intra-decodable (I-frame) of a video fragment. According to the techniques of this disclosure, a client device may communicate a request to a server device to retrieve the at least one I-frame based on the signaled byte range, and use the retrieved I-frame to provide a high speed version of a video presentation that includes the at least one I-frame. A high speed version of a video presentation may be a trick mode of the video presentation, such as a fast forward or fast rewind version of the video presentation.