Coding of video of multiple views

FIELD: information technologies.

SUBSTANCE: method of coding of video data is offered which comprises the obtaining from the coded stream of bits of one or more units of network abstraction level (NAL) for each component of view from a set of components of view of the coded video data where each component of view from the set of components of view corresponds to the common temporary location and where one or more NAL units encapsulate at least a part of the coded video data for the respective components of view and comprise an information specifying the sequence of decoding of the respective components of view. The method also comprises the received information separate from NAL units specifying the relations between the view identifiers for these views and sequence of decoding of components of view. One or more NAL units also comprise the information specifying, whether the first view component of the first view as the reference for prediction between the views of the second component of view for the second different view is used.

EFFECT: coding efficiency improvement.

68 cl, 18 tbl, 12 dwg

 

[0001] the Present disclosure claims the priority of provisional patent application U.S. No. 61/512,771 filed on July 28, 2011, the contents of which are fully incorporated by reference.

AREA of TECHNOLOGY

[0002] the Present disclosure relates to video encoding.

The LEVEL of TECHNOLOGY

[0003] Digital video capabilities can be incorporated into a wide range of devices, including digital televisions, digital direct broadcast system, a wireless broadcast system, personal digital assistant (PDA), laptop or desktop computers, tablet computers, ebook readers, digital cameras, digital recorders, digital media players, video gaming devices, video game consoles, cellular or satellite radio telephones, so-called "smartphones", devices, video teleconferencing, devices, streaming video, etc. Digital video devices implement video compression methods, such as those described in the standards defined by MPEG-2, MPEG-4, ITU-T H. 263 or ITU-T H. 264/MPEG-4 Part 10, Advanced Video Coding (AVC) standard, the high efficiency video coding (HEVC), developing at the present time, and extensions of such standards. Video devices may transmit, receive, encode, decode and/or store digital video information more efficiently by implementing such methods SG�TIA video.

[0004] video compression Methods perform spatial (intra-picture) prediction and/or temporal (between pictures) prediction to reduce or remove redundancy inherent in video sequences. For based on blocks of video encoding tenderloin video (i.e., video frame or a video frame) can be partitioned into video blocks, which may also be referred to as blocks of wood, coding unit (CU) and/or nodes coding. Video blocks in an internally coded (I) clipping of the picture coding using spatial prediction relative to reference samples in neighboring blocks in the same picture. Video blocks in a seemingly coded (P or B) cutting out pictures may use spatial prediction relative to reference samples in neighboring blocks in the same picture or temporal prediction relative to reference samples in other reference pictures.

[0005] the Spatial or temporal prediction leads to a predictive block for the unit, which must be encoded. Residual data represents a pixel difference between the original block, which must be coded and the predictive block. Externally encode the encoded block according to the motion vector that points to the block of reference samples that form predskazyvaemom, and residual data indicating a difference between the coded block and the predictive block. Internally encode the encoded block according to the mode of internal and residual coding data. To further compress the residual data may be transformed from the pixel region in the area of transformation, leading to residual transform coefficients, which can then quantize. Quantized transform coefficients, originally housed in a two-dimensional array can be scanned to form a one-dimensional vector of transform coefficients, and entropy encoding may be applied to achieve even greater compression.

Summary of the INVENTION

[0006] In General, the present disclosure describes techniques for coding video data. For example, the present disclosure describes how to perform video encoding of multiple species (MVC), and MVC extensions for the video coding standard HEVC, which is currently in development. Therefore, MVC is a method of video encoding to encapsulate multiple types of video data. Each view may correspond to a different perspective, or angle, under which were captured by the respective video data of the overall scene. The methods of the present disclosure generally relate to formation level units�I abstraction network (NAL) MVC sets of parameters MVC, etc.

[0007] In one example, aspects of the present disclosure relate to a method of decoding video data that includes obtaining, from an encoded bitstream, one or more units of the abstraction layer network (NAL) for each component type from a plurality of view components of encoded video data, wherein each view component of the plurality of view components corresponds to a common temporal location, and one or more NAL units encapsulate at least a portion of the encoded video data for the respective view components and include information indicating the decoding order of the respective view components; obtaining information from the encoded bitstream and separate from the NAL units, indicating relationships between species identifiers for these species and the decoding order of the components; and decoding the encoded video data from the plurality of view components in the decoding order based on the information received.

[0008] In another example, aspects of the present disclosure relate to a device for decoding video data that includes one or more processors, configured to obtain, from an encoded bitstream, one or more units of the abstraction layer network (NAL) for each component of the�NTA species from the plurality of view components of encoded video data, each component type from a plurality of view components corresponds to a common temporal location, and in which one or more NAL units encapsulate at least a portion of the encoded video data for the respective view components and include information indicating the decoding order of the respective view components; to obtain information from the encoded bitstream and separate from the NAL units, indicating relationships between species identifiers for these species and the decoding order of the components; and decode the encoded video data from the plurality of view components in the decoding order based on the information received.

[0009] In another example, aspects of the present disclosure relate to a device for decoding video data includes means for obtaining, from an encoded bitstream, one or more units of the abstraction layer network (NAL) for each component type from a plurality of view components of encoded video data, wherein each view component of the plurality of view components corresponds to a common temporal location, and in which one or more NAL units encapsulate at least a portion of the encoded video data for the respective view components and include information specifies the order decode�the hardware of the respective view components; means for receiving information from the encoded bitstream and separate from the NAL units, indicating relationships between species identifiers for these species and the decoding order of the components; and means for decoding encoded video data from the plurality of view components in the decoding order based on the information received.

[0010] In another example, aspects of the present disclosure relate to nevermannia computer readable storage media, having instructions stored therein, which when executed, and causing one or more processors to obtain, from an encoded bitstream, one or more units of the abstraction layer network (NAL) for each component type from a plurality of view components of encoded video data, wherein each view component of the plurality of view components corresponds to a common temporal location, and one or more NAL units encapsulate at least a portion of the encoded video data for the respective view components and include information indicating the decoding order of the respective view components; to obtain information from the encoded bitstream and separate from the NAL units, indicating relationships between species identifiers for these species and the decoding order of the components; and de�to tirawat encoded video data from the plurality of view components in the decoding order based on the information received.

[0011] In another example, aspects of the present disclosure relate to a method of encoding video data includes encoding video data for a plurality of view components for respective views of video data, in which each of the plurality of view components corresponds to a common temporal location; forming, as part of an encoded bitstream, one or more units of the abstraction layer network (NAL) for the encoded video data of each of the view components such that the NAL units include information indicating the decoding order of the video data of the respective view components, and encapsulate at least a portion of the encoded video data for the respective view components; and providing information in the encoded bitstream, separate from the NAL units, indicating relationships between species identifiers for these species and the decoding order of the components.

[0012] In another example, aspects of the present disclosure relate to a device for encoding video data, wherein the device includes one or more processors, configured to encode video data for the plurality of view components for respective views of video data, in which each of the plurality of view components corresponds to a common temporal location, n�Oia; forming, as part of an encoded bitstream, one or more units of the abstraction layer network (NAL) for the encoded video data of each of the view components such that the NAL units include information indicating the decoding order of the video data of the respective view components and encapsulate at least a portion of the encoded video data for the respective view components; and provide information in an encoded bitstream, separate from the NAL units, indicating relationships between species identifiers for these species and the decoding order of the components.

[0013] In another example, aspects of the present disclosure relate to a device for coding video data that includes a means for encoding video data for a plurality of view components for respective views of video data, in which each of the plurality of view components corresponds to a common temporal location; means for generating, as part of an encoded bitstream, one or more units of the abstraction layer network (NAL) for the encoded video data of each of the view components such that the NAL units include information indicating the decoding order of the video data of the respective view components, and encapsulate at least an hour�ü encoded video data for the respective view components; and means for providing information in the encoded bitstream, separate from the NAL units, indicating relationships between species identifiers for these species and the decoding order of the components.

[0014] In another example, aspects of the present disclosure relate to nevermannia computer readable storage media, having instructions stored therein, which when executed, and causing one or more processors to encode the video data to a plurality of view components for respective views of video data, in which each of the plurality of view components corresponds to a common temporal location; forming, as part of an encoded bitstream, one or more units of the abstraction layer network (NAL) for the encoded video data of each of the view components such that the NAL units include information specifies the decoding order of the video data of the respective view components and encapsulate at least a portion of the encoded video data for the respective view components; and provide information in an encoded bitstream, separate from the NAL units, indicating relationships between species identifiers for these species and the decoding order of the components.

[0015] In another example, aspects of the present disclosure attitudeto the method of decoding video data, which includes obtaining, from an encoded bitstream and for any component type of the first type, information of the reference view indicating one or more reference views for predicting view components of the first type; the inclusion, for decoding the first component in the access unit and in the first form, one or more reference candidates in the reference list of images, where one or more reference candidates contain the components in the access unit and in the reference views indicated by the reference information types, wherein the number of reference candidates is equal to the number of reference species; and decoding of the first component type, based on one or more reference candidates in the reference list of symbols.

[0016] In another example, aspects of the present disclosure relate to a device for decoding video data, wherein the device includes one or more processors, configured to obtain, from an encoded bitstream and for any component type of the first type, information of the reference view indicating one or more reference views for predicting view components of the first view; include, for decoding the first component in the access unit and in the first form, one or more reference candidates in the reference list pictures, one or more reference candidates to contain�components in the access unit and in the reference views, specified by the reference information types, wherein the number of reference candidates is equal to the number of reference types; and decode the first view component based on one or more reference candidates in the reference list of symbols.

[0017] In another example, aspects of the present disclosure relate to a device for decoding video data, wherein the device includes means for obtaining, from an encoded bitstream and for any component type of the first type, information of the reference view indicating one or more reference views for predicting view components of the first type; means for including, for decoding the first component in the access unit and in the first form, one or more reference candidates in the reference list of images, where one or more reference candidates contain the components in the access unit and in the reference views, specified by the reference information types, wherein the number of reference candidates is equal to the number of reference types; and means for decoding the first component species, based on one or more reference candidates in the reference list of symbols.

[0018] In another example, aspects of the present disclosure relate to nevermannia computer readable storage media, having instructions stored therein, which when executed, forcing one or Bo�its processors to receive, from the encoded bit stream and for any component type of the first type, information of the reference view indicating one or more reference views for predicting view components of the first view; include, for decoding the first component in the access unit and in the first form, one or more reference candidates in the reference list of pictures, wherein one or more reference candidates contain the components in the access unit and in the reference views indicated by the reference information types, wherein the number of reference candidates is equal to the number of reference species; and to decode the first view component based on one or more reference candidates in the reference list of symbols.

[0019] In another example, aspects of the present disclosure relate to a method for encoding video data containing the definition, for any component type of the first type, information of the reference view indicating one or more reference views for predicting view components of the first type; the inclusion, for encoding the first component in the access unit and in the first form, one or more reference candidates in the reference list of pictures, wherein one or more reference candidates contain the components in the access unit and in the reference views indicated by the reference information types, while the number of reference candidates is equal to the number of the reference in�Dov; encoding the first component species, based on one or more reference candidates in the reference list of symbols; and providing the encoded first component with a specific reference information types encoded in the bitstream.

[0020] In another example, aspects of the present disclosure relate to a device for coding video data comprising one or more processors, configured to determine, for any component type of the first type, information of the reference view indicating one or more reference views for predicting view components of the first view; include, for encoding the first component in the access unit and in the first form, one or more reference candidates in the reference list of images, where one or more reference candidates contain the components in the access unit and in the reference views indicated by the reference information types, while the number of reference candidates is equal to the number of reference species; encode the first view component based on one or more reference candidates in the list of reference pictures; and provide the encoded first view component with a specific reference information of the encoded bit stream.

[0021] In another example, aspects of the present disclosure relate to a device for encoding video data, wherein the device �win means for determining, for any component type of the first type, information of the reference view indicating one or more reference views for predicting view components of the first type; means for including, for encoding the first component in the access unit and in the first form, one or more reference candidates in the reference list of images, where one or more reference candidates contain the components in the access unit and in the reference views indicated by the reference information types, wherein the number of reference candidates is equal to the number of reference species; means for encoding the first component species, based on one or more reference candidates in the list of reference pictures; and means for providing the encoded first component with a specific reference information types encoded in the bitstream.

[0022] In another example, aspects of the present disclosure relate to nevermannia computer readable storage media, having instructions stored therein, which when executed, and causing one or more processors to determine, for any component type of the first type, information of the reference view indicating one or more reference views for predicting view components of the first view; include, for encoding the first component in the access unit and in the first form, one or bol�e reference candidates in the reference list pictures, one or more reference candidates contain the components in the access unit and in the reference views indicated by the reference information types, wherein the number of reference candidates is equal to the number of reference species; encode the first view component based on one or more reference candidates in the list of reference pictures; and provide the encoded first view component with a specific reference information types encoded in the bitstream.

[0023] the Details of one or more aspects of the disclosure are formulated in the attached drawings and the description below. Other features, objects and advantages of the methods described in this disclosure will be apparent from the description and drawings, and from the claims.

BRIEF description of the DRAWINGS

[0024] FIG. 1 is a block diagram illustrating an exemplary system for video encoding and decoding, which can use the methods described in the present disclosure.

[0025] FIG. 2 is a block diagram illustrating an exemplary video encoder that may implement the methods described in the present disclosure.

[0026] FIG. 3 is a block diagram illustrating an exemplary video decoder that may implement the methods described in the present disclosure.

[0027] FIG. 4 is a conceptual diagram illustrating an exemplary template prediction encoding live video from multiple species (MVC).

[0028] FIG. 5A is a conceptual diagram illustrating an example structure of a bit stream that can be used in implementing one or more methods of the present disclosure.

[0029] FIG. 5B is a conceptual diagram illustrating an example of a species that can be incorporated into the structure of the bit stream according to FIG. 5A.

[0030] FIG. 5C is a conceptual diagram illustrating an example of a unit level of abstraction network (NAL), which may be included in the structure of the bit stream in Fig. 5A.

[0031] FIG. 5D is a conceptual diagram illustrating another example of the NAL unit, which may be included in the structure of the bit stream according to FIG. 5A.

[0032] FIG. 6 is a flowchart illustrating an exemplary method of encoding a stream of bits of multiple species.

[0033] FIG. 7 is a flowchart illustrating an exemplary method of decoding a stream of bits of multiple species.

[0034] FIG. 8 is a flowchart illustrating an exemplary method of encoding a stream of bits of multiple species.

[0035] FIG. 9 is a flowchart illustrating an exemplary method of decoding a stream of bits of multiple species.

DETAILED DESCRIPTION

[0036] According to some video coding systems, motion estimation and motion compensation can be used to reduce temporary huts�precision in the video sequence, to achieve data compression. In this case, it may generate a motion vector that identifies the predictive block of video data, for example, a block of the other video images or clippings which can be used to predict the value of the current encoded video block. The values of the predictive video block is subtracted from the values of the current video block to generate a block of residual data. Information motion (e.g., motion vector, indices of the motion vector, the direction of prediction, or other information) is transmitted from the video encoder to the video decoder, along with the residual data. The decoder may determine the same predictive block based on the motion vectors) and to recover the encoded video block by combining the residual data with the data of the predictive block.

[0037] the video Encoding of multiple species (MVC) is a video coding standard to encapsulate multiple types of video data. Typically, each type corresponds to a different perspective, or angle, under which were captured by the respective video data of the overall scene. Coded types can be used for three-dimensional (3D) video display data. For example, two species (e.g. species of the left and right eyes of a human viewer) can be displayed simultaneously or nearly simultaneously, is to use�isua different polarizations of light, and the viewer may wear passive polarized glasses so that each eye of the viewer receives from the corresponding species. Alternatively, the viewer may wear active glasses that cover each eye independently, and display can quickly alternate between images of each eye in sync with the glasses.

[0038] In MVC specific picture of a specific type is referred to as the view component. That is, the view component of some sort corresponds to a particular temporal instance of the view. Video with multiple species may have a relatively large size between the types of statistical dependencies, when all the cameras used to capture multiple data types, capture the same scene from different viewpoints. Such dependencies can be used to temporary joint and/or predictions between species, where images are not only predicted from neighboring time-images, but also from corresponding images from other species. Thus, the prediction between species can be made among the pictures in the same access unit (i.e., within one and the same moment of time).

[0039] the Prediction between species is usually implemented as if the view component in another view was basic reference external predictions. Togeth�about, to use vectors "movement" for the prediction, the prediction between species uses vectors "offset", which is conceptually similar motion vectors, but describe the offset and not the movement. Potential interspecific reference links are signaled in the MVC extension parameter set sequence (SPS) and can be modified in the process of building a list of reference pictures, which permits a flexible procedure for the external prediction or reference links prediction between views.

[0040] the Video data including video data MVC, can be arranged at the unit level of abstraction network (NAL) that provide "friendly network" view video to provide applications such as video telephony, storage, broadcast or streaming. For example, a video encoder typically encodes each picture of video data as one or more independently decodable clippings. Clippings can be Packed into NAL units for transmission over the network. The NAL unit that includes the data level video coding (VCL), may include data for pictures or data for cutting out pictures. For example, NAL units may include information of syntax, such as the values of the pattern of the coded block (CBP), the type of block encoding mode, the maximum block size for a coded unit (such as a frame, �ereska, block, or sequence), or other information.

[0041] Each NAL unit includes a header that identifies the type of data stored in the NAL unit. Approximate unit header MVC NAL may include syntax elements indicating an ID for the view, which the NAL unit belongs, whether the NAL unit of the so-called picture with bindings that can be used as a random access point (for reference by other view components), whether the NAL unit for predicting between species for NAL units in other types, and a host of other information. As described here, the picture is linked can usually match the random access picture, and such terms may be used interchangeably. Thus, the "random access" generally refers to the act of the beginning of the decoding process for the bit stream at a point other than the beginning of the stream. The picture is a random access usually refers to the picture, which contains only internally coded clippings (I-clippings). Coded pictures that follow the random access picture in the decoding order and the output order, not predicted from pictures preceding the random access picture, or in the decoding order or output order.

[0042] Abitsnoinna access may include all components of a specific point in time. Specific component type includes all NAL units of a particular species at a particular point in time. Unit NAL MVC can contain single-byte header of the NAL unit (including the NAL unit type) and may also include an extension header of the NAL unit MVC.

[0043] while the H. 264/AVC includes support for MVC, the current MVC extension to H. 264/AVC may contain some inefficiency with respect to other video coding standards. In addition, as described in more detail below, direct import from MVC H. 264/AVC to other coding standards, such as the upcoming HEVC standard may not be feasible. The methods of the present disclosure generally relate to the formation related to MVC NAL units related to MVC sets of parameters, etc. Some of the methods of the present disclosure can provide an effective MVC encoding for the upcoming HEVC standard.

[0044] FIG. 1 is a block diagram illustrating an exemplary system 10 for encoding and decoding video, which can use methods for predicting the motion vector, when encoding multiple species. As shown in Fig. 1, system 10 includes a source device 12 that generates coded video data that needs to be decoded at a later time by the destination device 14. In particular, the source device 12 generates video data)�istwo 14 destination via machine-readable media 16. The source device 12 and destination device 14 may include any of a wide range of devices, including desktop computers, portable computers (i.e., laptops), tablet computers, set-top boxes, telephone handsets such as so-called "smartphones”, the so-called "smart" pads, televisions, cameras, display devices, digital media players, video game consoles, device video streaming, or similar. In some cases, source device 12 and destination device 14 may be equipped for wireless communication.

[0045] the destination Device 14 may receive the encoded video data that must be decoded, via a computer-readable medium 16. Machine-readable media 16 may include any type of media or device capable of moving the encoded video data from source device 12 to destination device 14. In one example, a computer-readable medium 16 may include a communication medium to allow the source device 12 to transmit encoded video data directly to destination device 14 in real time.

[0046] the Encoded video data may be modulated according to the communication standard, such as a wireless communication Protocol, and transmitted to �the device 14 to the destination. Communication media may include any wireless or wired communication media, such as radio frequency (RF, RF) spectrum or one or more physical transmission lines. Communication media may be part based on the packet transmission network such as a local area network, regional network, or global network such as the Internet. Communication media may include routers, switches, base stations, or any other equipment that may be useful to facilitate communication from source device 12 to destination device 14.

[0047] In some examples, encoded data can be output from the interface 22 is output to a storage device. Similarly, encoded data can be accessed from the storage device through the interface. The storage device may include any of a variety of distributed or locally available media storage such as hard drive, Blu-ray, DVD, CD-ROM, flash memory, volatile or non-volatile memory, or any other suitable digital storage media for storing encoded video data. In a further example, the storage device may correspond to a file server or another intermediate device, the storage�tion, which can store encoded video generated by the source 12.

[0048] the destination Device 14 may access the stored video data from the storage device through streaming or download. The file server may be any type of server capable of storing encoded video data and to transmit these encoded video data to destination device 14. Exemplary file servers include a web server (e.g., website), FTP server, device, network attached storage (NAS), or local disk drive. The destination device 14 may access the encoded video data through any standard data connection, including Internet connection. It may include a wireless channel (e.g., a Wi-Fi connection), a wired connection (e.g., DSL, cable modem, etc.), or a combination of both that is appropriate to access the encoded video data stored on a file server. Transmission of encoded video data from the storage device may be a streaming transmission, a transmission load, or a combination of both.

[0049] the Methods of the present disclosure is not necessarily limited to wireless applications or settings. These methods can be applied to video coding in support�utility services of any of the many multimedia applications, such as broadcast television, cable television, satellite TV, streaming video on the Internet, such as dynamic adaptive streaming over HTTP (DASH), digital video that is encoded onto the media storage data, decoding of digital video stored on the media storage, or other applications. In some examples, system 10 may be configured to support one-way or two-way video transmission to support applications such as video streaming, video playback, video broadcasting, or video telephony.

