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:
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:
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.
Abstract:
In an example, a process for coding video data includes coding, with a variable length code, a syntax element indicating depth modeling mode (DMM) information for coding a depth block of video data. The process also includes coding the depth block based on the DMM information.
Abstract:
This disclosure describes techniques for estimating a depth of image objects for a two-dimensional (2D) view of a video presentation. For example, an initial indication of depth (e.g., an optical flow) may be determined for a 2D view. The initial indication of depth may be used to estimate global motion, e.g., motion of an observer (e.g., camera), of the 2D view. The initial indication of depth may be modified based on the estimation of global motion to create a global motion-adjusted indication of depth. The global motion-adjusted depth indication may be used to create a depth map for the 2D view, which may be used to generate an alternative view of the video presentation that may be used to display a three-dimensional (3D) video presentation.
Abstract:
Source and destination video devices may use data structures that signal details of an operation point for an MPEG-2 (Motion Picture Experts Group) System bitstream. In one example, an apparatus includes a multiplexer that constructs a data structure corresponding to a multiview video coding (MVC) operation point of an MPEG-2 (Motion Picture Experts Group) System standard bitstream, wherein the data structure signals a rendering capability value that describes a rendering capability to be satisfied by a receiving device to use the MVC operation point, a decoding capability value that describes a decoding capability to be satisfied by the receiving device to use the MVC operation point, and a bitrate value that describes a bitrate of the MVC operation point, and that includes the data structure as part of the bitstream, and an output interface that outputs the bitstream comprising the data structure.
Abstract:
A source device may signal characteristics of a media presentation description (MPD) file such that a destination device may select one of a number of presentations corresponding to the MPD file and retrieve one or more video files of the selected presentation. In one example, an apparatus for transporting encoded video data includes a management unit configured to receive encoded video data comprising a number of video segments and forms a presentation comprising a number of video files, each of the video files corresponding to a respective one of the video segments, and a network interface configured to, in response to a request specifying a temporal section of the video data, output at least one of the video files corresponding to the number of video segments of the requested temporal section. A client may request temporally sequential fragments from different ones of the presentations.
Abstract:
A demultiplexer may assemble view components of sub-bitstreams. In one example, an apparatus comprises a demultiplexer that produces a multiview video coding (MVC) standard compliant bitstream from a received bitstream comprising a primary sub-bitstream and an embedded sub-bitstream. To produce the MVC standard compliant bitstream, the demultiplexer determines whether a view component of the primary sub-bitstream has a view order index that is greater than a view order index of a view component of the embedded sub-bitstream, and to add the view component from the sub-bitstream for which the view order index is lower to the produced bitstream. The received bitstream may comprise delimiter network abstraction layer (NAL) units between each view component to differentiate the view components. The apparatus may further comprise a video decoder to decode the bitstream produced by the demultiplexer.
Abstract:
This disclosure describes features and techniques applicable to three-dimensional (3D) video coding. In one example, a technique may include coding a texture view video block, and coding a depth view video block, wherein the depth view video block is associated with the texture view video block. Coding the depth view video block may include coding a syntax element to indicate whether or not motion information associated with the texture view video block is adopted as motion information associated with the depth view video block.