Information processing device and method
A scene description file with linked MPD metadata and encoding information simplifies the selection and decoding of 3D object content in MPEG DASH, reducing playback load and costs.
Patent Information
- Application Number
- JP2022553792
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-09-29
- Filing Date
- 2021-09-15
- Publication Date
- 2025-08-13
- Estimated Expiration
- 2041-09-15
AI Technical Summary
When distributing 3D object content using MPEG DASH, the information for selecting the content is not stored in the scene description, necessitating the acquisition and analysis of MPD, which increases the playback process load.
Generating a scene description file that includes information linked to an MPD storing metadata of 3D object content and encoding details of the Representation in the Adaptation Set, allowing direct selection and decoding of 3D object content based on encoding information.
Reduces the playback process load by enabling direct selection and decoding of 3D object content without the need to acquire and analyze MPDs, simplifying the process and reducing implementation costs.
Smart Images

Figure 0007722385000001 
Figure 0007722385000002 
Figure 0007722385000003
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to an information processing device and method, and more particularly to an information processing device and method that can suppress an increase in the load of playback processing. [Background technology]
[0002] Conventionally, there is glTF (The GL Transmission Format) (registered trademark) 2.0, which is a format for placing 3D (three-dimensional) objects in a three-dimensional space (see, for example, Non-Patent Document 1). In recent years, in MPEG (Moving Picture Experts Group)-I Scene Description, extending glTF 2.0 and applying timed media as 3D object content has been considered (see, for example, Non-Patent Documents 2 and 3). Furthermore, in MPEG-I Scene Description, it is also being considered to enable switching of the encoding method, profile, level, etc. of 3D object content depending on the performance of the client, etc. [Prior art documents] [Non-patent literature]
[0003] [Non-Patent Document 1] Saurabh Bhatia, Patrick Cozzi, Alexey Knyazev, Tony Parisi, "Khronos glTF2.0", https: / / github.com / KhronosGroup / glTF / tree / master / specification / 2.0, June 9, 2017 [Non-patent document 2] "Technologies under Considerations on Support of MPEG Media in Scene Descriptions", N19446, ISO / IEC JTC 1 / SC 29 / WG 11, 2020-07-03 [Non-patent document 3] Imed Bouazizi, Thomas Stockhammer, "[SD] Basic support for Audio in scene description", ISO / IEC JTC1 / SC29 / WG11 MPEG2020 / m54852, August 2020, Online Summary of the Invention [Problem to be solved by the invention]
[0004] However, when a file containing 3D object content is distributed using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP (Hypertext Transfer Protocol)), information for selecting the 3D object content is not stored in the scene description. Therefore, to obtain information for selecting the 3D object content, it is necessary to obtain and analyze the MPD (Media Presentation Description). This can increase the load of the playback process for the 3D object content.
[0005] The present disclosure has been made in consideration of such circumstances, and aims to make it possible to suppress an increase in the load of the regeneration process. [Means for solving the problem]
[0006] An information processing device according to one aspect of the present technology is an information processing device including a file generation unit that generates a scene description file describing a scene of the 3D object content, the scene description file including information associated with an MPD (Media Presentation Description) that stores metadata of the 3D object content to be distributed using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP) and information related to encoding of a Representation included in an Adaptation Set in the MPD.
[0007] An information processing method according to one aspect of the present technology is an information processing method for generating a scene description file describing a scene of 3D object content, the scene description file including information associated with an MPD (Media Presentation Description) that stores metadata of the 3D object content to be distributed using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP), and information related to encoding of a representation included in an adaptation set in the MPD.
[0008] An information processing device according to another aspect of the present technology is an information processing device that includes: a selection unit that analyzes a scene description file that describes a scene of 3D object content, the scene description file including information linked to an MPD (Media Presentation Description) that stores metadata of the 3D object content delivered using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP); and selects the 3D object content to be decoded based on information related to encoding of a Representation included in an Adaptation Set in the MPD, which is included in the scene description file; and a decoding unit that decodes encoded data of the 3D object content selected by the selection unit.
[0009] An information processing method according to another aspect of the present technology is an information processing method that analyzes a scene description file describing a scene of 3D object content, the scene description file including information linked to a Media Presentation Description (MPD) that stores metadata of the 3D object content delivered using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP), selects the 3D object content to be decoded based on information related to encoding of a Representation included in an Adaptation Set in the MPD, which information is included in the scene description file, and decodes encoded data of the selected 3D object content.
[0010] In an information processing device and method according to one aspect of the present technology, a scene description file is generated that describes a scene of the 3D object content, the scene description file including information linked to an MPD (Media Presentation Description) that stores metadata of the 3D object content delivered using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP) and information related to the encoding of the Representation included in the Adaptation Set in the MPD.
[0011] In an information processing device and method according to another aspect of the present technology, a scene description file describing a scene of 3D object content, including information linked to a Media Presentation Description (MPD) that stores metadata of 3D object content delivered using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP), is analyzed, and 3D object content to be decoded is selected based on information related to the encoding of Representation included in an Adaptation Set in the MPD, which is included in the scene description file, and the encoded data of the selected 3D object content is decoded. [Brief explanation of the drawings]
[0012] [Figure 1] FIG. 1 is a diagram illustrating an example of the main configuration of glTF2.0. [Figure 2] FIG. 1 is a diagram illustrating an example of glTF objects and reference relationships. [Figure 3] FIG. 10 is a diagram illustrating an example of a description of a JSON format file. [Figure 4] FIG. 10 is a diagram illustrating a method for accessing binary data. [Figure 5] FIG. 10 is a diagram illustrating an example of a description of a JSON format file. [Figure 6] FIG. 1 is a diagram illustrating the relationship between a buffer object, a buffer view object, and an accessor object. [Figure 7] 10A and 10B are diagrams illustrating examples of descriptions of a buffer object, a buffer view object, and an accessor object. [Figure 8] FIG. 1 is a diagram illustrating an extension method for glTF2.0. [Figure 9] FIG. 10 is a diagram illustrating an extension for handling timed media. [Figure 10]FIG. 10 is a diagram illustrating an extension for handling timed media. [Figure 11] FIG. 10 is a diagram illustrating an extension for handling timed media. [Figure 12] FIG. 10 is a diagram illustrating an extension for handling timed media. [Figure 13] FIG. 10 is a diagram illustrating a method for linking 3D object content. [Figure 14] FIG. 10 is a diagram showing an example of a description of an MPEG_media extension. [Figure 15] FIG. 10 is a diagram showing an example of a description of an alternative sequence. [Figure 16] FIG. 10 is a diagram showing an example of a description of an MPEG_media extension. [Figure 17] FIG. 10 is a diagram illustrating a method for transmitting codecs information of a representation. [Figure 18] FIG. 10 is a diagram showing an example of a description of an MPEG_media extension. [Figure 19] FIG. 10 is a diagram showing an example of a description of an MPEG_media extension. [Figure 20] FIG. 10 is a diagram showing an example of a description of an MPEG_media extension. [Figure 21] FIG. 10 is a diagram showing an example of a description of an MPEG_media extension. [Figure 22] FIG. 10 is a diagram showing an example of a description of an MPEG_media extension. [Figure 23] FIG. 10 is a diagram showing an example of a description of an MPEG_media extension. [Figure 24] FIG. 2 is a block diagram illustrating an example of the main configuration of a file generation device. [Figure 25] 10 is a flowchart illustrating an example of the flow of a file generation process. [Figure 26] FIG. 2 is a block diagram illustrating an example of the main configuration of a client device. [Figure 27] 10 is a flowchart illustrating an example of the flow of a client process. [Figure 28] FIG. 1 is a block diagram illustrating an example of the main configuration of a computer. DETAILED DESCRIPTION OF THE INVENTION
[0013] Hereinafter, modes for carrying out the present disclosure (hereinafter referred to as embodiments) will be described in the following order. 1.MPEG-I Scene Description 2.Transmission of Representation codecs information, etc. 3. First embodiment (file generation device) 4. Second embodiment (client device) 5. Supplementary Notes
[0014] <1.MPEG-I Scene Description> <References supporting technical content and technical terminology> The scope of disclosure of the present technology includes not only the contents described in the embodiments but also the contents described in the following non-patent documents that were publicly known at the time of filing, as well as the contents of other documents referenced in the following non-patent documents.
[0015] Non-patent document 1: (mentioned above) Non-patent document 2: (mentioned above) Non-patent document 3: (mentioned above)
[0016] In other words, the contents of the above-mentioned non-patent documents and the contents of other documents referenced in the above-mentioned non-patent documents are also used as the basis for determining the support requirements.
[0017] <gltf2.0> Conventionally, as described in Non-Patent Document 1, for example, there is glTF (The GL Transmission Format) (registered trademark) 2.0, which is a format for placing 3D (three-dimensional) objects in a three-dimensional space. As shown in FIG. 1, for example, glTF 2.0 is composed of a JSON format file (.glTF), a binary file (.bin), and an image file (.png, .jpg, etc.). The binary file stores binary data such as geometry and animation. The image file stores data such as texture.
[0018] A JSON format file is a scene description file written in JSON (JavaScript (registered trademark) Object Notation). A scene description is metadata that describes (a description of) a scene of 3D content. The description of this scene description defines what kind of scene it is. A scene description file is a file that stores such a scene description. In this disclosure, a scene description file is also referred to as a scene description file.
[0019] The description of the JSON format file consists of a list of key and value pairs. An example of the format is shown below. “KEY”:”VALUE”
[0020] Keys consist of strings, and values consist of numbers, strings, booleans, arrays, objects, or null.
[0021] Additionally, multiple key-value pairs ("KEY":"VALUE") can be grouped together using {} (curly braces). This grouping is also called a JSON object. An example of the format is shown below. “user”:{"id":1, "name":"tanaka"}
[0022] In this example, a JSON object that combines the pair "id":1 and the pair "name":"tanaka" is defined as the value corresponding to the key (user).
[0023] You can also create an array of zero or more values using square brackets ([]). This array is also called a JSON array. For example, a JSON object can be applied as an element of this JSON array. An example of the format is shown below. test":["hoge", "fuga", "bar"] "users":[{"id":1, "name":"tanaka"},{"id":2,"name":"yamada"},{"id":3, "name":"sato"}]
[0024] Figure 2 shows the glTF objects that can be written at the top level of a JSON format file and the reference relationships they can have. The long circles in the tree structure shown in Figure 2 represent objects, and the arrows between those objects show the reference relationships. As shown in Figure 2, objects such as "scene", "node", "mesh", "camera", "skin", "material", and "texture" are written at the top level of a JSON format file.
[0025] An example of such a JSON format file (scene description) is shown in FIG. 3. The JSON format file 20 in FIG. 3 shows an example of a portion of the top-level description. In this JSON format file 20, all top-level objects 21 used are described at the top level. These top-level objects 21 are the glTF objects shown in FIG. 2. Furthermore, in the JSON format file 20, reference relationships between objects are shown as indicated by arrows 22. More specifically, the reference relationships are shown by specifying the index of an element in the array of the referencing object in the property of the higher-level object.
[0026] Fig. 4 is a diagram illustrating a method for accessing binary data. As shown in Fig. 4, binary data is stored in a buffer object. That is, information for accessing the binary data (for example, a uniform resource identifier (URI)) is indicated in the buffer object. In a JSON format file, as shown in Fig. 4, objects such as a mesh, camera, and skin can access the buffer object via an accessor object and a bufferView object.
[0027] That is, for objects such as mesh, camera, and skin, the accessor object to be referenced is specified. An example of a mesh object description in a JSON format file is shown in Figure 5. For example, as shown in Figure 5, in a mesh object, vertex attributes such as NORMAL, POSITION, TANGENT, and TEXCORD_0 are defined as keys, and for each attribute, the accessor object to be referenced is specified as a value.
[0028] The relationship between buffer objects, buffer view objects, and accessor objects is shown in Figure 6. An example of how these objects are written in a JSON format file is shown in Figure 7.
[0029] 6, buffer object 41 is an object that stores information (such as a URI) for accessing binary data, which is actual data, and information indicating the data length (for example, byte length) of that binary data. A in FIG. 7 shows an example of the description of buffer object 41. "bytelength":102040" shown in A in FIG. 7 indicates that the byte length of buffer object 41 is 102040 bytes, as shown in FIG. 6. Furthermore, "uri":"duck.bin" shown in A in FIG. 7 indicates that the URI of buffer object 41 is "duck.bin", as shown in FIG. 6.
[0030] 6, the buffer view object 42 is an object that stores information about a subset area of binary data specified in the buffer object 41 (i.e., information about a partial area of the buffer object 41). B of Fig. 7 shows an example of description of the buffer view object 42. As shown in Fig. 6 and B of Fig. 7, the buffer view object 42 stores information such as identification information of the buffer object 41 to which the buffer view object 42 belongs, an offset (e.g., a byte offset) indicating the position of the buffer view object 42 within the buffer object 41, and a length (e.g., a byte length) indicating the data length (e.g., a byte length) of the buffer view object 42.
[0031] As shown in B of Fig. 7, when there are multiple buffer view objects, information is written for each buffer view object (i.e., for each subset area). For example, information such as "buffer":0, "bytelength":25272, and "byteOffset":0 shown at the top of B of Fig. 7 is information for the first buffer view object 42 (bufferView[0]) shown in the buffer object 41 in Fig. 6. Furthermore, information such as "buffer":0, "bytelength":76768, and "byteOffset":25272 shown at the bottom of B of Fig. 7 is information for the second buffer view object 42 (bufferView[1]) shown in the buffer object 41 in Fig. 6.
[0032] "buffer":0" of the first buffer view object 42 (bufferView[0]) shown in B of FIG. 7 indicates that the identification information of the buffer object 41 to which the buffer view object 42 (bufferView[0]) belongs is "0" (Buffer[0]), as shown in FIG. 6. Also, "bytelength":25272" indicates that the byte length of the buffer view object 42 (bufferView[0]) is 25272 bytes. Furthermore, "byteOffset":0" indicates that the byte offset of the buffer view object 42 (bufferView[0]) is 0 bytes.
[0033] "buffer":0" of the second buffer view object 42 (bufferView[1]) shown in B of FIG. 7 indicates that the identification information of the buffer object 41 to which the buffer view object 42 (bufferView[0]) belongs is "0" (Buffer[0]), as shown in FIG. 6. Also, "bytelength":76768" indicates that the byte length of the buffer view object 42 (bufferView[0]) is 76768 bytes. Furthermore, "byteOffset":25272" indicates that the byte offset of the buffer view object 42 (bufferView[0]) is 25272 bytes.
[0034] 6, the accessor object 43 is an object that stores information about how to interpret data in the buffer view object 42. C in Fig. 7 shows an example of the description of the accessor object 43. As shown in Figs. 6 and 7C, the accessor object 43 stores information such as the identification information of the buffer view object 42 to which the accessor object 43 belongs, the offset (e.g., byte offset) indicating the position of the buffer view object 42 within the buffer object 41, the component type of the buffer view object 42, the number of data items stored in the buffer view object 42, and the type of data items stored in the buffer view object 42. This information is described for each buffer view object.
[0035] In the example of C in FIG. 7, information such as "bufferView":0, "byteOffset":0, "componentType":5126, "count":2106," and "type":"VEC3" is shown. "bufferView":0" indicates that the identification information of the buffer view object 42 to which the accessor object 43 belongs is "0" (bufferView[0]), as shown in FIG. 6. Furthermore, "byteOffset":0" indicates that the byte offset of the buffer view object 42 (bufferView[0]) is 0 bytes. Furthermore, "componentType":5126" indicates that the component type is FLOAT type (OpenGL macro constant). Furthermore, "count":2106" indicates that 2106 pieces of data are stored in the buffer view object 42 (bufferView[0]). Furthermore, "type":"VEC3" indicates that the data (type) stored in the buffer view object 42 (bufferView[0]) is a three-dimensional vector.
[0036] Access to data other than an image is all defined by reference to this accessor object 43 (by specifying the index of the accessor).
[0037] In glTF 2.0, an object can be extended and a newly defined object can be stored within the extension object. Figure 8 is a diagram for explaining the method of extending glTF 2.0. The description example shown in Figure 8 shows a description example when storing a newly defined object (CompareDataExtension) in the extension object of a scene object. In the example shown in Figure 8, a new object (CompareDataExtension) is stored in the extension object (extensions) of the scene object ("scenes"). When extending an object in this way, the name of the new object is defined in "extensionUsed" and "extensionRequired". This indicates that the new object is an object required for loading.
[0038] <Application of Timed media> In recent years, for example, as shown in Non-Patent Document 2, in MPEG (Moving Picture Experts Group)-I Scene Description, extending glTF 2.0 and applying timed media as 3D object content has been studied. Timed media is media data that changes in the time axis direction, like a moving image in a two-dimensional image.
[0039] glTF was only applicable to still image data as media data (3D object content). That is, glTF did not support media data of moving images. When moving a 3D object, animation (a method of switching still images along the time axis) was applied.
[0040] For MPEG-I Scene Description, glTF 2.0 will be applied, JSON format files will be used as scene descriptions, and further, extensions to glTF are being considered to enable handling of timed media (e.g., video data) as media data. For example, the following extensions will be made to handle timed media:
[0041] Figure 9 is a diagram explaining extensions for handling timed media. As shown in Figure 9, an MPEG media object (MPEG_media) that manages actual data such as video data is provided as an extension object (extension) of the glTF object. In other words, information about the actual data such as video data is stored in the MPEG media object.
[0042] 9, an MPEG video texture object (MPEG_video_texture) is provided as an extension object (extension) of the texture object (texture). The MPEG video texture object stores accessor information corresponding to the buffer object to be accessed. That is, the MPEG video texture object stores accessor information corresponding to the buffer object in which the texture media specified by the MPEG media object (MPEG_media) is decoded and stored.
[0043] 10 is a diagram showing an example of the description of an MPEG media object (MPEG_media) and an MPEG video texture object (MPEG_video_texture) in a scene description to explain extensions for handling timed media. In the example of FIG. 10, an MPEG video texture object (MPEG_video_texture) is set as an extension object (extensions) of a texture object (texture) in the second line from the top, as shown below. The accessor index ("2" in this example) is then specified as the value of that MPEG video texture object.
[0044] "texture":[{"sampler":0, "source":1, "extensions":{"MPEG_video_texture":"accessor":2}}],
[0045] 10, an MPEG media object (MPEG_media) is set as a glTF extension object (extensions) on lines 7 to 16 from the top, as shown below: The value of the MPEG media object stores various information about the MPEG media object, such as the encoding and URI of the MPEG media object.
[0046] "MPEG_media":{ "media":[ {"name":"source_1", "renderingRate":30.0, "startTime":9.0, "timeOffset":0.0, "loop":"true", "controls":"false", "alternatives":[{"mimeType":"video / mp4;codecs=\"avc1.42E01E\"", "uri":"video1.mp4", "tracks":[{"track":""#track_ID=1"}] }] } ] }
[0047] 9, an MPEG circular buffer object (MPEG_circular_buffer) is provided as an extension object of the buffer object. The MPEG circular buffer object stores information for dynamically storing data in the buffer object. For example, information indicating the data length of the buffer header and information indicating the number of frames are stored in the MPEG circular buffer object. The buffer header stores information such as an index, a timestamp and data length of the frame data to be stored, etc.
[0048] 9, an MPEG timed accessor object (MPEG_timed_accessor) is provided as an extension object of the accessor object. In this case, since the media data is video, the buffer view object (bufferView) referenced in the time direction may change (its position may fluctuate). Therefore, information indicating the buffer view object to be referenced is stored in this MPEG timed accessor object. For example, the MPEG timed accessor object stores information indicating a reference to the buffer view object (bufferView) in which the timed accessor information header (timedAccessor information header) is written. The timed accessor information header is header information that stores, for example, dynamically changing accessor objects and information in the buffer view object.
[0049] 11 is a diagram showing an example of the description of an MPEG circular buffer object (MPEG_circular_buffer) and an MPEG timed accessor object (MPEG_timed_accessor) in a scene description to explain extensions for handling timed media. In the example of Fig. 11, the MPEG timed accessor object (MPEG_timed_accessor) is set as an extension object (extensions) of the accessor object (accessors) in the fifth line from the top, as shown below. Then, parameters such as the index of the buffer view object ("1" in this example), the update rate (updataRate), and immutable information (immutable) and their values are specified as the value of the MPEG timed accessor object.
[0050] "MPEG_timed_accessor":{"bufferView":1, "updateRate":25.0, "immutable":1,"}
[0051] 11, an MPEG circular buffer object (MPEG_circular_buffer) is set as an extension object (extensions) of the buffer object (buffer) on the 13th line from the top, as shown below: Then, parameters such as the buffer frame count (count), header length (headerLength), and update rate (updataRate) and their values are specified as values of the MPEG circular buffer object.
[0052] "MPEG_circular_buffer":{"count":5, "headerLength":12, "updateRate":25.0}
[0053] Fig. 12 is a diagram for explaining extensions for handling timed media, showing examples of the relationship between an MPEG timed accessor object and an MPEG circular buffer object, and an accessor object, a buffer view object, and a buffer object.
[0054] As described above, the MPEG circular buffer object of the buffer object stores information necessary for storing time-varying data in the buffer area indicated by the buffer object, such as the buffer frame count (count), header length (headerLength), update rate (updataRate), etc. Furthermore, the buffer header (bufferHeader), which is the header of the buffer area, stores parameters such as the index (idex), timestamp (timestamp), data length (length), etc.
[0055] As described above, the MPEG timed accessor object of the accessor object stores information about the buffer view object it references, such as the index (bufferView) of the buffer view object, the update rate (updataRate), immutable information, etc. Also, this MPEG timed accessor object stores information about the buffer view object in which the timed accessor information header it references is stored. The timed accessor information header can store a timestamp delta (timestamp_delta), update data of the accessor object, update data of the buffer view object, etc.
[0056] <How to link 3D objects placed in a scene with 3D object content> As described in Non-Patent Document 3, audio data is also managed in MPEG media objects, similar to the textures described above, and linked via accessor objects, buffer view objects, and buffer objects.
[0057] Fig. 13 is a diagram illustrating a method for linking 3D object contents. In the case of texture, as shown on the right side of Fig. 13, the texture object is extended to provide an MPEG timed texture object (corresponding to the MPEG video texture object in Fig. 9). Then, in the MPEG timed texture object, the accessor object index is used to link the referenced accessor object.
[0058] The accessor object is extended to provide an MPEG timed accessor, and the MPEG timed accessor is linked to a referenced buffer view object using a buffer view object index (bufferView index). The buffer view object is linked to a referenced buffer object using a buffer object index (buffer index). The buffer object is then extended to provide an MPEG circular buffer object, and the referenced MPEG media object is linked to a source index (source index) of an MPEG media object (MPEG_media).
[0059] In contrast, in the case of audio data, the node object (Node) is extended to provide an MPEG spatial audio object (corresponding to the MPEG video texture object in FIG. 9) as shown on the left side of Fig. 13. Then, in the MPEG spatial audio object, the accessor object index (accessor index) is used to link the referenced accessor object.
[0060] The accessor object is extended to provide an MPEG timed accessor, and the MPEG timed accessor is linked to a referenced buffer view object using a buffer view object index (bufferView index). The buffer view object is linked to a referenced buffer object using a buffer object index (buffer index). The buffer object is then extended to provide an MPEG circular buffer object, and the referenced MPEG media object is linked to a source index (source index) of an MPEG media object (MPEG_media).
[0061] Therefore, the 3D objects placed in the scene and the 3D object contents are linked as follows:
[0062] 1. The MPEG media object (extension object) (MPEG_media extension) lists the file URIs and tracks in media[]. Figure 14 shows an example of how an MPEG media object (MPEG_media) is described in a scene description. Lines 5 to 10 from the top of Figure 14 describe information about the media, including the URI and tracks. 2. From the MPEG circular buffer object (MPEG_circular_buffer extension), reference the element ID (source index) of the media array to specify the media to be stored in the buffer object (buffer). 3. Specify a buffer view object (bufferview) to reference the data of each track, and also specify an accessor object (accessor) that indicates how to interpret the data. 4. 3D objects (texture, audio) signal information about references to accessor objects.
[0063] <How to specify multiple 3D object contents that can be switched between> In MPEG-I Scene Description, it is being considered to enable the coding method, profile, level, etc. of 3D object content to be switched according to the performance of the client, etc. Fig. 15 is a diagram showing an example of a description of alternative arrangements of MPEG media objects in a scene description in this case.
[0064] As shown in Fig. 15, when multiple switchable (selectable) 3D object contents are described in an MPEG media object, they are described using an alternative array. Each element of this alternative array is associated with a different 3D object content. In other words, the alternative array describes multiple 3D object contents in a switchable (selectable) manner. For example, in Fig. 15, the 3D object content indicated by element 91 of the alternative array and the 3D object content indicated by element 92 are switchable (selectable).
[0065] Each element of the alternative array stores information about the associated 3D object content. In the example of FIG. 15, information about the encoding of the 3D object content is described as codec information. For example, element 91 describes codec information (codecs=\"avc1.42E01E\""), and element 92 describes codec information (codecs=\"avc1.64000d\"").
[0066] A device that plays back 3D object content can select the 3D object content to play from among the alternative sequences described in the MPEG media object based on information about the 3D object content (e.g., codec information).
[0067] This codec information may include information such as the encoding method, profile, and level of the 3D object content. A device that plays back 3D object content can select 3D object content to play based on that information. For example, a device that plays back 3D object content can compare its own capabilities with that information and select the optimal 3D object content as the 3D object content to play. For example, a device that plays back 3D object content can select the 3D object content with the highest quality from among the 3D object content that can be played as the 3D object content to play.
[0068] For example, when 3D object content is stored in an MP4 file and transmitted, the MP4 file to be transmitted is specified as an element of the alternative array in the MPEG media object. A in Fig. 16 is a diagram showing an example of a description of the MPEG media object (MPEG_media) in the scene description in this case.
[0069] As shown in lines 7 and 10 from the top, in this case, in the MPEG media object, the mimeType of each element in the alternative array indicates the codec information of the MP4 file corresponding to that element (codecs=\"avc1.42E01E\"", codecs=\"avc1.64000d\"",). This codec information includes information about the encoding method, profile, and level of the 3D object content. Therefore, a device that plays back 3D object content can select and play playable elements (3D object content) based on, for example, its own capabilities and this codec information.
[0070] In contrast, when a file containing 3D object content is distributed using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP (Hypertext Transfer Protocol)), the MPEG media object specifies not the 3D object content to be distributed, but an MPD (Media Presentation Description) that stores the metadata of the 3D object content.
[0071] However, in this case, the information for the selection of the 3D object content was not stored in the Scene Description.
[0072] 16B is a diagram showing an example of the description of an MPEG media object (MPEG_media) in a scene description in this case. In this case, as indicated by the mimeType and uri on lines 7 and 8 and lines 10 and 11 from the top, an MPD is specified, but codec information for the 3D object content is not described. This makes it difficult for a device that plays back 3D object content to select any element (i.e., 3D object content) from the alternative array based on the codec information for that 3D object content.
[0073] In other words, in order for a device that plays back 3D object content to select 3D object content based on information for selecting 3D object content, it needs to acquire and analyze the MPDs of all elements. For example, a device that plays back 3D object content needs to acquire and analyze the MPDs of each element, determine the codec information of each 3D object content, identify the optimal codec information from the acquired codec information, and acquire the 3D object content corresponding to that codec information, which is a cumbersome process. This can increase the load of the playback process of 3D object content.
[0074] <2. Transmission of Representation codec information, etc.> Therefore, when a file containing 3D object content is distributed using MPEG DASH, as shown in the top row of the table in Figure 17, information (codec information) regarding the encoding of the representations in the adaptation set of the MPD is stored in the scene description.
[0075] For example, in an information processing method, a scene description file is generated that describes a scene of 3D object content, including information linked to an MPD (Media Presentation Description) that stores metadata of 3D object content delivered using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP) and information related to the encoding of the Representation included in the Adaptation Set in the MPD.
[0076] For example, an information processing device may include a file generation unit that generates a scene description file that describes a scene of the 3D object content, the scene description file including information linked to an MPD (Media Presentation Description) that stores metadata of the 3D object content delivered using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP) and information related to the encoding of the Representation included in the Adaptation Set in the MPD.
[0077] In this way, by describing information regarding the encoding of representations included in an adaptation set in the MPD in a scene description file (scene description) and transmitting it, a device that plays back 3D object content can select 3D object content to play back based on the information regarding the encoding. In other words, a device that plays back 3D object content can easily select 3D object content to play back based on the information regarding the encoding described in the scene description, without requiring cumbersome tasks such as acquiring and analyzing the MPD of all elements of the alternative array described in the scene description. Therefore, an increase in the load of the playback process can be suppressed.
[0078] For example, in an information processing method, a scene description file describing a scene of 3D object content, including information linked to an MPD (Media Presentation Description) that stores metadata of 3D object content delivered using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP), is analyzed, and 3D object content to be decoded is selected based on information related to the encoding of Representation included in an Adaptation Set in the MPD, which information is included in the scene description file, and the encoded data of the selected 3D object content is decoded.
[0079] For example, an information processing device may include a selection unit that analyzes a scene description file that describes a scene of 3D object content, including information linked to an MPD (Media Presentation Description) that stores metadata of 3D object content delivered using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP), and selects 3D object content to decode based on information contained in the scene description file regarding the encoding of Representation included in an Adaptation Set in the MPD, and a decoding unit that decodes the encoded data of the 3D object content selected by the selection unit.
[0080] In this way, a device that plays back 3D object content can easily select 3D object content to play back based on the encoding information described in the scene description, without the need for cumbersome tasks such as acquiring and analyzing the MPD of all elements of the alternative array described in the scene description file (scene description).This makes it possible to suppress an increase in the load of the playback process.
[0081] This encoding information (codec information) may be stored in a track array of each element of the alternative array of the MPEG media object (extension object of the MPEG_media extension). When playing back 3D object content, 3D object content to be decoded may be selected from the alternative array based on the encoding information (codec information) stored in the track array of each element of the alternative array of the MPEG media object (extension object of the MPEG_media extension) in the scene description file.
[0082] This allows the playback process flow to be the same as when transmitting an MP4 file containing 3D object content. This eliminates the need to change the process flow between when distributing 3D object files using MPEG DASH and when transmitting an MP4 file containing 3D object content, and reduces the implementation costs of devices that play back 3D object content.
[0083] Note that the content of this codec information is arbitrary as long as it includes information related to encoding. For example, the codec information may include information related to the encoding method, profile, and level applied to encoding of the representation. When playing back 3D object content, the 3D object content to be decoded may be selected based on the information related to the encoding method, profile, and level. Of course, the codec information may include some of this information, or may include other information.
[0084] In this way, a device that plays back 3D object content can select 3D object content to decode based on information about the encoding method, profile, and level applied to the encoding of any representation included in the 3D object content (adaptation set), thereby easily selecting more appropriate 3D object content. For example, a device that plays back 3D object content can compare this information applied to each 3D object content with its own capabilities and select 3D object content that it can play back.
[0085] <Method 1> For example, a single piece of codec information may be stored in the track array, as shown in the second row from the top of the table in Fig. 17. In other words, one piece of codec information may be stored for each track (Method 1).
[0086] An example of the description of the MPEG media object (MPEG_media) of the scene description in this case is shown in Fig. 18. In the example of Fig. 18, one piece of codec information is described ("codecs":" avc1.42E01E") in the track array (tracks[]) of the first element of the alternative array (alternatives[]) in the media array (media[]) of the MPEG media object (MPEG_media). This codec information is the codec information of one of the representations in the adaptation set corresponding to the track of the first element of the alternative array.
[0087] Similarly, the track array (tracks[]) of the second element of the alternatives array (alternatives[]) also contains one codec information ("codecs":" hev1.1.6.L93.B0"). This codec information is the codec information of one of the representations in the adaptation set corresponding to the track of the second element of the alternatives array.
[0088] In this way, the track array of each element of the alternative array stores codec information for one of the representations in the adaptation set corresponding to that track. This allows a device that plays back 3D object content to select 3D object content to decode based on the codec information for one of the representations included in the 3D object content (adaptation set), making it easier to select more appropriate 3D object content. For example, a device that plays back 3D object content can compare the codec information for each 3D object content with its own capabilities and select 3D object content that it can play.
[0089] The single codec information stored in this track array may be, for example, codec information common to all representations in an adaptation set, i.e., the codec information of all representations included in the adaptation set may be the same, and the codec information indicated in the track array may be applicable to all representations included in the adaptation set.
[0090] Furthermore, this codec information may include the codec information of the representation with the highest encoding quality (i.e., the highest value) or the codec information of the representation with the lowest encoding quality (i.e., the lowest value) among all the representations included in the corresponding adaptation set. When playing back 3D object content, the 3D object content to be decoded may be selected based on the codec information with the highest or lowest value (e.g., information related to the encoding method, profile, and level).
[0091] The definition of the maximum and minimum values of the codec information is arbitrary. For example, in this codec information, the profile indicates parameters such as bit depth and color component format, and the level indicates parameters such as resolution and frame rate. In such a case, the maximum value of the codec information may indicate the maximum value of the parameters of the profile or level, and the minimum value of the codec information may indicate the minimum value of the parameters of the profile or level.
[0092] For example, if each element of the alternative array indicates the highest codec information value (codec information with the highest encoding quality), a device playing back 3D object content can easily determine whether it has sufficient performance to play back that adaptation set (3D object content). For example, if a device playing back 3D object content has a capability higher than that highest value, that is, if it can play back the representation corresponding to that highest value, it can play back all of that adaptation set (3D object content). A device playing back 3D object content can easily determine this based on the highest codec information value indicated in the MPEG media object. For example, a device playing back 3D object content can more reliably play back the selected 3D object content by selecting 3D object content whose capability is higher than that highest codec information value.
[0093] Furthermore, for example, if each element of the alternative array indicates the minimum codec information value (codec information with the lowest encoding quality), a device playing back 3D object content can easily determine the performance required to play back that adaptation set (3D object content). For example, if a device playing back 3D object content has capabilities lower than that minimum value, that is, if it cannot play back a representation corresponding to that minimum value, it cannot play back any of the representations in that adaptation set. A device playing back 3D object content can easily determine this based on the minimum codec information value indicated in the MPEG media object. For example, a device playing back 3D object content can more easily select playable 3D object content by excluding from candidates 3D object content whose capabilities are lower than the minimum codec information value and selecting 3D object content to play from among the candidates that were not excluded.
[0094] In the scene description, it may be possible to indicate either the maximum value or the minimum value of the codec information. In that case, flag information indicating whether the indicated codec information is the maximum value or the minimum value may be transmitted. Also, it may be possible to indicate the codec information of any representation. In that case, information indicating which representation's codec information the indicated codec information is may be transmitted.
[0095] <Storage of MPEG DASH profile information> In the above, it has been described that the codec information of the representation is stored in the MPEG media object. Furthermore, information regarding the profile of MPEG DASH may be stored in the scene description file (MPEG media object). And when playing 3D object content, based on the information regarding the profile of MPEG DASH stored in the scene description file (MPEG media object), the 3D object content to be decoded may be selected.
[0096] By doing so, a device that plays 3D object content can easily grasp the profile of MPEG DASH applied to the distribution of 3D object content.
[0097] <Method 1-1> As shown in the third row from the top of the table shown in FIG. 17, information regarding the profile of MPEG DASH may be stored in the mimeType of each element of the alternative array (Method 1-1).
[0098] For example, information about the MPEG DASH profile may be stored in the mimeType of each element of the alternative array of the MPEG media object in the scene description file. When playing back 3D object content, the 3D object content to be decoded may be selected based on the information about the MPEG DASH profile stored in the mimeType of each element of the alternative array of the MPEG media object in the scene description file.
[0099] Fig. 19 is a diagram showing an example of the description of the MPEG media object (MPEG_media) of the scene description in this case. In the example of Fig. 19, in addition to the codec information described above, information about the MPEG DASH profile is also described in each element of the alternative array (alternatives[]) in the media array (media[]) of the MPEG media object (MPEG_media).
[0100] More specifically, information about the MPEG DASH profile is described in the mimeType of each element of the alternative array. For example, information about the MPEG DASH profile (profiles:"urn:mpeg:dash:profile:isoff-live:2011") is described in the mimeType of each element of the alternative array.
[0101] By doing so, a device that plays back 3D object content can easily understand the MPEG DASH profile that has been applied to the distribution of the 3D object content.
[0102] <Standardization of processing flow> An example of how to write an MPEG media object (MPEG_media) in a scene description when transferring an MP4 file containing 3D object content is shown in A of Figure 16. In this example, the codec information for each element of the alternative array is indicated in the mimeType. However, this is just an example, and the description format is not limited to this example. For example, the codec information may be stored in the track array for each element of the alternative array.
[0103] Fig. 20 is a diagram showing an example of the description of an MPEG media object (MPEG_media) of a scene description in this case. In the example of Fig. 20, the codec information of the representations included in the adaptation set of each element of the alternative array is stored in the track array of that element (the ninth line from the top ("codecs":" avc1.42E01E"), the twelfth line from the top ("codecs":" hev1.1.6.L93.B0")).
[0104] In this way, it is possible to store codec information in the same location as when a file containing 3D object content is distributed using MPEG DASH, as shown in Figures 18 and 19. This allows a device that plays back 3D object content to understand codec information using the same processing flow when transferring an MP4 file containing 3D object content and when a file containing 3D object content is distributed using MPEG DASH. In other words, there is no need to prepare multiple processing flows for each case (the processing flow can be shared). This makes it possible to suppress increases in implementation costs for devices that play back 3D object content.
[0105] <Method 1-2> As shown in the fourth row from the top of the table in Fig. 17, a profile alternatives array (profile_alternatives[]) may be provided in the media array (media[]) of an MPEG media object (MPEG_media), and information about the MPEG DASH profile may be stored in the mimeType of each element of the profile alternatives array (Method 1-2). In other words, if information about the MPEG DASH profile is common to multiple elements (tracks) of the alternatives array, it may be written collectively.
[0106] For example, information about the MPEG DASH profile may be stored in the mimeType of each element of the profile alternative array of the MPEG media object in the scene description file. When playing back 3D object content, the 3D object content to be decoded may be selected based on the information about the MPEG DASH profile stored in the mimeType of each element of the profile alternative array of the MPEG media object in the scene description file.
[0107] Figure 21 shows an example of how the MPEG media object (MPEG_media) of the scene description is written in this case. In the example of Figure 21, a profile alternatives array (profile_alternatives[]) is provided in the media array (media[]) of the MPEG media object (MPEG_media). Each element of the profile alternatives array stores an alternative array, with each element corresponding to an adaptation set. The mimeType is also shown for each element of the profile alternatives array (i.e., outside the alternatives array).
[0108] Information about the MPEG DASH profile is stored in the mimeType. For example, the mimeType on the eighth line from the top of Fig. 21 describes (profiles:"urn:mpeg:dash:profile:isoff-on-demand:2011") as the profile information. Also, the mimeType on the 16th line from the top of Fig. 21 describes (profiles:"urn:mpeg:dash:profile:isoff-live:2011") as the profile information.
[0109] By adopting such a configuration, the number of descriptions of information relating to MPEG DASH profiles can be reduced. For example, if two types of codec information and information relating to two types of MPEG DASH profiles are combined, the alternative array will have four elements, so in the description example of Figure 19, four pieces of information relating to MPEG DASH profiles must be described. In contrast, in the description example of Figure 21, it is sufficient to describe two pieces of information relating to MPEG DASH profiles. Therefore, it is possible to suppress an increase in the data amount of the scene description.
[0110] <Method 2> For example, multiple pieces of codec information may be stored in the track array as shown in the fifth row from the top of the table in Fig. 17. In other words, multiple pieces of codec information may be stored for each track (Method 2).
[0111] <Method 2-1> For example, as shown in the sixth row from the top of the table in FIG. 17, the maximum and minimum values of the codec information in the adaptation set may be stored (method 2-1).
[0112] For example, this codec information may include the codec information of the representation with the highest encoding quality (i.e., the highest value) among all the representations included in the corresponding adaptation set, as well as the codec information of the representation with the lowest encoding quality (i.e., the lowest value). In other words, both the lowest and highest values of the codec information may be included. Then, when playing back 3D object content, the 3D object content to be decoded may be selected based on the codec information with the highest and lowest values (e.g., information related to the encoding method, profile, and level).
[0113] The definition of the maximum and minimum values of the codec information is arbitrary. For example, in this codec information, the profile indicates parameters such as bit depth and color component format, and the level indicates parameters such as resolution and frame rate. In such a case, the maximum value of the codec information may indicate the maximum value of the parameters of the profile or level, and the minimum value of the codec information may indicate the minimum value of the parameters of the profile or level.
[0114] FIG. 22 is a diagram showing an example of the description of an MPEG media object (MPEG_media) in a scene description in this case. In the example of FIG. 22, two pieces of codec information are described in the track array of each element of the alternative array of the MPEG media object (MPEG_media). For example, in the track array on line 15, two pieces of codec information, "avc1.42E01E" and "avc1.64000d," are shown ("codecs":"avc1.42E01E avc1.64000d"). In addition, in the track array on line 18, two pieces of codec information, "hev1.1.6.L93.B0" and "hev1.1.6.L153.90," are shown ("codecs":"hev1.1.6.L93.B0 hev1.1.6.L153.90").
[0115] These two codec information for each track array indicate the highest and lowest codec information values, respectively. This description allows the range of representation quality included in the adaptation set to be expressed. In other words, when playing 3D object content, the 3D object content to be played can be selected based on this range.
[0116] For example, if there are multiple decodable tracks (adaptation sets), 3D object content may be selected based on the width (i.e., both the minimum and maximum values). The method of reference is arbitrary. For example, the 3D object content with the largest minimum value may be selected. Alternatively, the 3D object content with the largest maximum value may be selected. Alternatively, the 3D object content may be selected depending on where in the range the user's own capabilities lie (for example, whether it is closer to the maximum or minimum value). Of course, other methods are also possible. Alternatively, a device that plays back 3D object content may select and apply one of multiple methods.
[0117] By doing so, the possibility of selecting more appropriate 3D object content can be increased compared to the case of Method 1 in which a single piece of codec information is stored in the track arrangement.
[0118] In the example of Fig. 22, the minimum and maximum values of the codec information are separated by a space, but the method of separating the minimum and maximum values is arbitrary and is not limited to this example. For example, the minimum and maximum values may be separated by another symbol such as a colon. Also, dedicated properties may be provided for the maximum and minimum values, and the maximum or minimum value may be indicated in each property.
[0119] <Method 2-2> For example, as shown in the bottom row of the table in FIG. 17, the codec information of all representations included in the adaptation set may be stored (method 2-2).
[0120] For example, this codec information may include the codec information of the representation with the highest encoding quality among all representations included in the corresponding adaptation set. When playing back 3D object content, the 3D object content to be decoded may be selected based on all of this codec information (e.g., information about the encoding method, profile, and level).
[0121] Fig. 23 is a diagram showing an example of the description of an MPEG media object (MPEG_media) of a scene description in this case. In the example of Fig. 23, the codec information of all representations included in the adaptation set is described in the track array of each element of the alternative array of the MPEG media object (MPEG_media). For example, in the track array on line 15, three pieces of codec information are shown: "avc1.42E01E", "avc1.640028", and "avc1.640030" ("codecs":"avc1.42E01E avc1.640028 avc1.640030"). Furthermore, in the track array on line 18, three codec information items are shown: "hev1.1.6.L93.B0", "hev1.1.6.L120.90", and "hev1.1.6.L153.90" ("codecs":" hev1.1.6.L93.B0 hev1.1.6.L120.90 hev1.1.6.L153.90").
[0122] In other words, each track array describes the codec information of all representations included in the adaptation set. By describing it in this way, it is possible to express the quality of all representations included in the adaptation set. In other words, it is easy to know whether each representation can be played or not.
[0123] The method of selecting 3D object content based on the codec information of all representations is arbitrary. For example, if there are multiple playable tracks (adaptation sets), the 3D object content with the most (or least) playable representations may be selected. Alternatively, the 3D object content with the highest (or lowest) average value of the codec information of each representation may be selected. Of course, other methods may also be used. Alternatively, a device that plays back 3D object content may select and apply one of multiple methods.
[0124] By doing so, the possibility of selecting more appropriate 3D object content can be increased compared to the case of Method 1 in which a single piece of codec information is stored in the track arrangement.
[0125] In the example of Fig. 22, the minimum and maximum values of the codec information are separated by a space, but the method of separating the minimum and maximum values is arbitrary and is not limited to this example. For example, the minimum and maximum values may be separated by another symbol such as a colon. Also, dedicated properties may be provided for the maximum and minimum values, and the maximum or minimum value may be indicated in each property.
[0126] In Figure 23, three pieces of codec information are shown in each track arrangement, but the number of pieces of codec information depends on the number of representations included in the adaptation set and is not limited to the example in Figure 23.
[0127] In the example of Fig. 23, each piece of codec information is separated by a space, but the method for separating the codec information is arbitrary and is not limited to this example. For example, the codec information may be separated using other symbols such as a colon.
[0128] <Combination> Note that the above-described techniques of the present technology can be applied in any combination as long as no contradictions arise. For example, in <Method 2> (Method <2-1> and Method <2-2>), an example in which <Method 1-1> is applied has been described. That is, it has been described that information about an MPEG DASH profile is stored in the mimeType of each element of the alternative array. However, even in the case of <Method 2> (Method <2-1> and Method <2-2>), the description of <Method 2> (Method <2-1> and Method <2-2>) may be omitted, as in the example of FIG. 18. Also, even in the case of <Method 2> (Method <2-1> and Method <2-2>), as in <Method 1-2> (as in the example of FIG. 21), a profile alternatives array (profile_alternatives[]) may be provided in the media array (media[]) of an MPEG media object (MPEG_media), and information about an MPEG DASH profile may be stored in the mimeType of each element of the profile alternatives array.
[0129] 3. First Embodiment <File generation device> Each of the techniques of the present technology described above can be applied to any device. Fig. 24 is a block diagram showing an example of the configuration of a file generation device, which is one aspect of an information processing device to which the present technology is applied. The file generation device 300 shown in Fig. 24 is a device that generates information for distributing 3D object content. For example, the file generation device 300 generates a 3D object content file and its MPD to be distributed using MPEG DASH, and generates a scene description file (scene description) of the 3D object content.
[0130] Note that Fig. 24 shows the main processing units, data flows, etc., and does not necessarily include everything shown in Fig. 24. In other words, file generation device 300 may have processing units that are not shown as blocks in Fig. 24, or processes or data flows that are not shown as arrows, etc. in Fig. 24.
[0131] As shown in FIG. 24 , the file generation device 300 has a control unit 301 and a file generation processing unit 302. The control unit 301 controls the file generation processing unit 302. The file generation processing unit 302 is controlled by the control unit 301 to perform processing related to file generation. For example, the file generation processing unit 302 generates a 3D object content file and its MPD to be distributed using MPEG DASH. The file generation processing unit 302 also generates a scene description file corresponding to the 3D object content file. The file generation processing unit 302 outputs the generated file to the outside of the file generation device 300.
[0132] The file generation processing unit 302 includes an input unit 311 , a preprocessing unit 312 , an encoding unit 313 , a file generation unit 314 , a recording unit 315 , and an output unit 316 .
[0133] The input unit 311 acquires 3D object content and supplies it to the preprocessing unit 312. The preprocessing unit 312 extracts information necessary for file generation from the 3D object content. The preprocessing unit 312 supplies the extracted information to the file generation unit 314. The preprocessing unit 312 also supplies the 3D object content to the encoding unit 313.
[0134] The encoding unit 313 encodes the 3D object content supplied from the preprocessing unit 312 to generate encoded data (bit stream). The encoding unit 313 supplies the generated encoded data of the 3D object content to the file generation unit 314.
[0135] The file generation unit 314 acquires the coded data of the 3D object content supplied from the coding unit 313. The file generation unit 314 also acquires the information supplied from the pre-processing unit 312.
[0136] The file generation unit 314 generates a 3D object content file that stores encoded data of the acquired 3D object content. The file generation unit 314 also generates an MPD corresponding to the 3D object content file. The file generation unit 314 performs these processes by appropriately using the information supplied from the pre-processing unit 312. For example, the file generation unit 314 stores the information supplied from the pre-processing unit 312 in the 3D object content file or the MPD.
[0137] The file generation unit 314 also generates a scene description file corresponding to the generated 3D object content file. At this time, the file generation unit 314 generates the scene description file by applying the present technology described above in <2. Transmission of codecs information, etc. of Representation>. The file generation unit 314 may apply any one or more of the techniques of the present technology described above in <2. Transmission of codecs information, etc. of Representation>.
[0138] For example, the file generation unit 314 generates a scene description file that includes information linked to an MPD that stores metadata of 3D object content to be distributed using MPEG DASH, and information regarding the encoding of representations included in an adaptation set in the MPD.
[0139] At this time, the file generation unit 314 may store information relating to the encoding in the track array of the alternative array of the MPEG media object (MPEG_media extension) of the scene description file.
[0140] The file generator 314 may also store information about the encoding in the scene description file, including information about the encoding method, profile, and level applied to encode the representations.
[0141] Furthermore, the file generation unit 314 may store information regarding the encoding of the representation with the highest encoding quality (e.g., information regarding the encoding method, profile, and level) or the representation with the lowest quality (e.g., information regarding the encoding method, profile, and level) in the scene description file among all the representations included in the adaptation set.
[0142] The file generation unit 314 may also store information regarding the encoding of the representation with the highest encoding quality (e.g., information regarding the encoding method, profile, and level) among all representations included in the adaptation set, as well as information regarding the encoding of the representation with the lowest quality (e.g., information regarding the encoding method, profile, and level) in the scene description file.
[0143] Furthermore, the file generator 314 may store information about the encoding of all representations included in the adaptation set (for example, information about the encoding method, profile, and level) in the scene description file.
[0144] Furthermore, the file generation unit 314 may also store information about the MPEG DASH profile in the scene description file.
[0145] Furthermore, the file generation unit 314 may store information about the MPEG DASH profile in the mimeType of the alternative array of the MPEG media object (MPEG_media extension) of the scene description file.
[0146] Furthermore, the file generation unit 314 may store information about the MPEG DASH profile in the mimeType of the profile alternative array of the MPEG media object (MPEG_media extension) of the scene description file.
[0147] File generation unit 314 supplies the generated file to recording unit 315. Recording unit 315 has an arbitrary recording medium such as a hard disk or semiconductor memory, and records the file supplied from file generation unit 314 on that recording medium. Furthermore, recording unit 315 reads out the file recorded on the recording medium in accordance with a request from control unit 301 or output unit 316, or at a predetermined timing, and supplies the file to output unit 316.
[0148] The output unit 316 acquires the file supplied from the recording unit 315, and outputs the file to an external device outside the file generation device 300 (for example, a distribution server, a playback device, etc.).
[0149] With this configuration, the file generation device 300 can describe information regarding the encoding of representations included in an adaptation set in the MPD in a scene description file (scene description) and transmit the described information. A device that plays back 3D object content can then select 3D object content to play based on the information regarding the encoding. That is, a device that plays back 3D object content can easily select 3D object content to play based on the information regarding the encoding described in the scene description, without requiring cumbersome tasks such as acquiring and analyzing the MPD of all elements of the alternative array described in the scene description. This can prevent an increase in the load of the playback process.
[0150] <File generation process flow> An example of the flow of file generation processing executed by file generation device 300 in FIG. 24 will be described with reference to the flowchart in FIG.
[0151] When the file generation process is started, in step S301, the input unit 311 of the file generation device 300 acquires 3D object content, which is data of a 3D object.
[0152] In step S302, the preprocessing unit 312 extracts information to be stored in a file from the 3D object content obtained in step S301.
[0153] In step S303, the encoding unit 313 encodes the 3D object content acquired in step S301 to generate encoded data of the 3D object content. The file generation unit 314 then generates a 3D object content file that stores the encoded data of the 3D object content. At this time, the file generation unit 314 stores the information extracted in step S302 in the 3D object content file as appropriate.
[0154] Furthermore, the file generation unit 314 generates an MPD corresponding to the 3D object content file.
[0155] In step S304, the file generation unit 314 generates a scene description file corresponding to the 3D object content file. At this time, the file generation unit 314 generates the scene description file by applying the present technology described above in <2. Transmission of codecs information, etc. of representation>. The file generation unit 314 may apply any one or more of the techniques of the present technology described above in <2. Transmission of codecs information, etc. of representation>.
[0156] For example, the file generation unit 314 generates a scene description file that includes information linked to an MPD that stores metadata of 3D object content to be distributed using MPEG DASH, and information regarding the encoding of representations included in an adaptation set in the MPD.
[0157] At this time, the file generation unit 314 may store information relating to the encoding in the track array of the alternative array of the MPEG media object (MPEG_media extension) of the scene description file.
[0158] The file generator 314 may also store information about the encoding in the scene description file, including information about the encoding method, profile, and level applied to encode the representations.
[0159] Furthermore, the file generation unit 314 may store information regarding the encoding of the representation with the highest encoding quality (e.g., information regarding the encoding method, profile, and level) or the representation with the lowest quality (e.g., information regarding the encoding method, profile, and level) in the scene description file among all the representations included in the adaptation set.
[0160] The file generation unit 314 may also store information regarding the encoding of the representation with the highest encoding quality (e.g., information regarding the encoding method, profile, and level) among all representations included in the adaptation set, as well as information regarding the encoding of the representation with the lowest quality (e.g., information regarding the encoding method, profile, and level) in the scene description file.
[0161] Furthermore, the file generator 314 may store information about the encoding of all representations included in the adaptation set (for example, information about the encoding method, profile, and level) in the scene description file.
[0162] Furthermore, the file generation unit 314 may also store information about the MPEG DASH profile in the scene description file.
[0163] Furthermore, the file generation unit 314 may store information about the MPEG DASH profile in the mimeType of the alternative array of the MPEG media object (MPEG_media extension) of the scene description file.
[0164] Furthermore, the file generation unit 314 may store information about the MPEG DASH profile in the mimeType of the profile alternative array of the MPEG media object (MPEG_media extension) of the scene description file.
[0165] In step S305, the recording unit 315 records the file (for example, the 3D object content file, the MPD, the scene description file, etc.) generated in step S304 onto a recording medium.
[0166] In step S306, output unit 316 reads the file recorded in step S305 from the recording medium, and outputs the read file to the outside of file generation device 300 at a predetermined timing.
[0167] When the process of step S306 ends, the file generation process ends.
[0168] As described above, by performing each process, the file generation device 300 can describe information regarding the encoding of the representations included in the adaptation set in the MPD in a scene description file (scene description) and transmit the described information. Then, a device that plays back 3D object content can select 3D object content to play based on the information regarding the encoding. In other words, a device that plays back 3D object content can easily select 3D object content to play based on the information regarding the encoding described in the scene description, without requiring complicated work such as acquiring and analyzing the MPD of all elements of the alternative array described in the scene description. Therefore, an increase in the load of the playback process can be suppressed.
[0169] 4. Second Embodiment <Client device> Fig. 26 is a block diagram showing an example of the configuration of a client device, which is one aspect of an information processing device to which the present technology is applied. The client device 400 shown in Fig. 26 is a playback device that performs playback processing of 3D object content based on a scene description file. For example, the client device 400 plays 3D object content that is generated by the file generation device 300 and stored in a 3D object content file that is distributed using MPEG DASH. For example, the client device 400 decodes encoded data of the 3D object content stored in the 3D object content file based on the scene description file, renders the generated 3D object content, and generates and displays a display image.
[0170] Note that Fig. 26 shows the main processing units, data flows, etc., and is not limited to all that is shown in Fig. 26. In other words, in client device 400, there may be processing units that are not shown as blocks in Fig. 26, and there may be processing or data flows that are not shown as arrows, etc. in Fig. 26.
[0171] As shown in FIG. 26 , the client device 400 has a control unit 401 and a playback processing unit 402. The control unit 401 performs processing related to controlling the playback processing unit 402. The playback processing unit 402 performs processing related to playing back 3D object content stored in a 3D object content file. For example, the playback processing unit 402 is controlled by the control unit 401 to acquire a scene description file from a distribution server (not shown) or the like. Based on the scene description file, the playback processing unit 402 acquires a 3D object content file that stores the 3D object content to be played back. Then, the playback processing unit 402 performs playback processing of the 3D object content stored in the acquired 3D object content file.
[0172] The playback processing unit 402 includes a file acquisition unit 411 , a file processing unit 412 , a decoding unit 413 , a display information generation unit 414 , a display unit 415 , and a display control unit 416 .
[0173] The file acquisition unit 411 acquires a scene description file supplied from outside the client device 400, such as a distribution server or the file generation device 300. The file acquisition unit 411 supplies the acquired scene description file to the file processing unit 412.
[0174] Furthermore, under the control of the file processing unit 412 using the scene description file, the file acquisition unit 411 acquires an MPD corresponding to the 3D object content to be played back, a 3D object content file that stores the 3D object content, etc. This 3D object content file is distributed using MPEG DASH. The file acquisition unit 411 supplies the acquired files to the file processing unit 412.
[0175] The file processing unit 412 acquires the scene description file supplied from the file acquisition unit 411. The file processing unit 412 selects 3D object content to play based on the acquired scene description file. The file processing unit 412 then controls the file acquisition unit 411 to acquire an MPD corresponding to a 3D object content file that stores the selected 3D object content. The file processing unit 412 then acquires a 3D object content file that stores the selected 3D object content based on the MPD.
[0176] In such processing, the file processing unit 412 applies the present technology described above in <2. Transmission of codecs information, etc. of Representation>. The file processing unit 412 can apply any one or more of the techniques of the present technology described above in <2. Transmission of codecs information, etc. of Representation>.
[0177] For example, the file processing unit 412 analyzes a scene description file containing information linked to an MPD that stores metadata of 3D object content to be distributed using MPEG DASH, and selects the 3D object content to decode based on information contained in the scene description file regarding the encoding of representations included in an adaptation set in the MPD.
[0178] At this time, the file processing unit 412 may select the 3D object content to decode based on information about encoding stored in the track array of the alternative array of the MPEG media object (MPEG_media extension) of the scene description file.
[0179] The file processing unit 412 may also select the 3D object content to decode based on information stored in the scene description file about the encoding method, profile, and level applied to encoding the representation.
[0180] Furthermore, the file processing unit 412 may select the 3D object content to decode based on information about the encoding of the representation with the highest encoding quality (e.g., information about the encoding method, profile, and level) or information about the encoding of the representation with the lowest quality (e.g., information about the encoding method, profile, and level) among all representations included in the adaptation set stored in the scene description file.
[0181] The file processing unit 412 may also select the 3D object content to decode based on information about the encoding of the representation with the highest encoding quality (e.g., information about the encoding method, profile, and level) and information about the encoding of the representation with the lowest quality (e.g., information about the encoding method, profile, and level) among all representations included in the adaptation set stored in the scene description file.
[0182] Furthermore, the file processing unit 412 may select the 3D object content to decode based on information regarding the encoding of all representations included in the adaptation set (e.g., information regarding the encoding method, profile, and level) stored in the scene description file.
[0183] Furthermore, the file processing unit 412 may also select 3D object content to decode based on information about the MPEG DASH profile stored in the scene description file.
[0184] Furthermore, the file processing unit 412 may select the 3D object content to decode based on information about the MPEG DASH profile stored in the mimeType of the alternative array of the MPEG media object (MPEG_media extension) of the scene description file.
[0185] The file processing unit 412 may also select the 3D object content to decode based on information about the MPEG DASH profile stored in the mimeType of the profile alternative array of the MPEG media object (MPEG_media extension) of the scene description file.
[0186] The file processing unit 412 supplies the 3D object content file acquired as described above to the decoding unit 413 and the display control unit 416.
[0187] The decoding unit 413 decodes the coded data of the 3D object content stored in the 3D object content file supplied from the file processing unit 412. In other words, the decoding unit 413 decodes the coded data of the 3D object content selected by the file processing unit 412. The decoding unit 413 supplies the 3D object content obtained by the decoding to the display information generation unit 414.
[0188] The display information generation unit 414 acquires the 3D object content supplied from the decoding unit 413. The display information generation unit 414 also acquires control information supplied from the display control unit 416. Then, the display information generation unit 414 generates a display image or the like from the acquired 3D object content in accordance with the control information. The display information generation unit 414 supplies the generated display image or the like to the display unit 415.
[0189] The display unit 415 has a display device and displays the display image supplied from the display information generation unit 414 using the display device.
[0190] The display control unit 416 acquires information supplied from the file processing unit 412. Based on the information, the display control unit 416 controls the display information generation unit 414. The display control unit 416 supplies control information to the display information generation unit 414, thereby controlling the display of the display image.
[0191] With this configuration, the client device 400 can easily select 3D object content to play based on the encoding information described in the scene description, without the need for cumbersome tasks such as acquiring and analyzing the MPDs of all elements of the alternative array described in the scene description file (scene description). Therefore, an increase in the load of the playback process can be suppressed.
[0192] <Client processing flow> An example of the flow of client processing executed by the client device 400 of FIG. 26 will be described with reference to the flowchart of FIG.
[0193] When the client process starts, the file acquisition unit 411 of the client device 400 acquires a scene description file in step S401.
[0194] In step S402, the file processing unit 412 analyzes the scene description file acquired in step S401 and selects appropriate 3D object content to be decoded based on information related to encoding (codec information) stored in the scene description file. At this time, the file processing unit 412 selects the 3D object content by applying the present technology described above in <2. Transmission of codecs information, etc. of representation>. The file processing unit 412 may apply any one or more of the techniques of the present technology described above in <2. Transmission of codecs information, etc. of representation>.
[0195] For example, the file processing unit 412 analyzes a scene description file containing information linked to an MPD that stores metadata of 3D object content to be distributed using MPEG DASH, and selects the 3D object content to decode based on information contained in the scene description file regarding the encoding of representations included in an adaptation set in the MPD.
[0196] At this time, the file processing unit 412 may select the 3D object content to decode based on information about encoding stored in the track array of the alternative array of the MPEG media object (MPEG_media extension) of the scene description file.
[0197] The file processing unit 412 may also select the 3D object content to decode based on information stored in the scene description file about the encoding method, profile, and level applied to encoding the representation.
[0198] Furthermore, the file processing unit 412 may select the 3D object content to decode based on information about the encoding of the representation with the highest encoding quality (e.g., information about the encoding method, profile, and level) or information about the encoding of the representation with the lowest quality (e.g., information about the encoding method, profile, and level) among all representations included in the adaptation set stored in the scene description file.
[0199] The file processing unit 412 may also select the 3D object content to decode based on information about the encoding of the representation with the highest encoding quality (e.g., information about the encoding method, profile, and level) and information about the encoding of the representation with the lowest quality (e.g., information about the encoding method, profile, and level) among all representations included in the adaptation set stored in the scene description file.
[0200] Furthermore, the file processing unit 412 may select the 3D object content to decode based on information regarding the encoding of all representations included in the adaptation set (e.g., information regarding the encoding method, profile, and level) stored in the scene description file.
[0201] Furthermore, the file processing unit 412 may also select 3D object content to decode based on information about the MPEG DASH profile stored in the scene description file.
[0202] Furthermore, the file processing unit 412 may select the 3D object content to decode based on information about the MPEG DASH profile stored in the mimeType of the alternative array of the MPEG media object (MPEG_media extension) of the scene description file.
[0203] The file processing unit 412 may also select the 3D object content to decode based on information about the MPEG DASH profile stored in the mimeType of the profile alternative array of the MPEG media object (MPEG_media extension) of the scene description file.
[0204] In step S403, the file acquisition unit 411 acquires an MPD corresponding to the 3D object content selected in step S402. Furthermore, the file acquisition unit 411 acquires a 3D object content file that stores the 3D object content selected in step S402, based on the MPD.
[0205] In step S404, the file processing unit 412 extracts the encoded data of the 3D object content selected in step S402 from the 3D object content file acquired in step S403.
[0206] In step S405, the decoding unit 413 decodes the coded data of the 3D object content extracted in step S404 and generates the 3D object content. That is, the decoding unit 413 decodes the coded data of the 3D object content selected in step S402.
[0207] In step S406, the display information generation unit 414 performs rendering using the 3D object content generated in step S405. That is, the display information generation unit 414, under the control of the display control unit 416, places the 3D object in the scene and generates a display image.
[0208] In step S407, the display unit 415 uses the display device to display the display image generated in step S406.
[0209] When the process of step S407 ends, the client process ends.
[0210] By performing each process as described above, the client device 400 can easily select 3D object content to play based on the encoding information described in the scene description, without the need for cumbersome tasks such as acquiring and analyzing the MPD of all elements of the alternative array described in the scene description file (scene description). Therefore, an increase in the load of the playback process can be suppressed.
[0211] <5. Notes> <Computer> The above-described series of processes can be executed by hardware or software. When the series of processes is executed by software, the programs constituting the software are installed on a computer. Here, the term "computer" includes computers built into dedicated hardware, and general-purpose personal computers, etc., that can execute various functions by installing various programs.
[0212] FIG. 28 is a block diagram showing an example of the hardware configuration of a computer that executes the above-described series of processes by a program.
[0213] In a computer 900 shown in FIG. 28, a CPU (Central Processing Unit) 901, a ROM (Read Only Memory) 902, and a RAM (Random Access Memory) 903 are interconnected via a bus 904.
[0214] An input / output interface 910 is also connected to the bus 904. To the 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.
[0215] The input unit 911 includes, for example, a keyboard, a mouse, a microphone, a touch panel, an input terminal, etc. The output unit 912 includes, for example, a display, a speaker, an output terminal, etc. The storage unit 913 includes, for example, a hard disk, a RAM disk, a non-volatile memory, etc. 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.
[0216] In a computer configured as above, the CPU 901 performs the above-described series of processes by, for example, loading a program stored in the storage unit 913 into the RAM 903 via the input / output interface 910 and the bus 904 and executing the program. The RAM 903 also stores data necessary for the CPU 901 to execute various processes as appropriate.
[0217] The program executed by the computer can be applied by recording it on removable media 921 such as package media, for example. In this case, the program can be installed in storage unit 913 via input / output interface 910 by inserting removable media 921 into drive 915.
[0218] This program can also be provided via a wired or wireless transmission medium such as a local area network, the Internet, digital satellite broadcasting, etc. In this case, the program can be received by the communication unit 914 and installed in the storage unit 913.
[0219] Alternatively, this program can be installed in advance in the ROM 902 or the storage unit 913 .
[0220] <Applicable targets of this technology> This technology can be applied to any image encoding / decoding method.
[0221] Furthermore, the present technology can be applied to any configuration, for example, various electronic devices.
[0222] Furthermore, for example, the present technology can also be implemented as a part of an apparatus, such as a processor (e.g., a video processor) as a system LSI (Large Scale Integration), a module (e.g., a video module) using multiple processors, a unit (e.g., a video unit) using multiple modules, or a set in which other functions are added to a unit (e.g., a video set).
[0223] Furthermore, for example, the present technology can also be applied to a network system configured with multiple devices. For example, the present technology may be implemented as cloud computing in which multiple devices share and collaborate on processing via a network. For example, the present technology may be implemented in a cloud service that provides image (video)-related services to any terminal, such as a computer, AV (Audio Visual) equipment, a portable information processing terminal, or an IoT (Internet of Things) device.
[0224] In this specification, a system refers to a collection of multiple components (devices, modules (components), etc.), regardless of whether all the components are contained in the same housing. Therefore, multiple devices housed in separate housings and connected via a network, and a single device housed in a single housing with multiple modules, are both systems.
[0225] <Fields and applications where this technology can be applied> Systems, devices, processing units, etc. to which the present technology is applied can be used in any field, such as transportation, medical care, crime prevention, agriculture, livestock farming, mining, beauty, factories, home appliances, weather, and nature monitoring. In addition, the applications thereof are also arbitrary.
[0226] For example, the present technology can be applied to systems and devices used to provide viewing content, etc. Furthermore, for example, the present technology can also be applied to systems and devices used for transportation, such as monitoring traffic conditions and controlling automatic driving. Furthermore, for example, the present technology can also be applied to systems and devices used for security. Furthermore, for example, the present technology can also be applied to systems and devices used for automatic control of machines, etc. Furthermore, for example, the present technology can also be applied to systems and devices used for agriculture and livestock farming. Furthermore, for example, the present technology can also be applied to systems and devices used to monitor natural conditions, such as volcanoes, forests, and oceans, and wildlife. Furthermore, for example, the present technology can also be applied to systems and devices used for sports.
[0227] <Other> In this specification, a "flag" refers to information for identifying multiple states, and includes not only information used to identify two states, true (1) or false (0), but also information capable of identifying three or more states. Therefore, the value that this "flag" can take may be, for example, two values, 1 / 0, or three or more values. In other words, the number of bits constituting this "flag" is arbitrary, and may be one bit or multiple bits. Furthermore, identification information (including flags) can be assumed not only to include the identification information in the bit stream, but also to include difference information of the identification information relative to certain reference information in the bit stream. Therefore, in this specification, "flag" and "identification information" include not only the information itself, but also difference information relative to the reference information.
[0228] Furthermore, various types of information (metadata, etc.) related to the coded data (bitstream) may be transmitted or recorded in any form as long as they are associated with the coded data. Here, the term "associate" means, for example, that one piece of data can be used (linked) when processing the other piece of data. In other words, data associated with each other may be combined into one piece of data or may be individual pieces of data. For example, information associated with coded data (image) may be transmitted over a transmission path separate from that of the coded data (image). Also, for example, information associated with coded data (image) may be recorded on a recording medium separate from that of the coded data (image) (or on a different recording area of the same recording medium). Note that this "association" may refer to only a portion of the data, rather than the entire data. For example, an image and information corresponding to that image may be associated with each other in any unit, such as multiple frames, one frame, or a portion of a frame.
[0229] In this specification, terms such as "composite," "multiplex," "add," "integrate," "include," "store," "embed," "insert," and the like refer to combining multiple items into one, such as combining encoded data and metadata into one piece of data, and refer to one method of "associating" as described above.
[0230] Furthermore, the embodiments of the present technology are not limited to the above-described embodiments, and various modifications are possible within the scope of the gist of the present technology.
[0231] For example, a configuration described as one device (or processing unit) may be divided and configured as multiple devices (or processing units). Conversely, configurations described above as multiple devices (or processing units) may be combined and configured as one device (or processing unit). Of course, configurations other than those described above may be added to the configuration of each device (or each processing unit). Furthermore, as long as the configuration and operation of the entire system are substantially the same, part of the configuration of one device (or processing unit) may be included in the configuration of another device (or other processing unit).
[0232] Furthermore, for example, the above-described program may be executed in any device, as long as the device has the necessary functions (functional blocks, etc.) and can obtain the necessary information.
[0233] Also, for example, each step of a single flowchart may be executed by one device, or may be shared and executed by multiple devices. Furthermore, when one step includes multiple processes, the multiple processes may be executed by one device, or may be shared and executed by multiple devices. In other words, multiple processes included in one step can be executed as multiple step processes. Conversely, processes described as multiple steps can be executed collectively as one step.
[0234] For example, the steps of a program executed by a computer may be executed in chronological order in the order described herein, or may be executed in parallel or individually at the required timing, such as when a call is made. In other words, as long as no contradiction occurs, the steps may be executed in an order different from the order described above. Furthermore, the steps of this program may be executed in parallel with the processing of another program, or may be executed in combination with the processing of another program.
[0235] Furthermore, for example, multiple technologies related to the present technology can be implemented independently and independently, as long as no contradiction occurs. Of course, any multiple technologies can also be implemented in combination. For example, part or all of the present technology described in any embodiment can be implemented in combination with part or all of the present technology described in another embodiment. Furthermore, part or all of any of the above-described present technologies can be implemented in combination with other technologies not described above.
[0236] The present technology can also be configured as follows. (1) A file generation unit that generates a scene description file that describes a scene of the 3D object content, the scene description file including information associated with an MPD (Media Presentation Description) that stores metadata of the 3D object content to be distributed using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP) and information regarding encoding of a representation included in an adaptation set in the MPD. An information processing device comprising: (2) The scene description file stores information about the encoding in the tracks array of the alternatives array of the MPEG_media extension. The information processing device described in (1). (3) The information about the encoding includes information about the encoding method, profile, and level applied to encoding the Representation. An information processing device according to (1) or (2). (4) The information about the encoding includes, among all the Representations included in the Adaptation Set, information about the encoding scheme, the profile, and the level of the Representation with the highest encoding quality; Or, information regarding the encoding method, the profile, and the level of the Representation with the lowest quality. Contains (3) An information processing device according to the present invention. (5) The information about the encoding includes, among all the Representations included in the Adaptation Set, information about the encoding scheme, the profile, and the level of the Representation with the highest encoding quality; and information regarding the encoding method, the profile, and the level of the Representation with the lowest quality. Contains (3) An information processing device according to the present invention. (6) The information about the encoding includes information about the encoding method, the profile, and the level of all the representations included in the adaptation set. (3) An information processing device according to the present invention. (7) The scene description file further stores information about the profile of the MPEG DASH. An information processing device according to any one of (2) to (6). (8) The scene description file stores information about the MPEG DASH profile in the mimetype of the alternatives array of the MPEG_media extension. (7) An information processing device according to (7). (9) The scene description file stores information about the MPEG DASH profile in the mimetype of the profile_alternatives array of the MPEG_media extension. (7) An information processing device according to (7). (10) Generate a scene description file that describes a scene of the 3D object content, including information associated with an MPD (Media Presentation Description) that stores metadata of the 3D object content to be distributed using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP) and information regarding encoding of the representation included in the adaptation set in the MPD. Information processing methods.
[0237] (11) A selection unit that analyzes a scene description file that describes a scene of the 3D object content, the scene description file including information associated with an MPD (Media Presentation Description) that stores metadata of the 3D object content delivered using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP), and selects the 3D object content to be decoded based on information about encoding of a Representation included in an Adaptation Set in the MPD, which is included in the scene description file; a decoding unit that decodes the encoded data of the 3D object content selected by the selection unit; An information processing device comprising: (12) The selection unit selects the 3D object content to be decoded based on information about the encoding stored in a tracks array of an alternatives array of an MPEG_media extension of the scene description file. (11) An information processing device according to (11). (13) The information about the encoding includes information about the encoding method, profile, and level applied to encoding of the Representation, The selection unit selects the 3D object content to be decoded based on information related to the encoding method, the profile, and the level. The information processing device according to (11) or (12). (14) The information about the encoding includes, among all the Representations included in the Adaptation Set, information about the encoding scheme, the profile, and the level of the Representation with the highest encoding quality; Or, information regarding the encoding method, the profile, and the level of the Representation with the lowest quality. Including, The selection unit information about the encoding scheme, the profile, and the level of the highest quality Representation; Or, information regarding the encoding method, the profile, and the level of the Representation with the lowest quality. selecting the 3D object content to decode based on (13) An information processing device according to (13). (15) The information about the encoding includes, among all the Representations included in the Adaptation Set, information about the encoding scheme, the profile, and the level of the Representation with the highest encoding quality; and information regarding the encoding method, the profile, and the level of the Representation with the lowest quality. Including, The selection unit information about the encoding scheme, the profile, and the level of the highest quality Representation; and information regarding the encoding method, the profile, and the level of the Representation with the lowest quality. selecting the 3D object content to decode based on (13) An information processing device according to (13). (16) The information about the encoding includes information about the encoding method, the profile, and the level of all the representations included in the adaptation set, The selection unit selects the 3D object content to be decoded based on information about the encoding method, the profile, and the level of all the representations included in the adaptation set. (13) An information processing device according to (13). (17) The selection unit further selects the 3D object content to be decoded based on information about the MPEG DASH profile stored in the scene description file. An information processing device according to any one of (12) to (16). (18) The selection unit selects the 3D object content to be decoded based on information about a profile of the MPEG DASH stored in a mimetype of the alternatives array of the MPEG_media extension of the scene description file. (17) An information processing device according to (17). (19) The selection unit selects the 3D object content to be decoded based on information about the MPEG DASH profile stored in a mimetype of a profile_alternatives array of the MPEG_media extension of the scene description file. (17) An information processing device according to (17). (20) Analyzing a scene description file describing a scene of the 3D object content, the scene description file including information associated with an MPD (Media Presentation Description) storing metadata of the 3D object content delivered using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP), and selecting the 3D object content to be decoded based on information related to encoding of a representation included in an adaptation set in the MPD, the information being included in the scene description file; Decoding the encoded data of the selected 3D object content. Information processing methods. [Explanation of symbols]
[0238] 300 file generation device, 301 control unit, 302 file generation processing unit, 311 input unit, 312 preprocessing unit, 313 encoding unit, 314 file generation unit, 315 recording unit, 316 output unit, 400 client device, 401 control unit, 402 client processing unit, 411 file acquisition unit, 412 file processing unit, 413 decoding unit, 414 display information generation unit, 415 display unit, 416 display control unit
Claims
1. A file generation unit that generates a scene description file that describes a scene of the 3D object content, the scene description file including information associated with an MPD (Media Presentation Description) that stores metadata of the 3D object content to be distributed using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP) and information regarding encoding of the Representation included in the Adaptation Set in the MPD. An information processing device comprising:
2. The scene description file stores information about the encoding in a tracks array of an alternatives array of an MPEG_media extension. The information processing device according to claim 1 .
3. The information about the encoding includes information about the encoding method, profile, and level applied to encoding the representation. The information processing device according to claim 1 .
4. The information about the encoding includes, among all the Representations included in the Adaptation Set, information about the encoding scheme, the profile, and the level of the Representation with the highest encoding quality; Or, information regarding the encoding method, the profile, and the level of the Representation with the lowest quality. Contains The information processing device according to claim 3 .
5. The information about the encoding includes, among all the Representations included in the Adaptation Set, information about the encoding scheme, the profile, and the level of the Representation with the highest encoding quality; and information regarding the encoding method, the profile, and the level of the Representation with the lowest quality. Contains The information processing device according to claim 3 .
6. The information about the encoding includes information about the encoding method, the profile, and the level of all the representations included in the adaptation set. The information processing device according to claim 3 .
7. The scene description file further stores information about the MPEG DASH profile. The information processing device according to claim 2 .
8. The scene description file stores information about the MPEG DASH profile in the mimetype of the alternatives array of the MPEG_media extension. The information processing device according to claim 7 .
9. The scene description file stores information about the MPEG DASH profile in the mimetype of the profile_alternatives array of the MPEG_media extension. The information processing device according to claim 7 .
10. A scene description file is generated that describes a scene of the 3D object content, including information associated with an MPD (Media Presentation Description) that stores metadata of the 3D object content to be distributed using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP) and information regarding encoding of the representation included in the adaptation set in the MPD. Information processing methods.
11. a selection unit that analyzes a scene description file that describes a scene of the 3D object content, the scene description file including information associated with an MPD (Media Presentation Description) that stores metadata of the 3D object content delivered using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP), and selects the 3D object content to be decoded based on information included in the scene description file and related to encoding of a Representation included in an Adaptation Set in the MPD; a decoding unit that decodes the encoded data of the 3D object content selected by the selection unit; An information processing device comprising:
12. The selection unit selects the 3D object content to be decoded based on information about the encoding stored in a tracks array of an alternatives array in an MPEG_media extension of the scene description file. The information processing device according to claim 11.
13. the information about the encoding includes information about an encoding method, a profile, and a level applied to encoding the Representation; The selection unit selects the 3D object content to be decoded based on information related to the encoding method, the profile, and the level. The information processing device according to claim 11.
14. The information about the encoding includes, among all the Representations included in the Adaptation Set, information about the encoding scheme, the profile, and the level of the Representation with the highest encoding quality; Or, information regarding the encoding method, the profile, and the level of the Representation with the lowest quality. Including, The selection unit information about the encoding scheme, the profile, and the level of the highest quality Representation; Or, information regarding the encoding method, the profile, and the level of the Representation with the lowest quality. and selecting the 3D object content to decode based on The information processing device according to claim 13.
15. The information about the encoding includes, among all the Representations included in the Adaptation Set, information about the encoding scheme, the profile, and the level of the Representation with the highest encoding quality; and information regarding the encoding method, the profile, and the level of the Representation with the lowest quality. Including, The selection unit information about the encoding scheme, the profile, and the level of the highest quality Representation; and information regarding the encoding method, the profile, and the level of the Representation with the lowest quality. and selecting the 3D object content to decode based on The information processing device according to claim 13.
16. the information related to the encoding includes information related to the encoding method, the profile, and the level of all the representations included in the adaptation set; The selection unit selects the 3D object content to be decoded based on information about the encoding method, the profile, and the level of all the representations included in the adaptation set. The information processing device according to claim 13.
17. The selection unit further selects the 3D object content to be decoded based on information about the MPEG DASH profile stored in the scene description file. The information processing device according to claim 12.
18. The selection unit selects the 3D object content to be decoded based on information about a profile of the MPEG DASH stored in a mimetype of the alternatives array of the MPEG_media extension of the scene description file. The information processing device according to claim 17.
19. The selection unit selects the 3D object content to be decoded based on information about the MPEG DASH profile stored in a mimetype of a profile_alternatives array of the MPEG_media extension of the scene description file. The information processing device according to claim 17.
20. A scene description file describing a scene of the 3D object content, the scene description file including information associated with an MPD (Media Presentation Description) storing metadata of the 3D object content delivered using MPEG DASH (Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP), is analyzed, and the 3D object content to be decoded is selected based on information related to encoding of a Representation included in an Adaptation Set in the MPD, the information being included in the scene description file; Decoding the encoded data of the selected 3D object content Information processing methods.
Citation Information
Patent Citations
Information processing device and method
WO2020116154A1
System and method for adaptive spatial content streaming with multiple levels of detail and degrees of freedom
WO2020154206A1
Information processing device, information processing method, playback processing device, and playback processing method
WO2020189038A1