[0050] In the example according to FIG. 1 the source device 12 includes a video source 18, video encoder 20 and interface 22 output. The destination device 14 includes an interface 28 is input, the video decoder 30, and the display device 32. In accordance with this disclosure, video encoder 20 of source device 12 may be configured to apply the methods for predicting the motion vector, when encoding multiple species. In other examples, the source device and the destination device may include other components or layout. For example, the source device 12 may receive video data from an external video source 18, such as an external camera. Similar�icno, the destination device 14 may interact with the external display device, instead of including an integrated display device.

[0051] the Illustrated system 10 according to FIG. 1 is just one example. Methods for predicting the motion vector, when encoding multiple species can be performed by any digital device encoding and/or decoding video. Usually, though, the methods of the present disclosure are performed by a video encoding device, the methods may also be performed by video encoder/decoder, typically referred to as "codec". In addition, the methods of the present disclosure may also be performed by a video preprocessor. The source device 12 and destination device 14 is just examples of such devices encoding in which the source device 12 generates coded video data for transmission to destination device 14. In some examples, the devices 12, 14 can operate essentially symmetrical manner such that each of devices 12, 14 include components of the video encoding and decoding. Thus, the system 10 may support one-way or two-way video transmission between video devices 12, 14, e.g., for video streaming, video playback, video broadcasting, or video telephony.

[0052] Video �source 18 of source device 12 may include a video capture device, such as a video camera, a video archive containing previously captured video, and/or feeder interface video to take video from a video provider content. As a further alternative, the video source 18 may generate based on computer graphics data as the source video, or a combination of live video, archived video, and computer generated video. In some cases, if video source 18 is a video camera, source device 12 and destination device 14 may form so-called camera phones or video phones. As mentioned above, however, the methods described in the present disclosure may be applicable to video coding in General and can be applied to wireless and/or wired applications. In each case, the captured, pre-captured, or computer-generated video may be encoded as video encoder 20. The encoded video information may then be withdrawn by the interface 22 of the output on a computer-readable medium 16.

[0053] the machine-Readable medium 16 may include temporary storage, such as a wireless broadcasting or transmission over a wired network, or storage media (i.e., non-temporal storage media), such as a hard disk, flash drive, CD-ROM, digital video disc, Blu-ray, Il� other computer readable media. In some examples, the web server (not shown) may receive encoded video data from source device 12 and produce encoded video data to destination device 14, e.g., via network transmission. Exactly the same computing device means of production medium, such as a means of stamping disc, you may receive encoded video data from source device 12 to produce a disc containing the encoded video data. Therefore, a computer-readable medium 16, as can be understood, includes one or more computer readable media of various forms, in various examples.

[0054] the Interface 28 to the input of the destination device 14 receives information from the computer readable medium 16. Information machine-readable medium 16 may include information syntax defined by video encoder 20, which is also used by video decoder 30, that includes syntax elements that describe characteristics and/or processing of blocks and other coded units, e.g., GOP. The display device 32 displays the decoded video data to the user, and can contain any of the plurality of display devices such as cathode ray tube (CRT), liquid crystal display (LCD), a plasma display, the display organic�ski light emitting diode (OLED), or other type of display device.

[0055] Video encoder 20 and video decoder 30 each may be implemented as any one of a plurality of matching circuits of the encoder or decoder, as applicable, such as one or more microprocessors, digital signal processors (DSPs), application specific integrated circuits (ASIC), field programmable gate arrays (FPGA), discrete logic, software, hardware, software-hardware, or any combinations thereof. Each of video encoder 20 and video decoder 30 may be included in one or more encoders or decoders, either of which may be integrated as part of a combined encoder/decoder (codec) of the video. Device including video encoder 20 and/or video decoder 30, may include an integrated circuit, a microprocessor, and/or wireless communication device, such as a cell phone.

[0056] Although not shown in Fig. 1, in some aspects, video encoder 20 and video decoder 30 may each be integrated with an audio encoder and decoder, and may include the corresponding blocks MUX-DEMUX (MUX-demux), or other hardware and software to encode both audio and video in a common data stream or separate data streams. If applicable, blocks MUX-DEMUX can MATC�to facilitate multiplexer Protocol ITU H. 223, or other protocols, such as for user datagram Protocol (UDP).

[0057] In the example shown in Fig. 1, system 10 also includes a server/network 34 content delivery with a router 36. In some examples, source device 12 may communicate with server/network 34 deliver content across a variety of wireless and/or wired transmission or storage media, as described above. In addition, while shown separate in the example of FIG. 1, in some examples, source device 12 and the server/network 34 content delivery contain the same device. Server/network 34 content delivery may store one or more versions of the encoded video data from video encoder 20 of source device 12), and may make such encoded video data is available for access to the destination device 14 and the video decoder 30. In some examples, the router 36 may be responsible for issuing encoded video data to destination device 14 in the required format.

[0058] Video encoder 20 and video decoder 30 may operate according to a video compression standard, such as standard high-efficiency video encoding (HEVC), which is now in development, and may conform to the HEVC Test Model (HM). Alternatively, video encoder 20 and video decoder 30 may operate according to other components with�liability standards or industry standards, such as the standard ITU-T H. 264, the alternative called MPEG-4 Part 10, Advanced Video Coding (AVC), or extensions of such standards. The methods of the present disclosure, however, is not limited to any particular coding standard. Other examples include MPEG-2 and ITU-T H. 263.

[0059] the Standard ITU-T H. 264/MPEG-4 (AVC) was formulated by the Expert Team on video Coding of ITU-T (VCEG) together with the expert Group on moving images ISO/IEC (MPEG) as the product of a collective partnership known as the joint Video Team (JVT). In some aspects, the methods described in the present disclosure may be applied to devices that generally conform to the H. 264 standard. The H. 264 standard is described in recommendation H. 264 of ITU-T, Advanced video coding for generic audiovisual services, by study Group ITU-T, and dated March 2005, which may be referred to here as the H. 264 standard or H. 264 specification, or standard, or specification of H. 264/AVC. Joint Video Team (JVT) continues to work on extensions to H. 264/MPEG-4 AVC.

[0060] the JCT-VC is working to develop the HEVC standard. Efforts on the standardization of HEVC based on a developing device model video encoding, called HEVC Test Model (HM). HM presumes several additional features of the video encoding device in front of the existing devices according to, for example�EP, ITU-T H. 264/AVC. For example, whereas H. 264 provides nine modes of encoding with internal prediction, HM provides as many as thirty-three modes of encoding with internal prediction.

[0061] Typically, the working model of the HM describes that a video picture can be divided into a sequence of blocks of wood or largest coding units (LCU) that include samples as luminance and chrominance. Data syntax within a bitstream may define a size for the LCU, which is a largest coding unit in terms of number of pixels. Tenderloin includes many sequential blocks of wood in the coding procedure. The picture can be divided into one or more clippings. Each block of wood may be divided into units of coding (CUs) according to quadradrive. In General, the data structure of quadradrive includes one node for each CU, with the root node corresponding to the block of wood. If the CU is divided into four sub-CU, the node corresponding to that of CU, includes four leaf node, each of which corresponds to one of the sub-CU.

[0062] Each node of the data structure of quadradrive can provide the data syntax for the respective CU. For example, a node in quadradrive may include the flag of separation markers, separated by whether the CU corresponding to the node on the sub-CU. Elements�s syntax for CU can be defined recursively and can depend on, separated by CU in units of sub-CU. If the CU is not split further, as it is called CU sheet. In the present disclosure the four sub-CU CU sheet will also be referred to as leaf CU, even if there is no explicit separation of the initial CU sheet. For example, if the CU size of 16x16 is not further divided, four 8x8 sub-CU will also be referred to as leaf CU, while CU 16x16've never been separated.

[0063] CU has a similar purpose as that of the macroblock of the H. 264 standard, except that a CU does not have differences in size. For example, a block of wood can be split into four child nodes (also called sub-CU), and each child node can in turn be parent node and to be divided by another four child node. Final, unrequited child node, called a leaf node of quadradrive contains the node encoding, also called CU sheet. Data syntax associated with the encoded bitstream may define a maximum number of times the block of wood can be divided, called the maximum depth of this CU, and may also determine the minimum size of nodes coding. Accordingly, the bit stream may also determine the smallest coding unit (SCU). The present disclosure uses the term "block" to refers to any of a CU, PU, or TU in the context of HEVC, or similar data structures in the context of other standards (for example, macroblocks and sub-blocks in H. 264/AVC).

[0064] the CU includes the node encoding and prediction unit (PU) and translation units (TU) associated with node encoding. The size of CU corresponds to the size of the node encoding and must be square in shape. The size of the CU may range from 8x8 pixels up to the size of the block of wood with a maximum of 64x64 pixels or more. Each CU may contain one or more PU and one or more TU. Data syntax associated with CU, can describe, for example, the separation of the CU into one or more units PU. Modes of separation may differ between the CU is coded in the skip mode or direct mode coded in the mode of internal predictions or coded mode external predictions. PU can be divided to be non-square in shape. Data syntax associated with CU, can also describe, for example, the separation of the CU into one or more TU according to quadradrive. TU can be square or non-square (e.g., rectangular) in shape.

[0065] the HEVC Standard takes into account the transformation units according to the TU, which can be different for different CU. TU typically have dimensions on the basis of the size of the PU within a given CU, for certain separated LCU, although this may not Wed�always be the case. TU typically have the same size or smaller than PU. In some examples, residual samples corresponding to a CU may be subdivided into smaller units, using the structure of quadradrive known as "residual quadromania" (Rqt extension). The leaf nodes of the Rqt extension can be referred to as translation units (TUs). The values of the pixel differences associated with TU, can be converted to form conversion factors that can be quantified.

[0066] CU Sheet may include one or more prediction units (PU). In General, PU represents a spatial area corresponding to all or part of the corresponding CU, and may include data for extracting the reference sample for the PU. In addition, the PU includes data related to the prediction. For example, when the PU is coded in the external mode, the data for the PU may be included in the residual quadradrive (Rqt extension), which can include data describing the mode of internal predictions for TU corresponding to that PU. As another example, when the PU is coded in the external mode, the PU may include data defining one or more motion vectors for this PU. Data defining the motion vector for a PU may describe, for example, the horizontal component of the motion vector, vertical �omponent motion vector, the resolution for the motion vector (e.g., pixel precision one-quarter pixel precision in one-eighth), the reference picture to which the motion vector points, and/or a list of reference pictures (e.g., List 0, List 1, or List C) for the motion vector.

[0067] CU Sheet having one or more PU, can also include one or more conversion units (TU). Unit conversions can be specified using the Rqt extension (also called structure quadradrive TU), as described above. For example, the flag of separation can be specified, separated by a sheet of CU in the four units of the conversion. Then, each unit can be further divided into the following sub-TU. When the TU is not split further, it may be referred to as sheet TU. In General, for internal coding, all sheet TU belonging to the leaf CU, shares the same mode of internal predictions. Thus, the same mode of internal predictions is usually used to calculate predicted values for all TU CU sheet. For internal coding, video encoder 20 may calculate residual value for each leaf of TU, using the mode of internal predictions, as the difference between the part of the CU corresponding to the TU, and the original block. TU is not necessarily restricted to the size of the PU. Thus�Ohm, TU can be larger or smaller than PU. For internal encoding PU can be jointly located with the corresponding sheet TU for the same CU. In some examples, the maximum size sheet TU can match the size of the corresponding CU sheet.

[0068] in addition, the unit TU CU sheet may also be associated with the corresponding data structures of quadradrive called residual quadragesimae (Rqt extension). Thus, the CU sheet may include quadradrive indicating how the leaf CU is divided into units of TU. The root node of quadradrive usually corresponds to TU CU sheet, while the root node of quadradrive CU usually corresponds to a block of wood (or LCU). Units TU mentioned Rqt extension that are not separated are referred to as leaf TU. In General, the present disclosure uses the terms CU and TU to refer to sheet CU sheet and TU, respectively, unless noted otherwise.

[0069] a Video sequence typically includes a sequence of pictures. As described here, the "image" and "frame" may be used interchangeably. Thus, the picture that contains the video data may be referred to as a video frame, or simply "frame". A group of pictures (GOP) typically contains a sequence of one or more video pictures. GOP may include data syntax h�head of GOP the header of the one or more images, or elsewhere that describes the number of pictures included in a GOP. Each tenderloin (slice) images may include data syntax clippings that describe the encoding mode for the corresponding clippings. Video encoder 20 typically operates on video blocks within individual video clips to encode video data. A video block may correspond to the node encoding within the CU. Video blocks may be of fixed or variable size, and can vary in size according to a specified coding standard.

[0070] as an example, the HM supports the prediction in various sizes PU. Assuming that the size of a particular CU is equal 2Nx2N, the HM supports intra prediction in PU sizes 2Nx2N or NxN, and external prediction in symmetric PU sizes 2Nx2N, 2NxN, Nx2N, or NxN. HM also supports asymmetric partitioning for external prediction in PU sizes 2NxnU, 2NxnD, nLx2N, and nRx2N. In the asymmetric division of the one direction CU is not split, while the other direction is divided into 25% and 75%. The portion of the CU corresponding to 25% of the division is indicated by "n" followed by the indication "Top" (Up), lower (Down), "Left" (Left), or "Right" (Right). Thus, for example, "2NxnU" refers to a CU of size 2Nx2N, which is divided horizontally with PU 2Nx0.5N excess�u and PU 2Nx1.5N below.

[0071] In the present description "NxN" and "N by N" may be used interchangeably to refer to the pixel dimensions of the block in terms of vertical and horizontal dimensions, e.g., 16x16 pixels or 16 by 16 pixels. Usually 16x16 block will have 16 pixels in a vertical direction (y=16) and 16 pixels in the horizontal direction (x=16). Similarly, the NxN block generally has N pixels in the vertical direction and N pixels in the horizontal direction, where N represents a nonnegative integer value. The pixels in the block can be placed in rows and columns. In addition, the blocks do not necessarily have the same number of pixels in the horizontal direction as in the vertical direction. For example, the units may contain NxM pixels, where M is not necessarily equal to N.

[0072] After encoding with internal prediction or external prediction using unit PU in a CU, video encoder 20 may calculate residual data for units TU CU in. Unit PU may include data syntax that describes the method or mode of generating a predictive pixel data in the spatial domain (also referred to as a pixel region), and the unit TU may contain the coefficients in the transformation after the transformation is applied, for example, discrete cosine transform (DCT), a�numerical conversion, the wavelet transform, or a conceptually similar transform to residual video data. The residual data may correspond to pixel differences between pixels of the unencoded symbols and the prediction values corresponding to the units PU. Video encoder 20 may form a unit of TU, including residual data for the CU, and then converting unit TU to form conversion factors for this CU.

[0073] After any conversion, to generate the transform coefficients, video encoder 20 may perform quantization of the transform coefficients. Quantization generally refers to the process in which the transform coefficients are quantized to possibly reduce the amount of data used to represent the coefficients, providing further compression. The quantization process can reduce the bit depth associated with some or all of the coefficients. For example, the n-bit value may be rounded down to an m-bit value during quantization, where n is greater than m.

[0074] After the quantization of the video encoder may scan the transform coefficients, forming a one-dimensional vector from the two-dimensional matrix including the quantized transform coefficients. Scanning can be designed to place the coefficients with �more high energy (and therefore lower frequency) at the beginning of the array and place the coefficients with lower energy (and therefore higher frequency) at the end of the array. In some examples, video encoder 20 may utilize a predefined scan order to scan the quantized transform coefficients to form a serialized vector that can be entropy encoded. In other examples, video encoder 20 may perform an adaptive scan. After scanning the quantized transform coefficients to form a one-dimensional vector, video encoder 20 may entropy encode the one-dimensional vector, e.g., according to context adaptive coding with variable length code (CAVLC), context adaptive binary arithmetic coding (CABAC), syntax, context adaptive binary arithmetic coding (SBAC), entropy coding with division of interval probability (PIPE) or other entropy coding methods. Video encoder 20 may also entropy encode syntax elements associated with the encoded video data for use by video decoder 30 in decoding the video data.

[0075] to perform CABAC, video encoder 20 may assign a context within the context of a model character that must be passed. The context may relate to, for example, whether neighboring values of the symbol is non-zero or not. To perform a diagnostic�you CAVLC, video encoder 20 may select a code with variable word length for the symbol, which must be passed. Code words in VLC can be built in such a way that a relatively shorter codes correspond to more probable symbols, while longer codes correspond to less probable symbols. Thus, the use of VLC can achieve savings of bits, for example, using the code words of equal length for each symbol that must be passed. Definition of probability may be based on the context that is assigned to the symbol.

[0076] Video encoder 20 may also send data syntax, such as based on the block data syntax based on the picture data syntax, and is based on GOP data syntax, to video decoder 30, for example, in the title of the picture, the block header, the header of the tenderloin or the GOP header. Data syntax GOP can describe a number of images in the corresponding GOP, and the data syntax of the image can indicate the mode of coding/prediction used to encode the corresponding picture.

[0077] In some examples, video encoder 20 may generate, and video decoder 30 may receive, some sets of parameters that can be used when decoding the video data. For example, parameter sets may contain information headers�and the level of the sequence (in the set of parameters sequence (SPS)) and infrequently changing information layer header images (in sets of image parameters (PPS)). With the sets of parameters (for example, PPS and SPS), infrequently changing information not required to be repeated for each sequence (e.g., sequence of images) or images, and therefore, the encoding efficiency can be improved. In addition, the use of parameter sets may allow for the transfer outside of the frequency range important header information, avoiding the need for redundant transmissions for error tolerance. In the examples outside transmission frequency band units NAL set of parameters can be transmitted over the channel than the other NAL units, such as units of NAL for more information expansion (SEI).

