WO2015012227A1 - 情報処理装置および方法 - Google Patents

情報処理装置および方法 Download PDF

Info

Publication number
WO2015012227A1
WO2015012227A1 PCT/JP2014/069216 JP2014069216W WO2015012227A1 WO 2015012227 A1 WO2015012227 A1 WO 2015012227A1 JP 2014069216 W JP2014069216 W JP 2014069216W WO 2015012227 A1 WO2015012227 A1 WO 2015012227A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
file
image
sample
tile
Prior art date
Application number
PCT/JP2014/069216
Other languages
English (en)
French (fr)
Inventor
平林 光浩
しのぶ 服部
央二 中神
Original Assignee
ソニー株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to EP14829335.0A priority Critical patent/EP3026899A4/en
Priority to SG11201600260RA priority patent/SG11201600260RA/en
Priority to MX2016000538A priority patent/MX358607B/es
Priority to AU2014294127A priority patent/AU2014294127B2/en
Priority to KR1020167000460A priority patent/KR102229848B1/ko
Priority to CA2916892A priority patent/CA2916892A1/en
Priority to RU2016101199A priority patent/RU2650181C2/ru
Priority to CN201480040438.0A priority patent/CN105379256B/zh
Priority to JP2015528272A priority patent/JP6439981B2/ja
Priority to US14/905,154 priority patent/US10701425B2/en
Publication of WO2015012227A1 publication Critical patent/WO2015012227A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234345Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements the reformatting operation being performed only on part of the stream, e.g. a region of the image or a time segment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2355Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages
    • H04N21/2358Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages for generating different versions, e.g. for different recipient devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/8042Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/82Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
    • H04N9/8205Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal

Definitions

  • the present disclosure relates to an information processing apparatus and method, and more particularly to an information processing apparatus and method capable of more accurately grasping a performance required for decoding.
  • ITU-T International Telecommunication Union Telecommunication Standardization Sector
  • ISO / IEC International Organization for Standardization / ITU-T
  • AVC Advanced Video Coding
  • JCTVC Joint Collaboration Team-Video Coding
  • HEVC High Efficiency Video Coding
  • HEVC High Efficiency Video Coding
  • SEI SEI in HEVC version 2 or later (including MV-HEVC, SHVC, Range Ext., Etc.) to indicate that the tile area can be decoded independently.
  • MPEG-DASH Moving Picture Experts Group-Dynamic Adaptive Streaming over HTTP
  • HTTP HyperText Transfer Protocol
  • MPEG-DASH Bit stream of image data encoded by the above-described HEVC encoding scheme is filed and distributed in a predetermined file format such as, for example, an MP4 file format.
  • JCTVC Joint Collaborative Team on Video Coding
  • MPEG-DASH Dynamic Adaptive Streaming over HTTP
  • URL http://mpeg.chiariglione.org/standards/mpeg-dash/media-presentation-description-and-segment-formats/text-isoiec-23009-12012-dam -1)
  • the level (Level) and buffer (Buffer) capacity-related information used as a reference for the decoder to determine whether the stream can be decoded are values for the entire stream. Or, the value of the layer (Layer) unit was only defined.
  • the determination as to whether or not the decoding can be made is performed assuming the load when decoding the entire screen, and an unnecessarily high level (Level) decoder is required.
  • Level level
  • the present disclosure has been made in view of such a situation, and is intended to enable more accurate understanding of the performance required for decoding.
  • One aspect of the present technology is a file of an MP4 file format, which stores in moov information for grouping a plurality of partial images that can be decoded independently of the entire image, and the encoded partial images
  • the information processing apparatus includes a file generation unit that generates a file that stores mdat in mdat, and a storage unit that stores the file generated by the file generation unit.
  • the information for grouping the plurality of partial images may include information indicating an ID of a group obtained by grouping the plurality of partial images.
  • the information for grouping the plurality of partial images may include information representing an ID of each of the plurality of partial images related to a group obtained by grouping the plurality of partial images.
  • Information for grouping the plurality of partial images may be defined using VisualSampleGroupEntry in the moov.
  • the file generated by the file generation unit may include related information indicating the plurality of NAL units constituting the partial image.
  • the related information may include group information representing a group associated with each NAL unit.
  • the related information may include information indicating the number of the plurality of NAL units.
  • the related information may include information identifying a first NAL unit in the partial image.
  • the partial image can be set to be Tile in High Efficiency Video Coding (HEVC).
  • HEVC High Efficiency Video Coding
  • the partial image can be made up of a plurality of NAL units.
  • the partial image is stored in a first track in the file, and another partial image in the entire image that can be decoded independently is stored in a track other than the first track. be able to.
  • the information processing apparatus may further include a transmission unit that transmits the file stored by the storage unit to another device.
  • One aspect of the present technology is also a file of an MP4 file format, which stores information encoded in moov, which is information that groups a plurality of partial images that can be decoded independently in the entire image. It is an information processing method of generating a file for storing a partial image in mdat, and storing the generated file.
  • Another aspect of the present technology is a file in an MP4 file format, which stores information in moov that groups a plurality of partial images that can be decoded independently in the entire image, and is encoded
  • This is an information processing apparatus including a file reproduction unit that reproduces a file for storing an image in mdat.
  • the information for grouping the plurality of partial images may include information indicating an ID of a group obtained by grouping the plurality of partial images.
  • the information for grouping the plurality of partial images may include information representing an ID of each of the plurality of partial images related to a group obtained by grouping the plurality of partial images.
  • Information for grouping the plurality of partial images may be defined using VisualSampleGroupEntry in the moov.
  • the file may include related information representing the plurality of NAL units constituting the partial image in the moov.
  • the related information may include group information representing a group associated with each NAL unit.
  • the related information may include information indicating the number of the plurality of NAL units.
  • the related information may include information identifying a first NAL unit in the partial image.
  • the partial image can be set to be Tile in High Efficiency Video Coding (HEVC).
  • HEVC High Efficiency Video Coding
  • the partial image can be made up of a plurality of NAL units.
  • the partial image is stored in a first track in the file, and another partial image in the entire image that can be decoded independently is stored in a track other than the first track. be able to.
  • the information processing apparatus may further include a receiving unit that receives the file, and the file reproducing unit may reproduce the file received by the receiving unit.
  • the file stores, in a Visual Sample Group Entry, information indicating the position of the partial image within the entire image, information indicating the size of the partial image, and information for grouping the plurality of partial images.
  • the file reproduction unit selects an area to be reproduced based on the information indicating the position of the partial image in the entire image and the information indicating the size of the partial image, and groups the plurality of partial images
  • the data of the partial image corresponding to the area to be reproduced may be obtained based on the information to be generated to generate a bit stream.
  • the file stores, in a TileRegionGroupEntry, information indicating the position of the partial image in the entire image, information indicating the size of the partial image, and information for grouping the plurality of partial images.
  • the file reproduction unit selects an area to be reproduced based on the information indicating the position of the partial image in the entire image and the information indicating the size of the partial image, and groups the plurality of partial images Based on the information, it is possible to acquire a plurality of tracks corresponding to the selected area to be reproduced and generate a bitstream of partial images corresponding to the plurality of acquired tracks.
  • the image processing apparatus may further include a decoding unit that decodes the bit stream of the partial image reproduced and generated by the file reproduction unit.
  • Another aspect of the present technology is also a file in the MP4 file format, which is stored in moov and encoded with information that groups a plurality of partial images that can be decoded independently of the entire image. It is an information processing method for reproducing a file for storing the partial image in mdat.
  • a file of an MP4 file format which stores information in moov that groups a plurality of partial images that can be decoded independently of the entire image, and is encoded Is stored in mdat, and the generated file is stored.
  • the file storing the image in mdat is played back.
  • an image can be encoded / decoded.
  • the performance required for decoding can be grasped more accurately.
  • 5 is a flowchart illustrating an example of the flow of reproduction permission determination processing; It is a flowchart explaining the example of the flow of reproduction processing. It is a flowchart explaining the example of the flow of reproduction processing. It is a flowchart explaining the example of the flow of reproduction processing. It is a flowchart explaining the example of the flow of reproduction processing. It is a flowchart explaining the example of the flow of reproduction processing. It is a flowchart explaining the example of the flow of reproduction processing. It is a flowchart explaining the example of the flow of reproduction processing. It is a block diagram showing an example of main composition of a computer.
  • First embodiment> ⁇ Flow of standardization of image coding>
  • image information is treated as digital, and in that case, encoding is performed by orthogonal transformation such as discrete cosine transformation and motion compensation for the purpose of efficient transmission and storage of information, using redundancy unique to image information.
  • orthogonal transformation such as discrete cosine transformation and motion compensation
  • An apparatus for compressing and coding an image by adopting a method is becoming widespread. Examples of this encoding method include MPEG (Moving Picture Experts Group).
  • MPEG2 (ISO / IEC 13818-2) is defined as a general-purpose image coding method, and is a standard that covers both interlaced and progressive scan images as well as standard resolution images and high definition images.
  • MPEG2 is currently widely used in a wide range of applications for professional and consumer applications.
  • the MPEG2 compression method it is possible to allocate a code amount (bit rate) of 4 to 8 Mbps, for example, in the case of an interlace scan image of standard resolution having 720 ⁇ 480 pixels.
  • a code amount (bit rate) of 18 to 22 Mbps can be allocated. Thereby, a high compression rate and good image quality can be realized.
  • MPEG2 was mainly intended for high-quality coding suitable for broadcasting, it did not correspond to a coding amount (bit rate) lower than that of MPEG1, that is, a coding method with a higher compression rate.
  • bit rate bit rate
  • MPEG4 coding amount
  • the standard was approved as an international standard as ISO / IEC 14496-2 in December 1998.
  • H.26L International Telecommunication Union Telecommunication Standardization Sector (ITU) Q6 / 16 Video Coding Expert Group (VCEG)
  • ITU International Telecommunication Union Telecommunication Standardization Sector
  • VCEG Video Coding Expert Group
  • AVC Advanced Video Coding
  • FRExt also includes 8x8 DCT and quantization matrix specified by MPEG-2 such as encoding tools required for business use such as RGB and 4: 2: 2 and 4: 4: 4. Standardization of (Fidelity Range Extension) was completed in February 2005.
  • H.264 / AVC it has become a coding method capable of well representing film noise contained in a movie, and has been used for a wide range of applications such as Blu-Ray Disc (trademark).
  • JCTVC Joint Collaboration Team-Video Coding
  • ISO / IEC International Organization for Standardization / International Electrotechnical Commission
  • HEVC High Efficiency Video Coding
  • HEVC ⁇ Definition of tile structure and layer>
  • HEVC it is possible to use a tile structure to decode only an area that needs to be decoded by an application.
  • Supported by Motion-constrained tile sets SEI in HEVC version 2 or later (including MV-HEVC, SHVC, Range Ext., Etc.) to indicate that the tile area can be decoded independently.
  • MPEG-DASH Moving Picture Experts Group-Dynamic Adaptive Streaming over HTTP
  • MPEG-DASH a bit stream of image data encoded by the above-described HEVC encoding scheme is filed and distributed in a predetermined file format such as MP4.
  • Level (Level) and Buffer (Buffer) capacity related information which serve as a reference for determining whether the decoder can decode the stream, is MP4 even in the HEVC or other coding method.
  • the value of the entire stream or the value of the layer unit (layer), that is, the value of the entire image is only defined, and there is no information for reproducing only the partial image .
  • the determination as to whether or not the decoding is to be made is performed on the assumption of the load when decoding the entire screen, and there is a risk that a decoder with an unnecessarily high level may be required. In addition, there is also a risk that the applications that can be distributed may be unnecessarily restricted.
  • Examples of applications for reproducing partial images include the following.
  • an application for dividing one screen into a plurality of parts and distributing them while switching the display area is assumed.
  • an application for selecting a partial area to be displayed (distributed) in order to select an aspect ratio or resolution of an image is assumed.
  • the entire image can be divided into a plurality of tiles in units of tiles, and at the terminal, a partial image consisting of one or more tiles is cut out of the entire image and displayed.
  • the size (the number of tiles) of the displayable partial image is determined by, for example, the performance of the terminal (processing capacity, size of display (display resolution)) or the like.
  • the position of the partial image to be displayed in the entire image can be designated by the user or the like. Therefore, the terminal can display a partial image of a desired position in the entire image. That is, the user of the terminal can focus on the desired part of the overall image.
  • the application of FIG. 2 is basically the same as the application of FIG. 1, but the tiles are set so that the aspect ratio and resolution of the display image can be selected, and the size of each tile is constant. Absent.
  • a partial image consisting of one or more tiles is cut out of the entire image and displayed according to an instruction from the user or the like. By simply selecting the tiles to be displayed in this manner, the resolution of the displayed image can be set to HD, to a cinema size, or to a further expanded size.
  • the displayable resolution is determined, for example, by the performance of the terminal (processing capability, size of display (display resolution)), or the like.
  • sub-sample information including hint information that is a reference for decoding processing of a sub-sample that is a partial area that can be decoded independently is generated, a file including encoded data of image data is generated, and a code in the file The generated sub-sample information is arranged in the management information of the conversion data.
  • the terminal grasps the performance necessary to decode the partial area according to the sub-sample information (hint information), and its own decoder decodes the partial area (sub-sample) It is possible to more accurately determine whether it is possible to That is, it is possible to more accurately understand the performance required for decoding. Therefore, a decoder with appropriate performance can be selected by this image data. As a result, it is possible to suppress the occurrence of a situation where a decoder of an unnecessarily high level (Level) is applied to the decoding load of image data. Moreover, it can also be suppressed that the application that can be distributed for that purpose is unnecessarily restricted.
  • Level level
  • the header information of the encoded data (bit stream) of the partial area (subsample) is updated from the information of the entire image to the information about the partial area (subsample).
  • the information for the update is included in the file and transmitted.
  • the MP4 sample is referred to as an access unit (AU) of HEVC.
  • AU shall be comprised with several tiles (Tile).
  • Sample Table the sample table (Sample Table), it is assumed that they are managed in units of sample (Sample).
  • the subsample is a component of the sample and is defined as shown in FIG. 3 for each codec (Codec).
  • Codec codec
  • the present technology is applicable to any of these subsamples, but in the following, the present technology will be described by way of example in which the tile (Tile) is a subsample (Tile-based sub-samples).
  • an MP4 file compliant with MPEG-DASH includes ftyp, moov, and mdat.
  • management information is stored in a sample table box (Sample Table Box (stbl)) for each sample (for example, picture).
  • sample Table Box a sample description box (Sample Description Box), a time to sample box (Time To Sample Box), and a sample size box (Sample Size Box) Sample to Chunk Box, Chunk Offset Box, and Subsample Information Box are provided.
  • the sample description box stores information on the codec, the image size, and the like.
  • HEVC bit stream parameter set video parameter set (VPS (Video Parameter Set)
  • sequence parameter set SPS (Sequence Parameter Set)
  • SEI Supplemental Enhancement Information
  • picture parameter set PPS (Picture Parameter Set)
  • codec Codec information in the HEVC decoder configuration record (HEVC Decoder Configuration Record) of the HEVC sample entry in the sample description box.
  • time-to-sample box stores information on the time of the sample.
  • the sample size box stores information on the size of the sample.
  • the sample to chunk box stores information on the position of the data of the sample.
  • the chunk offset box stores information on data offsets. Information on the subsamples is stored in the subsample information box.
  • data of each sample (picture) of HEVC is stored in mdat as AV data.
  • access information to samples is stored in the time-to-sample box, the sample size box, the sample-to-chunk box, and the chunk offset box.
  • access information to the subsample is stored in the subsample information box.
  • the access information to this subsample consists of the size (Subsample Size) of each subsample and additional information (Subsample additional information).
  • the subsample information box stores access information to each of tile 1 (Tile 1) to tile 4 (Tile 4). Be done.
  • ⁇ Tile pattern> In the present technology, if the tile pattern is fixed for all samples (pictures etc.), if the tile pattern is variable for all samples, for example, if the tile pattern is fixed for a predetermined period such as IDR interval (the tile pattern is every predetermined period Expand the sample table box described above so that it can be applied in either case.
  • Sub sample hint information box For example, sub sample information including hint information that is a reference for decoding processing of a sub sample that is a partial area that can be decoded independently is installed in the sample table box as a new box of the sample table box .
  • FIG. 7 An example is shown in FIG. As shown in FIG. 7, a subsample hint information box (Subsample Hint Information Box) 11 is newly installed in the sample table box.
  • Subsample Hint Information Box 11 is newly installed in the sample table box.
  • the sub-sample hint information box 11 is sub-sample information including hint information serving as a reference for decoding of a sub-sample which is a partial area that can be decoded independently, and is a box different from the sub-sample information box etc. .
  • the sub-sample hint information box 11 stores information such as a hint data type (hint_data_type), a sample count (sample_count), hint data (hint_data) and the like.
  • the hint data type is information indicating the type of hint information of the subsample stored in this box.
  • the sample count is information indicating the number of consecutive samples associated with this information.
  • the hint data is subsample hint information. Different information is stored for each hint data type.
  • Example 1 the sub-sample hint information box 11 for storing information necessary for decoding is used for each sub-sample (tile) accessible in the sub-sample information box, which has been extended and defined as described above.
  • the subsample and the hint information are linked by the table index (table-index) of the subsample information box.
  • FIG. 8 shows a description example of the sub-sample hint information box 11.
  • the subsample hint information box 11-1 shown in FIG. 8 is a description example of the example 1.
  • hint_data_type "sspf"
  • hint information box 11-1 information of any one of the examples as shown in the square 12 is described as hint information (hint_data).
  • hint information for example, as in Example (A-1), describe information indicating the profile level required to decode the subsample (tile) (that is, a level representing the load of decoding processing of the subsample) (general_lebel_idc) You may do it.
  • flag information independent
  • flag information independent
  • information to be replaced when updating a sequence parameter set (SPS) of a bitstream of subsamples (tiles) that is, header information of encoded data of subsamples
  • SPS sequence parameter set
  • flag information independent may be further described to indicate whether subsamples (tiles) can be decoded independently to other subsamples (tiles).
  • Example 2 As the reproduction (provision) of the partial image, there are also cases where a plurality of subsamples are targeted as in the examples shown in FIG. 1 and FIG. Therefore, in the first example, the hint information is stored for each subsample (tile). However, in the second example, a plurality of subsamples are thus grouped, and information necessary for decoding the group is also provided.
  • tile 3 is provided as a group 14-1 in the entire image 13 consisting of tile 1 (Tile 1) to tile 5 (Tile 5).
  • tile 2 Tile 2 to tile 4 (Tile 4) are provided as a group 14-2.
  • all the tiles ie, tile 1 (Tile 1) to tile 5 (Tile 5)) of the entire image 13 are provided as a group 14-3.
  • Example 2 the sub-sample hint information box 11 for storing information necessary for decoding is used for each sub-sample (tile) accessible in the sub-sample information box, which has been extended and defined as described above.
  • Example 2 information for grouping a plurality of subsamples and information necessary for decoding each grouped tile group (information not normally needed) are respectively set as a subsample hint information box 11 Deploy. That is, these pieces of information are stored in different boxes. By doing this, it is possible to update the sequence parameter set (SPS) of the tile group encoded data using only the box of information necessary for decoding each grouped tile group.
  • SPS sequence parameter set
  • the sub-sample hint information box 11-2-1 shown in FIG. 11 is a description example of information for grouping a plurality of sub-samples of Example 2.
  • hint_data_type "ssgp”
  • group_index which is identification information indicating a group to which the sub-sample belongs.
  • group_index is identification information indicating a group to which the sub-sample belongs.
  • the sub-sample hint information box 11-2-2 shown in FIG. 12 is an example of description of information necessary for decoding each grouped tile group in Example 2.
  • hint_data_type "sgpf”
  • hint information box 11-2-2 information of any one of the examples as shown in the square 12 is described as the hint information (hint_data), for example. That is, in this case, it is possible to describe, as the sub-sample information, a level indicating the size of the load of decoding processing of the group of sub-samples, and header information of encoded data of the group of sub-samples.
  • motion constrained tile set ID may be stored.
  • Example 3 In the case of Example 2, a plurality of sub-sample hint information boxes 11 are required, but in Example 3, these are combined into one box. In Example 3, a sub-sample hint information box 11 is set for each group of sub-samples (tiles), and an index table of the sub-samples is created therein.
  • FIG. 13 shows an example of description of the sub-sample hint information box 11.
  • the sub-sample hint information box 11-3 shown in FIG. 13 is a description example of Example 3.
  • hint_data_type "sgpf ").
  • hint information box 11-3 information of any one of the examples as shown in the box 12, for example, is described as the hint information (hint_data).
  • subsample_index which is identification information indicating a subsample belonging to a group.
  • subsample_index which is identification information indicating a subsample belonging to a group.
  • the entry count indicates how many times the hint information changes in the sequence
  • the sample count indicates how many samples (pictures) the same hint information lasts for .
  • identification information of sub-samples belonging to a group and hint information of the group can be included as sub-sample information.
  • the hint information of the group it is possible to include header information of encoded data of a level or a group indicating the size of the load of decoding processing of the group.
  • sample hint information box 11 is set up, but it is possible to include subsample information including hint information to be used as a reference for decoding of subsamples that are partial areas that can be decoded independently.
  • the technology is not limited to this method.
  • a sample group description box 21 and a sample to group box 22 can be installed in the sample table box of the MP4 file.
  • the sample group description box 21 stores, as a visual sample group entry (Visual Sample Group Entry) 23, information other than basic information of the sample table such as information on a codec (codec) and access information. Be done.
  • a visual sample group entry Visual Sample Group Entry
  • codec codec
  • the sample-to-group box 22 stores the visual sample group entry 23 and information for linking each sample.
  • sample group description box 21 and the sample to group box 22 are used to file sub-sample information including hint information to be used as a reference for decoding of a sub-sample which is a partial area that can be decoded independently.
  • hint information to be used as a reference for decoding of a sub-sample which is a partial area that can be decoded independently.
  • the sub-sample hint information box 11-4 shown in FIG. 16 is a description example of Example 3.
  • the hint data type and the information enclosed by the lower box including the hint data are stored as the visual sample group entry 23 in the sample group description box 21 in this description.
  • the information enclosed by the upper square including the entry count in the sub-sample hint information box 11-4 is stored in the sample-to-group box 22 as information for linking the visual sample group entry 23 and the sample.
  • the hint data table can be compressed, and the amount of information can be reduced.
  • the method of Example 4 is the information of the sub-sample hint information box of Example 1 and Example 2 Can also be applied. That is, the information of the sub-sample hint information box described in the example 1 and the example 2 can be stored in the sample group description box 21 and the sample-to-group box 22 as in the case of the example 3 described above.
  • the visual sample group entry 23-1 of FIG. 17 is extended to store sub sample profile information when the entries are configured in the same way as the group of the example of FIG. 10 (SubSampleProfileInformationEntry extends VisualSampleGroupEntry ( An example of 'sspi')) is shown.
  • hint information for each entry, hint information (hint_data) and identification information (Group ID) of the group to which the entry corresponds are set.
  • this hint information for example, information of any one of the examples as shown in the box 12 is described.
  • sub-sample indexes which are identification information of sub-samples (tiles) belonging to each entry, are listed up as in the example in the box 31.
  • each subsample (tile) is an entry (group). That is, in the case of FIG. 18A, tile 1 (Tile1) is provided as the entry 14-4, and in the case of FIG. 18B, the tile 2 (Tile2) is provided as the entry 14-5 and in the case of C of FIG. , Tile 3 (Tile 3) is provided as entry 14-6. Although illustration is omitted, similarly, tile 4 (Tile 4) and tile 5 (Tile 5) are also provided as different entries.
  • the visual sample group entry 23 (SubSampleProfileInformationEntry extends Visual Sample Group Entry ('sspi')) is as shown in the example of FIG.
  • hint information (hint_data). Described.
  • sub-sample indexes which are identification information of sub-samples (tiles) belonging to each entry are listed up as in the example in the square 32. That is, in this case, one subsample index is assigned to each entry.
  • visual sample group entry is described to include the subsample index (subsample_index) as in the visual sample group entry 23-2 in FIG. 20, for example, for each subsample together with the subsample index
  • subsample_index subsample index
  • the visual sample group entry is described to include the subsample index (subsample_index) as in the visual sample group entry 23-2 in FIG. 20, for example, for each subsample together with the subsample index
  • flag information independent
  • a reserved field reserved field
  • the system can be used as auxiliary information for parallel decoding and the like.
  • hint information information of any one of the examples as shown in the box 12 is described as hint information (hint_data).
  • hint information information on any one of the examples as shown in the box 12 is described as hint information (hint_data).
  • hint information on the size of grouped sub-samples (tiles) such as width or height may be stored, or horizontal offset (H_offset) or vertical direction may be stored.
  • Information on the position of grouped subsamples (tiles), such as offset (V_offset) may be stored.
  • the system can easily obtain grouped sub-sample size information without having to calculate it from the sub-sample information box.
  • hint information (hint_data)
  • mcts_id which is information for identifying a partial area that can be independently decoded
  • partial regions that can be decoded independently are set for each set of rectangles. For example, if the upper left hatched portion in A of FIG. 21 is a partial region that can be decoded independently, the partial region is set for each set as shown in B of FIG. 21 in MCTS SEI. There is. Note that, as in the example shown in FIG. 21C, tiles included in a set may overlap with other sets.
  • the number of pixels in the partial area can be calculated from the number of pixels in each set, for example, as in the example of D in FIG.
  • identification information (mcts_id) is assigned to each partial region as shown in FIG.
  • hint information (hint_data)
  • SPS sequence parameter set
  • Example 5 By the way, in the case of Example 4, the visual sample group entry has been expanded, and the subsamples belonging to each entry have been described as shown using the subsample index. In this case, the information in the sub-sample information box is used as access information to tiles in the sample. That is, in this case, it is necessary to interpret the meaning of the subsample in the layer that parses the MP4 file.
  • Example 5 proposes an alternative method for accessing tiles in a sample such a method. That is, instead of the sub-sample information box, the configuration of the null unit (NAL unit) of the bit stream constituting the sample is described in the visual sample group entry (Map Group Entry). For example, the visual sample group entry is expanded to group NAL units of the HEVC bitstream (HEVCNAUUMapGroupEntry).
  • FIG. 23 An example is shown in FIG. As shown in FIG. 23, for example, a visual sample group that prepares a visual sample group entry that maps (eg, groups by tile) NAL units in a sample, and stores video related information such as hint information, for example In the entry, reference is made to a visual sample group entry that maps NAL units in the sample.
  • a visual sample group that prepares a visual sample group entry that maps (eg, groups by tile) NAL units in a sample, and stores video related information such as hint information, for example In the entry, reference is made to a visual sample group entry that maps NAL units in the sample.
  • HEVCN ALUMap Group Entry extends Visual Sample Group Entry ('hcnm')) for mapping NAL units in a sample is shown in the upper left of FIG.
  • identification information Group ID of a group to which each null unit (NAL unit) belongs is set.
  • each subsample is configured by two NAL units.
  • the connection between the NAL unit and the Group ID is as shown in the example shown on the right side of FIG. Therefore, it is comprised by ten NAL units.
  • the NALU_count of the syntax of the visual sample group entry (HEVCNALUMapGroupEntry () extends VisualSampleGroupEntry ('hcnm')) shown in the upper left of FIG. 24 represents the number of NAL_units.
  • HEVCNALUMapGroupEntry extends VisualSampleGroupEntry ('hcnm')
  • Tile1 starts from NAL1
  • Tile2 starts from NAL3
  • Tile3 starts from NAL5
  • Tile4 starts from NAL7
  • Tile5 starts from NAL9.
  • Information indicating which NAL_unit each such tile starts from may be defined as the syntax of the visual sample group entry (HEVCNALUMapGroupEntry () extends VisualSampleGroupEntry ('hcnm')) shown in the upper left of FIG. .
  • FIG. 1 An example of a visual sample group entry (SubSampleProfileInformationEntry extends Visual Sample Group Entry ('sspi')) for storing the profile information of the subsample described in the example 4 is shown in FIG.
  • hint information hint information
  • Group ID identification information
  • hint information for example, the information of any one of the examples as shown in the square 12 described in the examples 1 to 4 is set. .
  • examples (C) other than the examples (A-1), (A-2), (B-1), and (B-2) can be used.
  • Has been added information on the positions of grouped subsamples (tiles) such as horizontal offset (H_offset) and vertical offset (V_offset) is stored.
  • the NAL unit One of the group identification information (Group ID) used for the mapping of is set. That is, the identification information (Group ID) of this group indicates a group of tiles as in the example of FIG.
  • a visual sample group entry (SubSampleProfileInformationEntry extends VisualSampleGroupEntry ('sspi')) for storing subsample profile information is also shown in FIG.
  • Information similar to the example of FIG. 25 is set as in the example shown in FIG. 26, but in this case, the identification information (Group ID) of the group indicates each tile.
  • a BOX for converting GROUP by MAP GROUP into TILE GROUP may be defined in a BOX different from SSPI (SubSample Profile Information). That is, the definition of the group identification information (Group ID) by HEVCNALMapEntry corresponding to each entry is a visual sample group entry (SubSampleProfileInformationEntry extends VisualSampleGroupEntry (', which stores profile information of a subsample defining hint information (hint_data) corresponding to the entry). It may be performed in a visual sample group entry (TileGroupMapEntry extends VisualSampleGroupEntry ('tgpm')) extended to store tile group map entries, which is a box different from sspi ')).
  • SSPI Sample Profile Information
  • TGPM may be, for example, as follows.
  • a GroupID is assigned to TileGroupID as follows.
  • syntax of SSPI may be, for example, as follows.
  • hint information in this case are the same as those of the above-described examples (information of any one of the examples as shown in the square 12 is set).
  • GroupIDs in a box different from sspi that defines hint information etc., it is possible to reduce the degree of dependence of the grouping on other information, and to be independent of other information. Can be done. Therefore, more general purpose (free) grouping can be realized, and the group of Group IDs (TileGroup ID) can be used for more general purpose applications. For example, it is possible to easily realize hierarchization or non-hierarchization of the definition of Group ID without having to consider the configuration of other information such as hint information.
  • NAL-unit-based sub-samples contains one or more contiguous NAL units.
  • a sub-sample is mapped to GroupID, grouping in HEVC NAL Map Group Entry.
  • FIG. 27 is a view for explaining a configuration example of the tile image MP4 file.
  • This MP4 file is obtained by filing a bit stream having a tile structure into one file. As shown in FIG. 27, this MP4 file has five tracks Track1 to Track5.
  • the track track 1 has an HEVC sample entry (HEVC sample entry) in a sample description box, and its codec type is hvc 1 indicating that it is a normal HEVC bit stream.
  • This sample entry (Sample Entry) has an HEVC decoder configuration record (HEVC Decoder Configuration Record) (hvcC box) that stores configuration information necessary for decoding HEVC.
  • This hvcC box also includes header information such as video parameter set (VPS (Video Parameter Set)), sequence parameter set (SPS (Sequence Parameter Set)), SEI (Supplemental Enhancement Information), picture parameter set (PPS (Picture Parameter Set)), etc. Stored in It is optional whether or not SEI is stored in this hvcC box.
  • Track track1 also has Extractor Track2 to Track5 for reference to the tiles of each track track2 to track5.
  • Extractor Track2 refers to the slice (Tile1) of track Track2
  • Extractor Track3 refers to the slice (Tile2) of track Track3.
  • the Extractor Track 4 refers to the slice (Tile 3) of the Track Track 4
  • the Extractor Track 5 refers to the slice (Tile 4) of the Track Track 5.
  • the tracks track2 to track5 store slices slice which are actual data of tiles Tile1 to Tile4, respectively.
  • Tracks track 2 to track 5 have sample entries, but since these store only HEVC tiles (alone), the codec type is set to hvt 1.
  • the sample entries (Sample Entry) of the tracks track 2 to track 5 have an HEVC decoder configuration record (HEVC Decoder Configuration Record) (hvtC box) that stores configuration information necessary for decoding only the HEVC tile. Note that grouped tiles (Tile) may be stored in one track.
  • the tracks track2 to track5 also have tile region group entries (TileRegionGroupEntry).
  • TileRegionGroupEntry Group ID which is identification information for identifying each tile, H_offset indicating the horizontal position (offset) of the tile, and the vertical position of the tile.
  • H_offset indicating the horizontal position (offset) of the tile
  • V_height indicating vertical size (height) of the tile. Also, these may be defined for grouped tiles (Tile).
  • HEVC Decoder Configuration Record HEVC Decoder Configuration Record
  • hvtC box HEVC Decoder Configuration Record
  • Class HEVCConfigurationBox extends Box ('hvtc') ⁇ HEVCTileDecoderConfigurationRecord () HEVCTileConfig; ⁇
  • FIG. 28 is a diagram for explaining an HEVC tile decoder configuration record.
  • the HEVC tile decoder configuration record of Example 1 is configured as shown in FIG. Three components, configurationVersion, mcts_tier_flag and mcts_level_idc, have been added in an extensible manner.
  • the configurationVersion represents the version of the HEVC tile decoder configuration record.
  • two different Bitrate profiles are defined, ie, tier, for the same image size. That is, the two types are main tier and high tier.
  • mcts_tier_flag is a flag indicating which one of them.
  • mcts_level_idc is the decoding processing of the partial area as the decoding load definition information that defines the size of the decoding processing load of the partial area that can be decoded independently in temporal MCTS SEI (Temporal Motion constrained tile set Supplemental Enhancement Information) Is a level that represents the size of the load of
  • FIG. 29 is a diagram showing an example of the syntax of temporal MCTS SEI.
  • various information including mcts_tier_flag, mcts_level_idc, max_mcts_tier_flag, and max_mcts_level_id are stored.
  • the temporal MCTS SEI is substantially the same as the MCTS SEI except for the name. Also, mcts_level_idc in FIG. 28 and FIG. 29 is different from generals_level_idc shown in the square 12 in FIG. 8, FIG. 12, FIG. 13, FIG. 17, FIG. It is substantially the same.
  • FIG. 30 is a diagram for explaining an HEVC tile decoder configuration record.
  • the HEVC tile decoder configuration record of Example 2 is configured as shown in FIG.
  • Example 2 of FIG. 30 has basically the same configuration as Example 1 of FIG. However, Example 1 is different from Example 1 in that temporal_motion_constrained_tile_sets SEI corresponding to the HEVC Title is stored in numOfArrays in which substantially nothing is stored in Example 1.
  • FIG. 31 is a diagram for explaining an HEVC tile decoder configuration record.
  • the HEVC tile decoder configuration record of Example 3 is configured as shown in FIG.
  • Example 3 unlike the examples of FIGS. 28 and 30, rather than extending the HEVC tile decoder configuration record, its pattern is uniquely defined. That is, in Example 3, among the parameters stored in temporal_motion_constrained_tile_sets SEI, only mcts_tier_flag and mcts_level_idc, which are parameters necessary for decoding judgment of HEVC Tile, are stored in addition to configurationVersion.
  • FIG. 32 is a diagram for explaining an HEVC tile decoder configuration record.
  • the HEVC tile decoder configuration record of Example 4 is configured as shown in FIG.
  • mcts_tier_flag, mcts_level_idc, max_mcts_tier_flag, and max_mcts_level_id are stored as parameters necessary for decoding judgment of HEVC Tile stored in temporal_motion_constrained_tile_sets SEI.
  • max_mcts_tier_flag and max_mcts_level_id represent the maximum values of mcts_tier_flag and mcts_level_idc, respectively, and are profile information necessary to reproduce other tiles. That is, these are the information for the largest tile of the whole stream. In the example of FIG. 36 described later, this is stored in another box (hvte box).
  • mcts_tier_flag and mcts_level_idc required for each Tile may be different.
  • max_mcts_tier_flag and max_mcts_level_idc which are the maximum values, together with mcts_tier_flag and mcts_level_idc for each tile, it is used as hint information for the decoding process.
  • FIG. 33 is a diagram for explaining an HEVC tile decoder configuration record.
  • the HEVC tile decoder configuration record of Example 5 is configured as shown in FIG.
  • FIG. 34 is a diagram for explaining an HEVC tile decoder configuration record.
  • the HEVC tile decoder configuration record of Example 6 is configured as shown in FIG.
  • Example 6 has a configuration in which Example 3 of FIG. 31 and Example 5 of FIG. 33 are combined. That is, Example 3 from the configurationVersion to the line of mcts_level_idc and Example 5 of the line after lengthSizeMinusOne are combined.
  • mcts_tier_flag and mcts_level_idc which are parameters necessary for HEVC Tile decoding determination stored in temporal_motion_constrained_tile_sets SEI, and temporal_motion_constrained_tile_sets SEI corresponding to HEVC Tile necessary for HEVC Tile decoding determination are stored. It is a structure.
  • FIG. 35 is a diagram for explaining an HEVC tile decoder configuration record.
  • the HEVC tile decoder configuration record of Example 7 is configured as shown in FIG.
  • Example 7 has a configuration in which Example 4 of FIG. 32 and Example 5 of FIG. 33 are combined. That is, Example 4 from the configurationVersion to the line of max_mcts_level_idc and Example 5 of the line after lengthSizeMinusOne are combined.
  • the configuration_sensitivity can be used as parameters for the HEVC Tile that are necessary to decode the HEVC Tile stored in the temporal_motion_constrained_tile_sets SEI, in addition to the configurationVersion mcts_tier_flag, mcts_level_idc, max_mcts_tier_flag, max_mcts_level_id, and the HEVC Tile required for the decode determination. Is stored.
  • FIG. 36 is a view for explaining a configuration example of an MP4 file of a tile image different from that of FIG.
  • the MP4 file in FIG. 36 basically has the same configuration as the MP4 file in FIG. 27, but in the MP4 file in FIG. 36, the sample entry of track Track 1 has hvte box in addition to hvcCbox. This is different from the MP4 file in FIG.
  • max_mcts_tier_flag and max_mcts_level_id which are information for the largest tile of the entire stream described in FIG. 32, are stored in the hvte box of the track Track 1 which is the base track.
  • FIG. 37 is a diagram for explaining the HEVC tile extension box.
  • a of FIG. 37 represents an extension of the visual sample group entry of the sample entry of the track Track 1 of FIG. 36.
  • HEVC CTileExtensionBox (hvte box) is added.
  • B of FIG. 37 represents the syntax of the HEVCTileExtensionBox (). As shown in B of FIG. 37, max_mcts_tier_flag and max_mcts_level_id are stored.
  • max_mcts_tier_flag and max_mcts_level_id are information for the maximum Tile of the entire stream, they are stored in the base track Track1 without being stored in the Tile Track (tracks Track2 to Track5). This makes it possible to easily obtain the maximum value required to decode any tile alone.
  • FIG. 38 is a view for explaining a configuration example of an MP4 file of tile images.
  • the MP4 file in FIG. 38 basically has the same configuration as the MP4 file in FIG. 27. However, in the MP4 file in FIG. 27, it is necessary to decode only HEVC Tile in the hvtC box of the sample entries of tracks Track 2 to Track 5. Configuration information is stored.
  • the MP4 file in FIG. 38 the temporal_motion_constrained_tile_sets SEI is not only stored in the hvtC box as in the example shown in the examples in FIG. 30, FIG. 33, FIG. 34 and FIG. The VPS, SPS, and PPS necessary for decoding only HEVC Tile are stored.
  • FIG. 39 is a diagram illustrating an image encoding device, which is an aspect of an image processing device to which the present technology is applied.
  • the image coding apparatus 100 shown in FIG. 39 is an apparatus for coding input image data according to the HEVC coding system and filing it in the MP4 file format.
  • the image coding apparatus 100 includes an image coding unit 101, a sub-sample information generation unit 102, and an MP4 file generation unit 103.
  • the image encoding unit 101 divides the entire image of the input image data into partial images called tiles, and sets each tile as image data of the entire image as tiles supported by the HEVC encoding method. Encode each tile. That is, a bit stream (HEVC bit stream) of the HEVC coding scheme that can be decoded independently for each tile is generated.
  • HEVC bit stream HEVC bit stream
  • the image coding unit 101 supplies the obtained HEVC bit stream to the MP4 file generation unit 103. Further, the image coding unit 101 supplies tile information on how the entire image is divided and profile information of each tile to the sub-sample information generation unit 102.
  • the sub-sample information generation unit 102 includes tile information and tile profile information supplied from the image encoding unit 101 and includes such information corresponding to the MP4 file format, that is, independence of the entire image.
  • Sub-sample information extended sub-sample information
  • the sub-sample information generation unit 102 supplies the generated extended sub-sample information to the MP4 file generation unit 103.
  • the MP4 file generation unit 103 converts the HEVC bit stream supplied from the image coding unit 101 into an MP4 file format, and generates sub-sample information in management information for managing the HEVC bit stream of a file including the HEVC bit stream.
  • the extended sub-sample information supplied from the unit 102 is stored.
  • the MP4 file generation unit 103 uses the subsample hint information box (Subsample) different from the subsample information box of the sample table box (Sample Table Box) of the management information described above. Arrange as Hint Information Box).
  • the MP4 file generation unit 103 sets the extended sub-sample information as a visual sample group entry (VisualSampleGroupEntry) in the sample group description box of the sample table box of the management information described above.
  • Information for specifying a sample to be arranged and to which the sub-sample information is to be applied is arranged in a sample to group box.
  • the extended sub-sample information generated by the sub-sample information generation unit 102 is a hint to be a reference for decoding processing of the sub-sample which is a partial region that can be decoded independently in the entire image. Not only information but also map group information (Map Group Entry) for grouping NAL units is included.
  • the MP4 file generation unit 103 outputs the MP4 file generated as described above, and transmits the MP4 file to, for example, the decoding side via a network, a recording medium, or an information processing apparatus.
  • the image coding apparatus 100 can more accurately understand the performance required for decoding.
  • step S101 the image coding unit 101 codes the image data so that it can be decoded for each subsample (tile).
  • step S102 the image encoding unit 101 extracts information on tiles, such as tile information and profile information on each tile.
  • step S103 the sub-sample information generation unit 102 generates extended sub-sample information including tile hint information using the information on the tile extracted in step S102.
  • step S104 the MP4 file generation unit 103 uses the extended sub-sample information to include, in the moov sample table box, hint information to be a reference for the decoding process of the sub-sample which is a partial area that can be decoded independently. Generate MP4 files.
  • step S104 ends, the image encoding process ends.
  • the image coding apparatus 100 can more accurately understand the performance required for decoding.
  • FIG. 41 is a block diagram illustrating a principal configuration example of an image decoding device corresponding to the image coding device 100, which is an aspect of the image processing device to which the present technology is applied.
  • the image decoding apparatus 200 shown in FIG. 41 decodes the encoded data generated by the image encoding apparatus 100 by a decoding method corresponding to the encoding method. That is, the image decoding apparatus 200 extracts the HEVC bit stream from the MP4 file, decodes the HEVC bit stream, and outputs image data.
  • the image decoding apparatus 200 can decode a partial image consisting of one or more tiles (Tile) independently of other parts, for example, using a tile structure supported by HEVC.
  • the image decoding apparatus 200 can perform the decoding possibility determination based on the hint information that is the reference of the decoding process of the subsample that is the partial area that can be decoded independently.
  • the image decoding apparatus 200 includes an MP4 file reproduction unit 201, a sub-sample information processing unit 202, and an image decoding unit 203.
  • the MP4 file reproducing unit 201 performs reproduction permission determination processing of the input MP4 file, performs reproduction processing of the MP4 file, and performs error processing.
  • the MP4 file reproducing unit 201 performs these processes using the sub-sample information processing unit 202, and generates an HEVC bit stream of a partial image (of course the entire image may be formed of one or more tiles). , And supplies to the image decoding unit 203.
  • the sub-sample information processing unit 202 performs processing on sub-sample information in the reproduction determination processing and the reproduction processing.
  • the contents of the sub-sample information are the same as any of the examples described in the first embodiment.
  • the extended sub-sample information generated by the sub-sample information generation unit 102 is a hint to be a reference for decoding processing of the sub-sample which is a partial region that can be decoded independently in the entire image. Not only information but also map group information (Map Group Entry) for grouping NAL units is included.
  • the image decoding unit 203 decodes the HEVC bit stream generated by the MP4 file reproduction unit 201, and outputs the image data.
  • the image decoding apparatus 200 can more accurately understand the performance required for decoding.
  • the MP4 file reproducing unit 201 and the sub-sample information processing unit 202 of the image decoding apparatus 200 specify the HEVC bit stream included in the input MP4 file in step S201 by the user or the like. It is judged whether the partial image can be reproduced or not.
  • step S202 the MP4 file reproducing unit 201 determines whether or not to reproduce based on the processing result in step S201. If it is determined that reproduction is to be performed, the process proceeds to step S203.
  • step S203 the MP4 file reproduction unit 201 and the sub-sample information processing unit 202 perform reproduction processing.
  • step S204 the image decoding unit 203 decodes the encoded data (HEVC bit stream) of the partial image consisting of one or more tiles obtained by the processing of step S203, and a partial image consisting of one or more tiles Output image data of
  • step S204 ends, the image decoding process ends.
  • step S202 If it is determined in step S202 that reproduction is not to be performed, the process proceeds to step S205.
  • step S205 the MP4 file reproducing unit 201 performs an error process which is a predetermined process when the decryption can not be normally performed.
  • This error process may be any process.
  • the decoding may be forcibly terminated (including interruption, pause, and the like), or the user may be warned by an image or a sound.
  • another encoded stream with a lower level may be obtained and re-decoded.
  • distortion may occur in the decoded image, and the encoded stream may be forcibly decoded.
  • step S205 ends, the image decoding process ends.
  • step S221 the MP4 file reproducing unit 201 sets the sequence parameter set of the HEVC bit stream included in the MP4 file from the HEVC sample entry of the sample description box of the sample table box of the MP4 file. Get (SPS).
  • step S222 the MP4 file reproducing unit 201 determines whether the profile information included in the sequence parameter set (SPS) is profile information corresponding to the image decoding unit 203. That is, based on the information included in the sequence parameter set (SPS), the MP4 file reproducing unit 201 determines whether the image decoding unit 203 can decode the HEVC bit stream of the entire image included in the MP4 file. judge.
  • SPS sequence parameter set
  • step S223 the MP4 file playback unit 201 controls to perform playback. That is, it is determined in step S202 in FIG.
  • step S223 ends, the reproduction permission determination process ends, and the process returns to FIG.
  • step S222 If it is determined in step S222 that the profile information does not correspond to the image decoding unit 203, that is, it is determined that the image decoding unit 203 can not decode the HEVC bit stream of the entire image included in the MP4 file. If yes, the process proceeds to step S224.
  • step S224 the sub-sample information processing unit 202 acquires hint information of a tile (sub-sample) from the sample table box of the MP4 file.
  • step S225 the sub-sample information processing unit 202 determines whether the profile information included in the hint information acquired in step S224 is profile information corresponding to the image decoding unit 203. That is, the sub-sample information processing unit 202 determines whether the image decoding unit 203 can decode the HEVC bit stream of the partial image including one or more tiles included in the MP4 file.
  • step S225 If it is determined in step S225 that the profile information does not correspond to the image decoding unit 203, that is, it is determined that the image decoding unit 203 can not decode the HEVC bit stream of the partial image included in the MP4 file. If yes, the process proceeds to step S226.
  • step S226 the MP4 file reproducing unit 201 performs control to perform error processing as described above.
  • step S226 ends, the reproduction permission determination process ends, and the process returns to FIG.
  • the MP4 file reproduction unit 201 acquires a sequence parameter set (SPS) and a picture parameter set from the MP4 file in step S241.
  • SPS sequence parameter set
  • step S242 the sub-sample information processing unit 202 acquires hint information of the tile to be reproduced from the MP4 file.
  • step S243 the MP4 file reproducing unit 201 updates the sequence parameter set (SPS) acquired in step S241, using the hint information of the tile obtained in step S242.
  • the MP4 file reproducing unit 201 uses the information (profile level etc.) included in the hint information to set the sequence parameter set. Rewrite the (SPS) information.
  • the MP4 file reproducing unit 201 replaces the information included in the hint information with the sequence parameter set (SPS). .
  • step S244 the sub-sample information processing unit 202 acquires tile data to be reproduced from the MP4 file.
  • the sub-sample information processing unit 202 refers to the sub-sample information box as in the example of FIG. To get.
  • the sub-sample information processing unit 202 is set in the visual sample group entry (HEVCNALUMapGroupEntry () extends VisualSampleGroupEntry ('hcnm')) that maps the NAL units in the sample as in the example of FIG.
  • the data of the NAL unit constituting the subsample (tile) is accessed and acquired with reference to the linking of the NAL unit and the Group ID (map pattern of the NAL unit) (Map Group Entry).
  • step S245 the MP4 file reproducing unit 201 generates a bit stream of the tile (partial image) to be reproduced, using the tile data obtained in step S244, the sequence parameter set updated in step S243, and the like.
  • step S245 ends, the process returns to FIG. That is, the bit stream of the generated partial image is decoded.
  • the image decoding apparatus 200 can more accurately understand the performance required for decoding.
  • the MP4 file reproducing unit 201 obtains information on the position of the tile (H_offset, V_offset) and information on the size of the tile (Width, Height) from the visual sample group entry in step S261. Do.
  • step S262 the MP4 file reproducing unit 201 selects a tile to be reproduced based on the acquired information on the position of the tile and the information on the size of the tile.
  • step S263 the sub-sample information processing unit 202 acquires, from the visual sample group entry, information (NALU_count, groupID) on the map pattern of the NAL unit corresponding to the selected tile.
  • step S264 the sub-sample information processing unit 202 acquires tile data based on the information on the NAL unit map pattern acquired in step S263.
  • step S265 the MP4 file reproducing unit 201 reproduces the bit stream of the tile acquired in step S264.
  • step S265 ends, the process returns to FIG. That is, the bitstream of the reproduced partial image is decoded.
  • the image decoding apparatus 200 can more accurately understand the performance required for decoding.
  • the MP4 file playback unit 201 obtains information on the position of the tile (H_offset, V_offset) and information on the size of the tile (Width, Height) from the visual sample group entry in step S281. Do.
  • step S282 the MP4 file reproducing unit 201 selects an area to be reproduced based on the acquired information on the position of the tile and the information on the size of the tile.
  • step S283 the sub-sample information processing unit 202 acquires, from the visual sample group entry, a plurality of GroupIDs based on the TileGroupID corresponding to the area to be reproduced.
  • step S284 the sub-sample information processing unit 202 acquires, from the visual sample group entry, information (NALU_count, groupID) related to the map pattern of the NAL unit corresponding to the tile of the plurality of selected GroupIDs.
  • step S285 the sub-sample information processing unit 202 acquires data of each tile based on the information on the map pattern of the NAL unit acquired in step S284.
  • step S286 the MP4 file reproducing unit 201 reproduces the bit stream of each tile acquired in step S285.
  • step S286 When the process of step S286 ends, the process returns to FIG. That is, the bitstream of the reproduced partial image is decoded.
  • the image decoding apparatus 200 can more accurately understand the performance required for decoding.
  • step S301 the MP4 file reproducing unit 201 acquires information on the position of the tile (H_offset, V_offset) and information on the size of the tile (Width, Height) from the tile region group entry. Do.
  • step S302 the MP4 file reproducing unit 201 selects a tile to be reproduced based on the acquired information on the position of the tile and the information on the size of the tile.
  • step S303 the subsample information processing unit 202 acquires a track corresponding to the tile selected in step S302.
  • step S304 the MP4 file reproducing unit 201 reproduces the bit stream of the tile corresponding to the plurality of tracks acquired in step S303.
  • step S304 When the process of step S304 ends, the process returns to FIG. That is, the bitstream of the reproduced partial image is decoded.
  • the image decoding apparatus 200 can more accurately understand the performance required for decoding.
  • the MP4 file reproducing unit 201 acquires information on the position of the tile (H_offset, V_offset) and information on the size of the tile (Width, Height) from the tile region group entry in step S321. Do.
  • step S322 the MP4 file reproducing unit 201 selects an area to be reproduced based on the acquired information on the position of the tile and the information on the size of the tile.
  • step S323 the sub-sample information processing unit 202 acquires, from the tile region group entry, a plurality of GroupIDs based on the TileGroupID corresponding to the area to be reproduced.
  • step S324 the sub-sample information processing unit 202 acquires tracks corresponding to the plurality of tiles selected in step S323.
  • step S325 the MP4 file reproducing unit 201 reproduces bit streams of a plurality of tiles corresponding to the plurality of tracks acquired in step S324.
  • step S324 ends, the process returns to FIG. That is, the bitstream of the reproduced partial image is decoded.
  • the image decoding apparatus 200 can more accurately understand the performance required for decoding.
  • the application scope of the present technology can be applied to any image coding device and image decoding device capable of coding and decoding partial images.
  • the present technology is, for example, MPEG, H.
  • image information bit stream
  • orthogonal transformation such as discrete cosine transformation and motion compensation as in 26x etc. via satellite broadcasting, cable television, the Internet, or network media such as a cellular phone
  • image information bit stream
  • orthogonal transformation such as discrete cosine transformation and motion compensation as in 26x etc.
  • network media such as a cellular phone
  • the present technology can be applied to an image encoding device and an image decoding device that are used when processing on storage media such as an optical disk, a magnetic disk, and a flash memory.
  • the series of processes described above can be performed by hardware or software.
  • a program that configures the software is installed on a computer.
  • the computer includes, for example, a general-purpose personal computer that can execute various functions by installing a computer incorporated in dedicated hardware and various programs.
  • FIG. 49 is a block diagram showing an example of a hardware configuration of a computer that executes the series of processes described above according to a program.
  • a central processing unit (CPU) 901, a read only memory (ROM) 902, and a random access memory (RAM) 903 are mutually connected via a bus 904.
  • An input / output interface 910 Also connected to the bus 904 is an input / output interface 910.
  • An input unit 911, an output unit 912, a storage unit 913, a communication unit 914, and a drive 915 are connected to the input / output interface 910.
  • the input unit 911 includes, for example, a keyboard, a mouse, a microphone, a touch panel, an input terminal, and the like.
  • the output unit 912 includes, for example, a display, a speaker, and an output terminal.
  • the storage unit 913 is formed of, for example, a hard disk, a RAM disk, a non-volatile memory, or the like.
  • the communication unit 914 includes, for example, a network interface.
  • the drive 915 drives removable media 921 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
  • the CPU 901 loads the program stored in the storage unit 913 into the RAM 903 via the input / output interface 910 and the bus 904 and executes the program. Processing is performed.
  • the RAM 903 also stores data necessary for the CPU 901 to execute various processes.
  • the program executed by the computer can be recorded and applied to, for example, a removable medium 921 as a package medium or the like.
  • the program can be installed in the storage unit 913 via the input / output interface 910 by attaching the removable media 921 to the drive 915.
  • the program can also be provided via a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting. In that case, the program can be received by the communication unit 914 and installed in the storage unit 913.
  • a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting.
  • the program can be received by the communication unit 914 and installed in the storage unit 913.
  • this program can be installed in advance in the ROM 902 or the storage unit 913.
  • the program executed by the computer may be a program that performs processing in chronological order according to the order described in this specification, in parallel, or when necessary, such as when a call is made. It may be a program to be processed.
  • the step of describing the program to be recorded on the recording medium is not limited to processing performed chronologically in the order described, but not necessarily parallel processing It also includes processing to be executed individually.
  • a system means a set of a plurality of components (apparatus, modules (parts), etc.), and it does not matter whether all the components are in the same case. Therefore, a plurality of devices housed in separate housings and connected via a network, and one device housing a plurality of modules in one housing are all systems. .
  • the configuration described above as one device (or processing unit) may be divided and configured as a plurality of devices (or processing units). Conversely, the configuration described as a plurality of devices (or processing units) in the above may be collectively configured as one device (or processing unit). Further, it goes without saying that configurations other than those described above may be added to the configuration of each device (or each processing unit). Furthermore, part of the configuration of one device (or processing unit) may be included in the configuration of another device (or other processing unit) if the configuration or operation of the entire system is substantially the same. .
  • the present technology can have a cloud computing configuration in which one function is shared and processed by a plurality of devices via a network.
  • each step described in the above-described flowchart can be executed by one device or in a shared manner by a plurality of devices.
  • the plurality of processes included in one step can be executed by being shared by a plurality of devices in addition to being executed by one device.
  • the image encoding device and the image decoding device are, for example, a transmitter or a receiver in satellite broadcasting, cable broadcasting such as cable TV, distribution on the Internet, and distribution to terminals by cellular communication, etc.
  • the present invention can be applied to various electronic devices such as a recording device which records an image on a medium such as an optical disk, a magnetic disk and a flash memory, or a reproducing device which reproduces an image from the storage medium.
  • the present technology is not limited to this, and any configuration installed in a device that configures such a device or system, for example, a processor as a system LSI (Large Scale Integration) or the like, a module using a plurality of processors, etc. It can also be implemented as a unit using the module or the like, a set in which other functions are further added to the unit (that is, a part of the configuration of the apparatus).
  • a processor as a system LSI (Large Scale Integration) or the like, a module using a plurality of processors, etc. It can also be implemented as a unit using the module or the like, a set in which other functions are further added to the unit (that is, a part of the configuration of the apparatus).
  • the method of transmitting such information is not limited to such an example.
  • the information may be transmitted or recorded as separate data associated with the coded bit stream without being multiplexed into the coded bit stream.
  • the term “associate” allows an image (a slice or a block, which may be a part of an image) included in a bitstream to be linked at the time of decoding with information corresponding to the image. Means That is, the information may be transmitted on a different transmission path from the image (or bit stream).
  • the information may be recorded on a recording medium (or another recording area of the same recording medium) different from the image (or bit stream).
  • the information and the image (or bit stream) may be associated with each other in any unit such as, for example, a plurality of frames, one frame, or a part in a frame.
  • the present technology can also have the following configurations.
  • an encoding unit that encodes image data;
  • a sub-sample information generation unit that generates sub-sample information including hint information serving as a reference for decoding processing of a sub-sample that is a partial area that can be decoded independently of the image of the image data;
  • the encoded data of the image data generated by the encoding unit and a file including management information of the encoded data are generated, and the sub-sample information generated by the sub-sample information generation unit is used as the management information.
  • a file generation unit arranged in the image coding apparatus.
  • the sub-sample information generation unit includes a hint data type indicating the type of hint information included in the sub-sample information, a sample count indicating the number of consecutive samples associated with the sub-sample information, and the hint information.
  • the image coding apparatus according to any one of (1) and (3) to (15), which generates subsample information including the subsample information.
  • the hint information includes a level indicating a size of a load of decoding processing of the subsample.
  • the hint information includes header information of encoded data of the subsample.
  • the sub-sample information generation unit includes a hint data type indicating the type of hint information included in the sub-sample information, a sample count indicating the number of consecutive samples associated with the sub-sample information, and the sub-sample
  • the image coding apparatus according to any one of (1) to (4) and (6) to (15), which generates subsample information including identification information of a group to which the image belongs.
  • the sub-sample information generation unit further includes a hint data type indicating the type of hint information included in the sub-sample information, a sample count indicating the number of consecutive samples associated with the sub-sample information, and a sub-sample Generating sub-sample information including hint information including a level indicating a magnitude of a load of decoding processing of the group of images.
  • the image coding apparatus according to any one of (1) to (5) and (7) to (15). .
  • the sub-sample information generation unit further includes a hint data type indicating the type of hint information included in the sub-sample information, a sample count indicating the number of consecutive samples associated with the sub-sample information, and a sub-sample
  • the image coding apparatus according to any one of (1) to (6) and (8) to (15), which generates sub-sample information including hint information including header information of encoded data of the group of.
  • the sub-sample information generation unit includes a hint data type indicating the type of hint information included in the sub-sample information, a sample count indicating the number of consecutive samples associated with the sub-sample information, and sub-samples belonging to the group.
  • the image coding apparatus according to any one of (1) to (7) and (9) to (15), which generates subsample information including identification information and hint information of the group.
  • the image coding apparatus according to any one of (1) to (8) and (10) to (15), wherein the hint information includes a level indicating a size of a load of decoding processing of the group.
  • the image coding apparatus according to any one of (1) to (9) and (11) to (15), wherein the hint information includes header information of encoded data of the group.
  • the sub-sample information generation unit generates sub-sample information including information indicating the size and position of the sub-sample.
  • the sub-sample information generation unit generates sub-sample information including information indicating that the sub-sample can be decoded independently. Any of (1) to (11) and (13) to (15) An image coding apparatus according to claim 1. (13) The sub-sample information generation unit generates sub-sample information including information for grouping null units constituting a sample according to any one of (1) to (12), (14), and (15). Image coding device. (14) The file generation unit may execute the sub sample hint information box (Subsample Hint Information Box) different from the sub sample information box of the sample table box of the management information. The image coding apparatus according to any one of (1) to (13) and (15).
  • the sub sample hint information box Subsample Hint Information Box
  • the file generation unit arranges the sub-sample information as a visual sample group entry (VisualSampleGroupEntry) in a sample group description box of the sample table box of the management information.
  • the image coding apparatus according to any one of (1) to (14), wherein information specifying a sample to which the sub-sample information is applied is arranged in a sample to group box.
  • the file generation unit may set the sub-sample information necessary to decode only the partial image to a sample group description box (Sample Table Box) of the management information of the track having the partial image.
  • the image coding apparatus according to any one of (1) to (15), which is disposed in a sample entry (Sample Entry) of a sample group description box).
  • the sub-sample information is a parameter necessary for decoding judgment of HEVC Tile stored in the temporal motion constrained tile set SEI (temporal_motion_constrained_tile_sets SEI) with the same data structure as the HEVC decode configuration record (1)
  • the parameters include an mcts tier flag (mcts_tear_flag) and an mcts level idc (mcts_level_idc).
  • the image coding apparatus according to any one of (1) to (18), wherein the partial image information further includes a temporal motion constrained tile set SEI (temporal_motion_constrained_tiles_sets SEI) corresponding to HEVC Tile.
  • the sub-sample information further includes a max mcts tier flag (max_mcts_tear_flag) and a max mcts level idc (max_mcts_level_idc).
  • An acquisition unit for acquiring a file including management information of encoded data A sub-sample information analysis unit that analyzes the sub-sample information included in the file acquired by the acquisition unit; A control unit that controls decoding of the encoded data based on an analysis result of the sub-sample information by the sub-sample information analysis unit; An encoded data generation unit configured to generate encoded data of the subsample from the encoded data included in the file acquired by the acquisition unit under control of the control unit; An image decoding apparatus comprising: a decoding unit configured to decode the encoded data of the subsample generated by the encoded data generation unit under control of the control unit.
  • the control unit determines, based on the hint information of the sub-sample information, whether the decoding unit can decode the encoded data of the sub-sample, and when the decoding is possible, the sub-sample
  • the image decoding apparatus according to (24), which controls to decode the encoded data of (4).
  • the image decoding device according to (24) or (25), wherein the encoded data generation unit updates header information of the encoded data of the subsample based on the subsample information.
  • Coded data of image data and sub-sample information including hint information which is a reference of decoding processing of a sub-sample which is a partial area of the image of the image data that can be decoded independently is arranged.
  • the encoded data of the subsample is generated from the encoded data included in the acquired file according to the control;
  • a file of the MP4 file format which stores information for grouping a plurality of partial images that can be decoded independently of the entire image in moov, and stores the encoded partial image in mdat A file generation unit that generates a file to be
  • An information processing apparatus comprising: a storage unit storing the file generated by the file generation unit; (32) The information processing apparatus according to (31), wherein the information for grouping the plurality of partial images includes information indicating an ID of a group obtained by grouping the plurality of partial images. (33) The information for grouping the plurality of partial images includes information indicating an ID of each of the plurality of partial images related to a group obtained by grouping the plurality of partial images into (31) or (32) Information processor as described.
  • the information processing apparatus according to any one of (31) to (33), wherein the information for grouping the plurality of partial images is defined using VisualSampleGroupEntry in the moov. (35) The information processing apparatus according to any one of (31) to (34), wherein the file generated by the file generation unit includes related information indicating the plurality of NAL units that constitute the partial image. (36) The information processing apparatus according to (35), wherein the related information includes group information indicating a group related to each NAL unit. (37) The information processing apparatus according to (35) or (36), wherein the related information includes information indicating the number of the plurality of NAL units.
  • the information processing apparatus according to any one of (35) to (37), wherein the related information includes information specifying a first NAL unit in the partial image.
  • the partial image is a tile in High Efficiency Video Coding (HEVC).
  • HEVC High Efficiency Video Coding
  • the information processing apparatus according to any one of (31) to (39), wherein the partial image is configured of a plurality of NAL units.
  • the partial image is stored in a first track of the file, and another partial image of the entire image that can be decoded independently is stored in a track other than the first track.
  • the information processing apparatus according to any one of (31) to (40) (42) A transmission unit for transmitting the file stored by the storage unit to another apparatus The information processing apparatus according to claim 1.
  • a file of the MP4 file format which stores information for grouping a plurality of partial images that can be decoded independently of the entire image in moov, and stores the encoded partial image in mdat Create a file to An information processing method for storing the generated file.
  • a file of the MP4 file format which stores information for grouping a plurality of partial images that can be decoded independently of the entire image in moov, and stores the encoded partial image in mdat
  • An information processing apparatus comprising: a file reproduction unit that reproduces a file to be recorded.
  • the information processing apparatus includes information indicating an ID of a group obtained by grouping the plurality of partial images.
  • the information for grouping the plurality of partial images includes information indicating the ID of each of the plurality of partial images associated with the group obtained by grouping the plurality of partial images into (44) or (45) Information processor as described.
  • the information processing apparatus according to any one of (44) to (46), wherein the information for grouping the plurality of partial images is defined using VisualSampleGroupEntry in the moov.
  • the information processing apparatus according to any one of (44) to (52), wherein the partial image is configured of a plurality of NAL units.
  • the partial image is stored in a first track of the file, and another partial image of the entire image that can be decoded independently is stored in a track other than the first track.
  • the information processing apparatus according to any one of (44) to (53).
  • the information processing apparatus according to any one of (44) to (54), wherein the file reproduction unit reproduces the file received by the reception unit.
  • the file stores, in VisualSampleGroupEntry, information indicating the position of the partial image in the entire image, information indicating the size of the partial image, and information to group the plurality of partial images
  • the file reproduction unit An area to be reproduced is selected based on the information indicating the position of the partial image in the entire image and the information indicating the size of the partial image,
  • the information processing apparatus according to any one of (44) to (55), wherein data of a partial image corresponding to the area to be reproduced is acquired based on information for grouping the plurality of partial images, and a bit stream is generated. .
  • the file stores, in TileRegionGroupEntry, information indicating the position of the partial image in the entire image, information indicating the size of the partial image, and information for grouping the plurality of partial images
  • the file reproduction unit An area to be reproduced is selected based on the information indicating the position of the partial image in the entire image and the information indicating the size of the partial image, Acquiring a plurality of tracks corresponding to the selected area to be reproduced based on the information for grouping the plurality of partial images;
  • the information processing apparatus according to any one of (44) to (56), which generates a bit stream of partial images corresponding to the plurality of acquired tracks.
  • the information processing apparatus according to any one of (44) to (57), further including: a decoding unit that decodes a bit stream of the partial image reproduced and generated by the file reproduction unit.
  • a decoding unit that decodes a bit stream of the partial image reproduced and generated by the file reproduction unit.
  • Reference Signs List 100 image coding device, 101 image coding unit, 102 sub-sample information generation unit, 103 MP4 file generation unit, 200 image decoding device, 201 MP4 file reproduction unit, 202 sub-sample information processing unit, 203 image decoding unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Signal Processing For Recording (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Facsimiles In General (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Processing Or Creating Images (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

 本開示は、復号に必要な性能をより正確に把握することができるようにする情報処理装置および方法に関する。 MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された部分画像をmdatに格納するファイルを生成し、生成されたファイルを記憶する。本開示は、例えば、画像符号化装置、または、画像復号装置等の情報処理装置に適用することができる。

Description

情報処理装置および方法
 本開示は情報処理装置および方法に関し、特に、復号に必要な性能をより正確に把握することができるようにした情報処理装置および方法に関する。
 近年、MPEG-4 Part10 (Advanced Video Coding、以下AVCと記す)より更なる符号化効率の向上を目的として、ITU-T(International Telecommunication Union Telecommunication Standardization Sector)と、ISO/IEC(International Organization for Standardization / International Electrotechnical Commission)の共同の標準化団体であるJCTVC(Joint Collaboration Team - Video Coding)により、HEVC(High Efficiency Video Coding)と呼ばれる符号化方式の標準化が進められている(例えば、非特許文献1参照)。
 HEVCでは、タイル(Tile)構造を利用し、アプリケーションにより復号が必要となる領域のみを復号することが可能となっている。タイル領域が単独で復号可能であることを示すために、HEVC第2版以降(MV-HEVC, SHVC, Range Ext.等含む)で、Motion-constrained tile sets SEIによりサポートされる。
 ところで、HTTP(HyperText Transfer Protocol)を利用したコンテンツ配信技術として、MPEG-DASH(Moving Picture Experts Group - Dynamic Adaptive Streaming over HTTP)がある(例えば、非特許文献2参照)。MPEG-DASHでは、上述したHEVCのような符号化方式で符号化された画像データのビットストリームが、例えばMP4ファイルフォーマット等のような所定のファイルフォーマットでファイル化されて配信される。
Benjamin Bross, Woo-Jin Han, Jens-Rainer Ohm, Gary J. Sullivan, Ye-Kui Wang, Thomas Wiegand, " High Efficiency Video Coding (HEVC) text specification draft 10 (for FDIS & Last Call)", JCTVC-L1003_v34, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 12th Meeting: Geneva, CH, 14-23 Jan. 2013 MPEG-DASH(Dynamic Adaptive Streaming over HTTP)(URL:http://mpeg.chiariglione.org/standards/mpeg-dash/media-presentation-description-and-segment-formats/text-isoiec-23009-12012-dam-1)
 しかしながら、ビットストリームにおいてもファイルフォーマットにおいても、デコーダが、ストリームを復号できるかの判別をするための基準となっているレベル(Level)やバッファ(Buffer)容量関連の情報は、ストリーム全体としての値若しくはレイヤ(Layer)単位の値が定義されているのみであった。
 そのため、全体画像の一部のみを復号するアプリケーションにおいても、復号可否の判断は、画面全体を復号する場合の負荷を想定して行われることになり、不要に高いレベル(Level)のデコーダが必要になってしまう恐れがあった。また、そのために配信できるアプリケーションが不要に制限されてしまう恐れもあった。
 本開示は、このような状況に鑑みてなされたものであり、復号に必要な性能をより正確に把握することができるようにするものである。
 本技術の一側面は、MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された前記部分画像をmdatに格納するファイルを生成するファイル生成部と、前記ファイル生成部により生成された前記ファイルを記憶する記憶部とを備える情報処理装置である。
 前記複数の部分画像をグループ化する情報は、前記複数の部分画像をグループ化したグループのIDを表す情報を含むようにすることができる。
 前記複数の部分画像をグループ化する情報は、前記複数の部分画像をグループ化したグループに関連する複数の前記部分画像のそれぞれのIDを表す情報を含むようにすることができる。
 前記複数の部分画像をグループ化する情報は、前記moovの中のVisualSampleGroupEntryを用いて定義されるようにすることができる。
 前記ファイル生成部により生成された前記ファイルは、前記部分画像を構成する前記複数のNAL unitを表す関連情報を含むようにすることができる。
 前記関連情報は、前記NAL unit毎に関連するグループを表すグループ情報を含むようにすることができる。
 前記関連情報は、前記複数のNAL unitの数を表す情報を含むようにすることができる。
 前記関連情報は、前記部分画像における最初のNAL unitを特定する情報を含むようにすることができる。
 前記部分画像は、HEVC(High Efficiency Video Coding)におけるTileであるようにすることができる。
 前記部分画像は、複数のNAL unitで構成されるようにすることができる。
 前記部分画像は、前記ファイルにおける第1のトラックに格納され、前記全体画像の中の独立に復号することができる他の部分画像は、前記第1のトラック以外のトラックに格納されるようにすることができる。
 前記記憶部により記憶された前記ファイルを他の装置に送信する送信部をさらに備えることができる。
 本技術の一側面は、また、MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された前記部分画像をmdatに格納するファイルを生成し、生成された前記ファイルを記憶する情報処理方法である。
 本技術の他の側面は、MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された前記部分画像をmdatに格納するファイルを再生するファイル再生部を備える情報処理装置である。
 前記複数の部分画像をグループ化する情報は、前記複数の部分画像をグループ化したグループのIDを表す情報を含むようにすることができる。
 前記複数の部分画像をグループ化する情報は、前記複数の部分画像をグループ化したグループに関連する複数の前記部分画像のそれぞれのIDを表す情報を含むようにすることができる。
 前記複数の部分画像をグループ化する情報は、前記moovの中のVisualSampleGroupEntryを用いて定義されるようにすることができる。
 前記ファイルは、前記moovに、前記部分画像を構成する前記複数のNAL unitを表す関連情報を含むようにすることができる。
 前記関連情報は、前記NAL unit毎に関連するグループを表すグループ情報を含むようにすることができる。
 前記関連情報は、前記複数のNAL unitの数を表す情報を含むようにすることができる。
 前記関連情報は、前記部分画像における最初のNAL unitを特定する情報を含むようにすることができる。
 前記部分画像は、HEVC(High Efficiency Video Coding)におけるTileであるようにすることができる。
 前記部分画像は、複数のNAL unitで構成されるようにすることができる。
 前記部分画像は、前記ファイルにおける第1のトラックに格納され、前記全体画像の中の独立に復号することができる他の部分画像は、前記第1のトラック以外のトラックに格納されるようにすることができる。
 前記ファイルを受信する受信部をさらに備え、前記ファイル再生部は、前記受信部により受信された前記ファイルを再生することができる。
 前記ファイルは、VisualSampleGroupEntryに、前記部分画像の前記全体画像内での位置を表す情報と、前記部分画像の大きさを表す情報と、前記複数の部分画像をグループ化する情報とを格納し、前記ファイル再生部は、前記部分画像の前記全体画像内での位置を表す情報と、前記部分画像の大きさを表す情報とに基づいて、再生したい領域を選択し、前記複数の部分画像をグループ化する情報に基づいて、前記再生したい領域に対応する部分画像のデータを取得し、ビットストリームを生成することができる。
 前記ファイルは、TileRegionGroupEntryに、前記部分画像の前記全体画像内での位置を表す情報と、前記部分画像の大きさを表す情報と、前記複数の部分画像をグループ化する情報とを格納し、前記ファイル再生部は、前記部分画像の前記全体画像内での位置を表す情報と、前記部分画像の大きさを表す情報とに基づいて、再生したい領域を選択し、前記複数の部分画像をグループ化する情報に基づいて、選択した前記再生したい領域に対応する複数のトラックを取得し、取得した複数の前記トラックに対応する部分画像のビットストリームを生成することができる。
 前記ファイル再生部により再生されて生成された前記部分画像のビットストリームを復号する復号部をさらに備えるようにすることができる。
 本技術の他の側面は、また、MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された前記部分画像をmdatに格納するファイルを再生する情報処理方法である。
 本技術の一側面においては、MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された部分画像をmdatに格納するファイルが生成され、生成されたファイルが記憶される。
 本技術の他の側面においては、MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された部分画像をmdatに格納するファイルが再生される。
 本開示によれば、画像を符号化・復号することができる。特に、復号に必要な性能をより正確に把握することができる。
部分表示を行うアプリケーションの例を説明する図である。 部分表示を行うアプリケーションの他の例を説明する図である。 サブサンプルの定義の例を説明する図である。 MP4ファイルフォーマットの概要を説明する図である。 MP4ファイルフォーマットの概要を説明する図である。 MP4ファイルフォーマットの概要を説明する図である。 サンプルテーブルボックスの拡張例を示す図である。 サブサンプルヒントインフォメーションボックスの例を示す図である。 インディペンデントのセマンティスクの例を示す図である。 サブサンプルのグループの例を示す図である。 サブサンプルヒントインフォメーションボックスの他の例を示す図である。 サブサンプルヒントインフォメーションボックスの他の例を示す図である。 サブサンプルヒントインフォメーションボックスの、さらに他の例を示す図である。 MP4ファイルフォーマットの概要を説明する図である。 MP4ファイルフォーマットの概要を説明する図である。 サンプルテーブルボックスの拡張例を示す図である。 ビジュアルサンプルグループエントリの拡張例を示す図である。 サブサンプルインデックスの例を示す図である。 ビジュアルサンプルグループエントリの他の拡張例を示す図である。 ビジュアルサンプルグループエントリの、さらに他の拡張例を示す図である。 mctsの例を示すブロック図である。 MCTS SEIのシンタクスの例を示す図である。 MP4ファイルフォーマットの拡張例を示す図である。 ビジュアルサンプルグループエントリの拡張例を示す図である。 ビジュアルサンプルグループエントリの他の拡張例を示す図である。 ビジュアルサンプルグループエントリのさらに他の拡張例を示す図である。 タイル画像のMP4ファイルの構成例を説明する図である。 HEVCタイルデコーダコンフィグレーションレコードを説明する図である。 テンポラルMCTS SEIのシンタクスの例を示す図である。 HEVCタイルデコーダコンフィグレーションレコードを説明する図である。 HEVCタイルデコーダコンフィグレーションレコードを説明する図である。 HEVCタイルデコーダコンフィグレーションレコードを説明する図である。 HEVCタイルデコーダコンフィグレーションレコードを説明する図である。 HEVCタイルデコーダコンフィグレーションレコードを説明する図である。 HEVCタイルデコーダコンフィグレーションレコードを説明する図である。 タイル画像のMP4ファイルの構成例を説明する図である。 HEVCタイルイクステンションボックスを説明する図である。 タイル画像のMP4ファイルの構成例を説明する図である。 画像符号化装置の主な構成例を示すブロック図である。 画像復号装置の主な構成例を示すブロック図である。 画像符号化処理の流れの例を説明するフローチャートである。 画像復号処理の流れの例を説明するフローチャートである。 再生可否判定処理の流れの例を説明するフローチャートである。 再生処理の流れの例を説明するフローチャートである。 再生処理の流れの例を説明するフローチャートである。 再生処理の流れの例を説明するフローチャートである。 再生処理の流れの例を説明するフローチャートである。 再生処理の流れの例を説明するフローチャートである。 コンピュータの主な構成例を示すブロック図である。
 以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
 1.第1の実施の形態(サブサンプルのヒント情報)
 2.第2の実施の形態(MP4ファイル)
 3.第3の実施の形態(画像符号化装置)
 4.第4の実施の形態(画像復号装置)
 5.第5の実施の形態(コンピュータ)
 <1.第1の実施の形態>
  <画像符号化の標準化の流れ>
 近年、画像情報をデジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮する符号化方式を採用して画像を圧縮符号する装置が普及しつつある。この符号化方式には、例えば、MPEG(Moving Picture Experts Group)などがある。
 特に、MPEG2(ISO/IEC 13818-2)は、汎用画像符号化方式として定義されており、飛び越し走査画像及び順次走査画像の双方、並びに標準解像度画像及び高精細画像を網羅する標準である。例えば、MPEG2は、プロフェッショナル用途及びコンシューマ用途の広範なアプリケーションに現在広く用いられている。MPEG2圧縮方式を用いることにより、例えば720x480画素を持つ標準解像度の飛び越し走査画像であれば4乃至8Mbpsの符号量(ビットレート)を割り当てることができる。また、MPEG2圧縮方式を用いることにより、例えば1920x1088画素を持つ高解像度の飛び越し走査画像であれば18乃至22 Mbpsの符号量(ビットレート)を割り当てることができる。これにより、高い圧縮率と良好な画質の実現が可能である。
 MPEG2は主として放送用に適合する高画質符号化を対象としていたが、MPEG1より低い符号量(ビットレート)、つまりより高い圧縮率の符号化方式には対応していなかった。携帯端末の普及により、今後そのような符号化方式のニーズは高まると思われ、これに対応してMPEG4符号化方式の標準化が行われた。画像符号化方式に関しては、1998年12月にISO/IEC 14496-2としてその規格が国際標準に承認された。
 更に、近年、当初テレビ会議用の画像符号化を目的として、H.26L (ITU-T(International Telecommunication Union Telecommunication Standardization Sector) Q6/16 VCEG(Video Coding Expert Group))という標準の規格化が進められた。H.26LはMPEG2やMPEG4といった従来の符号化方式に比べ、その符号化、復号化により多くの演算量が要求されるものの、より高い符号化効率が実現されることが知られている。また、現在、MPEG4の活動の一環として、このH.26Lをベースに、H.26Lではサポートされない機能をも取り入れ、より高い符号化効率を実現する標準化がJoint Model of Enhanced-Compression Video Codingとして行われた。
 標準化のスケジュールとしては、2003年3月にはH.264及びMPEG-4 Part10 (Advanced Video Coding、以下AVCと記す)という名の元に国際標準となった。
 さらに、このH.264/AVCの拡張として、RGBや4:2:2、4:4:4といった、業務用に必要な符号化ツールや、MPEG-2で規定されていた8x8DCTや量子化マトリクスをも含んだFRExt (Fidelity Range Extension) の標準化が2005年2月に完了した。これにより、H.264/AVCを用いて、映画に含まれるフィルムノイズをも良好に表現することが可能な符号化方式となって、Blu-Ray Disc(商標)等の幅広いアプリケーションに用いられる運びとなった。
 しかしながら、昨今、ハイビジョン画像の4倍の、4000x2000画素程度の画像を圧縮したい、あるいは、インターネットのような、限られた伝送容量の環境において、ハイビジョン画像を配信したいといった、更なる高圧縮率符号化に対するニーズが高まっている。このため、先述の、ITU-T傘下のVCEGにおいて、符号化効率の改善に関する検討が継続され行なわれている。
 そこで、現在、AVCより更なる符号化効率の向上を目的として、ITU-Tと、ISO/IEC(International Organization for Standardization / International Electrotechnical Commission)の共同の標準化団体であるJCTVC(Joint Collaboration Team - Video Coding)により、HEVC(High Efficiency Video Coding)と呼ばれる符号化方式の標準化が進められている。HEVC規格については、2013年1月にドラフト版仕様であるCommittee draftが発行されている(例えば、非特許文献1参照)。
  <タイル構造とレイヤの定義>
 HEVCでは、タイル(Tile)構造を利用し、アプリケーションにより復号が必要となる領域のみを復号することが可能となっている。タイル領域が単独で復号可能であることを示すために、HEVC第2版以降(MV-HEVC, SHVC, Range Ext.等含む)で、Motion-constrained tile sets SEIによりサポートされる。
  <DASH>
 ところで、HTTP(HyperText Transfer Protocol)を利用したコンテンツ配信技術として、MPEG-DASH(Moving Picture Experts Group - Dynamic Adaptive Streaming over HTTP)がある(例えば、非特許文献2参照)。MPEG-DASHでは、上述したHEVCのような符号化方式で符号化された画像データのビットストリームが、例えばMP4等のような所定のファイルフォーマットでファイル化されて配信される。
 しかしながら、このDASHのようなコンテンツ配信においては、全体画像を再生(復号)することしか想定されておらず、全体画像の代わりにその一部である部分画像を再生(復号)することは想定されていなかった。
 より具体的には、デコーダが、ストリームを復号できるかの判別をするための基準となっているレベル(Level)やバッファ(Buffer)容量関連の情報は、HEVC等の符号化方式においても、MP4のようなファイルフォーマットにおいても、ストリーム全体としての値若しくはレイヤ(Layer)単位の値、すなわち、全体画像についての値が定義されているのみであり、部分画像のみを再生するための情報はなかった。
 そのため、例えば、上述したHEVC等の符号化方式でサポートされるタイル構造を利用して、部分画像(一部のタイル)のみを復号する場合(すなわち、部分画像のみを再生する場合)であっても、復号可否の判断は、画面全体を復号する場合の負荷を想定して行われることになり、不要に高いレベル(Level)のデコーダが必要になってしまう恐れがあった。また、そのために配信できるアプリケーションが不要に制限されてしまう恐れもあった。
  <アプリケーション例>
 部分画像を再生するアプリケーションとして例えば、以下のような例が挙げられる。
 サーバから端末に画像を配信するシステムにおいて、例えば図1に示されるような、1枚の画面を複数に分割し、表示領域を切り替えながら配信するアプリケーションを想定する。また、例えば、図2に示されるような、画像のアスペクト比や解像度を選択するために、表示する(配信する)部分領域を選択するアプリケーションを想定する。
 図1のアプリケーションの場合、全体画像がタイル(Tile)を単位として複数に分割可能であり、端末において、単数若しくは複数のタイルからなる部分画像が全体画像から切り出されて表示される。表示可能な部分画像の大きさ(タイルの数)は、例えば、端末の性能(処理能力やディスプレイの大きさ(表示解像度))等により決定される。また、表示する部分画像の全体画像における位置は、ユーザ等が指定することができる。したがって、端末には、全体画像の中の所望の位置の部分画像を表示させることができる。つまり、端末のユーザは、全体画像の中の所望の部分に注目することができる。
 図2のアプリケーションの場合、図1のアプリケーションと基本的に同様であるが、タイルが表示画像のアスペクト比や解像度を選択することができるように設定されており、各タイルの大きさは一定ではない。図1の場合と同様に、端末において、ユーザ等の指示に従って、単数若しくは複数のタイルからなる部分画像が全体画像から切り出されて表示される。このように表示させるタイルを選択するだけで、表示画像の解像度をHDにしたり、シネマサイズにしたり、さらに拡張したサイズにしたりすることができる。
 この表示可能な解像度は、例えば、端末の性能(処理能力やディスプレイの大きさ(表示解像度))等により決定される。
 このような、端末の性能やユーザの指定等に応じた部分画像の適応的な提供(再生)は、従来、想定されていなかったため、独立に復号可能な部分画像を復号する場合であっても、復号可否の判断は、画面全体を復号する場合の負荷を想定して行われることになり、不要に高いレベル(Level)のデコーダが必要になってしまう恐れがあった。また、そのために配信できるアプリケーションが不要に制限されてしまう恐れもあった。
  <サブサンプルのヒント情報の提供>
 そこで、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報を生成し、画像データの符号化データを含むファイルを生成し、そのファイルにおける符号化データの管理情報に、生成したサブサンプル情報を配置するようにする。
 このようにすることにより、端末は、そのサブサンプル情報(ヒント情報)にしたがって、部分領域を復号するのに必要な性能を把握し、自身のデコーダが、その部分領域(サブサンプル)の復号処理を行うことができるか否かの判断をより正確に行うことができる。つまり、復号に必要な性能を、より正確に把握することができる。したがって、この画像データにより適切な性能のデコーダを選択することができる。これにより、画像データの復号負荷に対して不要に高いレベル(Level)のデコーダを適用する事態の発生を抑制することができる。また、そのために配信できるアプリケーションが不要に制限されてしまうことも抑制することができる。
 また、その部分領域(サブサンプル)の符号化データ(ビットストリーム)のヘッダ情報を、全体画像の情報からその部分領域(サブサンプル)についての情報に更新するようにする。その更新のための情報を、ファイルに含めて伝送するようにする。このようにすることにより、端末は、ビットストリームのヘッダ情報を部分領域(サブサンプル)についての情報に更新し、デコーダに渡すことができる。そのため、デコーダは、そのヘッダ情報に基づいて、自身がそのビットストリームを復号することができるか否かをより正確に判断することができる。
  <符号化方式およびファイルフォーマット>
 以下においては、本技術を、符号化・復号方式がHEVC、ファイルフォーマットがMP4の場合に適用する例を説明する。
  <アクセス単位>
 以下において、MP4のサンプルは、HEVCのアクセスユニット(AU)とする。また、AUは、複数のタイル(Tile)で構成されるものとする。サンプルテーブル(Sample Table)では、サンプル(Sample)単位で管理されるものとする。
 また、サブサンプルは、サンプルの構成要素であって、コーデック(Codec)毎に例えば、図3のように定義がなされている。本技術は、サブサンプルがこれらのいずれであっても適用可能であるが、以下においては、タイル(Tile)がサブサンプル(Tile-based sub-samples)の場合を例に本技術を説明する。
  <MP4ファイルフォーマット>
 次に、MP4ファイルフォーマットの概要について説明する。図4の左に示されるように、MPEG-DASHに準拠したMP4ファイル(MP4 file)は、ftyp、moov、およびmdatを含む。moovには、サンプル(例えばピクチャ)毎に管理情報がサンプルテーブルボックス(Sample Table Box(stbl))に格納される。
 また、図4に示されるように、サンプルテーブルボックス(Sample Table Box)には、サンプルディスクリプションボックス(Sample Description Box)、タイムトゥーサンプルボックス(Time To Sample Box)、サンプルサイズボックス(Sample Size Box)、サンプルトゥーチャンクボックス(Sample to Chunk Box)、チャンクオフセットボックス(Chunk Offset Box)、およびサブサンプルインフォメーションボックス(Subsample Information Box)が設置されている。
 サンプルディスクリプションボックスには、コーデックや画サイズ等に関する情報が格納される。例えばHEVCのビットストリームのパラメータセット(ビデオパラメータセット(VPS(Video Parameter Set))、シーケンスパラメータセット(SPS(Sequence Parameter Set))、SEI(Supplemental Enhancement Information)、ピクチャパラメータセット(PPS(Picture Parameter Set))等)は、コーデック(Codec)情報としてこのサンプルディスクリプションボックス内のHEVCサンプルエントリ(HEVC sample entry)のHEVCデコーダコンフィギュレーションレコード(HEVC Decoder Configuration Record)に格納される。
 また、タイムトゥーサンプルボックスには、サンプルの時刻に関する情報が格納される。サンプルサイズボックスには、サンプルのサイズに関する情報が格納される。サンプルトゥーチャンクボックスには、サンプルのデータの位置に関する情報が格納される。チャンクオフセットボックスには、データのオフセットに関する情報が格納される。サブサンプルインフォメーションボックスには、サブサンプルに関する情報が格納される。
 また、図4に示されるように、HEVCの各サンプル(ピクチャ)のデータは、AVデータとして、mdatに格納される。
 図5に示されるように、タイムトゥーサンプルボックス、サンプルサイズボックス、サンプルトゥーチャンクボックス、およびチャンクオフセットボックスには、サンプルへのアクセス情報が格納される。これに対して、サブサンプルインフォメーションボックスにはサブサンプルへのアクセス情報が格納される。このサブサンプルへのアクセス情報は、各サブサンプルのサイズ(Subsample Size)と付加情報(Subsample 付加情報)からなる。
 例えば、図5のように、サンプル(ピクチャ)が4つのサブサンプル(タイル)からなる場合、サブサンプルインフォメーションボックスには、タイル1(Tile1)乃至タイル4(Tile4)のそれぞれへのアクセス情報が格納される。
 サブサンプルインフォメーションボックスの記述例を図6に示す。図6に示されるように、各タイルのサイズ(subsample_size)が記述され、さらに、各タイルの位置情報が示されるリザーブドフィールド(reserved = 0)が記述されている。
  <タイルパターン>
 本技術では、全サンプル(ピクチャ等)でタイルパターンが固定の場合、全サンプルでタイルパターンが可変の場合、例えばIDR間隔等、所定期間、タイルパターンが固定の場合(所定期間ごとにタイルパターンが可変の場合)のいずれの場合も適用することができるように、上述したサンプルテーブルボックスを拡張する。
  <サブサンプルヒントインフォメーションボックス>
 例えば、サンプルテーブルボックスに、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報を、サンプルテーブルボックスの、新たなボックスとして設置するようにする。
 図7にその例を示す。図7に示されるように、サンプルテーブルボックスに、サブサンプルヒントインフォメーションボックス(Subsample Hint Information Box)11が新たに設置される。
 サブサンプルヒントインフォメーションボックス11は、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報であり、サブサンプルインフォメーションボックス等とは別のボックスである。このように部分画像の再生のための情報であるサブサンプルヒントインフォメーションボックス11を、全体画像の再生のための情報であるサブサンプルインフォメーションボックスと分けることにより、全体画像を表示する通常再生においては、ボックスごと無視する(参照しない)ようにすることができ、制御を容易にすることができる。
 サブサンプルヒントインフォメーションボックス11の記述例を図7の右に示す。この例に示されるように、サブサンプルヒントインフォメーションボックス11には、ヒントデータタイプ(hint_data_type)、サンプルカウント(sample_count)、ヒントデータ(hint_data)等の情報が格納される。
 ヒントデータタイプは、このボックスで格納するサブサンプルのヒント情報の種別を示す情報である。サンプルカウントは、この情報に関連付けられる連続するサンプル数を示す情報である。ヒントデータは、サブサンプルのヒント情報である。ヒントデータタイプ毎に異なる情報が格納される。
  <拡張方法>
 次に、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報を配置する具体例について説明する。
  <例1>
 例1では、上述したように拡張定義した、サブサンプルインフォメーションボックスでアクセス可能なサブサンプル(タイル)毎に、復号(decode)に必要な情報を格納するサブサンプルヒントインフォメーションボックス11を用いる。
 サブサンプルとヒント情報は、サブサンプルインフォメーションボックスのテーブルインデックス(table-index)で紐づけされる。
 図8にそのサブサンプルヒントインフォメーションボックス11の記述例を示す。図8に示されるサブサンプルヒントインフォメーションボックス11-1は、例1の記述例である。
 図8に示されるように、サブサンプルヒントインフォメーションボックス11-1では、ヒントデータタイプとして、例えば、サブサンプル毎のプロファイル情報であることを示す”sspf”が記述される(hint_data_type="sspf")。
 また、サブサンプルヒントインフォメーションボックス11-1では、ヒント情報(hint_data)として、例えば、四角12内に示されるような各例の内、いずれかの例の情報が記述される。例えば、例(A-1)のように、そのサブサンプル(タイル)の復号に必要なプロファイルレベルを示す情報(すなわち、サブサンプルの復号処理の負荷の大きさを表すレベル)(general_lebel_idc)を記述するようにしてもよい。また、例えば、例(A-2)のように、サブサンプル(タイル)が他のサブサンプル(タイル)に独立して復号できるかを示すフラグ情報(independent)をさらに記述するようにしてもよい。
 このインディペンデント(independent)のセマンティクスの例を図9に示す。
 また、例えば、例(B-1)のように、サブサンプル(タイル)のビットストリームのシーケンスパラメータセット(SPS)を更新する際に置き換える情報(すなわち、サブサンプルの符号化データのヘッダ情報)(nalUnitLength, nalUnit)を記述するようにしてもよい。また、例えば、例(B-2)のように、サブサンプル(タイル)が他のサブサンプル(タイル)に独立して復号できるかを示すフラグ情報(independent)をさらに記述するようにしてもよい。
  <例2>
 部分画像の再生(提供)としては、図1や図2に示した例のように、複数のサブサンプルを対象とする場合もある。そこで、例1では、サブサンプル(タイル)毎にヒント情報を格納したが、例2では、このように複数のサブサンプルをグループとし、そのグループの復号に必要な情報も提供する。
 例えば、図10のAの場合、タイル1(Tile1)乃至タイル5(Tile5)からなる全体画像13の内、タイル3(Tile3)のみがグループ14-1として提供される。また、図10のBの場合、タイル2(Tile2)乃至タイル4(Tile4)がグループ14-2として提供される。さらに、図10のCの場合、全体画像13の全てのタイル(すなわち、タイル1(Tile1)乃至タイル5(Tile5))がグループ14-3として提供される。
 例2でも、上述したように拡張定義した、サブサンプルインフォメーションボックスでアクセス可能なサブサンプル(タイル)毎に、復号(decode)に必要な情報を格納するサブサンプルヒントインフォメーションボックス11を用いる。
 ただし、例2の場合、複数のサブサンプルをグループ化する情報と、各グループ化されたタイル群の復号に必要な情報(通常は必要のない情報)とをそれぞれ、サブサンプルヒントインフォメーションボックス11として配置する。つまり、これらの情報を互いに別のボックスに格納する。このようすることにより、各グループ化されたタイル群の復号に必要な情報のボックスのみを用いて、タイル群の符号化データのシーケンスパラメータセット(SPS)を更新することができる。
 図11と図12にそのサブサンプルヒントインフォメーションボックス11の記述例を示す。図11に示されるサブサンプルヒントインフォメーションボックス11-2-1は、例2の複数のサブサンプルをグループ化する情報の記述例である。
 図11に示されるように、サブサンプルヒントインフォメーションボックス11-2-1では、ヒントデータタイプとして、例えば、サブサンプルのグループ情報であることを示す”ssgp”が記述される(hint_data_type="ssgp")。
 また、サブサンプルヒントインフォメーションボックス11-2-1では、サブサンプルが属するグループを示す識別情報であるグループインデックス(group_index)が記述される。例えば、図10の例の場合、このグループインデックスとして、四角15内に示されるような情報が記述される。
 図12に示されるサブサンプルヒントインフォメーションボックス11-2-2は、例2の各グループ化されたタイル群の復号に必要な情報の記述例である。
 図12に示されるように、サブサンプルヒントインフォメーションボックス11-2-2では、ヒントデータタイプとして、例えば、各グループ化されたタイル群の復号に必要な情報であることを示す”sgpf”が記述される(hint_data_type="sgpf")。
 また、サブサンプルヒントインフォメーションボックス11-2-2では、ヒント情報(hint_data)として、例えば、四角12内に示されるような各例の内、いずれかの例の情報が記述される。つまり、この場合、サブサンプル情報として、サブサンプルのグループの復号処理の負荷の大きさを表すレベルや、サブサンプルのグループの符号化データのヘッダ情報を記述することができる。
 なお、インディペンデント(independent)の代わりに、モーションコンストレインドタイルセットID(motion constrained tile set ID)を格納することもできる。
  <例3>
 例2の場合、複数のサブサンプルヒントインフォメーションボックス11が必要になるが、例3では、これらを1つのボックスにまとめる。例3では、サブサンプル(タイル)のグループ毎にサブサンプルヒントインフォメーションボックス11を設置し、その中で、サブサンプルのインデックステーブルを作成する。
 図13にそのサブサンプルヒントインフォメーションボックス11の記述例を示す。図13に示されるサブサンプルヒントインフォメーションボックス11-3は、例3の記述例である。
 図13に示されるように、サブサンプルヒントインフォメーションボックス11-3では、ヒントデータタイプとして、例えば、サブサンプルのグループ毎のプロファイル情報であることを示す”sgpf”が記述される(hint_data_type="sgpf")。
 また、サブサンプルヒントインフォメーションボックス11-3では、ヒント情報(hint_data)として、例えば、四角12内に示されるような各例の内、いずれかの例の情報が記述される。
 さらに、サブサンプルヒントインフォメーションボックス11-3では、グループに属するサブサンプルを示す識別情報であるサブサンプルインデックス(subsample_index)が記述される。例えば、図10の例の場合、このサブサンプルインデックスとして、四角16内に示されるような情報が記述される。
 なお、エントリカウント(entry_count)は、シーケンス内においてヒント情報が何回変化するかを示し、サンプルカウント(sample_count)は、同じヒント情報が、どれだけのサンプル(ピクチャ)数の間継続するかを示す。
 つまり、サブサンプルヒントインフォメーションボックス11-3では、サブサンプル情報として、グループに属するサブサンプルの識別情報、および、そのグループのヒント情報を含むようにすることができる。そしてその、グループのヒント情報として、グループの復号処理の負荷の大きさを表すレベルやグループの符号化データのヘッダ情報を含むようにすることができる。
  <サンプルグループディスクリプションボックスとサンプルトゥーグループボックスの拡張>
 以上においては、サンプルヒントインフォメーションボックス11を設置する例を説明したが、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報をファイルに含める本技術は、この方法に限らない。例えば、MP4ファイルフォーマットのサンプルグループディスクリプションボックスとサンプルトゥーグループボックスを拡張することにより、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報をファイルに含めるようにしてもよい。
 図14に示されるように、MP4ファイルのサンプルテーブルボックスには、サンプルグループディスクリプションボックス(Sample Group Description Box)21とサンプルトゥーグループボックス(Sample To Group Box)22を設置することができる。
 図15に示されるように、サンプルグループディスクリプションボックス21には、ビジュアルサンプルグループエントリ(VisualSampleGroupEntry)23として、コーデック(codec)に関する情報やアクセス情報等のサンプルテーブルの基本的な情報以外の情報が格納される。
 そして、サンプルトゥーグループボックス22には、そのビジュアルサンプルグループエントリ23と、各サンプルを紐づけする情報が格納される。
 このようにすることにより、サンプル毎に記述すると冗長となる情報を1つにまとめることができ、情報量を低減させることができる。
  <例4>
 例4では、このサンプルグループディスクリプションボックス21とサンプルトゥーグループボックス22を用いて、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報をファイルに含めるようにする。
 図16にその例を示す。図16に示されるサブサンプルヒントインフォメーションボックス11-4は、例3の記述例である。例4では、この記述の内、ヒントデータタイプと、ヒントデータを含む下側の四角で囲まれる情報を、サンプルグループディスクリプションボックス21に、ビジュアルサンプルグループエントリ23として格納する。また、サブサンプルヒントインフォメーションボックス11-4の内、エントリカウントを含む上側の四角で囲まれる情報を、ビジュアルサンプルグループエントリ23とサンプルを紐づけする情報としてサンプルトゥーグループボックス22に格納する。
 つまり、この例の場合、利用されるパターンだけを格納して、サンプルトゥーグループボックス22からインデックス参照することができる。そして、ヒントデータのテーブルを圧縮することができ、情報量を低減させることができる。
 なお、以上においては、例4の方法を、例3のサブサンプルヒントインフォメーションボックスの情報に適用する場合について説明したが、例4の方法は、例1および例2のサブサンプルヒントインフォメーションボックスの情報にも適用することができる。つまり、例1や例2において説明したサブサンプルヒントインフォメーションボックスの情報も、上述した例3の場合と同様に、サンプルグループディスクリプションボックス21とサンプルトゥーグループボックス22に格納することができる。
  <エントリ例1>
 図17のビジュアルサンプルグループエントリ23-1は、図10の例のグループと同様にエントリを構成する場合の、サブサンプルのプロファイル情報を格納するように拡張したビジュアルサンプルグループエントリ23(SubSampleProfileInformationEntry extends VisualSampleGroupEntry('sspi'))の例を示す。このビジュアルサンプルグループエントリには、各エントリについて、ヒント情報(hint_data)と、そのエントリが対応するグループの識別情報(GroupID)が設定される。この場合、図17に示されるように、このヒント情報(hint_data)としては、例えば、四角12内に示されるような各例の内、いずれかの例の情報が記述される。
 また、この場合、各エントリに属するサブサンプル(タイル)の識別情報であるサブサンプルインデックスが、四角31内の例のようにリストアップされる。
  <エントリ例2>
 エントリの図10と異なる例を図18に示す。図18の例の場合、各サブサンプル(タイル)をそれぞれエントリ(グループ)としている。つまり、図18のAの場合、タイル1(Tile1)がエントリ14-4として提供され、図18のBの場合、タイル2(Tile2)がエントリ14-5として提供され、図18のCの場合、タイル3(Tile3)がエントリ14-6として提供される。図示は省略するが、同様に、タイル4(Tile4)とタイル5(Tile5)も、それぞれ、異なるエントリとして提供される。
 この図18の例のように、複数のサブサンプル(タイル)をグループ化しない場合、換言するに、各サブサンプル(タイル)をそれぞれエントリとする場合、サブサンプルのプロファイル情報を格納するように拡張したビジュアルサンプルグループエントリ23(SubSampleProfileInformationEntry extends VisualSampleGroupEntry('sspi'))は、図19の例のようになる。
 この場合、図19のビジュアルサンプルグループエントリ23-2のように、各エントリについて、ヒント情報(hint_data)として、例えば、四角12内に示されるような各例の内、いずれかの例の情報が記述される。また、各エントリに属するサブサンプル(タイル)の識別情報であるサブサンプルインデックスが、四角32内の例のようにリストアップされる。つまり、この場合、各エントリに1つずつサブサンプルインデックスが割り当てられる。
  <ビジュアルサンプルグループエントリの他の例>
 以上においては、図20のビジュアルサンプルグループエントリ23-2のように、ビジュアルサンプルグループエントリにおいてサブサンプルインデックス(subsample_index)を含むように説明したが、例えば、そのサブサンプルインデックスと一緒に各サブサンプルについて、以下のように、サブサンプル(タイル)が他のサブサンプル(タイル)に独立して復号できるかを示すフラグ情報(independent)や、リザーブドフィールド(reserved = 0)等の情報を格納するようにしてもよい。
 unsigned int(2) independent
 bit(6) reserved=0;
 このようにすると、サブサンプル毎の依存性が分かるため、システムがパラレルデコード等をするための補助情報とすることができる。
 また、以上においては、図20のビジュアルサンプルグループエントリ23-2のように、ヒント情報(hint_data)として、四角12内に示されるような各例の内、いずれかの例の情報が記述されるように説明したが、さらにその他のヒント情報を記述するようにしてもよい。例えば、横幅(Width)や高さ(height)等の、グループ化されたサブサンプル(タイル)の大きさに関する情報を格納するようにしてもよいし、水平方向のオフセット(H_offset)や垂直方向のオフセット(V_offset)等の、グループ化されたサブサンプル(タイル)の位置に関する情報を格納するようにしてもよい。
 このような情報を格納することにより、システムは、グループ化されたサブサンプルのサイズ情報を、サブサンプルインフォメーションボックス(subsample information box)から計算しなくても容易に取得することができる。
 さらに、ヒント情報(hint_data)として、HEVCのビットストリームにおいて、独立に復号することができる部分領域を識別する情報であるmcts_idを記述するようにしてもよい。
 HEVCのMCTS SEI(Motion constrained tile set Supplemental Enhancement Information)において、独立に復号することができる部分領域は、矩形のセット毎に設定されている。例えば、図21のAの左上の斜線部分が独立に復号することができる部分領域であるとすると、その部分領域は、MCTS SEIにおいて、図21のBに示されるようにセット毎に設定されている。なお、図21のCに示される例のように、セットに含まれるタイルが他のセットとオーバーラップしてもよい。部分領域のピクセル数は、各セットのピクセル数から、例えば、図21のDの例のように算出することができる。
 MCTS SEIのシンタクスの例を図22に示す。図22に示されるように、図21に示されるような部分領域には、それぞれ識別情報(mcts_id)が割り当てられる。この識別情報(mcts_id)をヒント情報(hint_data)として記述することにより、HEVCの部分領域と、MP4ファイルフォーマットにおけるサブサンプルとを容易に対応付けることができ、システムにおいて、例えばシーケンスパラメータセット(SPS)のヘッダ情報の更新(例えば置き換え等)を容易にすることができる。
  <例5>
 ところで、例4の場合、ビジュアルサンプルグループエントリを拡張して、各エントリに属するサブサンプルを、サブサンプルインデックスを用いて示すように説明した。この場合、サンプル内のタイルへのアクセス情報としてサブサンプルインフォメーションボックスの情報が利用されることになる。つまり、この場合、MP4ファイルをパースするレイヤにおいてサブサンプルの意味を解釈する必要がある。
 例5では、サンプル内のタイルへのアクセス方法としてこのような方法の代わりになる方法を提案する。つまり、サブサンプルインフォメーションボックスの代わりに、サンプルを構成するビットストリームのナルユニット(NAL unit)の構成をビジュアルサンプルグループエントリに記述するようにする(Map Group Entry)。例えば、ビジュアルサンプルグループエントリを拡張し、HEVCビットストリームのNAL unitをグループ化するようにする(HEVCNALUUMapGroupEntry)。
 このようにNAL unitをグループ化する場合、グループ化された意味に依らず、MP4ファイルをパースするレイヤにおいて、同じ処理フローにより対応することができる。
 図23にその例を示す。図23に示されるように、例えば、サンプル内のNAL unitsをマップ化する(例えばタイル毎にグループ化する)ビジュアルサンプルグループエントリを用意し、例えばヒント情報等のビデオ関連情報を格納するビジュアルサンプルグループエントリにおいては、そのサンプル内のNAL unitsをマップ化するビジュアルサンプルグループエントリを参照するようにする。
 ビジュアルサンプルグループエントリ間は、グループの識別情報(GroupID)により紐づけされる。なお、NAL unitsのマップパターンが全て同一の場合、サンプルトゥーグループボックスは不要である。
 サンプル内のNAL unitsをマップ化するビジュアルサンプルグループエントリ(HEVCNALUMapGroupEntry() extends VisualSampleGroupEntry('hcnm'))のシンタクスの例を図24の左上に示す。図24に示されるように、このビジュアルサンプルグループエントリにおいては、各ナルユニット(NAL unit)が属するグループの識別情報(GroupID)が設定される。
 例えば、図24の左下に示されるようにサンプル内に5つのサブサンプル(タイル(Tile))が存在し、各サブサンプルが、それぞれ2つのNAL unitにより構成されているとする。その場合、NAL unitとGroupIDの紐づけ(NAL unitのマップパターン)は、図24の右側に示される例のようになる。よって、10つのNAL unitにて構成されている。図24の左上に示されるビジュアルサンプルグループエントリ(HEVCNALUMapGroupEntry() extends VisualSampleGroupEntry('hcnm'))のシンタクスのNALU_countは、NAL_unitの数を表す。さらに、図24の左下に示されるように、各タイル(Tile)がどのNAL_unitから始まるのかを定義づけることができる。この例によると、Tile1はNAL1から始まり、Tile2はNAL3から始まり、Tile3はNAL5から始まり、Tile4はNAL7から始まり、Tile5はNAL9から始まる。このような各TileがどのNAL_unitから始まるのかを表す情報が、図24の左上に示されるビジュアルサンプルグループエントリ(HEVCNALUMapGroupEntry() extends VisualSampleGroupEntry('hcnm'))のシンタクスとして定義されるようにしてもよい。
 そして、例4において説明したサブサンプルのプロファイル情報を格納するビジュアルサンプルグループエントリ(SubSampleProfileInformationEntry extends VisualSampleGroupEntry('sspi'))の例を図25に示す。このビジュアルサンプルグループエントリには、各エントリについて、ヒント情報(hint_data)と、そのエントリが対応するグループの識別情報(GroupID)が設定される。
 図25に示されるように、このヒント情報(hint_data)としては、例えば、例1乃至例4において説明した四角12内に示されるような各例の内、いずれかの例の情報が設定される。
 ただし図25においては、四角12内に示されるように、ヒント情報として、例(A-1),(A-2),(B-1),(B-2)以外に、例(C)が追加されている。ここでは、水平方向のオフセット(H_offset)、垂直方向のオフセット(V_offset)等の、グループ化されたサブサンプル(タイル)の位置に関する情報が格納される。また、横幅(Width)や高さ(height)等の、グループ化されたサブサンプル(タイル)の大きさに関する情報が格納される。これらは図20を参照して説明したヒント情報と同様である。
 また、グループの識別情報(GroupID)には、図24の例を用いて説明したサンプル内のNAL unitsをマップ化するビジュアルサンプルグループエントリ(HEVCNALUMapGroupEntry() extends VisualSampleGroupEntry('hcnm'))において、NAL unitのマップ化に用いられたグループの識別情報(GroupID)のいずれかが設定される。つまり、このグループの識別情報(GroupID)は、図10の例のようなタイルのグループを示す。
 なお、図18の例のように、複数のサブサンプル(タイル)をグループ化しない場合も、サブサンプルのプロファイル情報を格納するビジュアルサンプルグループエントリ(SubSampleProfileInformationEntry extends VisualSampleGroupEntry('sspi'))には、図26に示される例のように、図25の例と同様の情報が設定されるが、この場合、グループの識別情報(GroupID)は、各タイルを示すことになる。
 以上のようにビジュアルサンプルグループエントリを拡張して、NAL unitの構成を設定するようにすることにより、NAL unitをグループ化する場合、グループ化された意味に依らず、MP4ファイルをパースするレイヤにおいて、同じ処理フローにより対応することができる。
 なお、MAP GROUPによるGROUPをTILE GROUP化するBOXをSSPI(SubSample Profile Information)とは別BOXで定義するようにしてもよい。つまり、各エントリに対応するHEVCNALMapEntryによるグループの識別情報(GroupID)の定義は、エントリに対応するヒント情報(hint_data)を定義するサブサンプルのプロファイル情報を格納するビジュアルサンプルグループエントリ(SubSampleProfileInformationEntry extends VisualSampleGroupEntry('sspi'))とは異なるボックスである、タイルグループマップエントリを格納するように拡張されたビジュアルサンプルグループエントリ(TileGroupMapEntry extends VisualSampleGroupEntry('tgpm'))において行うようにしてもよい。
 図25の例の場合、TGPMのシンタクスを、例えば、以下のようにしてもよい。
Class TileGroupMapEntry extends VisualSampleGroupEntry (‘tgpm’) {
 unsigned int(16) entry_count;
for (i=0; i < entry_count; i++) {
   unsigned int(16) TileGroupID;
   unsigned int(16) group_count;
   for (j=0; j < group_count; j++) {
     unsigned int(16) GroupID
   }
 }
}
 このようなシンタクスにより、図25の例の場合、TileGroupIDに、GroupIDが以下のように割り当てられる。
TileGroupID=1 => GroupID= 3
TileGroupID=2 => GroupID =2,3,4
TIleGroupID=3 => GroupID =1,2,3,4,5
 そして、それとは別のボックスとして、SSPIのシンタクスを、例えば、以下のようにしてもよい。
class SubSampleProfileInformationEntry extends VisualSampleGroupEntry (‘sspi’) {
 unsigned int(16) entry_count;
 for (i=0; i < entry_count; i++) {
    unsigned int(16) TileGroupID;
   unsigned int(xx) hint_data;
 }
}
 なお、この場合のヒント情報(hint_data)の内容は、上述した各例と同様である(四角12内に示されるような各例の内、いずれかの例の情報が設定される)。
 このように、GroupIDのグループ化を、ヒント情報等を定義するsspiとは異なるboxにおいて行うことにより、そのグループ化の他の情報への依存度を低減させることができ、他の情報から独立して行うようにすることができる。したがって、より汎用的な(自由な)グループ化を実現することができ、そのGroupIDのグループ(TileGroupID)をより汎用的な用途に利用することができる。例えば、GroupIDの定義の階層化や非階層化等を、ヒント情報等の他の情報の構成を考慮する必要無く、容易に実現することができるようになる。
 また、サブサンプルのフラグ(flag)定義の例については、図3を参照して説明したが、以上に説明した例5の場合、さらに、HEVC NAL Map Group Entryでgroup化された連続したNAL unitsを追加定義するようにしてもよい。例えば、以下のように、flag=5において、HEVC NAL Map Group Entryでgroup化された連続したNAL unitsをsub-sampleとして追加定義するようにしてもよい。
 5:0:NAL-unit-based sub-samples. A sub-sample contains one or more contiguous NAL units. A sub-sample is mapped to GroupID, grouping in HEVC NAL Map Group Entry.
 このようにすることにより、NAL unitsベースで、任意のGroupへのバイトアクセスが実現できる。
 <2.第2の実施の形態>
  <MP4ファイル(1)>
 次にMP4ファイルの例について説明する。図27は、タイル画像のMP4ファイルの構成例を説明する図である。このMP4ファイルは、タイル(Tile)構造を有するビットストリームを1つのファイルにファイル化したものである。図27に示されるように、このMP4ファイルは、5つのトラックTrack1乃至Track5を有している。
 トラックtrack1は、サンプルディスクリプションボックス内のHEVCサンプルエントリ(HEVC sample entry)を有しており、そのcodec typeは、通常のHEVCビットストリームであることを示すhvc1とされている。このサンプルエントリ(Sample Entry)は、HEVCのデコードに必要なconfiguration情報を格納するHEVCデコーダコンフィギュレーションレコード(HEVC Decoder Configuration Record)(hvcCボックス)を有している。ビデオパラメータセット(VPS(Video Parameter Set))、シーケンスパラメータセット(SPS(Sequence Parameter Set))、SEI(Supplemental Enhancement Information)、ピクチャパラメータセット(PPS(Picture Parameter Set))等のヘッダ情報もこのhvcCボックスに格納される。このhvcCボックスにSEIを格納するか否かは任意とされる。
 トラックtrack1はまた、各トラックtrack2乃至track5のタイル(slice)への参照のためのエクストラクタ(extractor)Track2乃至Track5を有している。エクストラクタ(extractor)Track2はトラックTrack2のスライス(Tile1)を参照し、エクストラクタ(extractor)Track3はトラックTrack3のスライス(Tile2)を参照する。以下同様に、エクストラクタ(extractor)Track4はトラックTrack4のスライス(Tile3)を参照し、エクストラクタ(extractor)Track5はトラックTrack5のスライス(Tile4)を参照する。
 トラックtrack2乃至track5は、それぞれタイルTile1乃至Tile4の実データであるスライスsliceを格納している。またトラックtrack2乃至track5は、サンプルエントリ(Sample Entry)を有するが、これらはHEVC Tileだけを(単独で)格納するため、codec typeはhvt1とされている。このトラックtrack2乃至track5のサンプルエントリ(Sample Entry)は、HEVC Tileだけのデコードに必要なconfiguration情報を格納するHEVCデコーダコンフィギュレーションレコード(HEVC Decoder Configuration Record)(hvtCボックス)を有している。なお、1つのトラックに、グループ化されたタイル(Tile)を格納することができるようにしてもよい。
 トラックtrack2乃至track5はまた、タイルリージョングループエントリ(TileRegionGroupEntry)を有している。これらのトラックtrack2乃至track5のタイルリージョングループエントリ(TileRegionGroupEntry)には、それぞれのタイルを識別する識別情報であるGroupID、当該タイルの水平方向の位置(オフセット)を示すH_offset、当該タイルの垂直方向の位置(オフセット)を示すV_offset、当該タイルの水平方向の大きさ(幅)を示すH_width、当該タイルの垂直方向の大きさ(高さ)を示すV_heightの5つのパラメータの値が定義される。また、これらはグループ化されたタイル(Tile)に対して定義するようにしてもよい。
 例えば、トラックTrack2(タイル1(Tile1))のタイルリージョングループエントリ(TileRegionGroupEntry)では、GroupID = 1, H_offset = 0, V_offset = 0, H_width = 960, V_height = 540が定義されている。また、例えば、トラックTrack3(タイル2(Tile2))のタイルリージョングループエントリ(TileRegionGroupEntry)では、GroupID = 2, H_offset = 960, V_offset = 0, H_width = 960, V_height = 540が定義されている。さらに、例えば、トラックTrack4(タイル3(Tile3))のタイルリージョングループエントリ(TileRegionGroupEntry)では、GroupID = 3, H_offset = 0, V_offset = 540, H_width = 960, V_height = 540が定義されている。また、例えば、トラックTrack5(タイル4(Tile4))のタイルリージョングループエントリ(TileRegionGroupEntry)では、GroupID =4, H_offset = 960, V_offset = 540, H_width = 960, V_height = 540が定義されている。この場合、全体画像(1920x1080)は、縦2枚x横2枚の4枚のタイル(960x540)からなる。
 さらにトラックtrack2乃至track5には、トラックリファレンス(Track Reference)として、「prnt=1」が定義されている。これは、これらのトラックtrack2乃至track5が、トラックTrack1を参照することを示す。つまり、これらのトラックリファレンスによって、トラックTrack2乃至Track5のいずれか(いずれかのタイル)を再生する際に、トラックTrack1の情報(パラメータセット等)が参照されることになる。
  <HEVC Tile Decoder Configuration Recordのシンタクス>
 図27のサンプルエントリ(Sample Entry)の、HEVC Tileだけのデコードに必要なconfiguration情報を格納するHEVCデコーダコンフィギュレーションレコード(HEVC Decoder Configuration Record)(hvtCボックス)の基本的なシンタクスは、次のようになる。
 Class HEVCConfigurationBox extends Box(‘hvtc’){
         HEVCTileDecoderConfigurationRecord()HEVCTileConfig;
    }
  <HEVCTileDecoderConfigurationRecordのシンタクスの例1>
 次にHEVCTileDecoderConfigurationRecordのシンタクスの具体例について説明する。図28は、HEVCタイルデコーダコンフィグレーションレコードを説明する図である。例1のHEVCタイルデコーダコンフィグレーションレコードは、図28に示されるように構成される。configurationVersion、mcts_tier_flagおよびmcts_level_idcの3つが、拡張的に追加されている。
 そのconfigurationVersionは、HEVCタイルデコーダコンフィグレーションレコードのバージョンを表す。HEVCにおいては、同じ画像サイズに対して、tierという、Bitrateの異なる2種類のプロファイルが定義されている。すなわちその2種類とは、main tierとhigh tierである。mcts_tier_flagはそのいずれであるのかを表すフラグである。mcts_level_idcは、temporal MCTS SEI(Temporal Motion constrained tile set Supplemental Enhancement Information)において、独立に復号することができる部分領域の復号処理の負荷の大きさを定義する復号負荷定義情報として、その部分領域の復号処理の負荷の大きさを表すレベルである。
 ここでテンポラルモーションコンストレインドタイルセットSEI(temporal_motion_constrained_tile_sets SEI)について説明する。図29はテンポラルMCTS SEIのシンタクスの例を示す図である。同図に示されるテンポラルMCTS SEIのシンタクスにおいては、mcts_tier_flag,mcts_level_idc,max_mcts_tier_flag,max_mcts_level_idを含むさまざまな情報が格納されている。
 なお、temporal MCTS SEIは、MCTS SEIと名称が異なるだけで、実質的に同じものである。また、図28および図29のmcts_level_idcは、図8、図12、図13、図17、図19、図20、図25および図26等における四角12内に示されるgenerals_level_idcと名称が異なるだけで、実質的に同じものである。
 図28の例では、HEVC decodec configuration recordと同じデータ構造で、temporal_motion_constrained_tile_sets SEIに格納されているパラメータのうち、mcts_tier_flagとmcts_level_idcという、HEVC Tileのデコード判断に必要なパラメータだけが設定される。図28のHEVCTileDecoderConfigurationRecordでは、それ以外の項には不必要なのでゼロが設定される。あるいはHEVC decoder configuration recordと同じ値が設定される。
 すなわちこの例1では、numOfArraysには、実質的に何も格納されない。
  <HEVCTileDecoderConfigurationRecordのシンタクスの例2>
 図30は、HEVCタイルデコーダコンフィグレーションレコードを説明する図である。例2のHEVCタイルデコーダコンフィグレーションレコードは、図30に示されるように構成される。
 図30の例2は、図28の例1と基本的に同様の構成である。ただし、例1では実質的に何も格納されていないnumOfArraysに、例2では、HEVC Titleに対応したtemporal_motion_constrained_tile_sets SEIが格納されている点が、例1と異なっている。
  <HEVCTileDecoderConfigurationRecordのシンタクスの例3>
 図31は、HEVCタイルデコーダコンフィグレーションレコードを説明する図である。例3のHEVCタイルデコーダコンフィグレーションレコードは、図31に示されるように構成される。
 図31に示されるように、例3では、図28および図30の例と異なり、HEVCタイルデコーダコンフィグレーションレコードを拡張するというより、そのパターンが独自に規定される。すなわち例3では、configurationVersion の他、temporal_motion_constrained_tile_sets SEIに格納されているパラメータのうち、HEVC Tileのデコード判断に必要なパラメータであるmcts_tier_flag,mcts_level_idcだけが格納されている。
  <HEVCTileDecoderConfigurationRecordのシンタクスの例4>
 図32は、HEVCタイルデコーダコンフィグレーションレコードを説明する図である。例4のHEVCタイルデコーダコンフィグレーションレコードは、図32に示されるように構成される。
 図32に示されるように、例4では、configurationVersionの他、temporal_motion_constrained_tile_sets SEIに格納されているHEVC Tileのデコード判断に必要なパラメータとして、mcts_tier_flag,mcts_level_idc,max_mcts_tier_flag,max_mcts_level_idだけが格納されている。max_mcts_tier_flag,max_mcts_level_idは、それぞれmcts_tier_flag,mcts_level_idcの最大の値を表し、他のタイルを再生するのに必要なプロファイル情報である。つまり、これらはストリーム全体の、最大のTileのための情報である。後述する図36の例では、これが他のボックス(hvte box)に格納される。
 複数のTileが同一のstream内に存在する場合において、Tileの大きさが異なるとき、それぞれのTileに必要なmcts_tier_flag,mcts_level_idcが異なることがある。その場合、最大の値であるmax_mcts_tier_flag,max_mcts_level_idcを、それぞれのTile毎のmcts_tier_flag,mcts_level_idcと共に格納することで、デコード処理のヒント情報とする。
  <HEVCTileDecoderConfigurationRecordのシンタクスの例5>
 図33は、HEVCタイルデコーダコンフィグレーションレコードを説明する図である。例5のHEVCタイルデコーダコンフィグレーションレコードは、図33に示されるように構成される。
 図33に示されるように、例5では、HEVC Tileのデコード判断に必要な、HEVC Tileに対応したtemporal_motion_constrained_tile_sets SEIが、nalUnitに格納されている。従ってNAL_unit_typeには、SEIであることを表すNALunitタイプが格納される。
  <HEVCTileDecoderConfigurationRecordのシンタクスの例6>
 図34は、HEVCタイルデコーダコンフィグレーションレコードを説明する図である。例6のHEVCタイルデコーダコンフィグレーションレコードは、図34に示されるように構成される。
 図34に示されるように、例6は、図31の例3と図33の例5とが合成された構成とされている。すなわち、configurationVersionからmcts_level_idcの行までの例3と、lengthSizeMinusOne以降の行の例5とが合成されている。つまり、configurationVersionの他、temporal_motion_constrained_tile_sets SEIに格納されているHEVC Tileのデコード判断に必要なパラメータであるmcts_tier_flag,mcts_level_idcと、HEVC Tileのデコード判断に必要な、HEVC Tileに対応したtemporal_motion_constrained_tile_sets SEIとが格納された構成となっている。
  <HEVCTileDecoderConfigurationRecordのシンタクスの例7>
 図35は、HEVCタイルデコーダコンフィグレーションレコードを説明する図である。例7のHEVCタイルデコーダコンフィグレーションレコードは、図35に示されるように構成される。
 図35に示されるように、例7は、図32の例4と図33の例5とが合成された構成とされている。すなわち、configurationVersionからmax_mcts_level_idcの行までの例4と、lengthSizeMinusOne以降の行の例5とが合成されている。つまり、configurationVersionの他、temporal_motion_constrained_tile_sets SEIに格納されているHEVC Tileのデコード判断に必要なパラメータであるmcts_tier_flag,mcts_level_idc,max_mcts_tier_flag,max_mcts_level_idと、HEVC Tileのデコード判断に必要な、HEVC Tileに対応したtemporal_motion_constrained_tile_sets SEIとが格納された構成となっている。
  <MP4ファイル(2)>
 図36は、図27とは異なるタイル画像のMP4ファイルの構成例を説明する図である。図36のMP4ファイルは、基本的に図27のMP4ファイルと同様の構成であるが、図36のMP4ファイルにおいては、トラックTrack1のサンプルエントリがhvcCbox以外に、hvte boxを有している点が図27のMP4ファイルと異なっている。
 図36のMP4ファイルにおいては、図32で説明した、ストリーム全体の、最大のTileのための情報であるmax_mcts_tier_flag,max_mcts_level_idが、ベーストラックであるトラックTrack1のhvte boxに格納される。
 図37は、HEVCタイルイクステンションボックスを説明する図である。図37のAは、図36のトラックTrack1のサンプルエントリが有するビジュアルサンプルグループエントリの拡張を表しており、HEVCConfigurationBox(hvcC box)の他、HEVCTileExtensionBox()(hvte box)が追加されている。そして図37のBが、そのHEVCTileExtensionBox()のシンタクスを表している。図37のBに示されるように、max_mcts_tier_flag,max_mcts_level_idが格納されている。
 max_mcts_tier_flag,max_mcts_level_idは、ストリーム全体の、最大のTileのための情報であるから、Tile Track(トラックTrack2乃至Track5)に格納せずに、ベーストラックであるトラックTrack1に格納する。これにより、任意のTileを単独でデコードするのに必要な最大値を簡単に取得することが可能になる。
  <MP4ファイル(3)>
 図38は、タイル画像のMP4ファイルの構成例を説明する図である。図38のMP4ファイルは、基本的に図27のMP4ファイルと同様の構成であるが、図27のMP4ファイルにおいては、トラックTrack2乃至Track5のサンプルエントリのhvtC boxに、HEVC Tileだけのデコードに必要なconfiguration情報を格納するようにした。これに対して、図38のMP4ファイルにおいては、hvtC boxに、図30、図33、図34,および図35の例に示した例のように、temporal_motion_constrained_tile_sets SEI が格納されるだけでなく、さらにHEVC Tileだけのデコードに必要なVPS,SPS,PPSが格納される。
 このようにすることで、Tile2乃至Tile5のいずれかを再生する場合、それらのパラメータセットを得るためにベーストラックであるトラックTrack1の情報にアクセスする必要が無くなる。
 <3.第3の実施の形態>
  <画像符号化装置>
 次に、以上のような本技術を実現する装置とその方法について説明する。図39は、本技術を適用した画像処理装置の一態様である、画像符号化装置を示す図である。図39に示される画像符号化装置100は、入力された画像データをHEVC符号化方式で符号化してMP4ファイルフォーマットでファイル化する装置である。
 図39に示されるように、画像符号化装置100は、画像符号化部101、サブサンプル情報生成部102、およびMP4ファイル生成部103を有する。
 画像符号化部101は、入力された画像データの全体画像をタイル(Tile)と称する部分画像に分割し、各タイルをHEVC符号化方式がサポートするタイル(Tile)として、全体画像の画像データをそのタイル毎に符号化する。つまり、タイル毎に独立に復号することができるHEVC符号化方式のビットストリーム(HEVCビットストリーム)が生成される。
 画像符号化部101は、得られたHEVCビットストリームをMP4ファイル生成部103に供給する。また、画像符号化部101は、全体画像をどのように分割したかに関するタイル(Tile)情報や、各タイルのプロファイル情報をサブサンプル情報生成部102に供給する。
 サブサンプル情報生成部102は、画像符号化部101から供給されるタイル情報やタイルのプロファイル情報を用いて、MP4ファイルフォーマットに対応した、それらの情報を含む、すなわち、全体画像の中の、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報(拡張サブサンプル情報)を生成する。サブサンプル情報生成部102は、生成した拡張サブサンプル情報を、MP4ファイル生成部103に供給する。
 MP4ファイル生成部103は、画像符号化部101から供給されたHEVCビットストリームをMP4ファイルフォーマットでファイル化し、そのHEVCビットストリームを含むファイルの、HEVCビットストリームを管理する管理情報に、サブサンプル情報生成部102から供給される拡張サブサンプル情報を格納する。
 その際、MP4ファイル生成部103は、その拡張サブサンプル情報を、上述した管理情報のサンプルテーブルボックス(Sample Table Box)のサブサンプルインフォメーションボックス(Subsample Information Box)とは異なるサブサンプルヒントインフォメーションボックス(Subsample Hint Information Box)として配置する。
 または、MP4ファイル生成部103は、その拡張サブサンプル情報を、上述した管理情報のサンプルテーブルボックス(Sample Table Box)のサンプルグループディスクリプションボックス(Sample Group Description Box)にビジュアルサンプルグループエントリ(VisualSampleGroupEntry)として配置し、そのサブサンプル情報を適用するサンプルを指定する情報を、サンプルトゥーグループボックス(Sample To Group Box)に配置する。
 なお、サブサンプル情報の内容は、第1の実施の形態において説明した各例のいずれかと同様である。例えば、例5の場合、サブサンプル情報生成部102が生成する拡張サブサンプル情報には、全体画像の中の、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報だけでなく、NAL unitをグループ化するマップグループ情報(Map Group Entry)も含まれる。
 そして、MP4ファイル生成部103は、以上のように生成したMP4ファイルを出力し、ネットワーク、記録媒体等、若しくは情報処理装置等を介して、例えば復号側に伝送する。
 このようにすることにより、画像符号化装置100は、復号に必要な性能をより正確に把握できるようにすることができる。
  <画像符号化処理の流れ>
 次に、以上のような画像符号化装置100により実行される各処理の流れについて説明する。図40のフローチャートを参照して、画像符号化処理の流れの例を説明する。
 画像符号化処理が開始されると、画像符号化部101は、ステップS101において、画像データをサブサンプル(タイル)毎に復号できるように符号化する。
 ステップS102において、画像符号化部101は、例えばタイル情報や各タイルのプロファイル情報等、タイルに関する情報を抽出する。
 ステップS103において、サブサンプル情報生成部102は、ステップS102において抽出されたタイルに関する情報を用いて、タイルのヒント情報を含む拡張サブサンプル情報を生成する。
 ステップS104において、MP4ファイル生成部103は、拡張サブサンプル情報を用いて、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報をmoovのサンプルテーブルボックスに含むようにMP4ファイルを生成する。
 ステップS104の処理が終了すると画像符号化処理が終了する。
 以上のように画像符号化処理を実行することにより、画像符号化装置100は、復号に必要な性能をより正確に把握できるようにすることができる。
 <4.第4の実施の形態>
  <画像復号装置>
 次に、以上のように符号化された符号化データの復号について説明する。図41は、本技術を適用した画像処理装置の一態様である、画像符号化装置100に対応する画像復号装置の主な構成例を示すブロック図である。図41に示される画像復号装置200は、画像符号化装置100が生成した符号化データを、その符号化方法に対応する復号方法で復号する。つまり、画像復号装置200は、MP4ファイルからHEVCビットストリームを抽出し、そのHEVCビットストリームを復号して画像データを出力する。その際、画像復号装置200は、例えば、HEVCがサポートするタイル構造を利用して、単数または複数のタイル(Tile)からなる部分画像を他の部分とは独立して復号することができる。その際、画像復号装置200は、その独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報に基づいて、復号可否判断を行うことができる。
 図41に示されるように、画像復号装置200は、MP4ファイル再生部201、サブサンプル情報処理部202、および画像復号部203を有する。
 MP4ファイル再生部201は、入力されるMP4ファイルの再生可否判定処理を行ったり、そのMP4ファイルの再生処理を行ったり、エラー処理を行ったりする。MP4ファイル再生部201は、サブサンプル情報処理部202を利用してそれらの処理を行い、単数または複数のタイルのからなる部分画像(もちろん全体画像であってもよい)のHEVCビットストリームを生成し、画像復号部203に供給する。
 サブサンプル情報処理部202は、その再生可否判定処理や再生処理において、サブサンプル情報についての処理を行う。なお、サブサンプル情報の内容は、第1の実施の形態において説明した各例のいずれかと同様である。例えば、例5の場合、サブサンプル情報生成部102が生成する拡張サブサンプル情報には、全体画像の中の、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報だけでなく、NAL unitをグループ化するマップグループ情報(Map Group Entry)も含まれる。
 画像復号部203は、MP4ファイル再生部201において生成されたHEVCビットストリームを復号し、その画像データを出力する。
 このようにすることにより、画像復号装置200は、復号に必要な性能をより正確に把握することができる。
  <画像復号処理の流れ>
 次に、以上のような画像復号装置200により実行される各処理の流れについて説明する。最初に、図42のフローチャートを参照して、画像復号処理の流れの例を説明する。
 画像復号処理が開始されると、画像復号装置200のMP4ファイル再生部201およびサブサンプル情報処理部202は、ステップS201において、入力されたMP4ファイルに含まれるHEVCビットストリームについて、ユーザ等により指定された部分画像の再生可否判定を行う。
 ステップS202において、MP4ファイル再生部201は、ステップS201の処理結果に基づいて、再生するか否かを判定する。再生すると判定された場合、処理はステップS203に進む。
 ステップS203において、MP4ファイル再生部201およびサブサンプル情報処理部202は、再生処理を行う。
 ステップS204において、画像復号部203は、ステップS203の処理により得られた、単数または複数のタイルからなる部分画像の符号化データ(HEVCビットストリーム)を復号し、単数または複数のタイルからなる部分画像の画像データを出力する。
 ステップS204の処理が終了すると画像復号処理が終了する。
 また、ステップS202において、再生しないと判定された場合、処理はステップS205に進む。
 ステップS205において、MP4ファイル再生部201は、復号を正常に出来ない場合の所定の処理であるエラー処理を行う。このエラー処理はどのような処理であっても良い。例えば、復号を強制終了(中断、一時停止等を含む)してもよいし、画像や音声などでユーザに対して警告するようにしてもよい。また、例えばレベルがより低い他の符号化ストリームを取得して復号をやり直すようにしてもよい。さらに、例えば、復号画像に乱れが生じることを許容し、その符号化ストリームを強制的に復号するようにしてもよい。
 ステップS205の処理が終了すると、画像復号処理が終了する。
  <再生可否判定処理の流れ>
 次に、図43のフローチャートを参照して、図42のステップS201において実行される再生可否判定処理の流れの例を説明する。
 再生可否判定処理が開始されると、ステップS221において、MP4ファイル再生部201は、MP4ファイルのサンプルテーブルボックスのサンプルディスクリプションボックスのHEVCサンプルエントリから、MP4ファイルに含まれるHEVCビットストリームのシーケンスパラメータセット(SPS)を取得する。
 ステップS222において、MP4ファイル再生部201は、そのシーケンスパラメータセット(SPS)に含まれるプロファイル情報が、画像復号部203に対応するプロファイル情報であるか否かを判定する。つまり、MP4ファイル再生部201は、シーケンスパラメータセット(SPS)に含まれる情報に基づいて、画像復号部203が、そのMP4ファイルに含まれる全体画像のHEVCビットストリームを復号可能であるか否かを判定する。
 復号可能であると判定された場合、処理はステップS223に進む。ステップS223において、MP4ファイル再生部201は、再生を行うように制御する。つまり、図42のステップS202において再生すると判定される。
 ステップS223の処理が終了すると、再生可否判定処理が終了し、処理は図42に戻る。
 また、ステップS222において、プロファイル情報が画像復号部203に対応しないと判定された場合、つまり、画像復号部203がそのMP4ファイルに含まれる全体画像のHEVCビットストリームを復号不可能であると判定された場合、処理はステップS224に進む。ステップS224において、サブサンプル情報処理部202は、MP4ファイルのサンプルテーブルボックスから、タイル(サブサンプル)のヒント情報を取得する。
 ステップS225において、サブサンプル情報処理部202は、ステップS224において取得されたヒント情報に含まれるプロファイル情報が、画像復号部203に対応するプロファイル情報であるか否かを判定する。つまり、サブサンプル情報処理部202は、画像復号部203が、そのMP4ファイルに含まれる、単数若しくは複数のタイルからなる部分画像のHEVCビットストリームを復号可能であるか否かを判定する。
 復号可能であると判定された場合、処理はステップS223に戻る。すなわち、この場合もMP4ファイル再生部201は、再生を行うように制御する。
 また、ステップS225において、プロファイル情報が画像復号部203に対応しないと判定された場合、つまり、画像復号部203がそのMP4ファイルに含まれる部分画像のHEVCビットストリームを復号不可能であると判定された場合、処理はステップS226に進む。
 ステップS226において、MP4ファイル再生部201は、上述したようにエラー処理を行うように制御する。
 ステップS226の処理が終了すると、再生可否判定処理が終了し、処理は図42に戻る。
  <再生処理の流れ>
 次に、図42のステップS203において実行される再生処理の流れの例を、図44のフローチャートを参照して説明する。
 再生処理が開始されると、MP4ファイル再生部201は、ステップS241において、MP4ファイルからシーケンスパラメータセット(SPS)と、ピクチャパラメータセットとを取得する。
 ステップS242において、サブサンプル情報処理部202は、MP4ファイルから再生するタイルのヒント情報を取得する。
 ステップS243において、MP4ファイル再生部201は、ステップS242において得られたタイルのヒント情報を用いて、ステップS241において取得したシーケンスパラメータセット(SPS)を更新する。例えば、ヒント情報が、四角12の例(A-1)や(A-2)の場合、MP4ファイル再生部201は、そのヒント情報に含まれる情報(プロファイルレベル等)を用いて、シーケンスパラメータセット(SPS)の情報を書き換える。また、例えば、ヒント情報が、四角12の例(B-1)や(B-2)の場合、MP4ファイル再生部201は、そのヒント情報に含まれる情報を、シーケンスパラメータセット(SPS)に置き換える。
 ステップS244において、サブサンプル情報処理部202は、MP4ファイルから再生するタイルのデータを取得する。その際、例1乃至例4の場合、サブサンプル情報処理部202は、図6の例のように、サブサンプルインフォメーションボックスを参照して、サブサンプル(タイル)を構成するNAL unitのデータにアクセスし、取得する。また、例5の場合、サブサンプル情報処理部202は、図24の例のように、サンプル内のNAL unitsをマップ化するビジュアルサンプルグループエントリ(HEVCNALUMapGroupEntry() extends VisualSampleGroupEntry('hcnm'))において設定された、NAL unitとGroupIDの紐づけ(NAL unitのマップパターン)(Map Group Entry)を参照して、サブサンプル(タイル)を構成するNAL unitのデータにアクセスし、取得する。
 ステップS245において、MP4ファイル再生部201は、ステップS244において得られたタイルのデータやステップS243において更新されたシーケンスパラメータセット等を用いて、再生するタイル(部分画像)のビットストリームを生成する。
 ステップS245の処理が終了すると、処理は図42に戻る。すなわち、生成された部分画像のビットストリームが復号される。
 以上のように各処理を実行することにより、画像復号装置200は、復号に必要な性能をより正確に把握することができる。
  <再生処理の流れ>
 次に、図42のステップS203において実行される再生処理の流れの、他の例を、図45のフローチャートを参照して説明する。
 再生処理が開始されると、MP4ファイル再生部201は、ステップS261において、ビジュアルサンプルグループエントリから、タイルの位置に関する情報(H_offset,V_offset)と、タイルの大きさに関する情報(Width,Height)を取得する。
 ステップS262において、MP4ファイル再生部201は、取得されたタイルの位置に関する情報と、タイルの大きさに関する情報とに基づいて、再生したいタイルを選択する。
 ステップS263において、サブサンプル情報処理部202は、ビジュアルサンプルグループエントリから、選択されたタイルに対応するNAL unitのマップパターンに関する情報(NALU_count,groupID)を取得する。
 ステップS264において、サブサンプル情報処理部202は、ステップS263において取得されたNAL unitのマップパターンに関する情報に基づいて、タイルのデータを取得する。
 ステップS265において、MP4ファイル再生部201は、ステップS264において取得されたタイルのビットストリームを再生する。
 ステップS265の処理が終了すると、処理は図42に戻る。すなわち、再生された部分画像のビットストリームが復号される。
 以上のように各処理を実行することにより、画像復号装置200は、復号に必要な性能をより正確に把握することができる。
  <再生処理の流れ>
 次に、図42のステップS203において実行される再生処理の流れの、他の例を、図46のフローチャートを参照して説明する。
 再生処理が開始されると、MP4ファイル再生部201は、ステップS281において、ビジュアルサンプルグループエントリから、タイルの位置に関する情報(H_offset,V_offset)と、タイルの大きさに関する情報(Width,Height)を取得する。
 ステップS282において、MP4ファイル再生部201は、取得されたタイルの位置に関する情報と、タイルの大きさに関する情報とに基づいて、再生したい領域を選択する。
 ステップS283において、サブサンプル情報処理部202は、ビジュアルサンプルグループエントリから、再生したい領域に対応するTileGroupIDを基に、複数のGroupIDを取得する。
 ステップS284において、サブサンプル情報処理部202は、ビジュアルサンプルグループエントリから、選択された複数のGroupIDのタイルに対応するNAL unitのマップパターンに関する情報(NALU_count,groupID)をそれぞれ取得する。
 ステップS285において、サブサンプル情報処理部202は、ステップS284において取得されたNAL unitのマップパターンに関する情報に基づいて、それぞれのタイルのデータを取得する。
 ステップS286において、MP4ファイル再生部201は、ステップS285において取得された各タイルのビットストリームを再生する。
 ステップS286の処理が終了すると、処理は図42に戻る。すなわち、再生された部分画像のビットストリームが復号される。
 以上のように各処理を実行することにより、画像復号装置200は、復号に必要な性能をより正確に把握することができる。
  <再生処理の流れ>
 次に、図42のステップS203において実行される再生処理の流れの、他の例を、図47のフローチャートを参照して説明する。
 再生処理が開始されると、MP4ファイル再生部201は、ステップS301において、タイルリージョングループエントリから、タイルの位置に関する情報(H_offset,V_offset)と、タイルの大きさに関する情報(Width,Height)を取得する。
 ステップS302において、MP4ファイル再生部201は、取得されたタイルの位置に関する情報と、タイルの大きさに関する情報とに基づいて、再生したいタイルを選択する。
 ステップS303において、サブサンプル情報処理部202は、ステップS302において選択されたタイルに対応するトラックを取得する。
 ステップS304において、MP4ファイル再生部201は、ステップS303において取得された複数のトラックに対応するタイルのビットストリームを再生する。
 ステップS304の処理が終了すると、処理は図42に戻る。すなわち、再生された部分画像のビットストリームが復号される。
 以上のように各処理を実行することにより、画像復号装置200は、復号に必要な性能をより正確に把握することができる。
  <再生処理の流れ>
 次に、図42のステップS203において実行される再生処理の流れの、他の例を、図48のフローチャートを参照して説明する。
 再生処理が開始されると、MP4ファイル再生部201は、ステップS321において、タイルリージョングループエントリから、タイルの位置に関する情報(H_offset,V_offset)と、タイルの大きさに関する情報(Width,Height)を取得する。
 ステップS322において、MP4ファイル再生部201は、取得されたタイルの位置に関する情報と、タイルの大きさに関する情報とに基づいて、再生したい領域を選択する。
 ステップS323において、サブサンプル情報処理部202は、タイルリージョングループエントリから、再生したい領域に対応するTileGroupIDに基づいて、複数のGroupIDを取得する。
 ステップS324において、サブサンプル情報処理部202は、ステップS323において選択された複数のタイルに対応するトラックを取得する。
 ステップS325において、MP4ファイル再生部201は、ステップS324において取得された複数のトラックに対応する複数のタイルのビットストリームを再生する。
 ステップS324の処理が終了すると、処理は図42に戻る。すなわち、再生された部分画像のビットストリームが復号される。
 以上のように各処理を実行することにより、画像復号装置200は、復号に必要な性能をより正確に把握することができる。
 本技術の適用範囲は、部分画像を符号化・復号可能なあらゆる画像符号化装置及び画像復号装置に適用することができる。
 また、本技術は、例えば、MPEG、H.26x等の様に、離散コサイン変換等の直交変換と動き補償によって圧縮された画像情報(ビットストリーム)を、衛星放送、ケーブルテレビジョン、インターネット、または携帯電話機などのネットワークメディアを介して受信する際に用いられる画像符号化装置および画像復号装置に適用することができる。また、本技術は、光、磁気ディスク、およびフラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置および画像復号装置に適用することができる。
 <5.第5の実施の形態>
  <コンピュータ>
 上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
 図49は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
 図49に示されるコンピュータ900において、CPU(Central Processing Unit)901、ROM(Read Only Memory)902、RAM(Random Access Memory)903は、バス904を介して相互に接続されている。
 バス904にはまた、入出力インタフェース910も接続されている。入出力インタフェース910には、入力部911、出力部912、記憶部913、通信部914、およびドライブ915が接続されている。
 入力部911は、例えば、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部912は、例えば、ディスプレイ、スピーカ、出力端子などよりなる。記憶部913は、例えば、ハードディスク、RAMディスク、不揮発性のメモリなどよりなる。通信部914は、例えば、ネットワークインタフェースよりなる。ドライブ915は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブルメディア921を駆動する。
 以上のように構成されるコンピュータでは、CPU901が、例えば、記憶部913に記憶されているプログラムを、入出力インタフェース910およびバス904を介して、RAM903にロードして実行することにより、上述した一連の処理が行われる。RAM903にはまた、CPU901が各種の処理を実行する上において必要なデータなども適宜記憶される。
 コンピュータ(CPU901)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア921に記録して適用することができる。その場合、プログラムは、リムーバブルメディア921をドライブ915に装着することにより、入出力インタフェース910を介して、記憶部913にインストールすることができる。
 また、このプログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することもできる。その場合、プログラムは、通信部914で受信し、記憶部913にインストールすることができる。
 その他、このプログラムは、ROM902や記憶部913に、あらかじめインストールしておくこともできる。
 なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
 また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
 また、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、全ての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
 また、以上において、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。
 以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
 例えば、本技術は、1つの機能を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
 また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
 さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
 上述した実施形態に係る画像符号化装置及び画像復号装置は、例えば、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機若しくは受信機、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置、又は、これら記憶媒体から画像を再生する再生装置などの様々な電子機器に応用され得る。
 また、本技術は、これに限らず、このような装置またはシステムを構成する装置に搭載するあらゆる構成、例えば、システムLSI(Large Scale Integration)等としてのプロセッサ、複数のプロセッサ等を用いるモジュール、複数のモジュール等を用いるユニット、ユニットにさらにその他の機能を付加したセット等(すなわち、装置の一部の構成)として実施することもできる。
 また、本明細書では、各種情報が、符号化ストリームに多重化されて、符号化側から復号側へ伝送される例について説明した。しかしながら、これら情報を伝送する手法はかかる例に限定されない。例えば、これら情報は、符号化ビットストリームに多重化されることなく、符号化ビットストリームと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、ビットストリームに含まれる画像(スライス若しくはブロックなど、画像の一部であってもよい)と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、情報は、画像(又はビットストリーム)とは別の伝送路上で伝送されてもよい。また、情報は、画像(又はビットストリーム)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されてもよい。さらに、情報と画像(又はビットストリーム)とは、例えば、複数フレーム、1フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられてよい。
 なお、本技術は以下のような構成も取ることができる。
 (1) 画像データを符号化する符号化部と、
 前記画像データの画像の、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報を生成するサブサンプル情報生成部と、
 前記符号化部により生成された前記画像データの符号化データと、前記符号化データの管理情報を含むファイルを生成し、前記サブサンプル情報生成部により生成された前記サブサンプル情報を、前記管理情報に配置するファイル生成部と
 を備える画像符号化装置。
 (2) 前記サブサンプル情報生成部は、当該サブサンプル情報に含まれるヒント情報の種別を示すヒントデータタイプ、当該サブサンプル情報に関連付けられる連続するサンプル数を示すサンプルカウント、並びに、前記ヒント情報を含むサブサンプル情報を生成する
 (1)、(3)乃至(15)のいずれかに記載の画像符号化装置。
 (3) 前記ヒント情報は、前記サブサンプルの復号処理の負荷の大きさを表すレベルを含む
 (1)、(2)、(4)乃至(15)のいずれかに記載の画像符号化装置。
 (4) 前記ヒント情報は、前記サブサンプルの符号化データのヘッダ情報を含む
 (1)乃至(3)、(5)乃至(15)のいずれかに記載の画像符号化装置。
 (5) 前記サブサンプル情報生成部は、当該サブサンプル情報に含まれるヒント情報の種別を示すヒントデータタイプ、当該サブサンプル情報に関連付けられる連続するサンプル数を示すサンプルカウント、並びに、前記サブサンプルが属するグループの識別情報を含むサブサンプル情報を生成する
 (1)乃至(4)、(6)乃至(15)のいずれかに記載の画像符号化装置。
 (6) 前記サブサンプル情報生成部は、さらに、当該サブサンプル情報に含まれるヒント情報の種別を示すヒントデータタイプ、当該サブサンプル情報に関連付けられる連続するサンプル数を示すサンプルカウント、並びに、サブサンプルのグループの復号処理の負荷の大きさを表すレベルを含むヒント情報を含むサブサンプル情報を生成する
 (1)乃至(5)、(7)乃至(15)のいずれかに記載の画像符号化装置。
 (7) 前記サブサンプル情報生成部は、さらに、当該サブサンプル情報に含まれるヒント情報の種別を示すヒントデータタイプ、当該サブサンプル情報に関連付けられる連続するサンプル数を示すサンプルカウント、並びに、サブサンプルのグループの符号化データのヘッダ情報を含むヒント情報を含むサブサンプル情報を生成する
 (1)乃至(6)、(8)乃至(15)のいずれかに記載の画像符号化装置。
 (8) 前記サブサンプル情報生成部は、当該サブサンプル情報に含まれるヒント情報の種別を示すヒントデータタイプ、当該サブサンプル情報に関連付けられる連続するサンプル数を示すサンプルカウント、グループに属するサブサンプルの識別情報、並びに、前記グループのヒント情報を含むサブサンプル情報を生成する
 (1)乃至(7)、(9)乃至(15)のいずれかに記載の画像符号化装置。
 (9) 前記ヒント情報は、前記グループの復号処理の負荷の大きさを表すレベルを含む
 (1)乃至(8)、(10)乃至(15)のいずれかに記載の画像符号化装置。
 (10) 前記ヒント情報は、前記グループの符号化データのヘッダ情報を含む
 (1)乃至(9)、(11)乃至(15)のいずれかに記載の画像符号化装置。
 (11) 前記サブサンプル情報生成部は、サブサンプルの大きさと位置を示す情報を含むサブサンプル情報を生成する
 (1)乃至(10)、(12)乃至(15)のいずれかに記載の画像符号化装置。
 (12) 前記サブサンプル情報生成部は、サブサンプルが独立して復号することができることを示す情報を含むサブサンプル情報を生成する
 (1)乃至(11)、(13)乃至(15)のいずれかに記載の画像符号化装置。
 (13) 前記サブサンプル情報生成部は、サンプルを構成するナルユニットをグループ化する情報を含むサブサンプル情報を生成する
 (1)乃至(12)、(14)、(15)のいずれかに記載の画像符号化装置。
 (14) 前記ファイル生成部は、前記サブサンプル情報を、前記管理情報のサンプルテーブルボックス(Sample Table Box)のサブサンプルインフォメーションボックス(Subsample Information Box)とは異なるサブサンプルヒントインフォメーションボックス(Subsample Hint Information Box)として配置する
 (1)乃至(13)、(15)のいずれかに記載の画像符号化装置。
 (15) 前記ファイル生成部は、前記サブサンプル情報を、前記管理情報のサンプルテーブルボックス(Sample Table Box)のサンプルグループディスクリプションボックス(Sample Group Description Box)にビジュアルサンプルグループエントリ(VisualSampleGroupEntry)として配置し、前記サブサンプル情報を適用するサンプルを指定する情報を、サンプルトゥーグループボックス(Sample To Group Box)に配置する
 (1)乃至(14)のいずれかに記載の画像符号化装置。
 (16) 前記ファイル生成部は、前記部分画像だけのデコードに必要な前記サブサンプル情報を、部分画像を有するトラックの、前記管理情報のサンプルテーブルボックス(Sample Table Box)のサンプルグループディスクリプションボックス(Sample Group Description Box)のサンプルエントリ(Sample Entry)に配置する
 (1)乃至(15)のいずれかに記載の画像符号化装置。
 (17) 前記サブサンプル情報は、HEVC decodec configuration recordと同じデータ構造で、テンポラルモーションコンストレインドタイルセットSEI (temporal_motion_constrained_tile_sets SEI)に格納されているHEVC Tileのデコード判断に必要なパラメータである
 (1)乃至(16)のいずれかに記載の画像符号化装置。
 (18) 前記パラメータは、mctsティアフラグ(mcts_tear_flag)およびmctsレベルidc(mcts_level_idc)を含む
 (1)乃至(17)のいずれかに記載の画像符号化装置。
 (19) 前記部分画像情報は、HEVC Tileに対応したテンポラルモーションコンストレインドタイルセットSEI (temporal_motion_constrained_tile_sets SEI)をさらに含む
 (1)乃至(18)のいずれかに記載の画像符号化装置。
 (20)前記サブサンプル情報は、マックスmctsティアフラグ(max_mcts_tear_flag)およびマックスmctsレベルidc(max_mcts_level_idc)をさらに含む
 (1)乃至(19)のいずれかに記載の画像符号化装置。
 (21) HEVC Tileのデコードの判断に必要なHEVC Tileに対応したテンポラルモーションコンストレインドタイルセットSEI (temporal_motion_constrained_tile_sets SEI)をさらに含む
 (1)乃至(20)のいずれかに記載の画像符号化装置。
 (22) 前記マックスmctsティアフラグ(max_mcts_tear_flag)およびマックスmctsレベルidc(max_mcts_level_idc)は、ベーストラックに配置される
 (1)乃至(21)のいずれかに記載の画像符号化装置。
 (23) 画像データを符号化し、
 前記画像データの画像の、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報を生成し、
 生成された前記画像データの符号化データと、前記符号化データの管理情報を含むファイルを生成し、生成された前記サブサンプル情報を、前記管理情報に配置する
 画像符号化方法。
 (24) 画像データの符号化データと、前記画像データの画像の、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報が配置される前記符号化データの管理情報とを含むファイルを取得する取得部と、
 前記取得部により取得された前記ファイルに含まれる前記サブサンプル情報を解析するサブサンプル情報解析部と、
 前記サブサンプル情報解析部による前記サブサンプル情報の解析結果に基づいて、前記符号化データの復号を制御する制御部と、
 前記制御部による制御に従って、前記取得部により取得された前記ファイルに含まれる前記符号化データから、前記サブサンプルの符号化データを生成する符号化データ生成部と、
 前記制御部による制御に従って、前記符号化データ生成部により生成された前記サブサンプルの符号化データを復号する復号部と
 を備える画像復号装置。
 (25) 前記制御部は、前記サブサンプル情報の前記ヒント情報に基づいて、前記復号部が前記サブサンプルの符号化データを復号可能であるかを判定し、復号可能である場合、前記サブサンプルの符号化データを復号するように制御する
 (24)に記載の画像復号装置。
 (26) 前記符号化データ生成部は、前記サブサンプル情報に基づいて、前記サブサンプルの符号化データのヘッダ情報を更新する
 (24)または(25)に記載の画像復号装置。
 (27) 画像データの符号化データと、前記画像データの画像の、独立に復号することができる部分領域であるサブサンプルの復号処理の参考となるヒント情報を含むサブサンプル情報が配置される前記符号化データの管理情報とを含むファイルを取得し、
 取得された前記ファイルに含まれる前記サブサンプル情報を解析し、
 前記サブサンプル情報の解析結果に基づいて、前記符号化データの復号を制御し、
 前記制御に従って、取得された前記ファイルに含まれる前記符号化データから、前記サブサンプルの符号化データを生成し、
 前記制御に従って、生成された前記サブサンプルの符号化データを復号する
 画像復号方法。
 (31) MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された前記部分画像をmdatに格納するファイルを生成するファイル生成部と、
 前記ファイル生成部により生成された前記ファイルを記憶する記憶部と
 を備える情報処理装置。
 (32) 前記複数の部分画像をグループ化する情報は、前記複数の部分画像をグループ化したグループのIDを表す情報を含む
 (31)に記載の情報処理装置。
 (33) 前記複数の部分画像をグループ化する情報は、前記複数の部分画像をグループ化したグループに関連する複数の前記部分画像のそれぞれのIDを表す情報を含む
 (31)または(32)に記載の情報処理装置。
 (34) 前記複数の部分画像をグループ化する情報は、前記moovの中のVisualSampleGroupEntryを用いて定義される
 (31)乃至(33)のいずれかに記載の情報処理装置。
 (35) 前記ファイル生成部により生成された前記ファイルは、前記部分画像を構成する前記複数のNAL unitを表す関連情報を含む
 (31)乃至(34)のいずれかに記載の情報処理装置。
 (36) 前記関連情報は、前記NAL unit毎に関連するグループを表すグループ情報を含む
 (35)に記載の情報処理装置。
 (37) 前記関連情報は、前記複数のNAL unitの数を表す情報を含む
 (35)または(36)に記載の情報処理装置。
 (38) 前記関連情報は、前記部分画像における最初のNAL unitを特定する情報を含む
 (35)乃至(37)のいずれかに記載の情報処理装置。
 (39) 前記部分画像は、HEVC(High Efficiency Video Coding)におけるTileである
 (31)乃至(38)のいずれかに記載の情報処理装置。
 (40) 前記部分画像は、複数のNAL unitで構成される
 (31)乃至(39)のいずれかに記載の情報処理装置。
 (41) 前記部分画像は、前記ファイルにおける第1のトラックに格納され、前記全体画像の中の独立に復号することができる他の部分画像は、前記第1のトラック以外のトラックに格納される
 (31)乃至(40)のいずれかに記載の情報処理装置
 (42) 前記記憶部により記憶された前記ファイルを他の装置に送信する送信部をさらに備える
 (31)乃至(41)のいずれかに記載の情報処理装置。
 (43) MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された前記部分画像をmdatに格納するファイルを生成し、
 生成された前記ファイルを記憶する
 情報処理方法。
 (44) MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された前記部分画像をmdatに格納するファイルを再生するファイル再生部
 を備える情報処理装置。
 (45) 前記複数の部分画像をグループ化する情報は、前記複数の部分画像をグループ化したグループのIDを表す情報を含む
 (44)に記載の情報処理装置。
 (46) 前記複数の部分画像をグループ化する情報は、前記複数の部分画像をグループ化したグループに関連する複数の前記部分画像のそれぞれのIDを表す情報を含む
 (44)または(45)に記載の情報処理装置。
 (47) 前記複数の部分画像をグループ化する情報は、前記moovの中のVisualSampleGroupEntryを用いて定義される
 (44)乃至(46)のいずれかに記載の情報処理装置。
 (48) 前記ファイルは、前記moovに、前記部分画像を構成する前記複数のNAL unitを表す関連情報を含む
 (44)乃至(47)のいずれかに記載の情報処理装置。
 (49) 前記関連情報は、前記NAL unit毎に関連するグループを表すグループ情報を含む
 (48)に記載の情報処理装置。
 (50) 前記関連情報は、前記複数のNAL unitの数を表す情報を含む
 (48)または(49)に記載の情報処理装置。
 (51) 前記関連情報は、前記部分画像における最初のNAL unitを特定する情報を含む
 (48)乃至(50)のいずれかに記載の情報処理装置。
 (52) 前記部分画像は、HEVC(High Efficiency Video Coding)におけるTileである
 (44)乃至(51)のいずれかに記載の情報処理装置。
 (53) 前記部分画像は、複数のNAL unitで構成される
 (44)乃至(52)のいずれかに記載の情報処理装置。
 (54) 前記部分画像は、前記ファイルにおける第1のトラックに格納され、前記全体画像の中の独立に復号することができる他の部分画像は、前記第1のトラック以外のトラックに格納される
 (44)乃至(53)のいずれかに記載の情報処理装置
 (55) 前記ファイルを受信する受信部をさらに備え、
 前記ファイル再生部は、前記受信部により受信された前記ファイルを再生する
 (44)乃至(54)のいずれかに記載の情報処理装置。
 (56) 前記ファイルは、VisualSampleGroupEntryに、前記部分画像の前記全体画像内での位置を表す情報と、前記部分画像の大きさを表す情報と、前記複数の部分画像をグループ化する情報とを格納し、
 前記ファイル再生部は、
  前記部分画像の前記全体画像内での位置を表す情報と、前記部分画像の大きさを表す情報とに基づいて、再生したい領域を選択し、
  前記複数の部分画像をグループ化する情報に基づいて、前記再生したい領域に対応する部分画像のデータを取得し、ビットストリームを生成する
 (44)乃至(55)のいずれかに記載の情報処理装置。
 (57) 前記ファイルは、TileRegionGroupEntryに、前記部分画像の前記全体画像内での位置を表す情報と、前記部分画像の大きさを表す情報と、前記複数の部分画像をグループ化する情報とを格納し、
 前記ファイル再生部は、
  前記部分画像の前記全体画像内での位置を表す情報と、前記部分画像の大きさを表す情報とに基づいて、再生したい領域を選択し、
  前記複数の部分画像をグループ化する情報に基づいて、選択した前記再生したい領域に対応する複数のトラックを取得し、
  取得した複数の前記トラックに対応する部分画像のビットストリームを生成する
 (44)乃至(56)のいずれかに記載の情報処理装置。
 (58) 前記ファイル再生部により再生されて生成された前記部分画像のビットストリームを復号する復号部をさらに備える
 (44)乃至(57)のいずれかに記載の情報処理装置。
 (59) MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された前記部分画像をmdatに格納するファイルを再生する
 情報処理方法。
 100 画像符号化装置, 101 画像符号化部, 102 サブサンプル情報生成部, 103 MP4ファイル生成部, 200 画像復号装置, 201 MP4ファイル再生部, 202 サブサンプル情報処理部, 203 画像復号部

Claims (29)

  1.  MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された前記部分画像をmdatに格納するファイルを生成するファイル生成部と、
     前記ファイル生成部により生成された前記ファイルを記憶する記憶部と
     を備える情報処理装置。
  2.  前記複数の部分画像をグループ化する情報は、前記複数の部分画像をグループ化したグループのIDを表す情報を含む
     請求項1に記載の情報処理装置。
  3.  前記複数の部分画像をグループ化する情報は、前記複数の部分画像をグループ化したグループに関連する複数の前記部分画像のそれぞれのIDを表す情報を含む
     請求項1に記載の情報処理装置。
  4.  前記複数の部分画像をグループ化する情報は、前記moovの中のVisualSampleGroupEntryを用いて定義される
     請求項1に記載の情報処理装置。
  5.  前記ファイル生成部により生成された前記ファイルは、前記部分画像を構成する前記複数のNAL unitを表す関連情報を含む
     請求項1に記載の情報処理装置。
  6.  前記関連情報は、前記NAL unit毎に関連するグループを表すグループ情報を含む
     請求項5に記載の情報処理装置。
  7.  前記関連情報は、前記複数のNAL unitの数を表す情報を含む
     請求項5に記載の情報処理装置。
  8.  前記関連情報は、前記部分画像における最初のNAL unitを特定する情報を含む
     請求項5に記載の情報処理装置。
  9.  前記部分画像は、HEVC(High Efficiency Video Coding)におけるTileである
     請求項1に記載の情報処理装置。
  10.  前記部分画像は、複数のNAL unitで構成される
     請求項1に記載の情報処理装置。
  11.  前記部分画像は、前記ファイルにおける第1のトラックに格納され、前記全体画像の中の独立に復号することができる他の部分画像は、前記第1のトラック以外のトラックに格納される
     請求項1に記載の情報処理装置
  12.  前記記憶部により記憶された前記ファイルを他の装置に送信する送信部をさらに備える
     請求項1に記載の情報処理装置。
  13.  MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された前記部分画像をmdatに格納するファイルを生成し、
     生成された前記ファイルを記憶する
     情報処理方法。
  14.  MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された前記部分画像をmdatに格納するファイルを再生するファイル再生部
     を備える情報処理装置。
  15.  前記複数の部分画像をグループ化する情報は、前記複数の部分画像をグループ化したグループのIDを表す情報を含む
     請求項14に記載の情報処理装置。
  16.  前記複数の部分画像をグループ化する情報は、前記複数の部分画像をグループ化したグループに関連する複数の前記部分画像のそれぞれのIDを表す情報を含む
     請求項14に記載の情報処理装置。
  17.  前記複数の部分画像をグループ化する情報は、前記moovの中のVisualSampleGroupEntryを用いて定義される
     請求項14に記載の情報処理装置。
  18.  前記ファイルは、前記moovに、前記部分画像を構成する前記複数のNAL unitを表す関連情報を含む
     請求項14に記載の情報処理装置。
  19.  前記関連情報は、前記NAL unit毎に関連するグループを表すグループ情報を含む
     請求項18に記載の情報処理装置。
  20.  前記関連情報は、前記複数のNAL unitの数を表す情報を含む
     請求項18に記載の情報処理装置。
  21.  前記関連情報は、前記部分画像における最初のNAL unitを特定する情報を含む
     請求項18に記載の情報処理装置。
  22.  前記部分画像は、HEVC(High Efficiency Video Coding)におけるTileである
     請求項14に記載の情報処理装置。
  23.  前記部分画像は、複数のNAL unitで構成される
     請求項14に記載の情報処理装置。
  24.  前記部分画像は、前記ファイルにおける第1のトラックに格納され、前記全体画像の中の独立に復号することができる他の部分画像は、前記第1のトラック以外のトラックに格納される
     請求項14に記載の情報処理装置
  25.  前記ファイルを受信する受信部をさらに備え、
     前記ファイル再生部は、前記受信部により受信された前記ファイルを再生する
     請求項14に記載の情報処理装置。
  26.  前記ファイルは、VisualSampleGroupEntryに、前記部分画像の前記全体画像内での位置を表す情報と、前記部分画像の大きさを表す情報と、前記複数の部分画像をグループ化する情報とを格納し、
     前記ファイル再生部は、
      前記部分画像の前記全体画像内での位置を表す情報と、前記部分画像の大きさを表す情報とに基づいて、再生したい領域を選択し、
      前記複数の部分画像をグループ化する情報に基づいて、前記再生したい領域に対応する部分画像のデータを取得し、ビットストリームを生成する
     請求項14に記載の情報処理装置。
  27.  前記ファイルは、TileRegionGroupEntryに、前記部分画像の前記全体画像内での位置を表す情報と、前記部分画像の大きさを表す情報と、前記複数の部分画像をグループ化する情報とを格納し、
     前記ファイル再生部は、
      前記部分画像の前記全体画像内での位置を表す情報と、前記部分画像の大きさを表す情報とに基づいて、再生したい領域を選択し、
      前記複数の部分画像をグループ化する情報に基づいて、選択した前記再生したい領域に対応する複数のトラックを取得し、
      取得した複数の前記トラックに対応する部分画像のビットストリームを生成する
     請求項14に記載の情報処理装置。
  28.  前記ファイル再生部により再生されて生成された前記部分画像のビットストリームを復号する復号部をさらに備える
     請求項14に記載の情報処理装置。
  29.  MP4ファイルフォーマットのファイルであって、全体画像の中の独立に復号することができる複数の部分画像をグループ化する情報をmoovに格納し、符号化された前記部分画像をmdatに格納するファイルを再生する
     情報処理方法。
PCT/JP2014/069216 2013-07-22 2014-07-18 情報処理装置および方法 WO2015012227A1 (ja)

Priority Applications (10)

Application Number Priority Date Filing Date Title
EP14829335.0A EP3026899A4 (en) 2013-07-22 2014-07-18 IMAGE PROCESSING DEVICE AND METHOD
SG11201600260RA SG11201600260RA (en) 2013-07-22 2014-07-18 Information processing apparatus and method
MX2016000538A MX358607B (es) 2013-07-22 2014-07-18 Aparato de procesamiento de informacion y metodo.
AU2014294127A AU2014294127B2 (en) 2013-07-22 2014-07-18 Image processing device and method
KR1020167000460A KR102229848B1 (ko) 2013-07-22 2014-07-18 정보 처리 장치 및 방법
CA2916892A CA2916892A1 (en) 2013-07-22 2014-07-18 Information processing apparatus and method
RU2016101199A RU2650181C2 (ru) 2013-07-22 2014-07-18 Устройство обработки информации и способ
CN201480040438.0A CN105379256B (zh) 2013-07-22 2014-07-18 信息处理装置和方法
JP2015528272A JP6439981B2 (ja) 2013-07-22 2014-07-18 情報処理装置および方法
US14/905,154 US10701425B2 (en) 2013-07-22 2014-07-18 Information processing apparatus and method

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP2013152124 2013-07-22
JP2013-152124 2013-07-22
JP2013-154023 2013-07-24
JP2013154023 2013-07-24
JP2014058763 2014-03-20
JP2014-058763 2014-03-20

Publications (1)

Publication Number Publication Date
WO2015012227A1 true WO2015012227A1 (ja) 2015-01-29

Family

ID=52393266

Family Applications (3)

Application Number Title Priority Date Filing Date
PCT/JP2014/069216 WO2015012227A1 (ja) 2013-07-22 2014-07-18 情報処理装置および方法
PCT/JP2014/069215 WO2015012226A1 (ja) 2013-07-22 2014-07-18 情報処理装置および方法
PCT/JP2014/069214 WO2015012225A1 (ja) 2013-07-22 2014-07-18 情報処理装置および方法

Family Applications After (2)

Application Number Title Priority Date Filing Date
PCT/JP2014/069215 WO2015012226A1 (ja) 2013-07-22 2014-07-18 情報処理装置および方法
PCT/JP2014/069214 WO2015012225A1 (ja) 2013-07-22 2014-07-18 情報処理装置および方法

Country Status (13)

Country Link
US (3) US10701425B2 (ja)
EP (3) EP3026901B1 (ja)
JP (4) JP6414061B2 (ja)
KR (2) KR102229848B1 (ja)
CN (4) CN110460858B (ja)
AU (3) AU2014294215B2 (ja)
BR (1) BR112016000920A2 (ja)
CA (2) CA2916892A1 (ja)
MX (2) MX358607B (ja)
MY (2) MY177309A (ja)
RU (3) RU2018135747A (ja)
SG (3) SG11201600254UA (ja)
WO (3) WO2015012227A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022050367A (ja) * 2020-09-17 2022-03-30 レモン インコーポレイテッド コーディングされたビデオにおけるプロファイル、階層、レベル及び一般制約指示
JP2022050359A (ja) * 2020-09-17 2022-03-30 レモン インコーポレイテッド 符号化映像におけるクロマフォーマット及びビット深度のインジケーション

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6209026B2 (ja) * 2013-08-30 2017-10-04 キヤノン株式会社 画像符号化装置及びその制御方法
JP6572222B2 (ja) * 2014-01-07 2019-09-04 キヤノン株式会社 メディアファイルの生成方法、生成装置、及びプログラム
GB2538998A (en) * 2015-06-03 2016-12-07 Nokia Technologies Oy A method, an apparatus, a computer program for video coding
US10535114B2 (en) * 2015-08-18 2020-01-14 Nvidia Corporation Controlling multi-pass rendering sequences in a cache tiling architecture
US11336909B2 (en) * 2016-12-27 2022-05-17 Sony Corporation Image processing apparatus and method
JP7212611B2 (ja) * 2017-02-27 2023-01-25 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 画像配信方法、画像表示方法、画像配信装置及び画像表示装置
US10764575B2 (en) * 2017-03-03 2020-09-01 Qualcomm Incorporated Coding MCTS-nested SEI messages to exclude other SEI messages that are not MCTS-nested
GB2594615B (en) * 2017-03-20 2022-11-30 Canon Kk Method and apparatus for encoding and transmitting at least a spatial part of a video sequence
WO2018186550A1 (ko) * 2017-04-05 2018-10-11 엘지전자 주식회사 방송 신호 송수신 방법 및 장치
US11049219B2 (en) 2017-06-06 2021-06-29 Gopro, Inc. Methods and apparatus for multi-encoder processing of high resolution content
KR102336987B1 (ko) * 2017-07-04 2021-12-08 엘지전자 주식회사 360도 비디오의 영역 기반 처리 방법 및 장치
JP2019054417A (ja) * 2017-09-15 2019-04-04 ソニー株式会社 画像処理装置およびファイル生成装置
KR102569347B1 (ko) * 2018-12-20 2023-08-22 텔레호낙티에볼라게트 엘엠 에릭슨(피유비엘) 비디오 인코딩 및 디코딩에서의 개선된 타일 어드레스 시그널링
US11310516B2 (en) * 2018-12-21 2022-04-19 Hulu, LLC Adaptive bitrate algorithm with cross-user based viewport prediction for 360-degree video streaming
US11228781B2 (en) 2019-06-26 2022-01-18 Gopro, Inc. Methods and apparatus for maximizing codec bandwidth in video applications
WO2021002142A1 (ja) * 2019-07-04 2021-01-07 ソニー株式会社 情報処理装置、情報処理方法、再生処理装置及び再生処理方法
CN114128249A (zh) * 2019-07-30 2022-03-01 索尼集团公司 文件处理设备、文件处理方法和程序
WO2021049333A1 (ja) * 2019-09-11 2021-03-18 ソニー株式会社 情報処理装置、情報処理方法、再生処理装置及び再生処理方法
US11481863B2 (en) 2019-10-23 2022-10-25 Gopro, Inc. Methods and apparatus for hardware accelerated image processing for spherical projections
US20230124473A1 (en) * 2020-03-04 2023-04-20 Sony Group Corporation Image processing device and image processing method
JP7468391B2 (ja) * 2021-02-09 2024-04-16 株式会社Jvcケンウッド 撮像装置および撮像処理方法
CN114173075B (zh) * 2021-10-22 2024-01-30 广州市奥威亚电子科技有限公司 用于录制的mp4文件保存方法、装置、电子设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013520861A (ja) * 2010-02-23 2013-06-06 サムスン エレクトロニクス カンパニー リミテッド データ伝送方法及び装置、並びにデータ受信方法及び装置
WO2014006863A1 (en) * 2012-07-02 2014-01-09 Canon Kabushiki Kaisha Method of generating media file and storage medium storing media file generation program

Family Cites Families (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5929862A (en) * 1996-08-05 1999-07-27 Hewlett-Packard Co. Antialiasing system and method that minimize memory requirements and memory accesses by storing a reduced set of subsample information
EP1303987A1 (en) * 2000-07-13 2003-04-23 Koninklijke Philips Electronics N.V. Mpeg-4 encoder and output coded signal of such an encoder
US20040062310A1 (en) * 2002-01-17 2004-04-01 Zhong Xue Coding distortion removal method, video encoding method, video decoding method, and apparatus and program for the same
US7613727B2 (en) 2002-02-25 2009-11-03 Sont Corporation Method and apparatus for supporting advanced coding formats in media files
CN1650628B (zh) * 2002-02-25 2010-10-13 索尼电子有限公司 用于支持mp4中的avc的方法和设备
US8107539B2 (en) * 2002-07-15 2012-01-31 Nokia Corporation Method for error concealment in video sequences
US8824553B2 (en) * 2003-05-12 2014-09-02 Google Inc. Video compression method
WO2005015907A1 (ja) * 2003-08-08 2005-02-17 Matsushita Electric Industrial Co., Ltd. データ処理装置及びデータ処理方法
US7725593B2 (en) * 2005-07-15 2010-05-25 Sony Corporation Scalable video coding (SVC) file format
US8436889B2 (en) * 2005-12-22 2013-05-07 Vidyo, Inc. System and method for videoconferencing using scalable video coding and compositing scalable video conferencing servers
EP2041976A4 (en) * 2006-07-12 2012-06-20 Nokia Corp SIGNALING OF SCALABILITY INFORMATION FROM THE INTERESTING REGION IN MEDIA FILES
JP2008042566A (ja) * 2006-08-07 2008-02-21 Toshiba Corp 情報処理装置および情報処理装置のデコード制御方法
US7991236B2 (en) * 2006-10-16 2011-08-02 Nokia Corporation Discardable lower layer adaptations in scalable video coding
AR064274A1 (es) * 2006-12-14 2009-03-25 Panasonic Corp Metodo de codificacion de imagenes en movimiento, dispositivo de codificacion de imagenes en movimiento, metodo de grabacion de imagenes en movimiento, medio de grabacion, metodo de reproduccion de imagenes en movimiento, dispositivo de reproduccion de imagenes en movimiento, y sistema de reproducci
MX2009007240A (es) * 2007-01-08 2009-08-07 Nokia Corp Sistema y procedimiento para proporcionar y usar señalizacion predeterminada de puntos de interoperabilidad para flujos de medios transcodificados.
CN101690229A (zh) * 2007-06-26 2010-03-31 诺基亚公司 用于指示时间层切换点的系统和方法
FR2932046B1 (fr) * 2008-06-03 2010-08-20 Thales Sa Procede et systeme permettant de crypter visuellement les objets mobiles au sein d'un flux video compresse
FR2932045B1 (fr) * 2008-06-03 2010-08-20 Thales Sa Procede et systeme permettant de proteger des la compression la confidentialite des donnees d'un flux video lors de sa transmission
AU2008362821A1 (en) * 2008-10-07 2010-04-15 Telefonaktiebolaget Lm Ericsson (Publ) Multi-view media data
JP5332773B2 (ja) * 2009-03-18 2013-11-06 ソニー株式会社 画像処理装置および方法
US8976871B2 (en) * 2009-09-16 2015-03-10 Qualcomm Incorporated Media extractor tracks for file format track selection
JP5591932B2 (ja) * 2009-09-22 2014-09-17 クゥアルコム・インコーポレイテッド ファイルフォーマットトラック選択のためのメディアエクストラクタトラック
KR101777347B1 (ko) * 2009-11-13 2017-09-11 삼성전자주식회사 부분화에 기초한 적응적인 스트리밍 방법 및 장치
KR101750048B1 (ko) 2009-11-13 2017-07-03 삼성전자주식회사 변속 재생 서비스 제공 방법 및 장치
US8995527B2 (en) * 2010-02-19 2015-03-31 Qualcomm Incorporated Block type signalling in video coding
WO2011122654A1 (ja) * 2010-03-30 2011-10-06 新日鉄ソリューションズ株式会社 情報処理装置、情報処理方法及びプログラム、情報処理装置、空きスペース案内システム、空きスペース案内方法及びプログラム、画像表示システム、画像表示方法及びプログラム
KR20120010089A (ko) * 2010-07-20 2012-02-02 삼성전자주식회사 Http 기반의 멀티미디어 스트리밍 서비스의 품질 향상을 위한 방법 및 장치
US8190677B2 (en) * 2010-07-23 2012-05-29 Seawell Networks Inc. Methods and systems for scalable video delivery
US9215473B2 (en) 2011-01-26 2015-12-15 Qualcomm Incorporated Sub-slices in video coding
US9325999B2 (en) * 2011-03-10 2016-04-26 Sharp Kabushiki Kaisha Video decoder for slices
WO2011144097A2 (zh) 2011-05-26 2011-11-24 华为技术有限公司 重排、抽取分片中媒体数据的方法、设备及系统
WO2013030458A1 (en) * 2011-08-31 2013-03-07 Nokia Corporation Multiview video coding and decoding
US9584819B2 (en) * 2011-10-24 2017-02-28 Qualcomm Incorporated Grouping of tiles for video coding
US9077998B2 (en) * 2011-11-04 2015-07-07 Qualcomm Incorporated Padding of segments in coded slice NAL units
US20130114694A1 (en) 2011-11-08 2013-05-09 Qualcomm Incorporated Parameter set groups for coded video data
US10244246B2 (en) * 2012-02-02 2019-03-26 Texas Instruments Incorporated Sub-pictures for pixel rate balancing on multi-core platforms
CA2873496A1 (en) * 2012-05-14 2013-11-21 Luca Rossato Encoding and decoding based on blending of sequences of samples along time
CN104885456A (zh) * 2012-09-18 2015-09-02 Vid拓展公司 使用图块和图块组的感兴趣区域视频编码
US9161039B2 (en) * 2012-09-24 2015-10-13 Qualcomm Incorporated Bitstream properties in video coding
CN108419076B (zh) * 2012-09-29 2022-04-29 华为技术有限公司 视频编码及解码方法、装置及系统
US20140092953A1 (en) * 2012-10-02 2014-04-03 Sharp Laboratories Of America, Inc. Method for signaling a step-wise temporal sub-layer access sample
CN102970544A (zh) * 2012-12-07 2013-03-13 豪威科技(上海)有限公司 Jpeg编码和解码方法及系统
EP2941891B1 (en) 2013-01-04 2020-09-16 GE Video Compression, LLC Efficient scalable coding concept
CN105052167B (zh) * 2013-01-18 2018-10-09 佳能株式会社 用于封装分区定时媒体数据的方法、装置和计算机可读存储介质
GB2509956B (en) * 2013-01-18 2016-05-04 Canon Kk Method, device and computer program for efficient encapsulation of timed tiled media data
CN117956141A (zh) 2013-04-08 2024-04-30 Ge视频压缩有限责任公司 多视图解码器
GB2551296B (en) * 2013-04-09 2018-02-28 Canon Kk Method, device, and computer program for encapsulating partitioned timed media data
KR102296853B1 (ko) * 2013-07-12 2021-09-01 소니그룹주식회사 화상 복호 장치 및 방법
EP3092772B1 (en) * 2014-01-07 2019-07-31 Nokia Technologies Oy Media encapsulating and decapsulating

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013520861A (ja) * 2010-02-23 2013-06-06 サムスン エレクトロニクス カンパニー リミテッド データ伝送方法及び装置、並びにデータ受信方法及び装置
WO2014006863A1 (en) * 2012-07-02 2014-01-09 Canon Kabushiki Kaisha Method of generating media file and storage medium storing media file generation program

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
BENJAMIN BROSS; WOO-JIN HAN; JENS-RAINER OHM; GARY J. SULLIVAN; YE-KUI WANG; THOMAS WIEGAND: "High Efficiency Video Coding (HEVC) text specification draft 10 (for FDIS & Last Call", JCTVC-L1003_V34, JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 12TH MEETING, 14 January 2013 (2013-01-14)
JEAN LE FEUVRE ET AL.: "Support for efficient tile access in the HEVC File Format", ISO/IEC JTC1/SC29/WG11 MPEG2012/M29231, April 2013 (2013-04-01), XP030057763, Retrieved from the Internet <URL:http://biblio.telecom-paristech.fr/cgi-bin/download.cgi?id=13870> [retrieved on 20140924] *
MPEG-DASH (DYNAMIC ADAPTIVE STREAMING OVER HTTP, Retrieved from the Internet <URL:http:Hmpeg.ch arig ione. rg stan ar s mp g-dash/media-presentation-description-and-segment-formats/text-isoiec-23009-12012-dam-1>
See also references of EP3026899A4

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022050367A (ja) * 2020-09-17 2022-03-30 レモン インコーポレイテッド コーディングされたビデオにおけるプロファイル、階層、レベル及び一般制約指示
JP2022050359A (ja) * 2020-09-17 2022-03-30 レモン インコーポレイテッド 符号化映像におけるクロマフォーマット及びビット深度のインジケーション
JP2022050368A (ja) * 2020-09-17 2022-03-30 レモン インコーポレイテッド コーディングされたビデオにおけるデコーダ・コンフィギュレーション・レコード
JP2022050360A (ja) * 2020-09-17 2022-03-30 レモン インコーポレイテッド デコーダコンフィギュレーションレコードにおけるピクチャ寸法インジケーション
JP7202429B2 (ja) 2020-09-17 2023-01-11 レモン インコーポレイテッド 符号化映像におけるクロマフォーマット及びビット深度のインジケーション
JP7203172B2 (ja) 2020-09-17 2023-01-12 レモン インコーポレイテッド デコーダコンフィギュレーションレコードにおけるピクチャ寸法インジケーション
JP7268106B2 (ja) 2020-09-17 2023-05-02 レモン インコーポレイテッド ビジュアル・メディア・データ処理方法、装置、及び記憶媒体
JP7268107B2 (ja) 2020-09-17 2023-05-02 レモン インコーポレイテッド ビジュアル・メディア・データ処理方法
US11729427B2 (en) 2020-09-17 2023-08-15 Lemon Inc. Chroma format and bit depth indication in coded video
US11831921B2 (en) 2020-09-17 2023-11-28 Lemon Inc. Video operating points record syntax and semantics
US11877011B2 (en) 2020-09-17 2024-01-16 Lemon Inc. Picture dimension indication in decoder configuration record
US11902552B2 (en) 2020-09-17 2024-02-13 Lemon Inc. Decoder configuration record in coded video

Also Published As

Publication number Publication date
CA2916892A1 (en) 2015-01-29
JP2019050589A (ja) 2019-03-28
EP3026901B1 (en) 2021-04-14
US20160150241A1 (en) 2016-05-26
MX2016000538A (es) 2016-03-16
EP3026901A4 (en) 2016-12-28
MX365935B (es) 2019-06-20
US10701425B2 (en) 2020-06-30
AU2014294215B2 (en) 2018-10-04
BR112016000920A2 (ja) 2020-03-10
KR102304687B1 (ko) 2021-09-27
RU2018135747A (ru) 2018-11-19
CN105379255A (zh) 2016-03-02
KR102229848B1 (ko) 2021-03-22
EP3026900A4 (en) 2016-12-21
JP6439981B2 (ja) 2018-12-19
KR20160034889A (ko) 2016-03-30
MX2016000537A (es) 2016-04-11
SG10201807579YA (en) 2018-10-30
RU2674312C2 (ru) 2018-12-06
US10419801B2 (en) 2019-09-17
RU2016101176A3 (ja) 2018-05-04
EP3026900A1 (en) 2016-06-01
AU2014294127A1 (en) 2016-02-11
JPWO2015012225A1 (ja) 2017-03-02
JP6587025B2 (ja) 2019-10-09
SG11201600254UA (en) 2016-02-26
JP6414062B2 (ja) 2018-10-31
EP3026899A1 (en) 2016-06-01
WO2015012226A1 (ja) 2015-01-29
CN105379256A (zh) 2016-03-02
MY177309A (en) 2020-09-11
MX358607B (es) 2018-08-24
EP3026901A1 (en) 2016-06-01
JP6414061B2 (ja) 2018-10-31
AU2018271391A1 (en) 2018-12-20
US20160198207A1 (en) 2016-07-07
WO2015012225A1 (ja) 2015-01-29
US10356459B2 (en) 2019-07-16
CN105379256B (zh) 2019-11-12
RU2016101176A (ru) 2017-07-20
CN105393532A (zh) 2016-03-09
US20160156928A1 (en) 2016-06-02
JPWO2015012226A1 (ja) 2017-03-02
SG11201600260RA (en) 2016-02-26
CN110460858B (zh) 2021-12-10
CA2916881A1 (en) 2015-01-29
MY182651A (en) 2021-01-27
EP3026899A4 (en) 2016-12-28
RU2650181C2 (ru) 2018-04-11
KR20160034890A (ko) 2016-03-30
AU2014294215A1 (en) 2016-02-11
AU2014294127B2 (en) 2018-09-13
CN110460858A (zh) 2019-11-15
JPWO2015012227A1 (ja) 2017-03-02
RU2016101199A (ru) 2017-07-18
EP3026900B1 (en) 2021-09-29
CN105393532B (zh) 2019-04-19

Similar Documents

Publication Publication Date Title
JP6587025B2 (ja) 情報処理装置および方法
CN110036641B (zh) 一种处理视频数据的方法、设备及计算机可读存储介质
US20150117526A1 (en) Method for encoding multiview video using reference list for multiview video prediction and device therefor, and method for decoding multiview video using reference list for multiview video prediction and device therefor
WO2021117802A1 (ja) 画像処理装置および方法
US20240064323A1 (en) Media file generation/reception method and device for signaling subpicture id information, and computer-readable recording medium in which media file is stored
EP4266689A1 (en) Method and device for generating/receiving media file including nal unit information, and method for transmitting media file
US20240056578A1 (en) Media file generation/reception method and apparatus supporting random access in units of samples, and method for transmitting media file
US20240056618A1 (en) Method and device for generating/receiving media file including nal unit array information, and method for transmitting media file

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14829335

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2014829335

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2015528272

Country of ref document: JP

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2916892

Country of ref document: CA

ENP Entry into the national phase

Ref document number: 20167000460

Country of ref document: KR

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 14905154

Country of ref document: US

Ref document number: MX/A/2016/000538

Country of ref document: MX

ENP Entry into the national phase

Ref document number: 2016101199

Country of ref document: RU

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: IDP00201600263

Country of ref document: ID

NENP Non-entry into the national phase

Ref country code: DE

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112016000931

Country of ref document: BR

ENP Entry into the national phase

Ref document number: 2014294127

Country of ref document: AU

Date of ref document: 20140718

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 112016000931

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20160115