[0078] the NAL Unit SEI (called the SEI message may contain information that is not necessary for decoding the coded sample picture from pieces of VCL NAL, but may assist in processes related to decoding, display, error tolerance, and other purposes. The SEI message may be contained in units of the NAL non-VCL. The SEI message may be included in the normative part of some spec standards, and thus are not always required for the implementation of a decoder compatible with the standard. The SEI message can be a message of SEI level of consistency or messaging SEI level images. Some of the information level sequence�eljnosti may be contained in the SEI message, such as SEI messages information scalability in example SVC and SEI message information scalability view in MVC.

[0079] In some examples, video encoder 20 may encode the MVC bit stream that corresponds to the MVC extension to H. 264/AVC. Similarly, video decoder 30 may decode the MVC bit stream that corresponds to the MVC extension to H. 264/AVC. The latest joint draft of MVC is described in JVT-AD007, AD007, AD007, “Editors' draft revision to ITU-T Rec. H. 264 | ISO/IEC 14496-10 Advanced Video Coding,” 30thJVT meeting, Geneva, Switzerland, Jan.-Feb. 2008, publicly available at the address http://wftp3.itu.int/av-arch/jvt-site/2009_01_Geneva/JVT-AD007.

[0080] In the scalable extension of H. 264/AVC syntax elements can be added to the extension header of the NAL unit to expand the header of the NAL unit from one byte to four bytes to describe the characteristics of a unit of the VCL NAL in multiple dimensions. Thus, NAL units VCL in HEVC may include a longer header of the NAL unit than the header of the NAL unit in H. 264/AVC standard. The MVC extension to H. 264/AVC can be referred to in this disclosure as "MVC/AVC".

[0081] the NAL Unit MVC/AVC can contain single-byte header of the NAL unit includes a NAL unit type, as well as the extension header of the NAL unit MVC/AVC. As an example, the extension header of the NAL unit MVC/AVC may include syntax elements in the following Table 1:

Table 1
The SYNTAX of the EXTENSION HEADER of the NAL UNIT
nal_unit_header_extension(){CDescriptor
reserved_zero_bitAllu(1)
idr_flagAllu(1)
priority_idAllu(6)
view_idAllu(10)
temporal_idAllu(3)
anchor_pic_flagAllu(1)
inter_view_flagAllu(1)
reserved_one_bitAllu(1)
}

[0082] In Table 1 above element idr_flag may indicate whether the NAL unit to the current update decode (IDR) or the IDR picture of the form (V-IDR), which m�can be used as a point of random access to a closed GOP. For example, the IDR picture and all the pictures following the IDR picture in the display order and the order of the bit stream can be properly decoded, decoding of previous pictures or in the order of the bit stream or the display order. Element priority_id may be used with the process of adaptation of the bit stream, which changes the bit stream according to changing network conditions and/or capabilities of the video decoder 30 and/or the display device 32 (e.g., such as the adaptation process for a single pass). Element view_id may be used to specify the ID type for the species, to which the NAL unit belongs, which can be used in the MVC decoder, for example, the prediction between species and outside of the decoder, for example, to play. In some cases, view_id may be set equal to the predetermined camera id, and can be relatively large. Element temporal_id may be used to indicate the temporal level of the current NAL unit, which may correspond to a particular speed of transmission of the frame.

[0083] the Element anchor_pic_flag can be used to indicate whether the NAL unit of the picture with a reference that can be used as a random access point to an open GOP. For example, images with the anchor and all the pictures following the picture linked in order from�mapping, can be properly decoded, decoding of previous pictures in decoding order (i.e. the order of the bit stream) and thus can be used as random access points. The picture with the binding and pictures without binding may have different dependency types, both of which can be signaled in the SPS. Thus, as described here, the dependence of species can usually be treated to the sight of which depends on the currently coded view. In other words, the dependence of species can be formed from any species can be predicted currently being encoded. According to some examples, the dependency types can be signaled in the SPS MVC extension. In such examples, the prediction between species can be made within the scope defined in the SPS MVC extension. Item inter_view_flag can be used to indicate whether the NAL unit for predicting between species for NAL units in other views.

[0084] in Order to transmit the above-mentioned 4-byte header information of a NAL unit for the base view of an MVC bit stream, the NAL unit prefix can be defined in MVC. In the context of an MVC access unit base view may include units VCL NAL current time of a particular kind, and the unit prefix NAL unit of the access base view, which can�keep only the header of the NAL unit. If the NAL unit prefix is not required for decoding (e.g., such as the decoding of a single type), the decoder may ignore and/or reject the NAL unit prefix.

[0085] on the expansion of the MVC/AVC SPS mentioned MVC SPS may indicate species that can be used for prediction between views. For example, the reference potential links between species can be signaled in and expansion of the MVC/AVC SPS, and can be changed by the process of constructing the list of reference images, which enables flexible ordering of the external prediction or reference links predictions between species. Example MVC/AVC SPS formulated in Table 2 below:

Table 2
EXAMPLE MVC SPS
seq_parameter_set_mvc_extension(){CDescriptor
num_views_minus10ue(v)
for(i=0; i<=num_views_minus1; i++)
view_id[i]0ue(v)
for(i=1; i<=num_views_minus1; i++){
num_anchor_refs_l0[ i ]0ue(v)
for(j=0; j< num_anchor_refs_l0[i]; j++)
anchor_ref_l0[i][j]0ue(v)
num_anchor_refs_l1[i]0ue(v)
for(j=0; j<num_anchor_refs_l1[i]; j++)
anchor_ref_l1[i][j]0ue(v)
}
for(i=1; i<=num_views_minus1; i++){
num_non_anchor_refs_l0[i]0ue(v)
for(j=0; j<num_non_anchor_refs_l0[i]; j++)
non_anchor_ref_l0[i][j]0ue(v)
num_non_anchor_refs_l1[i]0ue(v)
for(j=0; j<num_non_anchor_refs_l1[i]; j++)
non_anchor_ref_l1[i][j]0ue(v)
}
num_level_values_signalled_minus10ue(v)
for(i=0; i<=num_level_values_signalled_minus1; i++){
level_idc[i]0u(8)
num_applicable_ops_minus1[i]0ue(v)
for(j=0; j<=num_applicable_ops_minus1[i]; j++){
applicable_op_temporal_id[i][j]0u(3)
applicable_op_num_target_views_minus1[i][j0ue(v)
for(k=0; k<=applicable_op_num_target_views_minus1[i][j]; k++)
applicable_op_target_view_id[i][j][k]0ue(v)
0ue(v)
}
}
}

[0086] According to some examples, the dependency types can be signaled in the SPS MVC extension. All prediction between species can be made within the scope defined in the SPS MVC extension. Thus, SPS is able to formulate what types can be referred to in order to predictions through the type to be encoded currently. In Table 2 above, the element num_anchor_refs_l0 [i] may specify the number of view components for predictions between species in the initialized list of the reference pictures of List 0 (e.g., RefPicList0). In addition, the element anchor_ref_l0 [i] [j] may specify the view_id of the j-th component species for predicting between species in the initialized RefPicList0. Item num_anchor_refs_l1 [i] may specify the number of view components for predictions between species in the initialized reference list of pictures to the list (e.g., RefPicList1). Item anchor_ref_l1 [i] [j] may specify the view_id of the j-th component species for predicting between species in initialized ReficList1. Item num_non_anchor_refs_l0 [i] may specify the number of view components for predictions between species in the initialized RefPicList0. Item non_anchor_ref_l0 [i] [j] may specify the view_id of the j-th component species for predicting between species in the initialized RefPicList0. Item num_non_anchor_refs_l1 [i] may specify the number of view components for predictions between species in the initialized RefPicList1. Item non_anchor_ref_l1 [i] [j] may specify the view_id of the j-th component species for predicting between species in initialized RefPicList.

[0087] Submitted to, or "initial", a list of reference symbols may be the same or different from the final list of reference pictures used for prediction between species components. Thus, some supporting candidates (i.e., reference pictures that can be used for prediction between species) can be removed from the initial list of reference pictures (e.g., excessive pictures). In addition, as described in more detail below, reference candidates can be reordered from the initial list of reference images to form the final list of reference pictures.

[0088] In this example, according to the MVC/AVC, dependency types for images with reference and pictures without being bound separately supported and heard. Thus, the video coder may �to agive unto a total of four list of reference pictures (e.g., List 0, the images without reference; schedule 1 images without reference; a List of 0 images linked; List 1, the picture with the binding). In addition, as shown in Table 2 above, a separate alarm is required to indicate the dependence of video decoder 30. Therefore, SPS should include a separate alarm List 0 and List 1 and for anchor_refs and non_anchor_refs.

[0089] in addition, according to Table 2, the relation between the types of components for species without reference is a subset of its components with binding. Thus, for example, a component type for the kind of binding can be predicted from more than one other type, such as type 3 and 4. View without reference, however, can only be predicted from images of type 3 (a subset of the species with the binding). Thus, according to the views and view components with binding without binding separately supported.

[0090] in addition, in Table 2, num_level_values_signalled can set the number of level values, signalled for the coded video sequence. Element level_idc [i] may specify the i-th level value, signalled for the coded video sequence. Item num_applicable_ops_minus1 [i] plus 1 can specify the number of operation points to which the level indicated by l_idc1 [i], is applied. Item applicable_op_temporal_id [i] [j] may specify the temporalid of the j-th operating point, to which the level indicated by level_idc [i] applies. Item applicable_op_num_target_views_minus1 [i] [j] may specify the number of target species o for the j-th operating point to which the level indicated by level_idc [i] applies. Item applicable_op_target_view_id [i] [j] [k] may ask the k-th target output type for the j-th operating point to which the level indicated by level_idc [i] applies. Item applicable_op_num_views_minus1 [i] [j] may specify the number of species, including species that depend on the target species of inference, but which do not belong to the target species o in the j-th operating point to which the level indicated by level_idc [i] applies.

[0091] Accordingly, in the SPS MVC extension for each species the number of species that can be used to generate a list 0 reference picture and list 1 reference pictures may be signaled. In addition, the relationship predictions for pictures with the binding, as signaled in the SPS MVC extension may differ from relations predictions for images without linking (reported in the SPS MVC extension) of the same type.

[0092] As described in more detail below, video encoder 20 and video decoder 30 can flexibly assemble temporary and supporting references predictions of species when constructing lists of reference pictures. The flexible layout provides not only the potential benefits� coding efficiency but also the error tolerance, as the section reference symbols and redundant mechanisms of icons can be expanded to the size of the species. Video encoder 20 and/or video decoder 30, in one example, can design a list of reference pictures according to the following steps:

1) Initialize the list of reference images for temporal (i.e., within species) of the reference symbols, so that the reference pictures from other species are not considered.

2) Add reference pictures between species by the end of the list in the order in which the pictures have a place in the MVC SPS extension.

3) Apply the process of reordering the list of reference pictures (RPLR) and for the reference pictures within species and between species. Reference pictures between species can be identified in the RPLR command their index values as defined in the MVC SPS extension.

[0093] while the H. 264/AVC includes support for MVC, the current MVC extension to H. 264/AVC may contain a number of inefficiencies with respect to other video coding standards. In addition, as described in more detail below, direct import from MVC H. 264/AVC to other coding standards, such as the upcoming HEVC standard, may not be feasible. The methods of the present disclosure generally relate to the formation related to MVC NAL units related to MVC sets of parameters, etc. while the real ways�about disclosure is not limited to any particular coding standard, some methods of the present disclosure can provide an effective MVC encoding for the upcoming HEVC standard.

[0094] As an example, the H. 264/MVC supports up to 1024 kinds and uses the ID of the view (view_id) in the header of the NAL unit to identify species, to which the NAL unit belongs. Because view_id has a length of 10 bits, more than 1000 different species can be uniquely identified by view_id values. However, many applications of three-dimensional (3D) video require significantly fewer species. In addition, fewer species may be required for 3D video applications that use synthesis types to generate more types (which do not require coding). According to the extension MVC/AVC header of the NAL unit includes 10 bit view_id, which is always granted. view_id may significantly increase the number of bits for the header of the NAL unit, which occupies a relatively large part of the bit stream.

[0095] According to an aspect of the present disclosure ordinal index (“view_order_index” or “view_idx”) may be communicated as part of the header of the NAL unit. Thus, video encoder 20 may encode and transmit, and video decoder 30 may receive and decode the sequence index of the species as part of the header of the NAL unit. In order to compare the ordinal index of the species can replace view_id, which�s in the header of the NAL unit MVC extension to H. 264/AVC (hereinafter “MVC/AVC”). Thus, for example, view_idx can replace the view_id in the header of the NAL unit.

[0096] As described above, MVC provides a prediction between views. Accordingly, the species used for the link (i.e., species that are used for prediction of other species), must take place in order of coding earlier than the species, which are referenced as described above. Order types usually describes the order of species in the access unit, and a sequence index type identifies the specific type of right types of unit access. Thus, the ordinal index of the view describes the decoding order of the respective component unit type access.

[0097] SPS can provide relationships between the identifiers of the form (view_ids) for species and sequence indexes of the species for the species. According to an aspect of the present disclosure, using the ordinal index of the view and the data in SPS, video encoder 20 and video decoder 30 can replace 10 bit for MVC view_id/AVC in the header of the NAL unit for the ordinal index of the view. For example, the ordinal index of the view may include essentially less than 10 bits (e.g., 2 bits, 3 bits, or the like). While the relationship between the ordinal index of the species and species identifiers may require some associated signaling, for example, in SPS, the headers of the NAL units typically consume far more bits than t�Kai alarm. Accordingly, reducing the size of the headers of the NAL units, the methods of the present disclosure can achieve savings of bits in comparison with the scheme of MVC/AVC. Information indicating this relation may contain, for example, mapping table, which displays the values of view_id values in the ordinal index of the view. In this way, video decoder 30 may simply take the value of the ordinal index of the view in the header of the NAL unit to determine view_id NAL unit using the mapping table.

[0098] According to some aspects of the disclosure, a sequence index of a species can have a dynamic length, depending on whether it is a basic form of HEVC, profile, or many types that are supported in the MVC bit stream. For example, an additional saving of bits can be achieved in the MVC stream that includes only two species (i.e., for stereo video). In this example, the sequence index type may not be necessary since the video decoder 30 may decode a first view (e.g., view 0) to decode the second type (e.g., type 1). Thus, according to some aspects of the present disclosure, the base type can be assigned with a sequence index, 0 by default, and therefore should not be signaled.

[0099] in addition, the NAL unit prefix, which is included immediately before the NAL units �osobogo form (e.g., type 0) base view of MVC/AVC, may no longer be required when using the ordinal index of the type described above. For example, video decoder 30 may not require the NAL unit prefix for the base form, as the sequence index of the species may always be zero for a base view, and a temporal position of base type can be specified using the temporal_id (included in MCV/AVC). Accordingly, video encoder 20 may signal temporal_id in the header of the NAL unit, which can provide all the information necessary for a video decoder 30, to associate a specific component with a specific type and with an appropriate temporary location.

[0100] Regarding the emerging HEVC standard, according to an aspect of the present disclosure, when the NAL unit prefix is not used for compatible with HEVC base view, the flag can be added to the header of the NAL unit basic types HEVC. This flag can only be used to indicate whether the component type (this specific NAL units) to be used for components external view predicting other types of bit stream.

[0101] in addition, according to aspects of the disclosure, the sequence index type can be used with the value of the order of reference pictures (POC) (e.g., that indicates the display order of images) or the value of the frame (for example, Kotor�e specifies the decoding order of pictures), to identify the component type of the bit stream.

[0102] as another example, as noted above, the SPS MVC/AVC can specify the dependent types (i.e., types that are referenced by one or more other species in order to predict) separately for each species. For example, anchor_pic_flag included in the header of the NAL unit MVC/AVC, may be used to indicate whether the NAL unit of the picture with a reference that can be used as a random access point of an open GOP. In an MVC/AVC, as described above, the dependence of the species is indicated differently for images with reference and pictures without binding. Accordingly, for dependent species, signaled for each species, four different categories are considered, each of which differs in whether the picture image with a binding or whether the picture List 0 or List 1. This structure not only requires that a relatively large number of bits supported such a distinction, but also may complicate building a list of reference pictures (e.g., each category should be supported during the construction of the reference list and reorder).

[0103] According to an aspect of the present disclosure, video encoder 20 may signal (and video decoder 30 may receive such alarm) dependence of species for each species perspiration�ka MVC bits common to all view components, regardless of whether components are designed for images with reference and pictures without binding. In some examples, the SPS includes an indication of dependency types for view components, instead to rely on the information in the header of the NAL unit. In this method, video encoder 20 and video decoder 30 may not be used anchor_pic_flag used in the header of the NAL unit MVC/AVC.

[0104] Component type signaled dependent types can be used as a reference picture in List 0 and List 1. In addition, the list of reference pictures, and reordering the list of reference pictures of List 0 and List 1 may also be based on the General alarm for images with reference and pictures without binding. In some examples, the level of sequence, the message for more information expansion (SEI) can be used to indicate when the picture without reference has a different dependence types than the picture with the binding.

[0105] Accordingly, some aspects of the present disclosure relate to the removal of the picture with reference/pictures without binding and to distinguish between alarm List 0/list 1 in the MVC/AVC, thus simplifying the bit stream, and building a list of reference pictures. For example, according to aspects of the present disclosure, video decoder 30 may receive for any component of the form p�pout look information of the reference view indicating one or more reference species for predicting view components of the first type. Thus, video decoder 30 may receive the reference view information indicating dependency types for images with reference types and pictures without binding type similarly. The reference information can include, for example, the ordinal index of the form (indicating the decoding order in the access unit) associated with each reference form, as described above.

[0106] furthermore, when decoding a specific picture (access unit) of a particular kind, video decoder 30 may include the reference of candidates (for example, components of the species from which a particular picture can be predicted from the same unit, and the specific picture, and mounting types designated by the reference information. In some cases, video decoder 30 may add the reference of candidates to the list of reference pictures from each reference view so that the number of reference candidates is equal to the number of reference species. In addition, video decoder 30 may add the reference of candidates to any of the List 1, List, 0, or both. Video decoder 30 may then decode a particular image on the basis of one of the reference pictures in the reference list of symbols.

[0107] as another example, as described you�e, priority_id included in the header of the NAL unit is compatible with MVC/AVC bit stream. This priority_id provides an indication of the priority of a particular NAL unit. In more detail, each NAL unit is usually prescribed priority value. In response to a query about the value of P priority will be given all NAL units having a priority value less than or equal to P (i.e., NAL units with priority_id values greater than P are discarded). In this way, lower priority values determine the higher priorities. It should be understood that the NAL units of one and the same species may have different priorities, for example, for temporal scalability within a view.

[0108] This priority can be used for scalability. For example, to extract video data, consuming the least amount of bandwidth (due to the formation of representations of relatively low quality), video decoder 30 (or, more generally, the destination device 14) may request only the NAL units with the highest priority for transmission from a source such as the source device 12/video encoder 20, and priority_id may be used for filtering units of the NAL lower priority. In some examples, the router 36 of the server/network 34 content delivery can use priority_id to separate relatively high priority� NAL units of NAL unit to a lower priority. To form an idea of relatively higher quality (due to the higher consumption of bandwidth), video decoder 30 may request NAL units having a lower priority order to Supplement the NAL units of higher priority, such as by specifying a higher priority value.

[0109] According to an aspect of the present disclosure, instead of signal priority_id in the header of the NAL unit, video encoder 20 may provide the values of priority_id in SPS. Thus, priority_id for each species with a certain time level can be signaled at the sequence level. In addition, according to aspects of the present disclosure, adaptation with a single passage may be allowed until the alarm context associated with adaptation, is known.

[0110] As described above, in some examples, the router 36, which may be responsible for the direction of the flow of bits to the destination device 14 may use the values of priority_id SPS to filter certain types of. Thus, the router 36 can take the complete bit stream, but to extract the substream bits, including NAL units with priority_id values equal to and below the priority values specified by the destination device 14, and send the substream bits to the destination device.

[0111] In another example, according to�about MVC/AVC, adaptation with a single pass requires 6-bit priority_id in the header of the NAL unit. For example, as noted above, the SPS MVC/AVC may include an indication of the level of the species for scalability. Thus, each of the MVC bitstream may be encoded in a hierarchical manner and can be assigned a numeric type level.

[0112] According to an aspect of the present disclosure, a SPS may include level information. Thus, when the device 14 is the destination requests the types of species level V from the server/network 34 content delivery device 14 destination takes all kinds, with species levels less than or equal to V. Like using priority_id values described above, the router 36 of the server/network 34 content delivery can use the levels of the species to extract the substream of bits that includes data for species with species levels less than or equal to the requested by the client to the species level.

[0113] Other aspects of the present disclosure relate to an easy transcoding process to convert a stream of bits of a higher profile in the bit stream corresponding to a lower profile. Such a transcoding process can be performed, for example, server/network 34 content delivery. According to an aspect of the present disclosure, the transcoding may be performed in the following steps

1) Pereotrazheniya values view_idx and view_id in SPS

2) resize the header of the NAL unit with a short length view_idx

[0114] for example, Suppose that a stream of bits of the profile will provide you with free point of view (FVT) contains 32 species, with view_idx equal to view_id for each species. In this example, the bit stream has a stream of bits containing 8 species, with equal view_idx 0, 4, 8, 12, 16, 20, 24, 28. This stream of bits further includes the substream bits, which contains two species, with values 0 and view_id 4.

[0115] According to an aspect of the present disclosure, the values view_idx for substream bits with 8 species can be protopage according to Table 3 below:

Table 3
PEREOTRAZHENIYA VIEW_IDX
view_id0481216202428
Source view_idx profile ftv04812162024 28
Displayed view_idx in 3DV profile01234567

[0116] According to an aspect of the present disclosure, the values view_idx for substream bits with 2 kinds may be protopage according to Table 4 below:

Table 4
PEREOTRAZHENIYA VIEW_IDX
view_id04
Source view_idx profile ftv04
Displayed view_idx profile 3DV01
Displayed view_idx profile stereo01

[0117] According to an aspect of the present disclosure, view_idx in the header of the NAL unit may be protopage according to Table 5 below:

Table 5
PEREOTRAZHENIYA VIEW_IDX
The number of bits in NALUThe value for view_id 4
view_idx in the header of the NAL unit ftvu(10)4
view_idx in the header of the NAL unit 3DVu(3)1
view_idx the header of the NAL unit stereoNot required signaling bits1

[0118] Alternatively, the light transcoding process described above may waive pereotrazheniya view_idx, if the corresponding bit stream provides a gap in the sequence of the index type.

[0119] FIG. 2 is a block diagram illustrating an exemplary video encoder 20 that may implement the techniques described in this disclosure to encode a stream of bits of multiple species. Video encoder 20 receives video data that must be encoded. In the example according to FIG. 2, video encoder 20 includes a module 40 of the mode selector, the adder 50, the module 52 of the conversion processing, the quantization module 54, the module 56 entropy coding, and the memory 64 of the reference pictures. The module 40 of the mode selector, in turn, includes a module 42.�Ki movement/disparately, module 44 motion compensation module 46 internal predictions, and the separation module 48.

[0120] To reconstruct the video block, video encoder 20 also includes a module 58 of the inverse quantization module 60 processing of the inverse transform and the adder 62. A deblocking filter (not shown in Fig. 2) may also be included to filter block boundaries to remove blockiness artifacts from reconstructed video. If desired, the deblocking filter can typically filter the output signal of the adder 62. Additional filters loop (in the loop or after the loop) can also be used in addition to the deblocking filter. Such filters are not shown for brevity, but if it is desirable to filter the output signal of the adder 50 (as a filter in the circuit).

[0121] the Module 40 of the mode selector may receive raw video data in the form of blocks from one or more species. The module 40 of the mode selector may select one of the encoding modes, internal or external, for example, based on the results of the error, and issue the resulting intra - or externally - encoded block to the adder 50 to generate residual block data and to the adder 62 to reconstruct the encoded block for use as reference pictures. The module 40 of the mode selector also provides �the elements of syntax, such as motion vectors, indicators internal mode, information division, and other such information syntax module 56 entropy encoding.

[0122] the Module 42 motion estimation/disparately and the module 44 motion compensation can be highly integrated, but are illustrated separately for conceptual purposes. The motion estimation performed by the module 42 motion estimation/disparately, is the process of generating motion vectors, which estimate motion for video blocks. The motion vector, for example, may indicate the displacement of a PU of a video block within a current image relative to the predictive block within a reference picture (or other coded unit) relative to the current block, is encoded within the current image (or other coded unit).

[0123] the Predictive block is a block that is found to be closely corresponds to the block that needs to be coded in terms of pixel difference, which may be determined by the sum of absolute differences (SAD), a sum of differences of squares (SSD), or other metrics differences. In some examples, video encoder 20 may calculate values for sub-integer pixel positions of reference pictures stored in the memory 64 of the reference images, which may also be referred to as a buffer reference symbols. Eg�measures video encoder 20 may interpolate values of pixel positions in one quarter pixel positions in one-eighth, or other fractional pixel positions of reference pictures. Therefore, the block 42 of the motion estimation may perform a motion search relative to the full pixel positions and fractional pixel positions and output a motion vector with fractional pixel precision.

[0124] the Module 42 motion estimation/disparately calculates a motion vector for a PU of a video block in a seemingly coded cutting, by comparing the position of the PU with the position of a predictive block of a reference picture. Module 42 motion estimation/disparately can also be configured to perform prediction between species, in this case, the module 42 motion estimation/disparately can calculate the displacement vectors between blocks of symbols of the same type (e.g., view 0) and the corresponding blocks of the reference view (e.g., view 1). In General, data for motion vector/disparately may include a list of reference images, the index in the list (ref_idx) of reference pictures, a horizontal component and a vertical component. The reference picture can be selected from the first list of reference pictures (List 0), the second list of reference pictures (List 1), or the combined list of reference pictures (List C), each of which ID�rtificial one or more reference pictures, stored in the memory 64 of the reference pictures. On the combined list, video encoder 20 alternately selects records from two lists (i.e., List 0 and List 1), to insert (attach) in the merged list. When the record is placed in the merged list, by checking the number of POC, video encoder 20 may not insert a record again. For each list (i.e., List 0 or List 1), video encoder 20 may select the entries based on the ascending order of reference index.

[0125] the Module 42 motion estimation/disparately can generate and send the motion vector/disparately that identifies the predictive block of a reference picture, to module 56 entropy coding and the module 44 motion compensation. Thus, the module 42 motion estimation/disparately can generate and send data of the motion vector that identifies a list of reference pictures containing predictive block, the index in the list of reference images to identify the image predicting unit, and the horizontal and vertical components to determine the location of a predictive block within the identified images.

[0126] motion Compensation, performed by the module 44 motion compensation, may involve fetching or generating the predictive block based on ve�Torah movement/disparately, a specific module 42 motion estimation/disparately. Again, the module 42 motion estimation/disparately and the module 44 motion compensation can be functionally integrated, in some examples. After receiving the motion vector for a PU of the current video unit 44 motion compensation may locate the predictive block to which the motion vector points in one of the lists of reference pictures.

[0127] the Adder 50 forms a residual video block by subtracting pixel values of the predictive block from pixel values of a current encoded video block, forming the pixel values of the difference as described below. In General, the module 42 motion estimation/disparately performs motion estimation relative to the brightness component, and the module 44 module uses the motion vector calculated on the basis of the brightness component as components for color saturation and brightness components. The module 40 of the mode selector may also generate syntax elements associated with the video blocks and the video clipping for use by video decoder 30 in decoding the video blocks of the video clippings.

[0128] the Module 46 internal predictions may internally to predict the current block, as an alternative to external prediction performed by the module 42 motion estimation/disparately and �oblem 44 motion compensation, as described above. In particular, the module 46 internal predictions can determine the mode of internal predictions to use when encoding the current block. In some examples, the module 46 internal prediction to encode the current block using various modes of internal predictions, for example, during a separate pass encoding, and the module 46 internal predictions (or module 40 mode selection in some examples) may select the appropriate mode of internal predictions for the use of the proven modes.

[0129] for Example, the module 46 internal predictions can calculate the value of "distortion - speed transmission, using the analysis of "distortion - speed transmission for variety of proven modes internal predictions, and selecting the mode of internal predictions, with the best characteristics is the warp - speed transmission"among the tested modes. Analysis of the distortion - transmission rate usually determines the amount of distortion (or error) between the coded block and the original unencoded block which has been encoded to form the encoded block, and the bit rate (i.e., number of bits) used to produce the encoded block. Module 46 internal predictions can calculate the relationship �W distortion and transmission speeds for different encoded blocks, to determine which mode of internal predictions shows the best value of the distortion - transmission rate for the unit.

[0130] After selecting the mode of internal predictions for the block module 46 internal predictions may provide information indicating the selected mode of internal predictions for the block module 56 entropy coding. Module 56 entropy encoding can encode information indicating the selected mode internal predictions. Video encoder 20 may include in the transmitted bitstream configuration data, which may include a plurality of tables index of the mode of internal predictions, and multiple tables of the modified index mode internal predictions (also called mapping table of code words), definitions of encoding contexts for various blocks, and indications of the most probable mode of internal predictions, tables, index, mode of internal predictions, and tables of the modified index of the mode of internal predictions to use for each of the contexts.

[0131] Video encoder 20 forms a residual video block by subtracting the data prediction module 40 mode selection from the original encoded video block. The adder 50 is a component or components that perform this operativity. Module 52 processing conversion applies a transform, such as discrete cosine transform (DCT) or a conceptually similar transform to the residual block, the forming of the video block containing the residual value of the conversion coefficient. Module 52 conversion processing may perform other transforms, which are conceptually similar to DCT. The wavelet transform, an integer transform, the frequency transform sub-bands or other types of transformations can also be used. In any case, the module 52 processing conversion applies a transform to the residual block, forming a block of residual transform coefficients. The transform may convert the residual information from the area of the pixel values to the field of conversion, such as frequency region.

[0132] the Module 52 of the conversion processing may send the resulting transform coefficients to the quantization module 54. The quantization module 54 quantum the transform coefficients to further reduce the frequency of repetition bits. The quantization process can reduce the bit depth associated with some or all of the coefficients. The degree of quantization may be modified by adjusting the quantization parameter. In some examples, the quantization module 54 m�may then perform a scan of the matrix, including the quantized transform coefficients. Alternatively, the module 56 entropy coding can scan.

[0133] After the quantization module 56 entropy coding entropy encode the quantized transform coefficients. For example, the module 56 entropy coding can perform a context-adaptive coding with variable length code (CAVLC), context-adaptive binary arithmetic coding (CABAC), syntax context-adaptive binary arithmetic coding (SBAC), entropy encoding of the division of interval probability (PIPE) or other entropy coding methods. In the case based on the context entropy coding context may be based on neighboring blocks. After the entropy encoding module 56 entropy coding the encoded bit stream can be transmitted to another device (e.g., video decoder 30) or archived for later transmission or retrieval.

[0134] the Module 58 of the inverse quantization and the inverse transform processing 60 apply inverse quantization and inverse transformation, respectively, to reconstruct the residual block in the pixel region, for example, for later use as a reference unit. Module 44 motion compensation�I can calculate the reference block, adding the residual block to a predictive block of one of the pictures from the memory 64 of the reference pictures. Module 44 motion compensation may also apply one or more interpolation filters to the restored residual block to calculate sub-integer pixel values for use in motion estimation. The adder 62 adds the restored residual block to the prediction block with offset by the movement produced by the module 44 motion compensation to form the reconstructed video block to be stored in memory 64 of the reference pictures. The reconstructed video block may be used by the module 42 motion estimation/disparately and module 44 motion compensation as a reference block to externally to encode a block in a subsequent picture.

[0135] Video encoder 20 may generate a number of syntax elements, as described above, which can be coded unit 56 entropy coding, or another unit of video encoder 20. In some examples, video encoder 20 may generate and encode syntax elements for the MVC bit stream, as described above.

[0136] As noted above, an ID may be included in the header of the NAL unit to identify species, to which the NAL unit belongs. Id types may basically increase the number of bits for the header NAL, which occupies a relatively large part of the bit stream. According to an aspect of the present disclosure, video encoder 20 may signal the ordinal index of the species as part of the header of the NAL unit. Thus, video encoder 20 may replace the id type, which can usually be signaled in the header of the NAL unit, the ordinal index of the view. The ordinal index of the view can describe the decoding order of the respective component unit type access. The ordinal index of the view can be used with a POC value or the value of the frame to identify the component type of the bit stream. Video encoder 20 may also generate SPS, which provides an indication of the relationship between id types for the species and a sequence of indexes of the species for the species. For example, video encoder 20 may generate a mapping table, which displays the values of view_id values in the ordinal index of the view, and to enable such a mapping table in SPS. In other examples, video encoder 20 may indicate the relationship between species id and sequence indexes of the form in an alternative way.

[0137] Video encoder 20 may also avoid encoding NAL unit prefix, which can typically be included immediately before the base form. Instead, video encoder 20 may signal temporal_id in the header of the NAL unit that can provide all in�ormolu, required for video decoder 30 to associate a specific component with a specific type and with an appropriate temporary location (for example, default index of basic order types, equal to zero). In some examples, video encoder 20 may add a flag to the header of the NAL unit basic types to specify whether a component of the form (this specific NAL units) to be used for the external prediction components of other types of bit stream.

[0138] According to an aspect of the present disclosure, video encoder 20 may signal the dependency types for each species common to all view components, regardless of whether components are designed for images with reference and pictures without binding components and belong to the species List 0 or List 1. In some examples, video encoder 20 may include an indication of the SPS, which identifies the various dependency types for images with reference and pictures without binding.

[0139] According to another aspect of the present disclosure, instead of signal priority_id in the header of the NAL unit, video encoder 20 may provide the values of priority_id in SPS. Thus, priority_id for each species with a certain time level can be signaled at the sequence level. In addition, according to aspects of the present disclosure, adaptation� with a single passage may be allowed, while the alarm context associated with adaptation, is known. In addition, video encoder 20 may signal information to the species level in SPS.

[0140] FIG. 3 is a block diagram illustrating an exemplary video decoder 30 that may implement the techniques described in this disclosure to decode the stream of bits of multiple species. In the example according to FIG. 3, video decoder 30 includes a module 80 entropy decoding module 81 predictions with the module 82 to the motion compensation module and 84 internal prediction module 86 of the inverse quantization module 88 inverse transformation, the adder 90 and memory 92 of the reference pictures.

[0141] During the decoding process of the video decoder 30 receives an encoded video bitstream that represents video blocks of an encoded video clippings and associated syntax elements from video encoder 20. The module 80 entropy decoding of video decoder 30 entropy decodes the bitstream to generate quantized coefficients, motion vectors and other syntax elements. The module 80 entropy decoding directs the motion vectors and other syntax elements to the module 81 predictions. Video decoder 30 may receive the syntax elements at the level of the video clippings and/or block level video.

[0142] for Example, the video decoder 0 can take a number of NAL units, having the header of the NAL unit that identifies the type of data stored in the NAL unit (e.g., data VCL and non-VCL data). Parameter sets may contain header information sequence level, such as SPS, PPS, or another set of options described above.

[0143] According to an aspect of the present disclosure, video decoder 30 may receive the serial index of the species as part of the header of the NAL unit. Thus, video decoder 30 may receive the sequence index, and not the id of the form, which can usually be signaled in the header of the NAL unit. The ordinal index of the view can describe the decoding order of the respective component unit type access. In addition, video decoder 30 may receive information indicating the relationship between the received sequence index type and corresponding IDs. This information may include, for example, a mapping table that maps values view_id, the values of the ordinal index of the view. In this way, video decoder 30 may simply take the value of the ordinal index of the view in the header of the NAL unit to determine view_id NAL unit using the mapping table. In some examples, the information relations may be taken at SPS. Video decoder 30 may also use the ordinal index of a POC value or the value of the frame (the frame number or frame_num), � ■ to identify the component type of the bit stream.

[0144] In some examples, according to aspects of the present disclosure, video decoder 30 may receive NAL units of a prefix that can typically be included immediately before the base form. Instead, video decoder 30 may receive temporal_id in the header of the NAL unit, which can provide all the information necessary for a video decoder 30, to associate a specific component with a specific type and with an appropriate temporary location (for example, the default index of basic order types is equal to zero). In some examples, video decoder 30 may receive a flag in the header of the NAL unit basic types to specify whether a component of the form (this specific NAL units) to be used for external predicting view components of other types of bit stream.

[0145] According to an aspect of the present disclosure, video decoder 30 may also receive dependency types for each species common to all view components, regardless of whether components are designed for images with reference and pictures without binding, and regardless of whether the component types included in List 0 or List 1. In some examples, video decoder 30 may receive an indication of the SPS, which identifies the various dependency types for images with reference and pictures without binding.

[0146] According to each�m the aspects of the present disclosure, instead of signal priority_id in the header of the NAL unit, video encoder 20 may provide the values of priority_id in SPS. In addition, according to aspects of the present disclosure, adaptation with a single pass may be permitted until the signal context associated with adaptation, is known. Video decoder 30 may also receive some information of the type level in SPS.

[0147] When the video clipping internally encoded as coded (I), the tenderloin, the module 84 internal prediction module 81 predictions can generate data predictions for a video block of the current video clippings on the basis of the signaled mode internal predictions and data from previously decoded blocks of the current picture. When the picture is coded externally coded (i.e., B, P or GPB) tenderloin, the module 84 internal prediction module 81 generates predictions predictive blocks for a video block of the current video clippings on the basis of the motion vectors and other syntax elements received from the module 80 entropy decoding. Predictive blocks can be produced from one of the reference pictures within one of the lists of reference pictures. Video decoder 30 may construct the list of reference pictures, List 0 and List 1 (or a combined list, List c) using the methods of constructing default�NIJ, on the basis of the reference pictures stored in the memory 92 of the reference pictures.

[0148] the Module 82 motion compensation determines prediction information for a video block of the current video clippings, syntactically analyzing the motion vectors and other syntax elements, and uses the prediction information to generate predictive blocks for the current video decoded block. For example, the module 82 motion compensation uses some of the received syntax elements to determine a prediction mode (e.g., internal or external prediction) used to code video blocks of video clippings, the type of external clippings predictions (for example, B tenderloin, sirloin, or tenderloin GPB), the information to build one or more lists of reference pictures for clippings, motion vectors for each externally encoded video block of the tenderloin, the status of the external predictions for each externally encoded video block of the tenderloin, and other information to decode the video blocks in the current video clipping.

[0149] the Module 86 inverse quantization returning quantum, that is, decanted, the quantized transform coefficients provided in the bitstream and decoded by the module 80 entropy decoding. The process of the inverse quantization may include the use of the Kwan�hardware, calculated video encoder 20 for each video block in the video clipping to determine a degree of quantization and, likewise, a degree of inverse quantization that should be applied.

[0150] the Module 88 processing inverse transformation applies the inverse transform, e.g., an inverse DCT, an inverse integer transform, or a conceptually similar inverse transformation process, to the transform coefficients to generate residual blocks in the pixel region. According to an aspect of the present disclosure, the module 88 processing of the inverse transform may specify the way in which transformations were applied to the residual data. Thus, for example, the module 88 processing inverse transformation can ask Rqt extension, which is the way in which the transform (e.g., DCT, integer transform, wavelet transform, or one or more other transformations), were applied to the residual samples brightness and residual samples color saturation associated with the block of received video data.

[0151] After the module 82 motion compensation generates the predictive block for the current video block based on the motion vectors and other syntax elements, video decoder 30 forms a decoded video block by summing the residual blocks �t module 88 processing of the inverse transform with the corresponding predictive blocks generated by the module 82 motion compensation. The adder 90 is a component or components that perform this operation totalize. If desired, the deblocking filter can also be applied to filter the decoded blocks to remove blockiness artifacts. Other contour filters (or in the contour encoding or after encoding circuit) can also be used to smooth pixel transitions, or otherwise improve the quality of the video. The decoded video blocks in a given picture is then stored in the memory 92 of the reference pictures, which stores reference pictures used for subsequent motion compensation. The memory 92 of the reference images also stores the decoded video for later presentation on the display device such as display device 32 of FIG. 1.

[0152] FIG. 4 is a conceptual diagram illustrating an example template of MVC prediction. In the example according to FIG. 4 is illustrated with eight species, and twelve temporary locations are illustrated for each species. In General, each row in Fig. 4 corresponds to mind, while each column indicates a temporary location. Each type can be identified using the ID ("view_id"), which may be used to indicate relative�th location of the camera relative to the other species. In the example shown in Fig. 4, the identifiers of the form labeled “S0”-“S7”, although can also be used as numeric types. In addition, each temporary locations can be identified using the value of the count procedure pictures (POC) that indicates a display order of pictures. In the example shown in Fig. 4, the values of POC designated as “T0”-"T11".

[0153] Although MVC has a so-called base view, which is decoded by decoders H. 264/AVC, and a pair of stereo types can be supported by MVC, MVC can support more than two views as a 3D input video. Accordingly, the playback module of the client with the MVC decoder may expect 3D video content with multiple views.

[0154] the Symbols in Fig. 4 indicated using a dashed block, which includes a symbol indicating whether the corresponding coded picture internally (i.e., I-frame), or externally coded in the same direction (i.e., as P-frame) or in multiple directions (i.e., B-frame). In General, predictions are indicated by arrows, where the specified picture uses the indication from the object to reference predictions. For example, P-frame of view S2 at temporal location T0 is predicted from the I-frame of view S0 at temporal location T0. Each of the pictures shown nafig. 4, may be referred to as the view component. Therefore, the component type for the species corresponding to a particular temporal instance of the view.

[0155] As with the encoding of a single video, pictures of a video sequence with multiple species can be encoded with the prediction with regard to pictures at different temporal locations. For example, a b-frame of view S0 at temporal location T1 has an arrow pointing to it from the I-frame of view S0 at temporal location T0, indicating that b-frame is predicted from the I-frame. Additionally, however, in the context of video coding with multiple views of the image can be predicted between species. Thus, the view component can use the components view in other types for reference. In MVC, for example, is implemented prediction between views, as if the view component in another form, the link is external predictions. Potential links between species can be signaled in the SPS MVC extension and can be changed by the process of constructing the list of reference pictures, which provides a flexible procedure for the external prediction or links of prediction between views.

[0156] FIG. 4 provides various examples of predictions between species. Pictures of the species S1, in the example according to FIG. 4, illustrated as predicted from pictures in different time�military locations of the species S1, as predicted between species from images for pictures of types S0 and S2 at the same temporal locations. For example, a b-frame type S1 in a temporary location T1 predicted from each of the B frames of the form S1 in temporary locations T0 and T2, as well as b-frames of types S0 and S2 in a temporary location T1.

[0157] In the example according to FIG. 4, the capital letter “B” and lowercase “b” are intended to indicate the various hierarchical relationships between the pictures and not the various methodologies of coding. In General personnel with a capital letter “B” are relatively higher in the hierarchy predictions than frames with lower case letters “b”. FIG. 4 also illustrates the changes in the hierarchy of predictions using different levels of shading, where a greater degree of shading (i.e., relatively darker) images is higher in the hierarchy predictions than images with less shading (i.e., relatively lighter). For example, all I-frames in Fig. 4 is illustrated with a fill pattern, while P-frames have a slightly lighter shading, and B-frames (and b-frames with lower case letters) have different levels of shading relative to each other, but always lighter than the shading of P-frames and I-frames.

[0158] In General, the hierarchy of predictions relates to the sequence indexes of the form in which pictures of�relatively higher in the hierarchy predictions must be decoded before than the decoded images, which are relatively lower in the hierarchy, so that these images are relatively higher in the hierarchy can be used as reference pictures during decoding of images is relatively lower in the hierarchy. The sequence index is the index that specifies the order of decoding view components in the access unit. Ordinal indices of the species can be implied in the set of parameters, such as SPS.

[0159] In this way pictures used as reference pictures may be decoded before the decoded pictures that are encoded with reference to the reference pictures. The sequence index is the index that specifies the order of decoding view components in the access unit. According to the MVC/AVC, for each sequence index i species is indicated corresponding to view_id. Decoding view components should be ascending order of sequence indices. If all views are represented, the set of ordinal indices of the form contains a sequentially ordered set from zero to less than the full number of species.

[0160] In some cases, a subset of the entire bit stream can be extracted to form a stream of bits, which still corresponds to MVC. There are many possible substreams b�Ltd, which a particular application may require, based on, for example, services provided by the server, capacity, support, and opportunities decoders to one or more clients, and/or a preference for one or more clients. For example, a client may require only three types, and can be two scenarios. In one example, one client may require the perception of a smooth view and may prefer views with view_id values S0, S1, and S2, while another client may require scalability types and prefer the views with view_id values S0, S2, and S4. Both of these substreams of bits can be decoded as an independent bitstreams MVC and can be supported simultaneously.

[0161] In General, the camera position, orientation and geometric relation between different types can be logically derived from the ID of the Form or Ordinal index of the view. With this aim and the intrinsic and extrinsic camera parameters can be included in the bit stream, using the SEI message information receiving multiple types.

[0162] while FIG. 4 shows eight types (S0-S7), as noted above, the MVC/AVC supports up to 1024 types and uses view_id in the header of the NAL unit to identify species, to which the NAL unit belongs. According to an aspect of the present disclosure, the sequence index may be signaled as part Zago�ovca NAL units. Thus, in order to compare the ordinal index of the species can replace view_id, which is signaled in the header of the NAL unit extension MVC/AVC. Order types usually describes the order of species in the access unit, and a sequence index type identifies the specific type of right types of unit access. Thus, the ordinal index of the view describes the decoding order of the respective component unit type access.

[0163] Accordingly, according to aspects of the present disclosure, SPS can provide the relationship between view_ids for species and sequence indexes of the species for the species. Using the ordinal index of the view and the data in SPS, video encoder 20 and video decoder 30 may be replaced by the 10-bit view_id in the MVC/AVC in the header of the NAL unit sequence index type, which can result in saving of bits in comparison with the scheme of MVC/AVC.

[0164] Example SPS, which provides the ratio between view_ids for kinds of indexes and a sequence of the form given in Table 6 below:

Table 6
The MVC EXTENSION parameter SET SEQUENCE
seq_parameter_set_mvc_extension(){CDescriptor
num_views_minus1 0ue(v)
for(i=0; i<= num_views_minus1; i++){
view_id[i]0ue(v)
view_level[i]0ue(v)
}
for(i=1; i<= num_views_minus1; i++){
num_ref_views[i]0ue(v)
for(j=0; j<num_ref_views[i]; j++)
ref_view_idx[i][j]0ue(v)
}
num_level_values_signalled_minus10ue(v)
for(i=0; i<=num_level_values_signalled_minus1; i++){
level_idc[i]0u(8)
num_applicable_ops_minus1[i] 0ue(v)
for(j=0; j<=num_applicable_ops_minus1[i]; j++){
applicable_op_temporal_id[i][j]0u(3)
applicable_op_num_target_views_minus1[i][j]0ue(v)
for(k=0; k<= applicable_op_num_target_views_minus1[i][j]; k++)
applicable_op_target_view_idx[i][j][k]0ue(v)
applicable_op_num_views_minus1[i][j]0ue(v)
}
}
}

[0165] In the example shown in Table 6 in bold and italic syntax elements indicate deviations from the syntax of the SPS MVC/AVC, that is, modifications on the syntax of SPS MVC/AVC. For example, SPS, shown in Table 6, specifies dependency relationships between species for shkodrov�the restored video sequence. SPS also sets the level value for a subset of the operating points of the encoded video sequence. All SPS referenced by means of a coded video sequence must be identical. However, some species identified by view_id [i] may not be present in this coded video sequence. In addition, some species or temporal subsets described by SPS, can be removed from the original encoded video sequence, and thus, may not be present in the coded video sequence. Information in SPS, however, can always be applied to the remaining species and temporal subsets.

[0166] In Table 6 above, the element num_views_minus1 plus 1 can specify the maximum number of coded views in the coded video sequence. The value num_view_minus1 may be in the range from 0 to 31, inclusive. In some cases the actual number of views in the coded video sequence may be less than num_views_minus1 plus 1. Element view_id [i] may specify an ID for the species with sequence index type equal to i. Item view_level [i] can ask view_level species with sequence index type equal to i. In some examples, all components with view_level until a pre-determined value (VL) may be decode mode�trolled without decoding component with view_level greater than VL.

[0167] According to an aspect of the present disclosure, the element num_ref_views [i] may specify the number of view components for predictions between species on the initial list of reference pictures RefPicList0 and RefPicList1 in decoding view components with ordinal index of the view equal to i. The value of the item num_ref_views [i] may not be greater than Min(15, num_views_minus1). The value num_ref_views [0] may be equal to 0. In addition, according to aspects of the present disclosure, the element ref_view_idx [i] [j] may specify an ordinal index of the view of the j-th component species for predicting between species on the initial list of reference pictures RefPicList0 and RefPicList1 in decoding component types with ordinal index of the view equal to i. The value ref_view_idx [i] [j] may be in the range from 0 to 31, inclusive.

[0168] Accordingly, in various aspects of the present disclosure according to types for images with reference and pictures without binding may no longer be required to be separately supported and signaled. Thus, video encoder 20 and/or video encoder 30 may use only a list of reference pictures (or maintain two lists of reference pictures, List 0 and List 1) for images with reference and pictures without reference similarly. Thus, as shown in Table 6 above, a separate alarm system is not required to specify the dependency types to video decoder 30. Instead �that SPS includes ref_view_idx, which can be used to build and the List 0 and List 1 for view components.

[0169] According to such an aspect of the present disclosure, for example, video decoder 30 may receive for any component type, the first type information of the reference view indicating one or more reference views for predicting view components of the first type. Thus, video decoder 30 may receive the reference view information indicating dependency types for images with reference types and pictures without binding type similarly. When decoding a specific picture (access unit) of a particular type then video decoder 30 may include supporting candidates (for example, components of the species from which a particular picture can be predicted from the same access unit as a specific picture from a reference species, indicated by the reference information. In some cases, video decoder 30 may add the reference of candidates to the list of reference pictures of each reference type, so the number of reference candidates is equal to the number of reference species. In addition, video decoder 30 may add support for the candidates or List 1, List 0, or both. Video decoder 30 may then decode a particular image on the basis of one of the reference pictures in the reference list of symbols.

[0170] furthermore, according to Table 6 the dependent�th between species for view components without binding may no longer be signaled in the SPS as a subset of the dependencies between views for view components with the binding. Instead, the view component the view of the binding can be predicted from more than one other type, such as type 3 and 4, and the binding may be predicted from pictures of the type 3 and type 4. If additional restrictions based types is desirable for images without binding, such a restriction may be provided in additional signaling, such as an SEI message.

[0171] the Element num_level_values_signalled_minus1 plus 1 can set the number of values level, signalled for the coded video sequence. The value num_level_values_signalled_minus1 may be in the range from 0 to 63, inclusive. Element level_idc [i] may specify the i-th level value, signalled for the coded video sequence. Item num_applicable_ops_minus1 [i] plus 1 can specify the number of operation points to which the level indicated by level_idc [i] applies. The value of the item num_applicable_ops_minus1 [i] may be in the range from 0 to 1023, inclusive. Item applicable_op_temporal_id [i] [j] may specify temporal_id for the j-th operating point to which the level indicated by level_idc [i] applies. Item applicable_op_num_target_views_minus1 [i] [j] plus 1 can set the number of target species o for the j-th operating point to which the level indicated by level_idc [i] applies. The value of the item applicable_op_num_target_views_minus1 [i] [j] can�t be in the range from 0 to 1023, inclusive.

[0172] the Element applicable_op_target_view_idx [i] [j] [k] may specify an ordinal index of the view of the k-th target species o for the j-th operating point to which the level indicated by level_idc [i] applies. The value of the item applicable_op_target_view_idx [i] [j] [k] may be in the range from 0 to 31, inclusive. applicable_op_num_views_minus1 [i] [j] plus 1 can set the number of views required for decoding the target output types, corresponding to the j-th operating point to which the level indicated by level_idc [i] applies. The number of species identified through applicable_op_num_views_minus1, may include the target species and the species from which the target species o depend, as determined by the process of extracting the substream bits.

[0173] In another example, according to aspects of the present disclosure, the value ref_view_idx [i] [j] may be required to be smaller than i, based on the decoding order of the components view in the same moment of time.

[0174] ref_view_idx [i] [j] may be further reduced in size (for an additional savings of bits compared to the MVC/AVC). For example, an additional saving of bits can be achieved in the MVC stream that includes only two species (i.e., for stereo video). In this example, the sequence index type may not be necessary since the video decoder 30 may decode the first type (for example, vid) to decode the second type (for example, view 1). Example, reduced SPS provided in Table 7 below:

Table 7
The MVC EXTENSION of the PARAMETER SET SEQUENCE
seq_parameter_set_mvc_extension(){CDescriptor
...0ue(v)
for(i=1; i<= num_views_minus1; i++){
num_ref_views[i]0ue(v)
for(j=0; j<num_ref_views[i]; j++)
ref_view_idx_diff_minus1[i][j]0ue(v)
...

[0175] In the example shown in Table 7, the element ref_view_idx_diff_minus1 [i] [j] plus i+1 can specify an ordinal index of the view of the j-th component species for predicting between species on the initial list of reference pictures RefPicList0 and RefPicList1 in decoding component types with ordinal index of the view equal to i. The value of the item ref_view_idx_diff_minus1 i] [j] may be in the range 0 to 30-i, inclusive.

[0176] Other examples are also possible. For example, instead of the signal dependence of species in SPS (as in the examples shown in Tables 6 and 7 above), the dependence of species may be signaled in the PPS. In another example, the dependence of species may be signaled in the SPS, and the dependence of species may be further signaled in the PPS, which is located in the area according to the type declared in the parameter set sequence. For example, in SPS, the dependent view (e.g., view 2) may be signaled as being dependent on the type 0 and type 1, while in PPS dependent view (e.g., view 2) may be signaled as soon as which is dependent upon the kind 0.

[0177] According to some aspects of the present disclosure, the list of reference pictures and the reordering can be modified in comparison with the MVC/AVC. For example, according to aspects of the present disclosure index (view_idx) of the form described above, can be used when you build the list of reference pictures and/or reordering. Sample syntax modifications MVC list of reference symbols given in Tables 8 and 9 below:

2
Table 8
Modification of the LIST of REFERENCE SYMBOLS MVC
ref_pic_list_mvc_modification(){CDescriptor
if(slice_type % 5 !=2 && slice_type% 5 !=4){
ref_pic_list_modification_flag_l02u(1)
f(ref_pic_list_modification_flag_l0)
do{
modification_of_pic_nums_idc2ue(v)
if(modification_of_pic_nums_idc= =0 ||modification_of_pic_nums_idc==1)
abs_diff_pic_num_minus12ue(v)
else if(modification_of_pic_nums_idc = = 2)
long_term_pic_num2ue(v)
else if (modification_of_pic_nums_idc= =4 ||modification_of_pic_nums_idc= =5)
abs_diff_view_idx_minus12ue(v)
}while(modification_of_pic_nums_idc!=3)
}
if(slice_type % 5= =1){
ref_pic_list_modification_flag_l12u(1)
if(ref_pic_list_modification_flag_l1)
do{
modification_of_pic_nums_idc2ue(v)
if(modification_of_pic_nums_idc== 0 ||modification_of_pic_nums_idc = = 1)
abs_diff_pic_num_minus12ue(v)
else if(modification_of_pic_nums_idc = = 2)
long_term_pic_num2ue(v)
else if (modification_of_pic_nums_idc= =4 ||modification_of_pic_nums_idc = = 5)
abs_diff_inter_view_minus1ue(v)
}while(modification_of_pic_nums_idc !=3)
}
}

Table 9
Modification of the LIST of REFERENCE SYMBOLS MVC
modification_of_pic_nums_idcModification specified
4abs_diff_inter_view_minus1 presented and corresponds to a difference to subtract from the value of the prediction reference index between types
5abs_diff_inter_view_minus1 presented and corresponds to the difference to sum to the value of the prediction reference index between types

[0178] In Tables 8 and 9 element modification_of_pic_nums_idc together with abs_diff_pic_num_minus1, long_term_pic_num, or abs_diff_view_idx_minus1 can specify which of the reference pictures or reference components only between species are pereotrazheniya. For example, the element abs_diff_view_idx_minus1 plus 1 can specify the absolute difference between the reference index between VI�AMI, to put to the current index in the list of reference pictures and value of the prediction reference index between species.

[0179] In another example, according to aspects of the present disclosure, inter_view_index reference links between species can be directly signaled. This syntax modifications MVC list of reference symbols given in Tables 10 and 11 below:

Table 10
Modification of the LIST of REFERENCE SYMBOLS MVC
ref_pic_list_mvc_modification(){CDescriptor
if(slice_type % 5 !=2 && slice_type % 5 !=4){
ref_pic_list_modification_flag_l02u(1)
if(ref_pic_list_modification_flag_l0)
do{
modification_of_pic_nums_idc2ue(v)
if(modification_of_pic_nums_idc= =0||modification_of_pic_nums_idc= =1)abs_diff_pic_num_minus12ue(v)
else if(modification_of_pic_nums_idc= =2)
long_term_pic_num2ue(v)
else if (modification_of_pic_nums_idc= =4)
inter_view_index2ue(v)
}while(modification_of_pic_nums_idc !=3)
}
if(slice_type % 5= =1){
ref_pic_list_modification_flag_l12u(1)
if(ref_pic_list_modification_flag_l1)
do{
modification_of_pic_nums_idc2ue(v)
if(modification_of_pic_nums_idc==0|modification_of_pic_nums_idc= =1)
abs_diff_pic_num_minus12ue(v)
else if(modification_of_pic_nums_idc= =2)
long_term_pic_num2ue(v)
else if (modification_of_pic_nums_idc= =4)
inter_view_index2ue(v)
}while(modification_of_pic_nums_idc !=3)
}
}

Table 11
Modification of the LIST of REFERENCE SYMBOLS MVC
modification_of_pic_nums_idcModification specified
4inter_view_index presented and corresponds to a difference to subtract from the value of R�Azania reference index between types

[0180] In Tables 10 and 11 the reference picture among species can be identified by inter_view_index as follows:

VOIdx=ref_view_idx[CurrVOIdx][inter_view_index]

where CurrVOIdx is the ordinal index of the current component type. Given the value of the POC of the current picture POC and VOIdx can be used to identify reference pictures between species.

[0181] In some examples, the MVC decoding process to build the list of reference symbols may be called at the beginning of the decoding process for each P, SP, or B clippings. During the invocation of this process, only the reference pictures having the same value view_idx as the current clippings can be considered. The decoded reference picture may be marked as "used for short-term reference" or " used for long-term reference." Short-term reference pictures may be identified by the values of frame_num and view_idx, and, for reference pictures between species - in addition PicOrderCnt (). Long-term reference pictures can be assigned a long-term frame index and the identified values of long-term frame index, view_idx, and, for reference pictures between species, extra - PicOrderCnt ().

[0182] In addition to reference pictures of the reference components only between species (which may be unsampled images, and may not be OTM�obtained during the marking process of reference pictures), can also be included in the list of reference pictures. Only reference components among species can be identified by the value view_idx and PicOrderCnt ().

[0183] During the call process of building a list of reference pictures following the process identified in MVC/AVC (8.2.4.1, can be caused to set:

* the assignment of variables FrameNum, FrameNumWrap, and PicNum to each of the short-term reference pictures, and

* assign variable LongTermPicNum each long-term reference pictures.

[0184] Reference picture, and when present, only reference components among species are addressed using reference indices. The reference index is an index into the list of reference pictures. When decoding a P or SP clippings, there is a single list of reference symbols RefPicList0. When decoding clippings B, there is a second independent reference list of pictures RefPicList1 in addition to RefPicList0.

[0185] At the beginning of the decoding process for each cutting the list of reference pictures RefPicList0, and for scrapbooks B - RefPicList1 may be obtained as specified by the following ordered steps:

1. An initial list of reference symbols RefPicList0 and for scrapbooks B - RefPicList1 receive as specified in subclause 8.2.4.2 MVC/AVC.

2. Reference pictures between species or only reference components among species attached to the initial list of reference symbols RefPicList0 and for in�harsh B RefPicList1, as defined in sub-clause 6.4.1 (set forth below).

3. When ref_pic_list_modification_flag_l0 equal to 1 or, when decoding clippings B, ref_pic_list_modification_flag_l1 equal to 1, the list of reference pictures RefPicList0 and for scrapbooks (B RefPicList1 is modified as defined in subclause 6.4.2 (set forth below).

[0186] in addition, the number of entries in the modified reference list of pictures RefPicList0 is equal to num_ref_idx_l0_active_minus1 + 1, and for scrapbooks B the number of entries in the modified reference list of pictures, RefPicList1, num_ref_idx_l1_active_minus1 + 1. Reference picture or reference only component between species may appear in more than one index in the modified lists of reference pictures RefPicList0 or RefPicList1.

[0187] At the time of invocation of the process specified in subclause 6.4.1, may not exist, the link prediction between species attached to RefPicListX (with X equal to 0 or 1). However, the link prediction between species that does not exist, may not be modified in RefPicListX after invoking the process specified in subclause 6.4.2 (set forth below).

[0188] In one example, subparagraph 6.4.1 set forth below, which includes the initialization process for the list of reference pictures for links predictions between species:

* Inputs to this process are a list of the reference picture RefPicListX (with X equal to 0 or 1), inter_view_flag and information based vido�, which was decoded from seq_parameter_set_mvc_extension ().

* The output of this process is possibly modified list of the reference picture RefPicListX, which is still referred to as the intial list of the reference picture RefPicListX.

* When i, being the value of view_idx for current clippings, reference symbols between species and only reference components among species join the list of reference images, as defined below:

* For each value of the reference index between species j from 0 to num_ref_views [i] − 1, inclusive, in ascending order of j, link prediction between species with view_idx equal ref_view_idx [i] [j] from the same access unit as the current clipping, is appended to RefPicListX.

[0189] In one example, the sub-item 6.4.2 set forth below, which includes a modification process for reference lists of pictures:

* The input to this process is a list of the reference picture RefPicList0 and decoding clippings B, a list of reference pictures RefPicList1.

* The output of this process are a possibly modified reference list of pictures RefPicList0 and decoding clippings B, also possibly modified list of reference symbols RefPicList1.

* When ref_pic_list_modification_flag_l0 equal to 1, are specified by the following ordered steps:

1. Let refIdxL0 is the index for the list of reference pictures RefPicList0. He originally�flax set equal to 0.

2. Relevant elements modification_of_pic_nums_idc syntax is processed in the order in which they occur in the bitstream. For each of these syntax elements, the following applies:

- If modification_of_pic_nums_idc is equal to 0 or equal to 1, the process specified in subclause 6.4.2.1 (set forth below) is invoked with RefPicList0 and refIdxL0, specified as entered, and the output is assigned to RefPicList0 and refIdxL0.

- Otherwise, if modification_of_pic_nums_idc is equal to 2, the process specified in subclause 6.4.2.2 (set forth below) is invoked with RefPicList0 and refIdxL0, specified as entered, and the output is assigned to RefPicList0 and refIdxL0.

- Otherwise, if modification_of_pic_nums_idc is equal to 4 or equal to 5, the process specified in subclause 6.4.2.3 (set forth below) is invoked with RefPicList0 and refIdxL0, specified as entered, and the output is assigned to RefPicList0 and refIdxL0.

- Otherwise (modification_of_pic_nums_idc is equal to 3), the modification process for the list of reference pictures RefPicList0 ends.

* When ref_pic_list_modification_flag_l1 equal to 1, the following ordered steps are specified:

1. Let refIdxL1 is the index for the list of reference pictures RefPicList1. He initially set equal to 0.

2. The corresponding syntax elements modification_of_pic_nums_idc is processed in the order in which they occur in the bitstream. For each of these syntax elements, the following applies.

- If modification_of_pic_nums_idc is equal to 0 or equal to 1, the process opredelennym subclause 6.4.2.1 (set forth below), is invoked with RefPicList1 and refIdxL1 given as entered, and the output is assigned to RefPicList1 and refIdxL1.

- Otherwise, if modification_of_pic_nums_idc is equal to 2, the process specified in subclause 6.4.2.2 (set forth below) is invoked with RefPicList1 and refIdxL1 given as entered, and the output is assigned to RefPicList1 and refIdxL1.

- Otherwise, if modification_of_pic_nums_idc is equal to 4 or equal to 5, the process specified in subclause 6.4.2.3 (set forth below) is invoked with RefPicList1 and refIdxL1 given as entered, and the output is assigned to RefPicList1 and refIdxL1.

- Otherwise (modification_of_pic_nums_idc is equal to 3), the modification process for the list of reference pictures RefPicList1 ends.

[0190] In the example, the sub-paragraph 6.4.2.1 set forth below, which includes the process of modifying the list of reference pictures for short-term reference pictures for external predictions:

* Inputs to this process are the index refIdxLX and a list of the reference picture RefPicListX (with X equal to 0 or 1).

* The output of this process are increased index refIdxLX, and a revised list of the reference picture RefPicListX.

- variable picNumLXNoWrap obtained as follows:

- If modification_of_pic_nums_idc is equal to 0,

if (picNumLXPred−(abs_diff_pic_num_minus1+1)<0)

picNumLXNoWrap=picNumLXPred−(abs_diff_pic_num_minus1+1) +MaxPicNum (h-1)

else

picNumLXNoWrap=picNumLXPred−(abs_diff_pic_num_minus1+1)

- Otherwise (modification_of_pic_nums_idc is equal to 1),

if (picNumLXPred+(abs_diff_pic_num_minus1+1)>=MaxPicNum)

picNumLXNoWrap=picNumLXPred+(abs_diff_pic_nm_minus1+1)− MaxPicNum (h-2)

else

picNumLXNoWrap=picNumLXPred+(abs_diff_pic_num_minus1+1)

where picNumLXPred is the value of the predictions for variable picNumLXNoWrap. When the process specified in this subclause is invoked the first time for cutting (i.e., the first occurrence modification_of_pic_nums_idc is equal to 0 or 1 in the syntax ref_pic_list_modification ()), picNumL0Pred and picNumL1Pred initially shall equal CurrPicNum. After each assignment picNumLXNoWrap value picNumLXNoWrap is appointed for picNumLXPred.

[0191] In some examples, the variable picNumLX is obtained, as defined by the following pseudocode:

if (picNumLXNoWrap>CurrPicNum)

picNumLX=picNumLXNoWrap-MaxPicNum (h-3)

else

picNumLX=picNumLXNoWrap

where picNumLX can be equal to the PicNum of a reference picture that is marked as "used for short-term reference" and may not be equal to the PicNum of the short-term reference picture that is marked as "non-existent". The following process may be performed to place the picture with the room picNumLX short-term pictures in the position of the index refIdxLX, shift the position of any other remaining pictures to later in the list, and increment the value of refIdxLX:

for(cIdx=num_ref_idx_lX_active_minus1+1; cIdx > refIdxLX; cIdx − −)

RefPicListX[cIdx]=RefPicListX [cIdx−1]

RefPicListX[refIdxLX ++]=short-term reference picture with PicNum equal to picNumLX

nIdx=refIdxLX

for(cIdx=refIdxLX; cIdx < = num_ref_idx_lX_active_minus1+1; cIdx ++) (h-4)

if(PicNumF (RefPicListX [cIdx])!=picNumLX | | viewIDX (RefPicListX [cIdx])! = currViewIDX)

RefPicListX [nIdx ++]=RefPicListX cIdx]

where the function viewIDX (refpic) returns view_idx reference picture refpic, the variable currViewIDX equal view_idx current clippings, and function PicNumF (RefPicListX [cIdx]) is derived as follows:

- If the reference picture RefPicListX [cIdx] is marked as "used for short-term reference", PicNumF (RefPicListX [cIdx]) is equal to the PicNum of the picture RefPicListX [cIdx].

- Otherwise (the reference picture RefPicListX [cIdx] is not marked as "used for short-term reference"), PicNumF (RefPicListX [cIdx]) is equal MaxPicNum.

[0192] In one example, the sub-paragraph 6.4.2.2 set forth below, which includes the process of modifying the list of reference pictures for long-term reference pictures for external predictions:

* Inputs to this process are the index refIdxLX (with X equal to 0 or 1) and a list of the reference picture RefPicListX.

* The output of this process are increased index refIdxLX, and a revised list of the reference picture RefPicListX.

* The following procedure is conducted to place the picture with the long room pictures long_term_pic_num in the position of the index refIdxLX, shift the position of any other remaining pictures to later in the list, and increment the value of refIdxLX:

for(cIdx=num_ref_idx_lX_active_minus1+1; cIdx > refIdxLX; cIdx − −)

RefPicListX [cIdx]=RefPicListX [cIdx−1]

RefPicListX [refIdxLX ++]=long-term reference picture with LongTermPicNum equal to long_term_pic_num

nIdx=refIdxLX

for(cIdx=refIdxLX; cIdx < = num_ref_idx_lX_active_minus1+1; cIdx ++) (h-5)

if(LongTermPicNumF (RefPicListX [cIdx])!= long_term_pic_num | |

viewIDX (RefPicListX [cIdx])! = currViewIDX)

RefPicListX [nIdx ++]=RefPicListX [cIdx]

where the function viewIDX (refpic) returns view_idx reference picture refpic, the variable currViewIDX equal view_idx current clippings, and function LongTermPicNumF (RefPicListX [cIdx]) can be obtained as follows:

* If the reference picture RefPicListX [cIdx] is marked as "used for long-term reference", LongTermPicNumF (RefPicListX [cIdx]) is equal to LongTermPicNum of the picture RefPicListX [cIdx].

* Otherwise (the reference picture RefPicListX [cIdx] is not marked as "used for long-term reference"), LongTermPicNumF (RefPicListX [cIdx]) is equal to 2 * (MaxLongTermFrameIdx + 1).

[0193] In the example, the sub-paragraph 6.4.2.3 set forth below, which includes the process of modifying the list of reference pictures for reference links predictions between species:

* Inputs to this process are a list of the reference picture RefPicListX (with X equal to 0 or 1) and the index refIdxLX in this list.

* The output of this process is a modified list of the reference picture RefPicListX (with X equal to 0 or 1) and increased index refIdxLX.

* Let currVOIdx is variable VOIdx of the current clippings. Variable maxViewIdx set to num_ref_views [currVOIdx].

* Variable picInterViewIdxLX obtained as follows:

* If modification_of_pic_nums_idc is equal to 4,

if (picInterViewIdxLXPred − (abs_diff_inter_view_minus1 + 1) <0) picInterViewIdxLX=picInterViewIdxLXPred − (abs_diff_inter_view_ minus1+1) + maxViewIdx (h-6)

else

picInterViewIdxLX=picInterViewIdxLXPred − (abs_diff_inter_view_minus1 +1)

* Otherwise (modification_f_pic_nums_idc is 5),

if (picInterViewIdxLXPred+(abs_diff_inter_view_minus1 + 1)> = maxViewIdx)

picInterViewIdxLX=picInterViewIdxLXPred+(abs_diff_inter_view_ minus1 + 1) − maxViewIdx (h-7)

else

picInterViewIdxLX=picInterViewIdxLXPred+(abs_diff_inter_view_minus1 + 1)

where picInterViewIdxLXPred - value predictions for variable picInterViewIdxLX. When the process specified in this subclause is invoked the first time for RefPicList0 or RefPicList1 clippings (i.e., the first occurrence modification_of_pic_nums_idc is equal to 4 or 5 in the syntax ref_pic_list_modification ()), picInterViewIdxL0Pred and picInterViewIdxL1Pred may be initially set equal to -1. After each assignment picInterViewIdxLX value picInterViewIdxLX assigned to picInterViewIdxLXPred.

[0194] the bit Stream may not contain data that result in picInterViewIdxLX equal to less than 0, or picInterViewIdxLX, more than maxViewIdx. Variable targetViewIDX can be obtained as follows:

targetViewIDX=ref_view_idx [currVOIdx] [picInterViewIdxLX] (h-8)

[0195] the Following procedure may be performed to place the link prediction between species with a reference index between species, equal picInterViewIdxLX, to index position refIdxLX, and to shift the position of any other remaining pictures to later in the list:

for (cIdx=num_ref_idx_lX_active_minus1+1; cIdx > refIdxLX; cIdx − −)

RefPicListX [cIdx]=RefPicListX [cIdx − 1]

RefPicListX [refIdxLX ++] = link prediction between species with view_idx equal targetViewIDX

nIdx=refIdxLX

for (cIdx=refIdxLX; cIdx < = num_ref_idx_lX_active_minus1 + 1; cIdx ++) (H-10)

if (viewIDX (RefPicListX [cIdx])! = targetViewIDX | | PicturerderCnt (RefPicListX [cIdx])! = currPOC)

RefPicListX [nIdx ++] = RefPicListX [cIdx]

where the function viewIDX (refpic) returns view_idx reference picture refpic, the variable currViewIDX equal view_idx current clippings, and variable currPOC equal to PicOrderCnt () of the current clippings.

[0196] In some examples, the default process can be used for combining the lists of reference pictures. For example, the process of combining the list of reference images by default may include verification, if the reference picture (or from RefPicList0 or RefPicList1) is the first appearance of the reference image, which is added to the combined list. To perform such a test, a video coder (such as video encoder 20 or video decoder 30) may compare the current picture CurrPic and any PicA picture list including the reference picture between species and temporal reference pictures. The comparison can be made as follows.

if (ViewIDX (CurrPic)== ViewIDX (PicA) && POC (CurrPic)== POC (PicA))

return true;

else

return false;

[0197] FIG. 5A is a conceptual diagram illustrating an example structure of the bit stream 100, which can be used to implement one or more methods of the present disclosure. The bit stream 100 may correspond to a video coding standard, such as HEVC standard. In addition, in some examples, the bit stream 100 may correspond to the MVC extension to the standard of video encoding.

[0198] In p�the imera, shown in Fig. 5A, the flow 100 bits includes a plurality of access units 102-1 to 102-N (collectively, the access unit 102). As noted above, the access unit 102 may include a sequence of view components (referred to as "types"), such as the types 104-1 - 104m (collectively, the 104 species). In General, the access unit 102 include all data to a common time point, for example, data for one component type for each species. In some examples, each access unit of the access units 102 includes the same number of species 104. Decoding each unit of access from access units 102 may cause one decoded picture for each species. The access unit 102 may contain encoded video data that can be used to play three-dimensional video playback.

[0199] FIG. 5B is a conceptual diagram illustrating an example of a form 104-N, which may be included in the flow structure 100 bits of FIG. 5A. In General, each component in the access unit (such as 104 in the access unit 102-N) contains a set of NAL units level video encoder/decoder (codec) (VCL). Thus, in the example shown in Fig. 5B, view 104-N includes NAL units 106-1 to 106-3 in a specific form and procedure. Typically, the components of the species placed in the same order in each units�e access so what is the k-th component species in each access unit corresponds to one and the same species. In other examples, view 104-N may include other number of units of NAL.

[0200] FIG. 5C is a conceptual diagram illustrating an example of a NAL unit 108, which may be similar in structure to the NAL unit 106 shown in Fig. 5B. The NAL unit 108 typically includes a header unit 110 and NAL payload 112. In addition, the header 110 of the NAL unit includes a first portion 114 and the extension 116 of the header of the NAL unit, which may correspond to the extension MVC/AVC.

[0201] for Example, the first portion 114 includes an element ref_idc and the element type of the NAL unit. Item ref_idc may indicate whether the NAL unit as a reference for other NAL units. For example, the value ref_idc 00 may indicate that the content of the NALU is not used to restore the saved images (which can be used for future reference). Such NALU can be discarded without risking the integrity of the reference pictures. Values above 00 can specify that you want NALU decoding, in order to maintain the integrity of the reference pictures. The element type of the NAL unit may specify the packet type of the NAL unit 108.

[0202] the Extension 116 of the header of the NAL unit typically includes a flag IDR (IDR), a priority ID (priority_id), the id of the view (view_id), a temporary ID (temporal_id), flag images with reference (APF), and f�AG between species (IVF). As described with reference to Fig. 1 above, the IDR flag may indicate whether the NAL unit 108 of the image of the current update decode (IDR) or the IDR picture of the form (V-IDR), which can be used as a random access point of the closed GOP. priority_id may be used with the process of adaptation of the bit stream, which changes the bit stream according to changing network conditions and/or capabilities of the video decoder 30 and/or the display device 32 (e.g., such as the process of adaptation with a single pass). view_id may be used to specify the ID type for the species, to which the NAL unit belongs. temporal_id may be used to indicate the temporal level of the current NAL unit, which may correspond to a specific frame rate. APF may be used to indicate whether the NAL unit of the picture with a reference that can be used as a random access point of an open GOP. IVF may be used to indicate whether the NAL unit for predicting between species for NAL units in other views.

[0203] As described above, MVC view_id/AVC has a length of 10 bits, and can be used to uniquely identify more than 1000 different species. In General, however, the number of species actually coded, is typically several orders of magnitude smaller than 1000 kinds. For example�EP, FIG. 4 includes eight species for a given multimedia content MVC. Since the header 110 of the NAL unit is included for each NAL unit, view_id may consume a significant amount of the bit stream. Aspects of the present disclosure, as described relative to the example shown in Fig. 5D, can remove view_id: header of the NAL unit, thus reducing the number of bits required to encode the video data MVC.

[0204] FIG. 5D is a conceptual diagram illustrating an exemplary NAL unit 120, which may be similar in structure to the NAL unit 106 shown in Fig. 5B. The example shown in Fig. 5D illustrates an example of a NAL unit according to an aspect of the present disclosure. For example, the NAL unit 120 includes a header 122 units and NAL payload 124. In addition, the header of the NAL unit includes a first portion 126 and the extension 128 of the header of the NAL unit.

[0205] As in the example shown in Fig. 5C, the first portion 126 includes an element ref_idc and the element type of the NAL unit. Item ref_idc may indicate whether the NAL unit as a reference for other NAL units. The element type of the NAL unit may specify the packet type of the NAL unit 120.

[0206] As shown in the example according to FIG. 5D, however, instead of including view_id in the extension 128 of the header of the NAL unit, the serial index of the species is indicated as part of the header 122 ed�NAL boundary. Thus, according to aspects of the present disclosure, the sequence index type header 122 NAL units can replace view_id, which is signaled in the header 110 of the NAL unit (FIG. 5C). As noted above, the order of species usually describes the ordering of species in the access unit, such as the order of access units 102 (FIG. 5A). The ordinal index of the species may indicate a particular type, such as one type 104, in the manner of kinds of unit access. Thus, the sequence index type can describe the decoding order of the respective component unit type access.

[0207] an example of a table the syntax of the header of the NAL unit for the extension 128 is presented in Table 12 below:

Table 12
The EXPANSION MVC HEADER of the NAL UNIT
nal_unit_header_mvc_extension( ) {CDescriptor
non_idr_flagallu(1)
anchor_pic_flagallu(1)
view_idxallu(5)
reserved_one_bit Allu(1)
}

[0208] In the example shown in Fig. 13, non_idr_flag, which is equal to 0 may indicate that the current access unit is an access unit IDR. The value non_idr_flag may be the same for all units of the VCL NAL units of the access. In some cases non_idr_flag can be logically inferred to be equal to 0 for a NAL unit basic types that has nal_unit_type equal to 5. In addition, non_idr_flag can be logically inferred to be equal to 1 for the NAL unit basic types that has nal_unit_type equal to 1. For NAL units, which contain non_idr_flag, variable IdrPicFlag can be changed by setting the flag equal to 1 when non_idr_flag equal to 0, and setting equal to 0 when non_idr_flag equal to 1.

[0209] in addition, anchor_pic_flag, which is equal to 1 may specify that the current access unit is an access unit with reference. In some cases anchor_pic_flag can be logically deduced to be equal to 0 for a NAL unit basic types that has nal_unit_type equal to 1, and can be logically inferred to be equal to 1 for the NAL unit basic types that has nal_unit_type equal to 4 (Clear Update Decoding).

[0210] view_idx can specify an ordinal index for NAL units. In General, the NAL units with the same W�achenium view_idx belong to one and the same species. The NAL unit type equal to 20, can be used to specify the type of the NAL unit for components not in the base form.

[0211] As shown in the example of Table 12, in contrast to the example shown in Fig. 5C, priority_id, temporal_id, and inter_view_flag were removed, and view_id was replaced by view_idx. In some examples inter_view_flag can be displaced from the extension 128, as shown in the example, the header of the NAL unit Table 13 below:

Table 13
The header of the NAL UNIT FOR the BASE TYPE:
nal_unit(NumBytesInNALunit){Descriptor
forbidden_zero_bitf(1)
nal_ref_idcu(2)
nal_unit_typeu(5)
NumBytesInRBSP=0
nalUnitHeaderBytes=1
if(nal_unit_type= =1 | | nal_unit_type= =5){
temporal_idu(3)
output_flagu(1)
reserved_zero_3bits u(3)
inter_view_flagu(1)
nalUnitHeaderBytes +=1
}
for(i=alUnitHeaderBytes; i<NumBytesInNALunit; i++) {
if(i+2<NumBytesInNALunit && next_bits(24)= = 0x000003){
rbsp_byte[NumBytesInRBSP++]b(8)
rbsp_byte[NumBytesInRBSP++]b(8)
i+=2
emulation_prevention_three_byte/*equal to 0x03 */f(8)
} else
rbsp_byte[ NumBytesInRBSP++]b(8)
}
}

[0212] In the example shown in Table 13, the element inter_view_flag, which is equal to 0 may indicate that the current view component is not used for predictions between species in any other component type in the current access unit. inter_view_flag, which is equal to 1 may indicate that the current view component may be ispolzovaniya predictions between species other components of the species in the current access unit. The value inter_view_flag may be the same for all NAL units VCL component type.

[0213] in addition, in the example shown in Table 13, when nal_unit_type equal to 1 or 5, the sequence index of a species can be logically deduced is equal to 0 and view_id this component type is equal to view_id [0]. In this example, the extension header of the NAL unit may not be necessary. Thus, in the flow of MVC, which includes only two species (i.e., stereo video), may not be necessary ordinal index of the species, as the decoder (such as video decoder 30) may always decode the first view (e.g., view 0) to decode the second type (e.g., type 1).

[0214] In some examples, the NAL unit prefix can be more not be required for base view (e.g., view 0). For example, the NAL unit prefix for the base view may not be necessary as the sequence index of the species is always equal to zero for the base, and the time position of the base view can be specified using the temporal_id. Accordingly, temporal_id in the header of the NAL unit provides all the information to associate a specific component with a specific type and with an appropriate temporary location.

[0215] table 14 includes another header of the NAL unit that refers to the extension header of the NAL unit:

Table 14
The header of the NAL UNIT
nal_unit(NumBytesInNALunit){Descriptor
forbidden_zero_bitf(1)
nal_ref_idcu(2)
nal_unit_typeu(5)
NumBytesInRBSP=0
nalUnitHeaderBytes=1
if(nal_unit_type= = 1 | | nal_unit_type = = 5
|| nal_unit_type= = 4 || nal_unit_type = = 20) {
temporal_idu(3)
output_flagu(1)
reserved_zero_3bitsu(3)
inter_view_flagu(1)
nalUnitHeaderBytes += 1
}
if(nal_unit_type = = 20) {
nal_unit_header_mvc_extension()
nalUnitHeaderBytes +=1
}
for(i=nalUnitHeaderBytes; i< NumBytesInNALunit; i++){
if(i+2<NumBytesInNALunit && next_bits(24)= =0x000003) {
rbsp_byte[NumBytesInRBSP++]b(8)
rbsp_byte[NumBytesInRBSP++]b(8)
i+=2
emulation_prevention_three_byte/*equal to 0x03*/f(8)
} else
rbsp_byte[NumBytesInRBSP++]b(8)
}
}

[0216] In the example shown in Table 14, inter_view_flag, which is equal to 0 may indicate that the current view component is not used for predictions between species in any other component type in the current access unit. inter_view_flag, which is equal to 1 may indicate that the current view component may be used for prediction between species other components of the species in the current access unit. The value inter_view_flag may be the same for all NAL units VCL components�yente. In addition, nal_unit_header_mvc_extension refers to the extension such as that shown in Table 12 above.

[0217] According to another aspect of the present disclosure, the header of the NAL unit for the MVC bitstream can be designed according to Table 15 below:

b(8)
Table 15
The header of the NAL UNIT
nal_unit(NumBytesInNALunit){Descriptor
forbidden_zero_bitf(1)
nal_ref_idcu(2)
nal_unit_typeu(5)
NumBytesInRBSP=0
nalUnitHeaderBytes=1
if(nal_unit_type= = 1 | | nal_unit_type= = 5 || nal_unit_type= =4
|| nal_unit_type= = 20){
temporal_idu(3)
output_flagu(1)
inter_view_flagu(1)
if (nal_unit_type= = 20){
non_idr_flag u(1)
anchor_pic_flagu(1)
view_idxu(5)
reserved_zero_4bitsu(4)
nalUnitHeaderBytes +=2
}
else {
reserved_zero_3bitsu(3)
nalUnitHeaderBytes +=1
}
}
for(i=nalUnitHeaderBytes; i<NumBytesInNALunit; i++){
if(i+2<NumBytesInNALunit && next_bits(24)= = 0x000003) {
rbsp_byte[NumBytesInRBSP++]b(8)
rbsp_byte[NumBytesInRBSP++]b(8)
i+=2
emulation_prevention_three_byte/* equal to 0x03*/f(8)
} else
rbsp_byte[NumBytesInRBSP++]
}
}

[0218] In the example shown in Table 15, the formation of the header of the NAL unit may depend, for example, from nal_unit_type. Thus, for example, when nal_unit_type is equal to 20, and the NAL unit MVC NAL unit may include non_idr_flag, anchor_pic_flag, and view_idx described above. Respectively, for the stereo profile, the header of the NAL unit may be designed in accordance with Table 16 below:

Table 16
The header of the NAL UNIT
nal_unit(NumBytesInNALunit){Descriptor
forbidden_zero_bitf(1)
nal_ref_idcu(2)
nal_unit_typeu(5)
NumBytesInRBSP = 0
nalUnitHeaderBytes = 1
if(nal_unit_type= =1 | | nal_unit_type= = 5 || nal_unit_type= =4
|| nal_unit_type= = 20){
temporal_idu(3)
output_flagu(1)
inter_view_flagu(1)
if (nal_unit_type= = 20){
non_idr_flagu(1)
anchor_pic_flagu(1)
reserved_zero_1bitsu(1)
}
else {
reserved_zero_3bitsu(3)
}
nalUnitHeaderBytes += 1
}
for(i= nalUnitHeaderBytes; i< NumBytesInNALunit; i++){
if(i+2<NumBytesInNALunit && next_bits(24) = = 0x000003){
rbsp_byte[NumBytesInRBSP++]b(8)
rbsp_byte[NumBytesInRBSP++]b(8)
i+= 2
emulation_prevention_three_byte /* equal to 0x03 */f(8)
} else
rbsp_byte[ NumBytesInRBSP++ ]b(8)
}

[0219] In still another example, according to another aspect of the present disclosure, the header of the NAL unit for the MVC bitstream can be designed according to Table 17 below:

Table 17
The header of the NAL UNIT
nal_unit(NumBytesInNALunit){Descriptor
forbidden_zero_bitf(1)
nal_ref_idcu(2)
nal_unit_typeu(5)
NumBytesInRBSP = 0
nalUnitHeaderBytes = 1
if(nal_unit_type= =1 | | nal_unit_type = =5 || nal_unit_type = =4
|| nal_unit_type= = 20){
temporal_idu(3)
output_flagu(1)
inter_view_flagu1)
non_idr_flagu(1)
anchor_pic_flagu(1)
reserved_zero_1bitsu(1)
nalUnitHeaderBytes += 1
}
for(i=nalUnitHeaderBytes; i<NumBytesInNALunit; i++){
if(i+2< NumBytesInNALunit && next_bits(24) = = 0x000003 ){
rbsp_byte[NumBytesInRBSP++]b(8)
rbsp_byte[NumBytesInRBSP++]b(8)
i+=2
emulation_prevention_three_byte/* equal to 0x03 */f(8)
} else
rbsp_byte[NumBytesInRBSP++]b(8)
}
}

[0220] Regardless of the particular configuration of the header of the NAL unit, as described above with reference to Fig. 4, the set of parameters sequence (SPS) can provide relationship �between view_ids for species and sequence indexes of the species for the species. Accordingly, using the ordinal index of the view and the data in SPS, 10-bit MVC view_id/AVC can be replaced in the header of the NAL unit sequence index type, which can result in saving of bits in comparison with the scheme of MVC/AVC. The ordinal index of the view can be used with a POC value or the value of the frame (the frame number) to identify the component type of the bit stream. For example, tying the grid view components shown in Fig. 4 to the Cartesian grid, the sequence index type can provide the y-coordinate (for example, S0, S1, S2 ...) of a particular component type, while the POC value or the value of the frame can provide the x-coordinate (for example, T0, T1, T2,...) of a particular component type. Identification of components of the form thus can be realized, for example, in the list of reference pictures.

[0221] According to another aspect of the present disclosure, the dependence of species for each type of MVC bitstream can usually be signaled for all components of the view, regardless of whether the components view for images with reference and pictures without binding. In some examples, the SPS may include dependency types for view components, instead to rely on the information in the header of the NAL unit. Thus can be removed anchor_pic_flag used in the extension 128 of the header of the NAL unit.

[0222] In this� example, the view component signaled dependent types can be used as a reference picture in List 0 and List 1, as described above with reference to Fig. 4. In addition, the list of reference pictures, and reordering the list of reference pictures of List 0 and List 1 may also be based on the General alarm for images with reference and pictures without binding. In some examples, the level of sequence, the message for more information expansion (SEI) can be used to indicate when the picture without binding has a great dependence of species than the picture with the binding.

[0223] According to another aspect of the present disclosure, instead of signal priority_id in the header of the NAL unit, video encoder 20 may provide the values of priority_id in SPS. As described above, in some examples, the router 36 can use the values of priority_id SPS to filter out some types. Thus, the router 36 can take the complete bit stream, but to extract the substream bits, including NAL units with priority_id values equal and below the priority values specified by the destination device 14, and send the substream bits to the destination device.

[0224] in addition, according to aspects of the present disclosure, the message adaptation of priority may be used to perform adaptation. For example, table 18 below shows the approximate SEI message adaptation priorities:

Table 18
The SEI MESSAGE ADAPTATION PRIORITY
priority_adaptation_SEI(payloadSize){CDescriptor
num_temproal_id_minus15u(3)
for(i=0; i<=num_temproal_id_minus1; i++)
for (j=0; j<=num_views_minus1; j++){
same_priority_id_flag[i][j]5u(1)
if (!same_priority_id_flag[i][j])
priority_id[i][j]5u(6)
}
}

[0225] In the example shown in Table 18, num_temporal_id_minus1 plus 1 may indicate the highest temporal_id for the NAL units of the bitstream of MVC. same_priority_id_flag [i] [j] equal to 1 may specify that priority_id NAL units with temporal_id equal to i and a sequence of index� type j is equal to the previously reported priority_id, which can be priority_id [i] [j-1] while (j>0, or priority_id [i-1] [j] when j=0 and i>0. Element priority_id [i] [j] may specify the priority identifier for the NAL unit with temporal_id equal to i and a sequence index type, equal to j. A lower value of priority_id may indicate a higher priority.

[0226] the Adaptation may be based on the header of NAL units and SEI message, such as that shown in Table 18. For example, the adaptation process can be assumed that temporal_id and view_idx NAL unit is equal to TID and VIDX, and target priority_id equal to PID. In this example, if priority_id [TID] [VIDX] not more than PID, the NAL unit is supported, otherwise, the NAL unit is filtered.

[0227] while this example describes the priority information in the SEI message, in other examples, the information described as reported in the SEI message may be signaled as an optional part of the set of parameters such as SPS MVC.

[0228] FIG. 6 is a flowchart illustrating an exemplary method of encoding a stream of bits of multiple species. The example shown in Fig. 6, is usually described as being performed by video encoder 20 (FIG. 1 and 2). However, it should be understood that the process described with reference to Fig. 6, can be performed by many other processors, processing units, based on hardware encoding units such as encoder/decoders (codecs), etc.

[0229] In PR�least according to FIG. 6, video encoder 20 may encode video data for the plurality of view components (140). For example, video encoder 20 may encode a variety of many different types, each type corresponding to a different perspective, or angle, under which were captured by the respective video data of the overall scene. As noted above, a specific picture of a specific type is referred to as the view component. Therefore, the component type for the species corresponding to a particular temporal instance of the view.

[0230] Video encoder 20 may also generate NAL units that include an indication of a decoding order of the components of the form (142). For example, as described with reference to Fig. 5A-5D, according to an aspect of the present disclosure, video encoder 20 may provide an indication of the ordinal index (view_idx) species in the headers of the NAL units, which provides an indication of the decoding order of the components. In General, the NAL units with the same value view_idx belong to one and the same species.

[0231] Video encoder 20 may also provide information, separate from the NAL units, which provides an indication of the relationship between IDs and order (144) decoding. In some examples, video encoder 20 may generate a set of parameters, such as SPS, which indicates the relationship between the IDs for these species and sequence�and indices form for these species. In other examples, video encoder 20 may indicate the relationship between sequence indexes of the species and species identifiers otherwise.

[0232] Using the ordinal index of the view and mentioned individual information, video encoder 20 may be replaced with 10-bit identifier type, typically included in the header of the NAL unit in the sequence index type, which can provide savings of bits. For example, the ordinal index of the view may include essentially less bits than an ID. While the video encoder 20 to signal the relationship between the ordinal index of the species and species identifiers, for example, in SPS, the headers of the NAL units typically consume far more bits than such an alarm. Replace the ID in the header of the NAL unit sequence index type can reduce the size of the headers of the NAL units, thereby achieving the saving of bits than encoding the ID in the header of the NAL unit.

[0233] it Should also be understood that the steps shown and described with reference to Fig. 6, provided as just one example. Thus, the steps of the method of FIG. 6 does not necessarily have to be performed in the order shown in Fig. 6, and fewer, additional, or alternative steps can be performed.

[0234] FIG. 7 is a flowchart illustrating an exemplary method de�of tiravanija stream of bits of multiple species. The example shown in Fig. 7, generally described as being performed by video decoder 30 (FIG. 1 and 3). However, it should be understood that the process described with reference to Fig. 7, can be performed by many other processors, processing units, based on hardware encoding units such as encoder/decoders (codecs), etc.

[0235] In the example according to FIG. 7, video decoder 30 may receive one or more NAL units for each component type, which includes information indicating the decoding order of the respective components of the form (150). According to an aspect of the present disclosure, as described with reference to Fig. 6, the decoding order of the respective view components can be indicated using the ordinal index of the view. Accordingly, video decoder 30 may receive an indication of an ordinal index (view_idx) species in the headers of the NAL units, which provides an indication of the decoding order of the components. In General, the NAL units with the same value view_idx belong to one and the same species.

[0236] the Video decoder 30 may also receive information indicating the relationship between the IDs and the order of decoding view components (152). In some examples, video decoder 30 may receive a set of parameters, such as SPS, which indicates the relationship between the identifiers of the form e�species the sequence index of the species for these species. In other examples, video decoder 30 may receive some indication of the relationship between sequence indexes of the species and species identifiers.

[0237] Video decoder 30 may also decode video data with multiple views using inputted information. Thus, for example, the video decoder may decode each of the species, and determine the corresponding identifier types, using the adopted individual information. Video decoder 30 may then provide a 3D representation using these types, for example, on the display device 32.

[0238] it Should also be understood that the steps shown and described with reference to Fig. 7, is provided as just one example. Thus, the steps of the method of FIG. 7 does not necessarily have to be performed in the order shown in Fig. 7, and fewer, additional, or alternative steps can be performed.

[0239] FIG. 8 is a flowchart illustrating an exemplary method of encoding a stream of bits of multiple species. The example shown in Fig. 8, generally described as being performed by video encoder 20 (FIG. 1 and 2). In other examples, the process described with reference to Fig. 8, can be performed by many other processors, processing units, based on hardware encoding units such as encoder/decoders (codecs), etc. In the example according to FIG. 8 video encoder 20 may op�adelite, for any component type of the first type, information of the reference view indicating one or more reference views for predicting view components of the first type (160). For example, as noted above, dependency types can be signalled in the same way for all components of the form for some kind, regardless of whether the specific component type specific access unit of the picture with reference (random access point), or whether a particular component of a particular type of unit access the picture without binding. In some cases, the reference information type may specify the type, using the index values of the reference type (the values of the ordinal index of the form for reference types). Thus, the reference information type may contain the index values of the reference form for each reference species, which may indicate the decoding order of the reference species in the unit of access. In other examples, the information of the reference view may contain values for the difference of the indices of the reference species, which can indicate the difference between the sequence index type specific reference species and the ordinal index of the view component type, coded currently. In examples in which the values of the ordinal index of the view used, as described above, video encoder 20 may also provide up to�additional information which indicates the relationship between the values of the ordinal index of the view identifiers and the type species.

[0240] Video encoder 20 may also encode the first component in the access unit in the first form, to include one or more reference candidates in the reference list of images on the basis of units of access, which is the first view component belongs, information of the reference type and reference number of species listed information (162) reference species. For example, as described above, video encoder 20 may construct a list of reference pictures includes a reference picture candidate in order to predict the first view component (reference pictures "candidates", as a reference picture can be removed from the final list of reference pictures). Video encoder 20 may identify a reference picture candidate between species in each of the reference species, indicated by the reference information types that belong to the same access unit (for example, have the same moment of time) as the first component. Video encoder 20 may add all components identified species to the list of reference pictures.

[0241] Accordingly, in the example shown in Fig. 8, video encoder 20 may construct a list of reference symbols without regard to whether the view component coded currently in�time, the picture with the binding or picture without binding. In addition, video encoder 20 may construct a list of reference images, not taking into account the fact that you've included a reference picture candidate in List 0 or List 1. Thus, video encoder 20 may construct the reference list of the symbols 0 or a list of reference symbols 1, using the same reference information. In addition, video encoder 20 may add the identified reference candidates to both List 0 or List 1 is similar.

[0242] Video encoder 20 may also encode the first view component based on one or more reference candidates in the list (164) of the reference pictures. For example, video encoder 20 may identify a component type in the list of reference pictures, to generate residual data, using the identified component type and to encode the residual data, as described with reference to Fig. 2. Video encoder 20 may also provide the encoded first view component reference certain information types encoded in the bit stream (166).

[0243] it Should be understood that the steps shown and described with reference to Fig. 8, provided as just one example. Thus, the steps of the method according to FIG. 8 need not necessarily be performed in the order shown in Fig. 8, and fewer, additional, or alternative steps may bitmapand.

[0244] FIG. 9 is a flowchart illustrating an exemplary method of decoding a stream of bits of multiple species. The example shown in Fig. 9, generally described as being performed by video decoder 30 (FIG. 1 and 3). In other examples, the process described with reference to Fig. 9, can be performed by many other processors, processing units, based on hardware encoding units such as encoder/decoders (codecs), etc.

[0245] In the example shown in Fig. 9, video decoder 30 may obtain, from the coded bit stream and for any component type of the first type, information of the reference view indicating one or more reference views for predicting view components of the first type (170). For example, as noted above with reference to Fig. 8, the dependency types can be signalled in the same way for all components of the form for some kind, regardless of whether a particular component of a particular type of unit access to the picture reference (random access point), or whether a particular component of a particular type of unit access the picture without binding. In some cases, the reference information type may specify the type, using the index values of the reference type (the values of the ordinal index of the form for reference types). Thus, information reference type m�can contain the index values of the reference form for each reference view, which may indicate the decoding order of the reference species in the unit of access. In other examples, the information of the reference view may contain values for the difference of the indices of the reference species, which can indicate the difference between the sequence index type specific reference species and the ordinal index of the view component type, coded currently. In examples in which the values of the ordinal index of the view used, as described above, video decoder 30 may also receive additional information from the encoded bit stream, which indicates the relationship between the values of the ordinal index of the view identifiers and the type species. Such information can be obtained from the level of the sequence.

[0246] the Video decoder 30 may also decode the first component in the access unit in the first form to include one or more reference candidates in the reference list of images on the basis of the access unit, which belongs to the first view component, information of the reference view, and the number of reference views indicated by the reference information of the form (172). For example, as described above, video decoder 30 may construct the list of reference pictures includes a reference picture candidate in order to predict the first view component. Video decoder 30 may identify a reference picture - Kahn�a date between species in each of the major kinds, specified by the reference information types that belong to the same access unit (for example, have the same moment of time) as the first component. Video decoder 30 may add all components identified species to the list of reference pictures.

[0247] Accordingly, in the example shown in Fig. 9, video decoder 30 may construct the list of reference symbols without regard to the fact whether the view component coded currently, image-bound or picture without binding. In addition, video decoder 30 may construct the reference list of images, not taking into account the fact that you've included a reference picture candidate in List 0 or List 1. Thus, video decoder 30 may construct the reference list of the symbols 0 or a list of reference symbols 1 using the same reference information types, which can only be obtained from the encoded bit stream once. In addition, video decoder 30 may add the identified reference candidates to both List 0 or List 1 is similar.

[0248] Video decoder 30 may also decode the first view component based on one or more reference candidates in the reference list of pictures (174). For example, video decoder 20 may identify a component type in the list of reference pictures, to combine identified�mponent with the decoded residual data (coded bit stream), to generate the component species, as described with reference to Fig. 3 above.

[0249] it Should be understood that the steps shown and described with reference to Fig. 9, provided as just one example. Thus, the steps of the method of FIG. 9 does not necessarily have to be performed in the order shown in Fig. 9, and fewer, additional, or alternative steps can be performed.

[0250] while some of the syntax elements described relative to the present disclosure, provided with approximate names for the purpose of explanation, it should be understood that the concepts described in the present disclosure are broadly applicable to any syntax elements, regardless of name. For example, while some aspects are “ordinal index of the view,” “view_order_index” or “view_idx,” it should be understood that this syntax element can be given an alternative name in a future coding standard.

[0251] while some methods of the present disclosure are described with regard to the upcoming HEVC standard, it should be understood that the methods are not limited to any particular coding standard. Thus, the methods are more widely to achieve coding efficiency when encoding video with multiple types, for example, shorter and/or less complex NAL units and a set of software tools� parameters as described above.

[0252] it Should be understood that depending on the example, certain acts or events of any methods described herein may be performed in a different sequence, may be added, merged, or not used together (e.g., not all described acts or events are necessary for the practical implementation of the method). In addition, in some examples, actions or events can be performed concurrently, e.g., through multi-threaded processing, interrupt processing, or multiple processors, rather than sequentially. In addition, while some aspects of the present disclosure are described as being performed by a single module or unit for the purposes of clarity, it should be understood that the methods of the present disclosure can be performed by a combination of blocks or modules associated with the video encoder.

[0253] In one or more examples, the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted as one or more instructions or code on a computer readable media and executed based on hardware processing unit. Machine-readable media can� include computer readable storage media, which correspond to the material medium, such as storage media or communication media including any medium that facilitates transfer of a computer program from one place to another, for example, according to the communication Protocol.

[0254] Thus, computer readable media may generally correspond to (1) the tangible computer readable storage medium, which is neuraminyl, or (2) communication media, such as a signal or carrier. The storage media can be any available media that can be accessed by one or more computers or one or more processors to retrieve instructions, code and/or data structures for implementing the methods described in the present disclosure. The computer program product may include computer readable media.

[0255] By way of example, and not limitation, such computer readable media can include RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, flash memory, or any other medium that can be used to store desired program code in the form of instructions or data structures and to cataromance to access the computer. Also, any connection is properly referred to as machine-readable carrier. For example, if the instructions are transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio and microwave, then these coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio and microwave included in the definition of the media.

[0256] it Should be understood, however, that machine-readable data carriers and storage media data do not include compounds, bearing, signals, or other time-based media, but instead focused on material non-temporal media data. Disk and disc, as used here, includes compact disc (CD), laser disc, optical disc, digital versatile disk (DVD), floppy disk and blu-ray disc where disks (disks usually reproduce data magnetically, while discs (discs) reproduce data optically with lasers. Combinations of the above should also be included in the scope of computer readable media.

[0257] the Instructions may be executed by one or more processors, such as one or more digital signal PR�of cessaro (DSPs), the General-purpose microprocessors and specialized integrated circuits (ASIC), field programmable logic arrays (FPGA), or other equivalent integrated or discrete logic circuitry. Accordingly, the term "processor" as used here may refer to any known structure or any other structure suitable for implementing the methods described here. Also, in some aspects, the functionality described herein may be provided within specialized hardware and/or software modules configured for encoding and decoding, or embedded in a combined codec. Also, methods can be fully implemented in one or more circuits or logic elements.

[0258] the Methods of the present disclosure can be implemented in a wide variety of devices or apparatuses, including a wireless handset, an integrated circuit (IC) or a set of IC (e.g., microprocessor kit). Various components, modules, or blocks described in the present description, to emphasize the functional aspects of devices configured to perform the disclosed methods, but not necessarily require realization by different hardware blocks. Instead, as described above, various units may be �bhavnani in block hardware codec or provided by a collection of interacting units hardware including one or more processors as described above, in conjunction with suitable software and/or hardware.

[0259] described various examples. These and other examples are within the following claims.

1. Method of decoding video data, the method contains:
obtaining, from an encoded bitstream, one or more units of the abstraction layer network (NAL) for each component type from a plurality of view components of encoded video data, wherein each view component of the plurality of view components corresponds to a common temporal location, and in which each NAL unit from one or more NAL units encapsulate at least a portion of the encoded video data for the respective view components and include information describing the decoding order of the respective view components, and which is separate from the identity of the respective view components;
receiving information, from the encoded bitstream and separate from the aforementioned one or more NAL units, indicating relationships between these identifiers types of species associated with the abovementioned components, types, and order of decoding view components; and
decoding encoded video data of the sets� view components in the decoding order based on the obtained information.

2. A method according to claim 1, wherein receiving information indicating the relationship between the IDs and the order of decoding view components, includes retrieving information from the information level of a sequence of encoded video data that indicates the relationship between the IDs and the order of decoding the type mentioned above.

3. A method according to claim 1, wherein receiving information indicating the decoding order of the respective view components, contains a get the default values of the ordinal index of the species, is zero for the base type of the plurality of component types.

4. A method according to claim 1, wherein one or more NAL units include information indicating whether the first component of a first view as a reference for predictions between species of the second component of the second kind for a great view.

5. A method according to claim 4, wherein the information indicating whether the first component of a first view as a reference for predictions between species of the second component type contains a single bit flag header of the NAL unit.

6. A method according to claim 1, further comprising receiving from the encoded bit stream values of the order of reference pictures (ROS) for the set of component types, and wherein the decoding includes decoding the encoded video data based on�upon the information, specifies the decoding order and the values of the ROS.

7. A method according to claim 1, further comprising obtaining, from an encoded bitstream, values of the frame to a plurality of view components, and wherein the decoding includes decoding encoded video data on the basis of information indicating the decoding order and the values of the frame.

8. A method according to claim 1, wherein information indicating the decoding order of the respective view components, contains the number of syntax elements that are defined on the basis of at least one of a base view, profile, and number of species supported in the bit stream.

9. A method according to claim 1, wherein the information indicating the relationship between the IDs for these species and the decoding order of the components view contains a mapping table, which shows the decoding order of the components of the species in the species identifiers for these types.

10. A method according to claim 1, wherein information indicating the decoding order of the respective view components, is contained in the header portion of NAL units.

11. A method according to claim 1, wherein information indicating the decoding order of the respective view components, contains the ordinal index of the view.

12. A method according to claim 11, in which the components types of multiple temporal locations of the General form of owls�frequented General use the ordinal index of the view.

13. A device for decoding video data, wherein the device includes one or more processors, configured to:
to obtain, from an encoded bitstream, one or more units of the abstraction layer network (NAL) for each component type from a plurality of view components of encoded video data, wherein each view component of the plurality of view components corresponds to a common temporal location, and in which each NAL unit from one or more NAL units encapsulate at least a portion of the encoded video data for the respective view components and include information describing the decoding order of the respective view components, and which is separate from the identity of the respective view components;
obtain information, from the encoded bitstream and separate from the aforementioned one or more NAL units, indicating relationships between these identifiers types of species associated with the abovementioned components, types, and order of decoding view components; and
to decode the coded video data from the plurality of view components in the decoding order based on the obtained information.

14. The device according to claim 13, wherein, to obtain information indicating the relationship between the IDs and paraconductivity view components, mentioned one or more processors are configured to receive information from the information level of a sequence of encoded video data that indicates the relationship between the IDs and the order of decoding the type mentioned above.

15. The device according to claim 13, in which to obtain the information indicating the decoding order of the respective view components mentioned one or more processors are configured to obtain the default value is the ordinal index of the species, is zero for the base type of the plurality of component types.

16. The device according to claim 13, in which one or more NAL units include information indicating whether the first component of a first view as a reference for predictions between species of the second component form a second, distinct species.

17. The device according to claim 16, in which information indicating whether the first component of a first view as a reference for predictions between species of the second component type contains a single bit flag header of the NAL unit.

18. The device according to claim 13, in which the mentioned one or more processors further configured to obtain, from an encoded bitstream, values of the order of reference pictures (ROS) for the set of view components, and in which to decode one mentioned ilible processors are configured to decode the encoded video data based on the information indicating the decoding order and the values of the ROS.

19. The device according to claim 13, in which the mentioned one or more processors are also configured to obtain, from an encoded bitstream, values of the frame to a plurality of view components, and in which to decode mentioned one or more processors are configured to decode encoded video data based on the information indicating the decoding order and the values of the frame.

20. The device according to claim 13, in which information indicating the decoding order of the respective view components, contains the number of syntax elements that are defined on the basis of at least one of a base view, profile, and number of species supported in the bit stream.

21. The device according to claim 13, in which information indicating the relationship between the IDs for these species and the decoding order of the components view contains a mapping table, which shows the decoding order of the components of the species in the species identifiers for these types.

22. The device according to claim 13, in which information indicating the decoding order of the respective view components, is contained in the header portion of NAL units.

23. The device according to claim 13, in which the information �kazawa the decoding order of the respective view components, contains the ordinal index of the view.

24. The device according to claim 23, in which the components types of multiple temporal locations of the General form share a common ordinal index of the view.

25. A device for decoding video data, wherein the device contains:
means for obtaining, from an encoded bitstream, one or more units of the abstraction layer network (NAL) for each component type from a plurality of view components of encoded video data, wherein each view component of the plurality of view components corresponds to a common temporal location, and in which each NAL unit from one or more NAL units encapsulate at least a portion of the encoded video data for the respective view components and include information describing the decoding order of the respective view components, and which is separate from the identity of the respective view components;
means for receiving information from the encoded bitstream and separate from the aforementioned one or more NAL units, indicating relationships between these identifiers types of species associated with the abovementioned components, types, and order of decoding view components; and
means for decoding encoded video data from a plurality of view components in p�the row decoding on the basis of the information received.

26. The device according to claim 25, wherein the means for receiving information indicating the relationship between the IDs and the order of decoding view components, includes means for receiving information from the information level of a sequence of encoded video data that indicates the relationship between the IDs and the order of decoding the type mentioned above.

27. The device according to claim 25, in which information indicating the decoding order of the respective view components, contains the number of syntax elements that are defined on the basis of at least one of a base view, profile, and number of species supported in the bit stream.

28. The device according to claim 25, in which information indicating the relationship between the IDs for these species and the decoding order of the components view contains a mapping table, which shows the decoding order of the components of the species in the species identifiers for these types.

29. The device according to claim 25, in which information indicating the decoding order of the respective view components, is contained in the header portion of NAL units.

30. The device according to claim 25, in which information indicating the decoding order of the respective view components, contains the ordinal index of the view.

31. Machine-readable storage �Eitel, having stored therein instructions that, when executed, forcing one or more processors:
to obtain, from an encoded bitstream, one or more units of the abstraction layer network (NAL) for each component type from a plurality of view components of encoded video data, wherein each view component of the plurality of view components corresponds to a common temporal location, and in which each NAL unit from one or more NAL units encapsulate at least a portion of the encoded video data for the respective view components and include information describing the decoding order of the respective view components, and which is separate from the identity of the respective view components;
obtain information, from the encoded bitstream and separate from the aforementioned one or more NAL units, indicating relationships between these identifiers types of species associated with the abovementioned components, types, and order of decoding view components; and
to decode the encoded video data from a plurality of view components in the decoding order based on the obtained information.

32. Machine-readable storage medium according to claim 31, wherein, to obtain information indicating the relationship between the identifiers VI�and order and the decoding view components, the instructions cause one or more processors to obtain information from the information level of a sequence of encoded video data that indicates the relationship between the IDs and the order of decoding the type mentioned above.

33. Machine-readable storage medium according to claim 31, in which information indicating the decoding order of the respective view components, contains the number of syntax elements that are defined on the basis of at least one of a base view, profile, and number of species supported in the bit stream.

34. Machine-readable storage medium according to claim 31, in which information indicating the relationship between the IDs for these species and the decoding order of the components view contains a mapping table, which shows the decoding order of the components of the species in the species identifiers for these types.

35. Machine-readable storage medium according to claim 31, in which information indicating the decoding order of the respective view components, is contained in the header portion of NAL units.

36. Machine-readable storage medium according to claim 31, in which information indicating the decoding order of the respective view components, contains the ordinal index of the view.

37. Method encode of videodan�x, the method includes:
encoding video data for a plurality of view components for respective views of video data, each of the plurality of view components corresponds to a common temporal location;
the formation, as part of an encoded bitstream, one or more units of the abstraction layer network (NAL) for the encoded video data of each component species in such a way that each of the NAL units include information that describes a method of decoding video data of the respective view components, which is separate from the identity of the respective view components and encapsulate at least a portion of the encoded video data for the respective view components; and
providing information in the encoded bitstream, separate from the NAL units, indicating relationships between these identifiers types of species associated with the abovementioned components, types, and order of decoding view components.

38. A method according to claim 37, wherein the providing information indicating the relationship between the IDs and the order of decoding view components, includes provision of information at the level of a sequence of encoded video data.

39. A method according to claim 37, wherein the providing information indicating smacking�OK decoding of the respective components of the form, includes providing the default values of the ordinal index of the species, is zero for the base type of the plurality of component types.

40. A method according to claim 37, in which one or more NAL units include information indicating whether the first component of a first view as a reference for predictions between species of the second component form a second, distinct species.

41. A method according to claim 40, in which information indicating whether the first component of a first view as a reference for predictions between species of the second component type contains a single bit flag header of the NAL unit.

42. A method according to claim 37, in which information indicating the decoding order of the respective view components, contains the number of syntax elements that are defined on the basis of at least one of a base view, profile, and number of species supported in the bit stream.

43. A method according to claim 37, in which information indicating the relationship between the IDs for these species and the decoding order of the components view contains a mapping table, which shows the decoding order of the components of the species in the species identifiers for these types.

44. A method according to claim 37, in which information indicating the decoding order of the respective view components, contained in the header part� NAL units.

45. A method according to claim 37, in which information indicating the decoding order of the respective view components, contains the ordinal index of the view.

46. A method according to claim 45, in which the components form multiple temporal locations of the General form share a common ordinal index of the view.

47. A device for encoding video data, wherein the device includes one or more processors configured for:
to encode video data for a plurality of view components for respective views of video data, wherein each of the plurality of view components corresponds to a common temporal location;
forming, as part of an encoded bitstream, one or more units of the abstraction layer network (NAL) for the encoded video data of each component species in such a way that each of the NAL units include information that describes a method of decoding video data of the respective view components, which is separate from the identity of the respective view components and encapsulate at least a portion of the encoded video data for the respective view components; and
to provide information in an encoded bitstream, separate from the NAL units, indicating relationships between these species identifiers for species associer�bathrooms with said components, and the order of decoding view components.

48. The device according to claim 47, in which to provide information indicating the relationship between the IDs and the order of decoding view components mentioned one or more processors are configured to provide information at the level of a sequence of encoded video data.

49. The device according to claim 47, in which to provide information indicating the decoding order of the respective view components mentioned one or more processors are configured to provide the default value is the ordinal index of the species, is zero for the base type of the plurality of component types.

50. The device according to claim 47, in which one or more NAL units include information indicating whether the first component of a first view as a reference for predictions between species of the second component form a second, distinct species.

51. The device according to claim 50, in which information indicating whether the first component of a first view as a reference for predictions between species of the second component type contains a single bit flag header of the NAL unit.

52. The device according to claim 47, in which information indicating the decoding order of the respective view components, contains the number of syntax elements, Oprah�distributed on the basis of at least one of a base view, profile and number of species supported in the bit stream.

53. The device according to claim 47, in which information indicating the relationship between the IDs for these species and the decoding order of the components view contains a mapping table, which shows the decoding order of the components of the species in the species identifiers for these types.

54. The device according to claim 47, in which information indicating the decoding order of the respective view components, is contained in the header portion of NAL units.

55. The device according to claim 47, in which information indicating the decoding order of the respective view components, contains the ordinal index of the view.

56. The device according to claim 55, in which the components types of multiple temporal locations of the General form share a common ordinal index of the view.

57. A device for encoding video data, wherein the device contains:
means for encoding video data for a plurality of view components for respective views of video data, wherein each of the plurality of view components corresponds to a common temporal location;
means for generating, as part of an encoded bitstream, one or more units of the abstraction layer network (NAL) for the encoded video data of each of the view components such that each� of NAL units include information, describes a method of decoding video data of the respective view components, which is separate from the identity of the respective view components and encapsulate at least a portion of the encoded video data for the respective view components; and
means for providing information in the encoded bitstream, separate from the NAL units, indicating relationships between these identifiers types of species associated with the abovementioned components, types, and order of decoding view components.

58. The device according to claim 57, wherein the means for providing information indicating the relationship between the IDs and the order of decoding view components, includes means for providing information at the level of a sequence of encoded video data.

59. The device according to claim 57, in which information indicating the relationship between the IDs for these species and the decoding order of the components view contains a mapping table, which shows the decoding order of the components of the species in the species identifiers for these types.

60. The device according to claim 57, in which information indicating the decoding order of the respective view components, is contained in the header portion of NAL units.

61. The device according to claim 57, in which information�Oia, specifies the decoding order of the respective view components, contains the ordinal index of the view.

62. The device according to claim 61, in which the components types of multiple temporal locations of the General form share a common ordinal index of the view.

63. Machine-readable storage medium having stored therein instructions that, when executed, forcing one or more processors:
to encode video data for a plurality of view components for respective views of video data, wherein each of the plurality of view components corresponds to a common temporal location;
forming, as part of an encoded bitstream, one or more units of the abstraction layer network (NAL) for the encoded video data of each component species in such a way that each of the NAL units include information that describes a method of decoding video data of the respective view components, which is separate from the identity of the respective view components and encapsulate at least a portion of the encoded video data for the respective view components; and
to provide information in an encoded bitstream, separate from the NAL units, indicating relationships between the IDs to species associated with the above-mentioned comp�the contents of the form, and the order of decoding view components.

64. Machine-readable storage medium according to claim 63 in which to provide information indicating the relationship between the IDs and the order of decoding view components, the instructions cause the one or more processors to provide information on the level of a sequence of encoded video data.

65. Machine-readable storage medium according to claim 63, in which information indicating the relationship between the IDs for these species and the decoding order of the components view contains a mapping table, which shows the decoding order of the components of the species in the species identifiers for these types.

66. Machine-readable storage medium according to claim 63, in which information indicating the decoding order of the respective view components, is contained in the header portion of NAL units.

67. Machine-readable storage medium according to claim 63, in which information indicating the decoding order of the respective view components, contains the ordinal index of the view.

68. Machine-readable storage medium according to claim 63, in which the components types of multiple temporal locations of the General form share a common ordinal index of the view.



 

Same patents:

FIELD: physics, computer engineering.

SUBSTANCE: invention relates to computer engineering. A method of coding video data comprises maintaining a plurality of context models for entropy coding transform coefficients of the video data, wherein the plurality of context models includes one or more context models that are each used for a different transform unit size and at least one joint context model used for two or more transform unit sizes; selecting the joint context model shared by a first transform unit and a second transform unit; selecting contexts for the transform coefficients associated with one of the first transform unit or the second transform unit according to the joint context model; and entropy coding the transform coefficients of said one of the transform units using context adaptive binary arithmetic coding (CABAC) based on the selected contexts.

EFFECT: reduced amount of memory needed to store contexts and probabilities on video coders and decoders.

34 cl, 9 dwg

FIELD: physics, video.

SUBSTANCE: invention relates to image processing means. The method includes creating a plurality of frames of a picture and related prediction reference frames; for each frame and related prediction reference frame, calculating the intensity value and the colour value in a first colour domain; for each frame and related prediction reference frame, calculating weighted prediction gains; if said gains are non-negative, determining that a global transition with zero offset is occurs in a second colour domain; and if not all of said gains are non-negative, determining that a global transition with gradual change in illumination does not occur.

EFFECT: high efficiency of an image display means when encoding and processing video.

28 cl, 16 dwg

FIELD: physics, video.

SUBSTANCE: invention relates to the field of digital signal processing and, in particular, to the field of video signal compression using the movement compensation. The coding method includes the obtaining of target number of movement information predictors to be used for the coded image section and generation of the set of movement information predictors using the obtained target quantity. The set is generated by means of: obtaining of the first set of movement information predictors, each of which is connected with the image section having the pre-set spatial and/or time ratio with the coded image section; modifications of the first set of movement information predictors by removal of the duplicated movement information predictors for obtaining of the reduced set of movement information predictors containing the first number of movement information predictors, and each movement information predictor from the reduced set differs from any other movement information predictor from the reduced set; comparisons of the first number of movement information predictors with the target quantity obtained, and if the first quantity is less than the target quantity, obtaining of the additional movement information predictor and its addition to the reduced set of movement information predictors.

EFFECT: decrease of spatial and time redundancies in video flows.

26 cl, 8 dwg

FIELD: physics, video.

SUBSTANCE: invention relates to a broadcasting system for transmitting a digital television program, particularly a transmission device and a transmission method, in which content which meets needs can be acquired. A server generates a script PDI-S for obtaining a user side PDI-A representative of an answer of a user to a question about user preferences; generates launch information for executing the PDI-A; and transmits the launch information and PDI-S in response to the delivery of broadcast content, and transmits to the client in response to the delivery of reference content a provider side PDI-A representative of an answer set by a provider to the question. The client executes the PDI-S based on detection of launch information and carries out matching between the user side PDI-A and the provider side PDI-A to determine acquisition of reference content delivered by the server.

EFFECT: facilitating delivery of content to a client which satisfies the needs thereof at that time.

10 cl, 48 dwg

FIELD: physics, computer engineering.

SUBSTANCE: invention relates to computer engineering. An apparatus for encoding an image using intraframe prediction comprises a unit for determining an intraframe prediction mode, which determines the intraframe prediction of the current unit to be encoded, wherein the intraframe prediction mode indicates a defined direction from a plurality of directions, wherein the defined direction is indicated by one number dx in the horizontal direction and a constant number in the vertical direction and a number dy in the vertical direction and a constant number in the horizontal direction; and a unit for performing intraframe prediction, which performs intraframe prediction applied to the current unit in accordance with the intraframe prediction mode, wherein the intraframe prediction includes a step of determining the position of adjacent pixels through a shift procedure based on the position of the current pixel and one of the parameters dx and dy, indicating the defined direction, wherein adjacent pixels are located on the left side of the current unit or on the upper side of the current unit.

EFFECT: high efficiency of compressing images through the use of intraframe prediction modes having different directions.

9 cl, 21 dwg, 4 tbl

FIELD: physics, computer engineering.

SUBSTANCE: invention relates to a method for bit-plane coding of signals, for example, an image or video signal in the DCT transform domain. The bit planes of the DCT blocks are transmitted plane by plane in order of significance. As each plane contains more signal energy than the less significant layers together, the resulting bitstream is scalable in the sense that it may be truncated at any position. The later the bitstream is truncated, the smaller the residual error when the image is reconstructed. For each bit plane, a zone or partition of bit plane is created that encompasses all the non-zero bits of the DCT coefficients in that bit plane. The partition is created in accordance with a strategy which is selected from a number of options depending on the content of the overall signal and/or the actual bit plane. A different zoning strategy may be used for natural images than for graphic content, and the strategy may vary from bit plane to bit plane. The form as well as other properties such as the size of each partition can thus be optimally adapted to the content. Two-dimensional rectangular zones and one-dimensional zigzag scan zones may be mixed within an image or even within a DCT block. The selected zone creating strategy is embedded in the bitstream, along with the DCT coefficient bits in the actual partition.

EFFECT: high efficiency of a scalable method of compressing signal content.

13 cl, 5 dwg

FIELD: radio engineering, communication.

SUBSTANCE: invention relates to means of detecting illegal use of a processing device of a security system, used to descramble various media data distributed over multiple corresponding channels. The method includes counting new messages ECMj,c, received by the processing device of the security systems for channels, other than channel i, after the last received message ECMi,p; verifying that the message ECMi,c was received during said time interval by verifying that the number of new messages ECMj,c, received for channels other than i, reaches or exceeds a given threshold greater than two; increasing the counter Kchi by the given value each time when after verification a message ECMi,c is received during a given time interval, immediately after a message ECMi,p, otherwise the counter Kchi is reset to the initial value; detecting illegal use once the counter Kchi reaches said threshold.

EFFECT: reducing the probability of illegal use of a processing device.

10 cl, 3 dwg

FIELD: physics, computer engineering.

SUBSTANCE: invention relates to computer engineering. The method of decoding video comprises obtaining from a bit stream information on pixel value compensation in accordance with a pixel value band or a limiting value level, if information on pixel value compensation indicates a band, applying a compensation value of the predefined band obtained from the bit stream to the pixel included in the predefined band among pixels of the current block; and if information on pixel value compensation indicates a limiting value level, applying a compensation value of the predefined boundary direction obtained from the bit stream to the pixel in the predefined boundary direction among pixels of the current block, wherein the predefined band is one of bands formed by breaking down the full range of pixel values.

EFFECT: high quality of the reconstructed image.

3 cl, 22 dwg, 2 tbl

FIELD: physics, video.

SUBSTANCE: invention relates to means of encoding and decoding video. The method includes determining a first most probable intra-prediction mode and a second most probable intra-prediction mode for a current block of video data based on a context for the current block; performing a context-based adaptive binary arithmetic coding (CABAC) process to determine a received codeword, corresponding to a modified intra-prediction mode index; determining the intra-prediction mode index; selecting the intra-prediction mode.

EFFECT: high efficiency of signalling an intra-prediction mode used to encode a data block by providing relative saving of bits for an encoded bit stream.

50 cl, 13 dwg, 7 tbl

FIELD: physics, computer engineering.

SUBSTANCE: invention relates to a media device and a system for controlling access of a user to media content. Disclosed is a device (100, 200) for controlling access of a user to media content, the device comprising: an identification code output (102, 103, 202) for providing an identification code to the user, the identification code identifying the media device; a control code generator (104, 204) for generating a control code depending on the identification code and an access right; an access code input (106, 107, 206) for receiving an access code from the user. The access code is generated depending on the identification code and the access right by a certain access code device, and an access controller (108, 208) enables to compare the access code to the control code, and when the access code matches the control code, grants the user access to the media content in accordance with the access right.

EFFECT: managing user access to media content, wherein access is granted specifically on the selected media device.

14 cl, 6 dwg

FIELD: information technology.

SUBSTANCE: like or dislike of a content element played on a personalised content channel is determined based on feedback from the user; the profile is updated based on the determined like or dislike, wherein that profile is associated with the personalised content channel and contains a plurality of attributes and attribute values associated with said content element, where during update, if like has been determined, a classification flag associated with each of said attributes and attribute values is set; the degree of liking is determined for at least on next content element based on said profile; and that at least one next content element is selected for playing on the personalised content channel based on the calculated degree of liking.

EFFECT: method for personalised filtration of content elements which does not require logic input or user identification procedures.

5 cl, 1 dwg

FIELD: information technology.

SUBSTANCE: like or dislike of a content element played on a personalised content channel is determined based on feedback from the user; the profile is updated based on the determined like or dislike, wherein that profile is associated with the personalised content channel and contains a plurality of attributes and attribute values associated with said content element, where during update, if like has been determined, a classification flag associated with each of said attributes and attribute values is set; the degree of liking is determined for at least on next content element based on said profile; and that at least one next content element is selected for playing on the personalised content channel based on the calculated degree of liking.

EFFECT: method for personalised filtration of content elements which does not require logic input or user identification procedures.

5 cl, 1 dwg

FIELD: information technologies.

SUBSTANCE: method of a conversion system operation to manage digital rights to grant a license to a client's device corresponding to coded content consists in the following. The first content of the first type of digital rights content and the first license corresponding to the first content are converted to manage digital rights in order to generate the second content of the second type of digital rights content and the second license corresponding to the second content. A license request is received, corresponding to the second content distributed by means of superdistribution to a third party. The second license corresponding to the second content distributed by means of superdistribution is requested from a server corresponding to the second management of digital rights. The second license corresponding to the second content distributed by means of superdistribution is received and sent to a third party.

EFFECT: expansion of functional resources due to development of a license granting mechanism for appropriate content distributed by means of superdistribution.

17 cl, 6 dwg

FIELD: information technology.

SUBSTANCE: network server of television server sets in random manner according to Internet protocol (IPTV) time of request for receiving main license within time period starting from time of broadcast transmission and ending at preset time in accordance with request for receiving license for playback of encrypted content, where request for receive comes from IPTV client terminal, and transmits to IPTV client terminal information about time of request for receiving main license and temporary license comprising temporary key of content which key corresponds to playback of broadcast transmission content from time of broadcast transmission start till preset time. License server transmits main license including content main key which corresponds to full playback of content according to request for receiving main license which request is executed using IPTV client terminal based on information about request for receive.

EFFECT: stabilisation of license server operation by eliminating concentration of license receive requests from large number of clients during time just after starting broadcast transmission of content.

6 cl, 11 dwg

FIELD: information technology.

SUBSTANCE: multimedia content purchasing system comprising: a memory area associated with a multimedia service; a multimedia server connected to the multimedia service via a data communication network; a portable computing device associated with a user; and a processor associated with the portable computing device, said processor being configured to execute computer-executable instructions for: establishing a connection to the multimedia server when the multimedia server and the portable computing device are within a predefined proximity; authenticating the multimedia server and the user with respect to the authenticated multimedia server; transmitting digital content distribution criteria; receiving, in response, promotional copies of one or more of the multimedia content items and associated metadata; and purchasing, when the multimedia server and the portable computing device are outside the predefined proximity, at least one of said one or more multimedia content items.

EFFECT: enabling flexible sharing of multimedia content between subjects.

17 cl, 9 dwg

FIELD: information technologies.

SUBSTANCE: device (600) to process stored data packets (110; 112) in a container of media data (104) and stored related meta information in a container of meta data (106); related meta information, including information on timing of transportation and information on location, indicating location of storage of saved data packets in the media data container (104); a device, comprising a processor (602) for detection, based on stored data packets (110; 112) and stored related meta information (124; 128); information on decoding (604; 704) for media useful load of stored data packets (110; 112), where information on decoding (604; 704) indicates, at which moment of time to repeatedly reproduce which useful load of stored data packets.

EFFECT: immediate accurate timing of synchronisation between different recorded media streams without complicated processing during each reproduction of recorded media streams.

21 cl, 12 dwg

FIELD: information technology.

SUBSTANCE: provided is an integrated interface device for performing a hierarchical operation for specifying a desired content list. The interface device has a function to display a content list, content specified by the content list, or the like by efficiently using a vacant area in the lower part of the display by displaying icons which display a hierarchical relationship, for example, "display in a row", in the upper part of the screen, thereby freeing a large space in the lower part of the display.

EFFECT: efficient use of the entire screen even after displaying an interface for performing an operation.

17 cl, 42 dwg

FIELD: radio engineering, communication.

SUBSTANCE: channel of individualised content makes it possible to play multiple elements of content (programs) meeting multiple selection criteria. At least one additional element of content is recommended by a mechanism (107) of recommendations, besides, at least one additional element of content meets less quantity of criteria. In the version of realisation at least one recommended additional element of content is selected, and multiple selection criteria are corrected by a planner (109) on the basis of at least one characteristic of a selected recommended additional element of content.

EFFECT: provision of a method to generate a recommendation for an additional element of content, the method is specially adapted for use with channels of individualised content.

13 cl, 1 dwg

FIELD: radio engineering, communication.

SUBSTANCE: channel of individualised content makes it possible to play multiple elements of content (programs) meeting multiple selection criteria. At least one additional element of content is recommended by a mechanism (107) of recommendations, besides, at least one additional element of content meets less quantity of criteria. In the version of realisation at least one recommended additional element of content is selected, and multiple selection criteria are corrected by a planner (109) on the basis of at least one characteristic of a selected recommended additional element of content.

EFFECT: provision of a method to generate a recommendation for an additional element of content, the method is specially adapted for use with channels of individualised content.

13 cl, 1 dwg

FIELD: information technology.

SUBSTANCE: wireless transmission system includes: a device (1) which wirelessly transmits AV content and a plurality of wireless recipient devices (5, 6) for reproducing the transmitted AV content. The device (1) for transmitting content has a group identification table which stores a group identifier for identification of a group formed by the wireless recipient device (5, 6). The device (1) adds the group identifier extracted from the group identification table to a control command for controlling recipient devices (5, 6) and wirelessly transmits the control command having the group identifier. The recipient devices (5, 6) receive the wirelessly transmitted control command from the device (1) if the corresponding group identifier has been added to the control command. The device (1) for transmitting content consists of a wired source device and a relay device which is connected by wire to the wired source device, and the relay device is wirelessly connected to the wireless recipient device and mutually converts the wired control command transmitted to the wired source device, and the wireless control command transmitted to the wireless recipient device, wherein the wired source device and the relay device are connected via HDMI (High-Definition Multimedia Interface).

EFFECT: providing the minimum required volume of transmitting control commands during wireless audio/video transmission.

21 cl, 13 dwg

Up!