WO2024034646A1 - データ配信システム、データ配信方法、データ処理装置及びデータ処理方法 - Google Patents

データ配信システム、データ配信方法、データ処理装置及びデータ処理方法 Download PDF

Info

Publication number
WO2024034646A1
WO2024034646A1 PCT/JP2023/029160 JP2023029160W WO2024034646A1 WO 2024034646 A1 WO2024034646 A1 WO 2024034646A1 JP 2023029160 W JP2023029160 W JP 2023029160W WO 2024034646 A1 WO2024034646 A1 WO 2024034646A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
server device
model
viewer
edge server
Prior art date
Application number
PCT/JP2023/029160
Other languages
English (en)
French (fr)
Inventor
俊也 浜田
量資 近藤
Original Assignee
ソニーグループ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニーグループ株式会社 filed Critical ソニーグループ株式会社
Publication of WO2024034646A1 publication Critical patent/WO2024034646A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements

Definitions

  • the present disclosure relates to a data distribution system, a data distribution method, a data processing device, and a data processing method.
  • Patent Document 1 various techniques regarding provision of virtual space have been proposed.
  • JP2020-17242A Japanese Patent Application Publication No. 2020-21394
  • One aspect of the present disclosure suppresses delays.
  • a data distribution system includes a central server device that generates 3D scene description data that describes a scene in a virtual space that includes 3D models of a plurality of users and that changes in real time, each of which communicates with the central server device. and a plurality of edge server devices that are distributed at geographically distant locations and generate distribution data to corresponding users based on 3D scene description data generated by the central server device.
  • a data distribution method includes a central server device generating 3D scene description data that describes a scene of a virtual space that includes 3D models of a plurality of users and that changes in real time;
  • a plurality of edge server devices communicating with the device and distributed at geographically distant locations generate distribution data to corresponding users based on 3D scene description data generated by the central server device.
  • a data processing device generates distribution data to a corresponding user based on 3D scene description data that includes 3D models of a plurality of users and describes a scene in a virtual space that changes in real time.
  • a data processing device performs distribution to corresponding users based on 3D scene description data that includes 3D models of a plurality of users and describes a scene in a virtual space that changes in real time. Including generating data.
  • FIG. 1 is a diagram illustrating an example of a schematic configuration of a data distribution system 100 according to an embodiment.
  • FIG. 3 is a diagram showing an example of bounding box data. It is a figure showing an example of 3D model data (avatar data) of a viewer.
  • FIG. 3 is a diagram showing an example of animation data.
  • FIG. 3 is a diagram illustrating an example of a connection relationship between devices and data transmission between devices.
  • FIG. 3 is a diagram illustrating an example of sharing network resources.
  • 3 is a diagram showing an example of the arrangement of a central server device 3.
  • FIG. 2 is a diagram showing an example of geographical placement of edge server devices 2.
  • FIG. FIG. 3 is a diagram showing an example of mapping.
  • FIG. 3 is a diagram showing an example of viewer groups.
  • FIG. 3 is a diagram showing an example of viewer groups.
  • FIG. 3 is a diagram showing an example of viewer groups.
  • FIG. 3 is a diagram illustrating an example of interaction between 3D models of viewers Au belonging to different viewer groups.
  • FIG. 2 is a diagram illustrating an example of the operation of the data distribution system 100 in a distribution preparation stage.
  • FIG. 2 is a diagram illustrating an example of the operation of the data distribution system 100 in a distribution preparation stage.
  • FIG. 2 is a diagram illustrating an example of the operation of the data distribution system 100 at a preparatory stage immediately before distribution.
  • FIG. 2 is a diagram illustrating an example of the operation of the data distribution system 100 at a preparatory stage immediately before distribution.
  • FIG. 2 is a diagram illustrating an example of the operation of the data distribution system 100 during distribution.
  • FIG. 2 is a diagram illustrating an example of the operation of the data distribution system 100 during distribution.
  • FIG. 2 is a diagram illustrating an example of the operation of the data distribution system 100 during distribution.
  • FIG. 2 is a diagram illustrating an example of the operation of the data distribution system 100 during distribution.
  • FIG. 2 is a diagram illustrating an example of the operation of the data distribution system 100 during distribution. It is a figure showing a comparative example. It is a figure showing a comparative example. It is a figure showing an example of examination.
  • FIG. 3 is a diagram illustrating an example of network resources.
  • FIG. 7 is a diagram illustrating an example of a modified network configuration. It is a diagram showing an example of the hardware configuration of the device.
  • a virtual space is constructed that includes a venue in which users, more specifically performers, alter egos (3D models described below) of viewers, etc., are placed, and the scenes, such as images and sounds, are provided to the users.
  • the virtual space not only the performance, vocalizations, body movements, etc. of the performer in the real space are reflected in real time, but also the voices, body movements, etc. of the audience are reflected in real time.
  • viewers can dance along with other viewers to the performer's performance.
  • Live music will be streamed using virtual space, allowing for two-way interaction.
  • Such distribution can also be called interactive, large-scale, real-time, free-view music live distribution.
  • video and photography may be interpreted to mean “image” and “imaging”, and they may be read as appropriate within the scope of consistency.
  • data may be interpreted to mean information, and may be interpreted as appropriate within the scope of consistency.
  • Data transmission may be understood to mean data communication, data transmission/reception, data distribution, etc., and these may be interpreted as appropriate as long as there is no contradiction.
  • all-optical communication is used for data communication.
  • the transmission path is composed of optical fibers, and data is transmitted as an optical signal without going through photoelectric conversion.
  • Signal routing is done with optical switches, so there is no delay there. Delays, reductions in transmission rate, and delay fluctuations (jitter) due to multiplexing of other data do not occur or are extremely small. Since it uses optical fiber, transmission delay is also very short.
  • system components are assigned (mapped) to network resources by taking advantage of the physical arrangement characteristics of the network resources.
  • 3D model data to be transmitted can be used depending on the required quality and purpose.
  • the format of data to be transmitted between system components is defined depending on the processing content. Compared to a typical server-client configuration, it is possible to reduce the data rate between system components, distribute the load of rendering processing for 3D scene generation and display, and reduce delays. It becomes possible to distribute data to more users (increase the scale of distribution).
  • the 3D model data that makes up the free viewpoint space is required to have high definition to ensure high image quality even from close viewpoints, but the amount of data is enormous compared to conventional 2D video data.
  • High-speed computing resources are also required to process (render, etc.) huge amounts of data.
  • different 3D models are used for the performer and the audience.
  • the 3D model of the viewer is also called an avatar.
  • the movements of a performer are captured volumetrically to generate 3D model data of the performer that changes over time.
  • the viewer's 3D model is composed of static 3D model data (avatar data) and animation data for moving the 3D model (to obtain a dynamic avatar). The viewer's movements are realized by reflecting animation data on the viewer's 3D model data.
  • three components are defined as the network resources that make up the system: one central server device, a large number of edge server devices, and a large number of client devices (on-premise devices).
  • Elaborating the geographical location of network resources alleviates the problem of data concentrating in one place and also distributes the processing load. Data concentration (locally high data rates) on the network is reduced and delays are also reduced. It is possible to provide free viewpoint real-time live music distribution in a virtual space in which many users participate.
  • Embodiment FIG. 1 is a diagram showing an example of a schematic configuration of a data distribution system 100 according to an embodiment.
  • the data distribution system 100 distributes (provides) various events using virtual space to multiple users.
  • the event may be a live event. Live streaming (real-time streaming) of the event will be held.
  • the virtual space includes a virtualized live event venue. Examples of events include, but are not limited to, live music, sports, talk shows, etc. Note that, unless otherwise specified, in the following description, it is assumed that the event is a live music event.
  • the virtual space is a three-dimensional virtual space (3D virtual space). Such virtual spaces are sometimes called metaverses, digital twins, etc.
  • a 3D model representing a user in a virtual space is sometimes called an avatar, digital human, or the like.
  • the virtual space is a virtual space that includes 3D models of multiple users, and may be a virtual space that changes in real time.
  • the multiple users who use the data distribution system 100 include the viewer Au and the performer P.
  • the viewer Au may be a plurality of viewers Au, and three viewers Au are illustrated in FIG. 1 . In order to distinguish each viewer Au, they are shown as viewer Au-1, viewer Au-2, and viewer Au-3.
  • the performer P may be one or more performers P, and one performer P is illustrated in FIG.
  • the data distribution system 100 is configured to include a plurality of devices (also referred to as data processing devices, etc.). Specifically, the data distribution system 100 includes multiple client devices, multiple edge server devices, one or more central server devices, and multiple database devices.
  • a plurality of client devices 1 and a client device 1-P are illustrated as the plurality of client devices.
  • a plurality of edge server devices 2 and an edge server device 2-P are exemplified as the plurality of edge server devices.
  • One central server device 3 is exemplified as one or more central server devices.
  • Examples of the plurality of database devices include the database device 20, the database device 20-P, and the database device 30.
  • Each of the above-mentioned devices is distributed and arranged over a plurality of physically separated areas.
  • the multiple regions include an on-premises region R1, a regional region R2, and a central region R3. Note that different devices shown in the same area in FIG. 1 may be physically separated from each other.
  • a client device 1 and a client device 1-P are arranged in the on-premises area R1.
  • the client device 1 and the client device 1-P are devices (also called on-premise devices) that are directly used by the viewers Au and the performers P, who are users, and are provided for each user.
  • client devices 1 There are multiple client devices 1 corresponding to the number of viewers Au.
  • the client device 1 of viewer Au-1 is shown as client device 1-1.
  • the client device 1 of the viewer Au-2 is shown as a client device 1-2.
  • the client device 1 of viewer Au-3 is shown as client device 1-3. If there is no particular distinction between these devices, they will simply be referred to as client devices 1.
  • Each of the plurality of client devices including the client device 1 and the client device 1-P communicates with the corresponding edge server device 2. Further, in this example, the client device 1-P communicates not only with the edge server device 2-P but also with the edge server device 2 and the central server device 3.
  • the client device 1 of the viewer Au includes a capture device 11 and a display device 12.
  • the capture device 11 acquires data such as the viewer Au's body movements, facial expressions, positions and orientations of body parts, and audio.
  • the capture device 11 may include a color camera, a depth sensor, an HMD (Head Mounted Display), a controller, a microphone, and the like.
  • An example of a color camera is an RGB camera.
  • An example of the depth sensor is a ToF (Time of Flight) sensor.
  • the HMD is used by being attached to the head of the viewer Au.
  • the controller is held and used by the viewer Au, for example.
  • the microphone collects the voice of the viewer Au.
  • the collected sounds are, for example, sampled and digitized.
  • the data acquired by the capture device 11 is also referred to as capture data (or sensing data) of the viewer Au.
  • the capture device 11 may be configured to include an acceleration sensor or the like attached to the body of the viewer Au. Data on the acceleration of the body part of the viewer Au obtained from the acceleration sensor, as well as data on the velocity and position of that part, can be acquired as capture data.
  • the display device 12 displays images of the virtual space and outputs sounds.
  • the displayed image on the display device 12 may be an image of a virtual space when viewed from the viewpoint of the viewer Au.
  • the displayed video may include a 3D model of the performer P, and may also include a 3D model of another viewer Au.
  • the output sound of the display device 12 may include the voice of the viewer Au, the performance sound, and may also include the voice of other viewers Au. Video and sound are provided as if the viewer Au were at the live venue.
  • the client device 1-P of the performer P includes a capture device 11-P, a display device 12-P, and a 3D model generation device 13.
  • the capture device 11-P acquires data such as the performer's P's body movements, facial expressions, positions and orientations of various parts of the body, voice, and performance sounds.
  • the capture device 11-P may include, for example, a color camera, a depth sensor, an HMD, a controller, a microphone, and the like.
  • the camera may be a number of cameras, whereby data such as the movement of the performer P's body when viewed from many different viewpoints is acquired (volumetric capture).
  • the microphone may be a plurality of microphones.
  • the data acquired by the capture device 11-P is also referred to as performer P's capture data.
  • the capture data of the performer P may be data obtained by capturing the movements of the performer P as multi-view 2D video at a rate of, for example, 30 times per second. Similar to the capture device 11 described above, an acceleration sensor or the like may be included in the capture device 11-P.
  • the display device 12-P displays images of the virtual space and outputs sounds.
  • the displayed image on the display device 12-P may be an image of the virtual space when viewed from the viewpoint of the performer P, or an image of the virtual space when the performer P is viewed from a different position (performer P). (a video including a 3D model).
  • the performer P can check the reaction of the viewer Au and monitor the performer P himself.
  • the 3D model generation device 13 generates 3D model data of the performer P based on the capture data of the performer P acquired by the capture device 11-P.
  • the 3D model data of the performer P includes first 3D model data and second 3D model data.
  • the first 3D model data may be data of a 3D model with higher precision than the second 3D model data.
  • the second 3D model data may have a smaller amount of data than the first 3D model data.
  • Examples of the first 3D model data are mesh data, texture data, point cloud data, etc.
  • the 3D model generation device 13 generates three-dimensional mesh data and texture data or point cloud data based on the image data of the performer P included in the captured data of the performer P.
  • the bounding box data will be explained with reference to FIG. 2 as well.
  • FIG. 2 is a diagram showing an example of bounding box data.
  • the bounding box data is data written so as to surround the 3D model of the performer P.
  • the bounding box data includes data indicating the positions of eight vertices V1 to V8 of a rectangular parallelepiped surrounding the 3D model and the front direction, and also includes data indicating the direction of the face or line of sight.
  • the front direction will be in units of 90°, but a side table is not required.
  • the normal vector of the first surface which is defined by vertices V1 to V4 in this example, is the front surface.
  • the viewing direction is expressed by six parameters.
  • the three parameters x, y, and z indicate the position of the performer P's eyes, and the three parameters yaw, pitch, and roll indicate the direction of the line of sight.
  • the amount of bounding box data which is the second 3D model data, is considerably smaller than the amount of data of a normal 3D model.
  • the 3D model generation device 13 transmits the first 3D model data of the generated 3D model data to the edge server device 2-P (rendering device 22-P thereof), and The 3D model data is transmitted to (the 3D scene generation device 31 of) the central server device 3.
  • the data transmission rate to the central server device 3 can be suppressed.
  • the 3D model generation device 13 also generates sound data (audio data) that allows the listening position to be freely changed based on the data of the performer P's sound, performance sound, etc. out of the performer P's captured data. do.
  • audio data examples include object audio, 3D audio, 6DoF (6 degrees of freedom) audio, and the like.
  • the regional area R2 devices that process data transmitted to and from the client device 1 are arranged.
  • the regional area R2 can also be called a regional data center (DC) or the like.
  • the edge server device 2 is provided for client device 1 .
  • a database device 20 is provided for the edge server device 2.
  • the edge server device 2-P is provided for the client device 1-P.
  • a database device 20-P is provided for the edge server device 2-P.
  • One edge server device 2 corresponds to one or more client devices 1, and therefore, the number of edge server devices 2 may be less than the number of client devices 1. In the example shown in FIG. 1, one edge server device 2 corresponds to client devices 1-1 to 1-3.
  • a group of client devices 1 supported by the same edge server device 2 (common edge server device 2) or a group of viewers Au who use those client devices 1 is referred to as a "viewer group” (audience group). to be called.
  • client devices 1-1 to 1-3 or viewers Au-1 to Au-3 belong to the same viewer group.
  • Each of the plurality of edge server devices including the edge server device 2 and the edge server device 2-P communicates with the central server device 3 and is distributed and arranged at geographically distant positions from each other. Note that communication between the edge server devices 2 may also be possible.
  • Each edge server device generates distribution data to the corresponding user based on 3D scene description data generated by a 3D scene generation device 31 of the central server device 3, which will be described later.
  • An example of distribution data is video and sound data (video data, sound data) in a virtual space.
  • the video data may be rendered video data.
  • the edge server device 2 includes a motion data generation device 21 and a rendering device 22.
  • a database device 20 corresponding to the edge server device 2 stores data used by the edge server device 2. Examples of data stored in the database device 20 include 3D model data of the viewer Au, 3D scene description data, and rendered video/sound data.
  • the 3D model data of the viewer Au in the database device 20 is, for example, data of a 3D model generated in advance or selected by the viewer Au from a plurality of prepared 3D models.
  • the 3D model data of the viewer Au is stored, for example, in a database device 30 (described later), and before the live start, is transmitted to the database device 20 of the edge server device 2 corresponding to the client device 1 of the viewer Au, and is stored. (stored).
  • This 3D model data is data of a static 3D model of the viewer Au, and is moved based on animation data described below.
  • the 3D model data of the viewer Au will be explained with reference to FIG. 3 as well.
  • FIG. 3 is a diagram showing an example of 3D model data (avatar data) of viewer Au.
  • the illustrated 3D model data is composed of geometry (mesh) data and texture data representing the color of the surface. Most of the data amount is texture data, and for example, the data size of a 3D model with 50,000 polygons and 2K x 2K texture is approximately 13.54 Mbytes.
  • the 3D scene description data in the database device 20 is data describing a scene in a virtual space that includes 3D models of multiple users and changes in real time, as described above.
  • the 3D scene description data is, for example, data that includes descriptions of the parts that construct the venue, the arrangement of 3D models of users (viewers Au, performers P), and the like.
  • the 3D scene description data can also be said to be data like a blueprint for constructing a 3D scene.
  • the rendered video/sound data in the database device 20 is a virtual space data including a 3D model of the viewer Au, a 3D model of the performer P, etc. after rendering is performed by the rendering device 22 and the rendering device 22-P, which will be described later.
  • This data includes video data, and sound data in a virtual space, including audio of viewer Au, audio of performer P, performance sounds, and the like.
  • the rendered video/sound data stored in the database device 20 may be video data viewed from the viewer Au's viewpoint and sound data heard at the viewer Au's position.
  • the motion data generation device 21 generates animation data (also called motion data) of a 3D model of the corresponding viewer Au, based on the capture data of the corresponding viewer Au.
  • Animation data is data indicating the movement of joints of a 3D model, and is data for dynamically moving static 3D model data. The animation data will be explained with reference to FIG. 4 as well.
  • FIG. 4 is a diagram showing an example of animation data.
  • the data rate of animation data when the movement of a 3D model is expressed by the positions and directions of 100 joints is 108 kbps when the frame rate is 30 fps. Facial expressions are also expressed through joint movements. The amount of data is considerably smaller than the data of a moving 3D model itself.
  • the animation data may be given data that specifies the destination of the data, such as a UUID (Universally Unique Identifier) of the 3D model of the viewer Au.
  • UUIDs may also be used in 3D scene description data.
  • the position of the 3D model of the viewer Au specified by the 3D scene description data is specified using, for example, the UUID as a key.
  • the motion data generation device 21 may also generate data indicating the viewer Au's field of view, line of sight, etc. (field of view/line of sight data). Thereby, for example, the rendering device 22 described later can generate an image of the virtual space as seen from the viewpoint of the viewer Au. Unless otherwise specified, the line of sight/field of view data shall be included in the animation data.
  • the motion data generation device 21 also generates audio data of the 3D model of the viewer Au.
  • the audio data may be included in the animation data or may be data separate from the animation data. Unless otherwise specified, audio data is also included in animation data.
  • the motion data generation device 21 transmits the generated animation data to the central server device 3. What is transmitted is animation data that represents the movement of the 3D model, and dynamic 3D model data sequences that involve a large amount of data (for example, 3D model data that expresses movement by being updated 30 times per second) itself. is not transmitted. The amount of data transmission is reduced accordingly.
  • the rendering device 22 generates rendered video data of the virtual space based on the 3D scene description data, the 3D model data of the viewer Au, and the 3D model data of the performer P.
  • the 3D model data used here may be first 3D model data such as mesh data, texture data, point cloud data, etc., as described above.
  • the video data is generated as distribution data during the live performance, and is transmitted to the corresponding client device 1 (distributed to the viewer Au).
  • the rendering device 22 generates video data of the virtual space when viewed from the viewpoint of the viewer Au by rendering based on the 3D scene description data.
  • the generated video data is transmitted to the display device 12 of the client device 1 of the corresponding viewer Au, and the video is displayed there.
  • the sound data is also generated by the rendering device 22, for example, and transmitted to the display device 12, where the sound is output.
  • the edge server device 2-P includes a rendering device 22-P.
  • a database device 20-P corresponding to the edge server device 2-P stores data used by the edge server device 2-P. Examples of data stored in the database device 20-P include 3D model data of the performer P, 3D scene description data, and rendered video/sound data.
  • the 3D model data of the performer P in the database device 20-P is data of a 3D model of the performer P, and is generated by the 3D model generation device 13 as described above.
  • the 3D scene description data is as described above.
  • the rendered video/sound data in the database device 20-P includes the rendering device 22, the 3D model of the viewer Au, the 3D model of the performer P, etc. of the virtual space after rendering by the rendering device 22-P.
  • This data includes video data, and sound data in a virtual space, including audio of viewer Au, audio of performer P, performance sounds, and the like.
  • the performer P can view the video of the live music event, for example, even after the live music event has ended.
  • the rendered video/sound data stored in the database device 20-P can be viewed from any viewpoint and position desired by the performer P, for example, when the performer P is viewed from the performer P's viewpoint and position or from a different viewpoint and position. It may be data of a video of a location and data of a sound heard at that location.
  • the rendering device 22-P generates rendered video data of the virtual space based on the 3D scene description data, the 3D model data of the viewer Au, and the 3D model data of the performer P.
  • the 3D model data used here may also be the first 3D model data described above.
  • the video data is generated as distribution data during the live performance, and is transmitted to the client device 1-P (distributed to the performer P).
  • the rendering device 22-P generates, by rendering, video data of the virtual space when viewed from any desired viewpoint by the performer P, based on the 3D scene description data.
  • the generated video data is transmitted to the client device 1-P, where the video is displayed.
  • the sound data is also generated by the rendering device 22-P, for example, and transmitted to the display device 12, where the sound is output.
  • the central region R3 In the central region R3, devices that process data transmitted between the regional region R2 and furthermore the on-premises region R1 are arranged.
  • the central region R3 can also be called a central data center (DC) or the like.
  • the central server device 3 and the database device 30 are arranged in the central area R3.
  • the central server device 3 is provided for the edge server device 2.
  • the central server device 3 may be one (single) central server device 3 or may be a plurality of central server devices 3.
  • One central server device 3 corresponds to one or more edge server devices 2, and therefore the number of central server devices 3 may be less than the number of edge server devices 2.
  • the central server device 3 is one central server device 3.
  • the central server device 3 includes a 3D scene generation device 31.
  • a database device 30 corresponding to the central server device 3 stores data used by the central server device 3. Examples of data stored in the database device 30 include component data, 3D model data of the viewer Au, and 3D scene description data.
  • the component data in the database device 30 is data on components that constitute a virtual space including a live venue. Examples of parts are stages, audience seats, lighting, etc.
  • the 3D model data and 3D scene description data of the viewer Au in the database device 30 are as described above.
  • the 3D scene generation device 31 constructs a virtual space including the live venue. For example, based on component data in the database device 30, animation data from the motion data generation device 21 of the edge server device 2, 3D model data of the performer P from the 3D model generation device 13 of the client device 1-P, etc. A virtual space is constructed that changes.
  • the 3D model data used here may be the second 3D model data (bounding box data), as described above.
  • various parts are arranged in the virtual space based on the part data, thereby providing video effects (visual effects), etc. in the virtual space.
  • a 3D model of the performer P and a 3D model of the viewer Au are arranged at the live venue in the virtual space.
  • the positions, movements, etc. of the animation data and the second 3D also change in real time based on model data (bounding box data) and the like.
  • Data describing the scene is generated as 3D scene description data.
  • the components that make up the data distribution system 100 are configured to be able to communicate with each other. As schematically shown in FIG. 1, communication takes place via a network N. Connection and data transmission between devices connected via network N will be explained with reference to FIG. 5 as well.
  • FIG. 5 is a diagram showing an example of connections between devices and data transmission. Several data transmissions between the devices described so far are indicated by arrows AR1 to AR14.
  • Arrow AR1 indicates data transmission from the capture device 11 to the motion data generation device 21. For example, capture data of the viewer Au acquired by the capture device 11 is transmitted.
  • Arrow AR2 indicates data transmission from the motion data generation device 21 to the 3D scene generation device 31. For example, animation data and audio data of a 3D model of the viewer Au are transmitted.
  • Arrow AR3 indicates data transmission between the motion data generation device 21 and the rendering device 22. For example, animation data of a 3D model of the viewer Au is transmitted.
  • Arrow AR4 indicates data transmission from the 3D scene generation device 31 to the rendering device 22-P. For example, 3D scene description data is transmitted.
  • Arrow AR5 indicates data transmission from the 3D scene generation device 31 to the rendering device 22. For example, 3D scene description data is transmitted.
  • Arrow AR6 indicates data transmission between the 3D scene generation device 31 and the database device 30. For example, part data, 3D model data of the viewer Au, and 3D scene description data are transmitted.
  • Arrow AR7 indicates data transmission between the rendering device 22 and the database device 20. For example, 3D model data, 3D scene description data, and rendered video/sound data of the viewer Au are transmitted.
  • Arrow AR8 indicates data transmission from the rendering device 22 to the display device 12. For example, rendered video/sound data is transmitted.
  • An arrow AR9 indicates data transmission from the capture device 11-P to the 3D model generation device 13. For example, capture data of performer P is transmitted.
  • Arrow AR10 indicates data transmission from the 3D model generation device 13 to the rendering device 22.
  • first 3D model data point cloud data, mesh texture data, etc.
  • An arrow AR11 indicates data transmission from the 3D model generation device 13 to the 3D scene generation device 31.
  • second 3D model data (bounding box data) of the 3D model data of the performer P, audio data, etc. are transmitted.
  • An arrow AR12 indicates data transmission from the 3D model generation device 13 to the rendering device 22-P. For example, among the data of the 3D model of the performer P, first 3D model data (point cloud data, mesh texture data, etc.) is transmitted.
  • first 3D model data point cloud data, mesh texture data, etc.
  • An arrow AR13 indicates data transmission between the rendering device 22-P and the database device 20-P. For example, 3D model data of performer P, 3D scene description data, and rendered video/sound data are transmitted.
  • An arrow AR14 indicates data transmission from the rendering device 22-P to the display device 12-P. For example, rendered video/sound data is transmitted.
  • each device (component) configuring the data distribution system 100 can be used in a distributed manner on the network N.
  • Each device can also be called a network resource available on network N.
  • network N may be an all-optical network, and communication between devices using network N may be all-optical.
  • the delay reduction effect is further enhanced.
  • FIG. 6 is a diagram showing an example of sharing network resources.
  • the basic network configuration is a server-client model, and the illustrated network configuration has a hierarchical structure.
  • a plurality of edge server devices 2 located in the regional region R2 are connected to one central server device 3 located in the central region R3.
  • one or more client devices 1 located in the on-premises region R1 are connected to each edge server device 2.
  • FIG. 6 also shows an example of physical distance between devices.
  • the distance between the client device 1 and the edge server device 2 is several hundred meters to several tens of kilometers.
  • the distance between the edge server device 2 and the central server device 3 is several tens of kilometers to several hundred kilometers.
  • the central server device 3 may be one central server device 3 or a plurality of central server devices 3.
  • delays on the network N may become more apparent.
  • This problem can be solved, for example, by using a plurality of central server devices 3 that can communicate with each other via the network N. This is because it is possible to prevent the distribution target area covered by one central server device 3 from becoming too wide. Thereby, it is possible to suppress deterioration of the user experience due to, for example, delay. This will be explained with reference to FIG. 7 as well.
  • FIG. 7 is a diagram showing an example of the arrangement of the central server device 3.
  • the range in which the data distribution system 100 can distribute data is schematically shown by a circle that includes the central server device 3 inside.
  • FIG. 7A only one central server device 3 covers all distribution target areas.
  • FIG. 7(B) it is not possible to cover all the distribution target areas with just one central server device 3, and therefore two Using the central server device 3, all distribution target areas are covered.
  • the edge server device 2 is interposed between the central server device 3 and the client device 1.
  • the edge server device 2 is arranged so that the distribution target area covered by the central server device 3 is further divided, and one edge server device 2 is in charge of each subdivided area.
  • the edge server devices 2 may be arranged so that the distances between the edge server devices 2 are approximately equal. It has the advantage of being easy to design.
  • the arrangement of edge server devices 2 may be changed depending on the density of client devices 1. The load on the edge server device 2 can be leveled. This will be explained with reference to FIG. 8 as well.
  • FIG. 8 is a diagram showing an example of the geographical arrangement of the edge server devices 2.
  • Edge server devices 2 are arranged according to the density of client devices 1. For example, each edge server device 2 is arranged so that the number of client devices 1 to which each edge server device 2 corresponds is the same or close to each other.
  • edge server devices 2 may communicate with each other via the central server device 3, or may communicate directly with each other without going through the central server device 3.
  • edge server devices 2 placed close to each other may communicate directly with each other.
  • the edge server devices 2 located apart from each other may communicate with each other via the central server device 3.
  • the client device 1 basically transmits data to and from the edge server device 2 located physically closest to it. This minimizes delays caused by data transmission between the client device 1 and the edge server device 2.
  • Components of the data distribution system 100 are associated (mapped) with network resources as shown in FIG. 6. This will be explained with reference to FIG. 9 as well.
  • FIG. 9 is a diagram showing an example of mapping.
  • the components of the data distribution system 100, the number of components, and their correspondence to network resources are shown in a table.
  • the components of the data distribution system 100 include the capture device 11, capture device 11-P, display device 12, display device 12-P, motion data generation device 21, rendering device 22, database device 20, and 3D model generation described above.
  • a device 13, a 3D scene generation device 31, a database device 30, a rendering device 22-P, and a database device 20-P are shown.
  • the number of capture devices 11 and capture devices 11-P is the same as the number of viewers Au and the number of performers P. These components are placed in the client device 1 and the client device 1-P, and are associated with network resources.
  • the number of motion data generation devices 21, rendering devices 22, and database devices 20 is the same as the number of viewer groups, and these components are placed in and near the edge server device 2 and are associated with network resources. .
  • the number of 3D model generation devices 13 is the same as the number of performers P, and this component is placed in the client device 1-P and associated with network resources.
  • the number of 3D scene generation devices 31 and database devices 30 is one or more, and these components are placed in and near the central server device 3 and are associated with network resources.
  • the number of rendering devices 22-P and database devices 20-P is the same as the number of performers P, and these components are placed in and near the edge server device 2-P and are associated with network resources.
  • a viewer group indicates a group of client devices 1 to which the same edge server device 2 corresponds or a group of viewers Au who use them.
  • Client devices 1 or viewers Au belonging to the same viewer group are located physically close to the same edge server device 2, for example. This will be explained with reference to FIGS. 10 and 11 as well.
  • FIGS. 10 and 11 are diagrams showing examples of viewer groups.
  • Each of the plurality of viewer groups is schematically represented by a circle.
  • the geographical scale of the client devices 1 or viewers Au belonging to the same viewer group may be, for example, approximately several kilometers to one hundred kilometers with the edge server device 2 at the center.
  • an edge server device 2 may be located in each prefecture, and a corresponding viewer group may exist.
  • a virtual space may be constructed so as to provide one live venue for one viewer group in principle.
  • the 3D scene generation device 31 of the central server device 3 may generate 3D scenes of each live venue.
  • the network N is an all-optical network, there will be no delay fluctuations, and the maximum delay time can be estimated based on the geographical size of the viewer group, allowing natural interaction between 3D models of viewers Au gathered at the same live venue. can be guaranteed. For example, if the minimum time that a human can perceive a response delay is 50ms (milliseconds), then if the range of the viewer group is determined so that the maximum delay time falls within 50ms, the 3D model of the viewer Au belonging to that viewer group will be On the other hand, it is possible to provide natural interaction without perceiving any delay. If the distribution area of live music is divided into viewer groups based on this idea, it is possible to provide natural interaction with the 3D model of all viewers Au.
  • FIG. 12 is a diagram showing an example of interaction between 3D models of viewers Au belonging to different viewer groups.
  • a video in a virtual space as shown in FIG. 12 is displayed on the display device 12 of the client device 1 used by a viewer Au belonging to a certain viewer group.
  • images from the live venue for different viewer groups are displayed. Note that the closer the physical distance between viewer groups, the smaller the delay in interaction between 3D models of viewers Au belonging to those viewer groups.
  • FIG. 13 to 22 are diagrams showing examples of operations (data distribution method, data processing method) of the data distribution system 100.
  • the operation of the data distribution system 100 from before distribution to during distribution will be explained in several stages.
  • FIGS. 13 and 14 are diagrams illustrating an example of the operation of the data distribution system 100 in the distribution preparation stage.
  • FIG. 13 shows some processes executed in the data distribution system 100.
  • FIG. 14 several data transmissions in the data distribution system 100 are indicated by thick arrows.
  • step S1 3D model data of the viewer Au is generated or a 3D model is selected.
  • Generation of the 3D model data of the viewer Au is performed, for example, based on capture data of the viewer Au acquired by the capture device 11 of the client device 1 of the viewer Au.
  • the generation may be performed by the edge server device 2 or the central server device 3.
  • the selection of the 3D model is performed by the viewer Au selecting his or her own 3D model from several 3D models prepared in advance. The selection may be performed using, for example, the controller (an example of the capture device 11), the display device 12, etc. described above.
  • step S2 the 3D model data of the viewer Au is uploaded, or the selection of the 3D model is determined.
  • the data is transmitted to the database device 30 and the database device 20.
  • the 3D model data of the viewer Au is transmitted to the database device 20 corresponding to the edge server device 2 corresponding to the client device 1 of the viewer Au.
  • the data of the selected 3D model is determined as the data of the 3D model of the viewer Au.
  • the determined 3D model data of the viewer Au is transmitted to the database device 30 and the database device 20. Note that if the 3D model data of the viewer Au is already stored in the database device 30 or the database device 20, there is no need to transmit the data there.
  • step S3 the 3D model data of the viewer Au is stored in the database device 30 and the database device 20.
  • the 3D model data transmitted in the previous step S2 is stored in the transmission destination database device.
  • the 3D model data of the viewer Au is transmitted to the database device 30 and the database device 20 and stored. Since the 3D model of the viewer Au has a large amount of data, by transmitting it to the database device 30 and the database device 20 before distribution, there is an advantage that the data can be transmitted (in non-real time) without being subject to restrictions such as transmission speed.
  • FIG. 15 and 16 are diagrams illustrating an example of the operation of the data distribution system 100 at a preparatory stage immediately before distribution.
  • FIG. 15 shows some processes executed in the data distribution system 100.
  • FIG. 16 several data transmissions in the data distribution system 100 are indicated by thick arrows.
  • step S11 the 3D model data of the viewer Au is loaded into the motion data generation device 21.
  • the 3D model data of the viewer Au in the database device 20 is transmitted to the motion data generation device 21.
  • the 3D model data of the viewer Au in the database device 30 is transmitted to the motion data generation device 21.
  • the 3D model data of the viewer Au is transmitted to the motion data generation device 21, and becomes immediately available in the motion data generation device 21. After that, distribution begins.
  • ⁇ Now streaming> 17 to 22 are diagrams showing examples of operations of the data distribution system 100 during distribution.
  • ⁇ Capture> 17 and 18 are diagrams illustrating an example of the operation of the data distribution system 100 regarding acquisition (capture) of information about the viewer Au and the performer P.
  • FIG. 17 shows some processes executed in the data distribution system 100.
  • FIG. 18 several data transmissions in the data distribution system 100 are indicated by thick arrows.
  • step S21 the capture data of the viewer Au is transmitted to the motion data generation device 21.
  • the capture device 11 acquires capture data of the viewer Au and transmits it to the motion data generation device 21.
  • the motion data generation device 21 receives capture data from the capture device 11.
  • step S22 animation data of the 3D model of the viewer Au is generated.
  • the motion data generation device 21 generates animation data of the 3D model of the viewer Au based on the capture data of the viewer Au received in the previous step S1 and the 3D model data of the viewer Au loaded from the database device 20. generate.
  • step S23 the animation data is transmitted to the 3D scene generation device 31.
  • the motion data generation device 21 transmits the animation data generated in the previous step S22 to the 3D scene generation device 31.
  • the 3D scene generation device 31 receives animation data from the motion data generation device 21.
  • step S24 the captured data of the performer P is transmitted to the 3D model generation device 13.
  • the capture device 11-P acquires capture data of the performer P and transmits it to the 3D model generation device 13.
  • the 3D model generation device 13 receives capture data from the capture device 11-P.
  • step S25 second 3D model data of the performer P, for example bounding box data, is generated.
  • the 3D model generation device 13 generates second 3D model data of the performer P based on the capture data of the performer P received in the previous step S24.
  • step S26 the second 3D model data is transmitted to the 3D scene generation device 31.
  • the 3D model generation device 13 transmits the second 3D model data of the performer P generated in the previous step S25 to the 3D scene generation device 31.
  • the 3D scene generation device 31 receives second 3D model data from the 3D model generation device 13.
  • the capture data of the viewer Au and performer P during the distribution is acquired, and the animation data and second 3D model data are transmitted to the 3D scene generation device 31.
  • steps S21 to S23 and the processing of steps S24 to S26 described above may be executed in the reverse order or may be executed in parallel.
  • FIG. 19 and 20 show an example of the operation of the data distribution system 100 regarding generation of distribution video to the viewer Au.
  • FIG. 19 shows some processes executed in the data distribution system 100.
  • FIG. 20 several data transmissions in the data distribution system 100 are indicated by thick arrows.
  • 3D scene description data is generated and transmitted to the rendering device 22.
  • the 3D scene generation device 31 constructs a 3D scene based on the animation data of the 3D model of the viewer Au and the second 3D model data (bounding box data) of the performer P.
  • the 3D scene generation device 31 constructs a virtual space including a live venue based on component data in the database device 30, and creates a 3D scene of the viewer Au based on 3D model data of the viewer Au in the database device 30. Place the model in virtual space.
  • the 3D scene generation device 31 determines the position of the performer P in the virtual space (for example, placing the performer P on the stage) based on the second 3D model data of the performer P.
  • the 3D scene generation device 31 generates data describing the 3D scene obtained in this manner as 3D scene description data, and transmits it to the rendering device 22.
  • the rendering device 22 receives 3D scene description data from the 3D scene generation device 31 .
  • step S32 the latest animation data of viewer Au is transmitted to the rendering device 22.
  • the latest animation data can also be said to be data that reflects the viewer Au's latest capture data (reflects the viewer Au's movements in real time).
  • the motion data generation device 21 for example, generates the latest animation data (including visual field/line of sight data) of the viewer Au, and transmits it to the rendering device 22.
  • the rendering device 22 receives the latest animation data of the viewer Au from the motion data generation device 21.
  • step S33 the latest first 3D model data (point cloud data, etc.) of the performer P is transmitted to the rendering device 22.
  • the latest first 3D model data can also be said to be data that reflects the latest capture data of the performer P (reflects the movements of the performer P in real time).
  • the 3D model generation device 13 generates the latest first 3D model data of the performer P and transmits it to the rendering device 22.
  • the rendering device 22 receives the latest first 3D model data of the performer P from the 3D model generation device 13.
  • step S34 rendered video/sound data is generated.
  • the rendering device 22 generates rendered video/sound data based on 3D scene description data, 3D model data of viewer Au, animation data, first 3D model data of performer P, capture data, and the like. This data is distribution data to viewer Au.
  • step S35 the rendered video/sound data is transmitted to the display device 12.
  • the rendering device 22 transmits the rendered video/sound data generated in the previous step S34 to the display device 12.
  • the display device 12 receives rendered video/sound data from the rendering device 22 and outputs it (video display and sound output).
  • step S36 the rendered video/sound data is transmitted to the database device 20.
  • the rendering device 22 transmits the rendered video/sound data generated in the previous step S34 to the database device 20.
  • the database device 20 receives rendered video/sound data from the rendering device 22 and stores it.
  • distribution data including video and audio data is distributed to viewer Au.
  • FIG. 21 and 22 show an example of the operation of the data distribution system 100 regarding the generation of distribution video to the performer P.
  • FIG. 21 shows some processes executed in the data distribution system 100.
  • FIG. 22 several data transmissions in the data distribution system 100 are indicated by thick arrows.
  • step S41 3D scene description data is generated and transmitted to the rendering device 22-P.
  • the 3D scene generation device 31 generates 3D scene description data as described above and sends it to the rendering device 22-P.
  • the rendering device 22-P receives 3D scene description data from the 3D scene generation device 31.
  • step S42 the latest second 3D model data (bounding box data) of the performer P is transmitted to the rendering device 22-P.
  • the latest second 3D model data can also be said to be data that reflects the latest capture data of the performer P (reflects the movements of the performer P in real time).
  • the 3D model generation device 13 generates the latest second 3D model data of the performer P and transmits it to the rendering device 22-P.
  • the rendering device 22-P receives the latest second 3D model data of the performer P from the 3D model generation device 13.
  • step S43 rendered video/sound data is generated.
  • the rendering device 22-P generates rendered video/sound data based on, for example, the 3D model data of the viewer Au, the animation data, the second 3D model data of the performer P, and the like. This data is distribution data to performer P.
  • step S44 the rendered video/sound data is transmitted to the display device 12-P.
  • the rendering device 22-P transmits the rendered video/sound data generated in the previous step S43 to the display device 12-P.
  • the display device 12-P receives the rendered video/sound data from the rendering device 22-P and outputs it (video display and sound output).
  • step S45 the rendered video/sound data is transmitted to the database device 20-P.
  • the rendering device 22-P transmits the rendered video/sound data generated in the previous step S43 to the database device 20-P.
  • the database device 20-P receives rendered video/sound data from the rendering device 22-P and stores it.
  • distribution data including video and audio data is distributed to the performer P as described above.
  • each of the distributed edge server devices 2 and 2-P generates distribution data to the corresponding viewers Au and performers P, so the processing load is distributed. be done.
  • second 3D model data (bounding box data) of the 3D model data of the performer P is transmitted from the client device 1-P to the central server device 3.
  • Animation data of a 3D model of the viewer Au is transmitted from the edge server device 2 to the central server device 3.
  • 3D scene description data is transmitted from the central server device 3 to the edge server device 2 and edge server device 2-P.
  • Comparative example 1 shown in FIG. 24 is a typical server-client configuration.
  • the 3D scene generation device/rendering device corresponds to the server.
  • the configuration of Comparative Example 1 has a problem in that input data and output data are concentrated on the server.
  • 3D model data e.g., corresponding to the first 3D model data mentioned above
  • the users viewer Au and performer P
  • a different rendered image is generated for each user, and the corresponding user will be delivered to. For example, if the input data rate per user is 100 Mbps, if there are 1 million users, the total input data rate will be 100 T (tera) bps.
  • Comparative Example 2 shown in FIG. 24, concentration of data and processing load is eased compared to Comparative Example 1.
  • a 3D scene generation device that receives 3D model data of users (viewer Au and performer P) and a rendering device that generates video to be distributed to users are separated. Since rendered video is output from the rendering device, input data from users and output data to them are not concentrated in one device. However, the point remains that all users' 3D model data is concentrated in the 3D scene generation device, and a problem remains (problem (a)). Furthermore, since all the data that makes up the 3D scene is transmitted from the 3D scene generation device to the rendering device, there remains the problem that the data transmission rate between the 3D scene generation device and the rendering device is extremely high. (b)).
  • FIG. 25 is a diagram showing a study example. Problem (a) mentioned above, namely the problem of data concentration in the 3D scene generation device, is addressed.
  • a path is provided to send 3D model data directly to the rendering device.
  • the users viewer Au and performer P
  • second 3D model data bounding box data
  • animation data for moving the 3D model of the viewer Au is transmitted from the viewer Au to the 3D scene generation device.
  • the input data rate to the 3D scene generation device is reduced.
  • a database device is provided for storing 3D model data.
  • a plurality of rendering devices are provided in the system, and rendering processing is performed based on 3D scene description data necessary for rendering in each rendering device.
  • the rendering device performs data transmission with viewers Au who live nearby.
  • data is transmitted and received from a facility in the area, such as a karaoke box or a live space, equipped with a capture device and a 3D model generation device to the audience Au who participates. Since the rendering device and the viewer Au are physically located close to each other, motion-to-photon latency is reduced. Moreover, within a viewer group corresponding to the same rendering device, the response delay in interaction between 3D models of viewers Au is reduced.
  • the viewer Au's 3D model generation device is further separated from the capture device to form a motion data generation device, and the performer P's 3D model generation device is separated from the capture device to form a 3D model generation device.
  • This configuration constitutes the data distribution system 100 according to the embodiment described above. Note that the configuration of the study example in FIG. 25 may also be one of the embodiments.
  • the functions of the edge server device 2 may be arranged separately (disassembled). Note that the edge server device 2 here may include a corresponding database device 20 as well. This will be explained with reference to FIG. 26.
  • FIG. 26 is a diagram showing an example of network resources.
  • FIG. 26A shows network resources in the embodiments described so far.
  • the central server device 3 is located at a physically separate location. Note that the distance between devices is also illustrated.
  • the edge server device 2 has both the function of a front server and the function of an MEC (computing resource). In one embodiment, those functions may be arranged separately (decomposed). Such a modification is shown in FIG. 26(B).
  • each edge server device 2 includes an MEC 2a and a front section 2b, and is configured so that they can be disassembled, and these are arranged separately.
  • the MEC 2a is a calculation resource (calculation resource) necessary for various processes by the motion data generation device 21, rendering device 22, database device 20, etc. described so far.
  • the MEC 2a functions as a front server, and, for example, transmits data to and from a corresponding client device 1, and assigns the MEC 2a to a corresponding user (to that client device 1).
  • the front section 2b can play the role of a load balancer.
  • the edge server device 2 as described above can also be said to have a configuration in which the resource allocation function that has been performed by the edge server device 2 up to now is made independent as the front section 2b. This increases the degree of freedom in geographical placement of the MEC 2a. This will be explained with reference to FIG. 27 as well.
  • FIG. 27 is a diagram showing an example of a modified network configuration.
  • the client device 1 (corresponding to the "viewer” in FIG. 27) is connected to the nearest front unit 2b (front server).
  • the front section 2b is connected to a plurality of nearby MECs 2a at a short distance.
  • Each MEC 2a is connected to the central server device 3 central server, and further connected to surrounding MECs 2a.
  • the front section 2b and the MEC 2a may be placed at the same base, or may be placed apart, for example, from several to several tens of kilometers apart.
  • the MEC 2a may be arranged between the front parts 2b.
  • the distance of the MEC 2a may be, for example, approximately several kilometers to several tens of kilometers.
  • the MEC 2a may be configured to include a plurality of physical computing resources, for example, processors such as a CPU and a GPU.
  • the MEC 2a may be realized by a virtual computing resource, for example, a plurality of virtualized computing resources/instances (including GPU resources).
  • Dedicated computing resources (physical or virtual) are allocated to each client device 1 on a 1:1 basis. Due to virtualization, it appears from the client device 1 that one computing resource is allocated.
  • the allocation of the MEC 2a by the front unit 2b may include allocation of the MEC 2a of another edge server device 2.
  • the front unit 2b of the edge server device 2 that is physically closest to the client device 1 of the viewer Au basically assigns the MEC 2a of the edge server device 2 to the viewer Au.
  • the front section 2b allocates the next closest MEC 2a (of the edge server device 2) geographically to the viewer Au. By searching based on geographic distance as a priority, possible communication delays can be minimized.
  • 3D model data of the corresponding viewer Au is transmitted and stored in the database device 20 corresponding to the MEC 2a actually allocated to the viewer Au before distribution. .
  • the client device 1 (that is, the viewer Au or the performer P) is not aware of how much hardware the virtual computing resources allocated to the client device 1 consist of. Generally, one CPU and one GPU provide computing resources to multiple client devices 1, but the reverse may be true, that is, multiple CPUs and multiple GPUs provide computing resources to one client device 1. .
  • Hardware allocation to virtual computing resources is determined by the processing load estimate for each use case. There may also be cases where hardware allocation is dynamically changed over time.
  • FIG. 28 is a diagram showing an example of the hardware configuration of the device.
  • Each device (data processing device, etc.) included in the data distribution system 100 described so far, specifically the client device 1, the edge server device 2, the central server device 3, and each device included therein is, for example, a computer 1000. It may be configured to include.
  • the computer 1000 has a CPU 1100, a RAM 1200, a ROM (Read Only Memory) 1300, an HDD (Hard Disk Drive) 1400, a communication interface 1500, and an input/output interface 1600. Each part of computer 1000 is connected by bus 1050.
  • the CPU 1100 operates based on a program stored in the ROM 1300 or the HDD 1400 and controls each part. For example, the CPU 1100 loads programs stored in the ROM 1300 or HDD 1400 into the RAM 1200, and executes processes corresponding to various programs.
  • the ROM 1300 stores boot programs such as BIOS (Basic Input Output System) that are executed by the CPU 1100 when the computer 1000 is started, programs that depend on the hardware of the computer 1000, and the like.
  • BIOS Basic Input Output System
  • the HDD 1400 is a computer-readable recording medium that non-temporarily records programs executed by the CPU 1100 and data used by the programs. Specifically, the HDD 1400 is a recording medium that records a program for executing each operation according to the present disclosure, which is an example of the program data 1450.
  • the communication interface 1500 is an interface for connecting the computer 1000 to an external network 1550 (for example, the Internet).
  • CPU 1100 receives data from other devices or transmits data generated by CPU 1100 to other devices via communication interface 1500.
  • the input/output interface 1600 includes the above-described I/F section 18, and is an interface for connecting the input/output device 1650 and the computer 1000.
  • the CPU 1100 receives data from an input device such as a keyboard or a mouse via the input/output interface 1600. Further, the CPU 1100 transmits data to an output device such as a display, speaker, or printer via the input/output interface 1600.
  • the input/output interface 1600 may function as a media interface that reads programs and the like recorded on a predetermined recording medium.
  • Examples of media include optical recording media such as DVD (Digital Versatile Disc) and PD (Phase change rewritable disk), magneto-optical recording media such as MO (Magneto-Optical disk), tape media, magnetic recording media, semiconductor memory, etc. It is.
  • optical recording media such as DVD (Digital Versatile Disc) and PD (Phase change rewritable disk)
  • magneto-optical recording media such as MO (Magneto-Optical disk), tape media, magnetic recording media, semiconductor memory, etc. It is.
  • the CPU 1100 of the computer 1000 executes the program loaded on the RAM 1200, so that the client device 1, the edge server device 2 or the functions of the central server device 3. Furthermore, programs and the like are stored in the HDD 1400. Note that although the CPU 1100 reads and executes the program data 1450 from the HDD 1400, as another example, these programs may be obtained from another device via the external network 1550.
  • the data distribution system 100 includes a central server device 3 and a plurality of edge server devices 2, 2-P.
  • the central server device 3 (3D scene generation device 31) generates 3D scene description data that includes 3D models of a plurality of users (viewer Au, performer P) and describes a scene in a virtual space that changes in real time.
  • Each of the plurality of edge server devices 2 and 2-P communicates with the central server device 3 and is distributed at geographically distant positions from each other, so that the central server device 3 Based on the generated 3D scene description data, distribution data to the corresponding user is generated.
  • each of the plurality of distributed edge server devices 2 and 2-P generates distribution data to the corresponding users, so the processing load is distributed.
  • the central server device 3 it is not necessary to generate all the data of the virtual space that changes in real time, and it is sufficient to generate 3D scene description data that describes the scene.
  • the amount of data transmitted in the central server device 3 can be reduced accordingly. Therefore, it is possible to suppress delays that may occur due to concentration of processing load or increase in data transmission amount, such as motion-to-photon latency and delays in interactions between users in the virtual space.
  • the 3D scene description data may be data including a description of the arrangement of multiple users in the virtual space.
  • distribution data can be generated in the edge server devices 2, 2-P while reducing the amount of data transmitted in the central server device 3.
  • the edge server devices 2, 2-P rendering device 22, rendering device 22-P
  • the edge server devices 2, 2-P rendering device 22, rendering device 22-P
  • rendered video data in the virtual space may be generated as distribution data.
  • the processing load required for rendering can be distributed, and rendered video data can be distributed to users.
  • Data distribution system 100 can be used as a video distribution system.
  • the edge server device 2 (rendering device 22) generates animation data of a 3D model of the corresponding user (viewer Au), and uses the generated animation data
  • Video data may be generated based on the 3D scene description data and the user's 3D model data (avatar data). For example, in this way, video data including a 3D model of a moving user can be generated. Further, since the amount of animation data is smaller than the data representing the moving 3D model data itself, the amount of data transmission can be suppressed.
  • the animation data includes visual field/line of sight data of the corresponding user (viewer Au), and the edge server device 2 (rendering device 22) ) You may generate video data when viewed from the viewpoint of Thereby, video data suitable for distribution to the corresponding user can be generated.
  • the edge server device 2 (rendering device 22) transmits the generated animation data to the central server device 3 (3D scene generation device 31), and may generate 3D scene description data based on animation data from the edge server device 2.
  • the edge server device 2 transmits the generated animation data to the central server device 3 (3D scene generation device 31), and may generate 3D scene description data based on animation data from the edge server device 2.
  • the edge server device 2 transmits the generated animation data to the central server device 3 (3D scene generation device 31), and may generate 3D scene description data based on animation data from the edge server device 2.
  • the data distribution system 100 communicates with the edge server devices 2, 2-P and the central server device 3, and also communicates with the It further includes a client device 1-P (3D model generation device 13) that generates 3D model data, and the 3D model data generated by the client device 1-P (3D model generation device 13) includes point cloud data, mesh data, and texture.
  • the client device 1-P (3D model generation device 13) generates the generated 3D model data including first 3D model data including at least one of the data and second 3D model data including bounding box data.
  • the first 3D model data is sent to the edge server device 2, 2-P (rendering device 22, rendering device 22-P), and the second 3D model data is sent to the central server device 3 (3D scene generation device 31).
  • the edge server devices 2, 2-P rendering device 22, rendering device 22-P
  • the central server device 3 (3D scene generation
  • the device 31) may generate 3D scene description data based on the second 3D model data. In this way, by transmitting only the second 3D model data with a small amount of data to the central server device 3 and generating 3D scene description data there, the amount of data transmission can be suppressed.
  • each of the plurality of edge server devices 2 has an MEC 2a, which is a computational resource, and a front section 2b that allocates the MEC 2a to the corresponding user (viewer Au).
  • the allocation by the front unit 2b may include allocating the MEC 2a of another edge server device 2. Thereby, the degree of freedom in geographical placement of the MEC 2a can be increased.
  • the virtual space includes a virtualized live event venue, and the multiple users may include multiple viewers Au and one or more performers P.
  • live events can be streamed with low latency.
  • communication may be optical communication (network N may be an all-optical communication network). This increases the possibility that delays can be further suppressed.
  • the distribution data may include video data and sound data. Even when such a large amount of data is distributed, delays can be suppressed.
  • the data distribution method described with reference to FIGS. 1 to 22, 26, 27, etc. is also one of the disclosed techniques.
  • the central server device 3 (3D scene generation device 31) transmits 3D scene description data that describes a scene in a virtual space that includes 3D models of multiple users (audience Au, performer P) and changes in real time.
  • a plurality of edge server devices 2, 2-P each of which communicates with the central server device 3 and is distributed at geographically distant locations, generates a central server (step S31, step S41).
  • the method includes generating distribution data to corresponding users based on the 3D scene description data generated by the device 3 (steps S34 and S43). With such a data distribution method, delays can also be suppressed as described above.
  • Data processing devices that constitute the data distribution system 100 such as the edge server devices 2 and 2-P, and data processing methods using such data processing devices are also disclosed technologies.
  • the edge server devices 2, 2-P contain 3D models of multiple users (viewer Au, performer P) and change in real time. Based on 3D scene description data that describes a scene in a virtual space, distribution data to a corresponding user is generated.
  • the data processing method is such that the edge server devices 2 and 2-P distribute data to corresponding users based on 3D scene description data that includes 3D models of multiple users and describes a scene in a virtual space that changes in real time. (step S34, step S43). Also with such a data processing device or data processing method, delays can be suppressed as described above.
  • the data distribution system 100 may be a video/music distribution system.
  • a 3D scene generation device 31 is placed in one or a small number of central data centers (central area R3, central server device 3).
  • the rendering devices 22 and 22-P may be distributed and arranged in regional data centers (regional area R2, edge server devices 2 and 2-P) existing in each region that provides video and music content.
  • a regional data center may be connected to a central data center or other regional data centers by a network N.
  • the 3D scene generation device 31 may generate 3D scene description data for designing and controlling video and music content in the virtual space.
  • the rendering devices 22 and 22-P Based on the 3D scene description data, the rendering devices 22 and 22-P generate video/audio (video/sound) to be viewed by the viewer Au and the performer P by rendering processing according to the visual field/line of sight data of the viewer Au and the performer P. You may do so.
  • video/audio video/sound
  • the real-time movement data of the viewer Au and the performer P may basically be received by the regional data center that is geographically closest. Furthermore, the viewer Au and the performer P may basically receive rendered video (rendered video) from the regional data center that is geographically closest to them.
  • the movement data that reflects the movement of the viewer Au in the real space in the virtual space may be composed of avatar data (3D model data) of the viewer Au and animation data for the avatar data.
  • the movement of the viewer Au in the real space may be reflected in the virtual space by transmitting animation data for the avatar data of the viewer Au to the 3D scene generation device 31.
  • the movement data that reflects the movement of the performer P in the real space in the virtual space may be composed of 3D model data that captures the movement of the performer P moment by moment and changes in time series.
  • the movement of the performer P in the real space may be reflected in the virtual space by transmitting bounding box data related to the performer's 3D model data to the 3D scene generation device 31.
  • a certain pre-calculated delay time is required between client devices 1 or viewers Au that belong to a viewer group that is a collection of clients (client devices 1 or viewers Au who use them) that use a common regional data center. It may be guaranteed that interaction is possible with:
  • the motion data generation device 21 that generates animation data (motion data) for moving the viewer Au's avatar may transmit the animation data to the rendering device 22 in the regional data center and also to the central data center.
  • the rendering device 22 that generates video and music data for the viewer Au adds motion to the 3D scene description data received from the central data center in order to reflect the real-time movement of the viewer Au in the rendered image with low delay.
  • the rendered image may be generated by combining the latest animation data of the viewer Au from the data generation device 21.
  • the 3D model generation device 13 may transmit the real-time bounding box data of the performer P to the central data center where the 3D scene generation device 31 is located.
  • the rendering device 22-P that generates video and music data for the performer P adds 3D scene description data to the 3D scene description data received from the central data center in order to reflect the real-time movements of the performer P in the rendered image with low delay.
  • the rendered image may be generated by combining the latest 3D model data of the performer P from the model generation device 13.
  • a system configuration has been devised to solve the problem of realizing large-scale interactive live music distribution over an all-optical network, and a is defined. This allows for reduced network data rates, lower latency, and greater audience participation compared to traditional simple server-client configurations.
  • a 3D scene generation device 31 is placed in a central data center that controls the entire music live performance, and rendering devices 22 and 22-P are distributed and placed in data centers in each region (regional data centers).
  • Viewer AU and performer P transmit sensing data (capture data) from capture devices 11 and 11-P or 3D model data generated on-premises to a regional data center that is physically close to each other. It also receives rendered video from a regional data center that is physically close to it. Thereby, the viewer's motion-to-photon latency can be reduced. It is possible to reduce response delays during interactions between Au viewers who use the same regional data center.
  • the rendering processing load of the rendering devices 22 and 22-P can be distributed.
  • the output of rendered images from the rendering devices 22, 22-P can be distributed.
  • the regional data center transmits animation data (motion data) that moves the viewer Au's avatar to the central data center as real-time 3D model data. This reduces the rate of input data regarding viewers Au to the central data center.
  • animation data motion data
  • the regional data center combines the 3D scene description data received from the central data center with newer animation data from the motion data generation device 21 to construct a 3D scene.
  • the motion-to-photon latency of viewer Au can be reduced.
  • the regional data center sends the bounding box data of performer P to the central data center as real-time 3D model data. This reduces the rate of input data regarding performer P to the central data center.
  • the regional data center constructs a 3D scene by combining the 3D scene description data received from the central data center with newer 3D model data from the 3D model generation device 13. Thereby, the motion-to-photon latency of the performer P can be reduced.
  • the present technology can also have the following configuration.
  • a central server device that generates 3D scene description data that describes a scene in a virtual space that includes 3D models of multiple users and that changes in real time; Each communicates with the central server device and is distributed at geographically distant locations, and generates distribution data to the corresponding user based on the 3D scene description data generated by the central server device.
  • multiple edge server devices Equipped with Data distribution system.
  • the 3D scene description data is data including a description of the arrangement of the 3D models of the plurality of users in the virtual space.
  • the data distribution system described in (1) described in (1).
  • the edge server device generates rendered video data of the virtual space as the distribution data based on the 3D scene description data and the user's 3D model data.
  • the data distribution system according to (1) or (2).
  • the edge server device generates animation data of a 3D model of a corresponding user, and generates the video data based on the generated animation data, the 3D scene description data, and the 3D model data of the user.
  • the animation data includes corresponding user's field of view/line of sight data,
  • the edge server device generates the video data when viewed from the viewpoint of the corresponding user.
  • the edge server device transmits the generated animation data to a central server device,
  • the central server device generates the 3D scene description data based on animation data from the edge server device.
  • the data distribution system according to (4) or (5).
  • the 3D model data generated by the client device is First 3D model data including at least one of mesh data, texture data, and point cloud data; second 3D model data including bounding box data; including;
  • the client device transmits the first 3D model data of the generated 3D model data to the edge server device, and transmits the second 3D model data to the central server device,
  • the edge server device generates the video data based on the first 3D model data,
  • the central server device generates the 3D scene description data based on the second 3D model data.
  • the data distribution system according to any one of (3) to (6).
  • Each of the plurality of edge server devices includes: MEC, which is a computational resource, a front unit that assigns the MEC to a corresponding user; including; The assignment by the front unit includes assigning MECs of other edge server devices; The data distribution system according to any one of (1) to (7).
  • the virtual space includes a virtualized live event venue,
  • the plurality of users include a plurality of viewers and one or more performers,
  • the data distribution system according to any one of (1) to (8).
  • the communication is all-optical communication, The data distribution system according to any one of (1) to (9).
  • the distribution data includes video data and sound data.
  • the central server device generates 3D scene description data that describes a scene in a virtual space that includes 3D models of a plurality of users and changes in real time;
  • a plurality of edge server devices each of which communicates with the central server device and which are distributed at geographically distant locations, detect the corresponding user based on the 3D scene description data generated by the central server device.
  • (13) generating distribution data to corresponding users based on 3D scene description data that describes a scene in a virtual space that includes 3D models of multiple users and that changes in real time;
  • Data processing equipment (14)
  • the data processing device generates distribution data to corresponding users based on 3D scene description data that includes 3D models of a plurality of users and describes a scene in a virtual space that changes in real time.
  • Data processing method The central server device generates 3D scene description data that describes a scene in a virtual space that includes 3D models of a plurality of users and changes in real time.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Databases & Information Systems (AREA)
  • Processing Or Creating Images (AREA)

Abstract

データ配信システムは、複数のユーザの3Dモデルを含みリアルタイムに変化する仮想空間のシーンを記述する3Dシーン記述データを生成するセントラルサーバ装置と、各々が前記セントラルサーバ装置と通信するとともに互いに地理的に離れた位置に分散して配置され、前記セントラルサーバ装置が生成した前記3Dシーン記述データに基づいて、対応するユーザへの配信データを生成する複数のエッジサーバ装置と、を備える。

Description

データ配信システム、データ配信方法、データ処理装置及びデータ処理方法
 本開示は、データ配信システム、データ配信方法、データ処理装置及びデータ処理方法に関する。
 例えば特許文献1及び特許文献2に示されるように、仮想空間の提供に関するさまざまな技術が提案されている。
特開2020-17242号公報 特開2020-21394号公報
 例えば、大規模なライブイベント会場を仮想化してリアルタイム配信することが考えられる。その場合、多数のユーザを含む仮想空間、それもユーザの動きを反映したり、ユーザどうしのインタラクションを可能にしたりする仮想空間を構築しなければならない。膨大な量のデータの伝送及び処理が必要になることから、ユーザの動きを仮想空間に反映して映像表示、知覚するまでの遅延(motion-to-photon latency)が生じたり、ユーザどうしのインタラクションに遅延が生じたりする。
 本開示の一側面は、遅延を抑制する。
 本開示の一側面に係るデータ配信システムは、複数のユーザの3Dモデルを含みリアルタイムに変化する仮想空間のシーンを記述する3Dシーン記述データを生成するセントラルサーバ装置と、各々がセントラルサーバ装置と通信するとともに互いに地理的に離れた位置に分散して配置され、セントラルサーバ装置が生成した3Dシーン記述データに基づいて、対応するユーザへの配信データを生成する複数のエッジサーバ装置と、を備える。
 本開示の一側面に係るデータ配信方法は、セントラルサーバ装置が、複数のユーザの3Dモデルを含みリアルタイムに変化する仮想空間のシーンを記述する3Dシーン記述データを生成することと、各々がセントラルサーバ装置と通信するとともに互いに地理的に離れた位置に分散して配置された複数のエッジサーバ装置が、セントラルサーバ装置が生成した3Dシーン記述データに基づいて、対応するユーザへの配信データを生成することと、を含む。
 本開示の一側面に係るデータ処理装置は、複数のユーザの3Dモデルを含みリアルタイムに変化する仮想空間のシーンを記述する3Dシーン記述データに基づいて、対応するユーザへの配信データを生成する。
 本開示の一側面に係るデータ処理方法は、データ処理装置が、複数のユーザの3Dモデルを含みリアルタイムに変化する仮想空間のシーンを記述する3Dシーン記述データに基づいて、対応するユーザへの配信データを生成することを含む。
実施形態に係るデータ配信システム100の概略構成の例を示す図である。 バウンディングボックスデータの例を示す図である。 視聴者の3Dモデルデータ(アバターデータ)の例を示す図である。 アニメーションデータの例を示す図である。 装置の接続関係及び装置間のデータ伝送の例を示す図である。 ネットワークリソースの分担の例を示す図である。 セントラルサーバ装置3の配置の例を示す図である。 エッジサーバ装置2の地理的配置の例を示す図である。 マッピングの例を示す図である。 視聴者グループの例を示す図である。 視聴者グループの例を示す図である。 異なる視聴者グループに属する視聴者Auの3Dモデルどうしのインタラクションの例を示す図である。 配信準備段階でのデータ配信システム100の動作の例を示す図である。 配信準備段階でのデータ配信システム100の動作の例を示す図である。 配信直前準備段階でのデータ配信システム100の動作の例を示す図である。 配信直前準備段階でのデータ配信システム100の動作の例を示す図である。 配信中のデータ配信システム100の動作の例を示す図である。 配信中のデータ配信システム100の動作の例を示す図である。 配信中のデータ配信システム100の動作の例を示す図である。 配信中のデータ配信システム100の動作の例を示す図である。 配信中のデータ配信システム100の動作の例を示す図である。 配信中のデータ配信システム100の動作の例を示す図である。 比較例を示す図である。 比較例を示す図である。 検討例を示す図である。 ネットワークリソースの例を示す図である。 変形例のネットワーク構成の例を示す図である。 装置のハードウェア構成の例を示す図である。
 以下に、本開示の実施形態について図面に基づいて詳細に説明する。なお、以下の各実施形態において、同一の要素には同一の符号を付することにより重複する説明を省略する。
 以下に示す項目順序に従って本開示を説明する。
  0.序
  1.実施形態
  2.変形例
  3.ハードウェア構成の例
  4.まとめ
0.序
 開示される技術の1つのユースケースは、仮想化空間を利用した音楽ライブ等のライブイベントの配信である。ユーザ、より具体的には演者及び視聴者の分身(後述の3Dモデル)等が配置された会場を含む仮想空間が構築され、そのシーン、例えば映像及び音がユーザに提供される。仮想空間では、現実空間における演者の演奏、発声、体の動き等がリアルタイムに反映されるだけでなく、視聴者の声、体の動き等もリアルタイムに反映される。例えば、演者の演奏に合わせて視聴者が他の視聴者と一緒にダンスをすることもできる。仮想空間を利用して、双方向のインタラクションが可能な音楽ライブが配信される。このような配信は、インタラクティブ性を有する大規模リアルタイム自由視点音楽ライブ配信とも呼べる。
 なお、本開示において、映像及び撮影は、画像及び撮像の意味に解されてよく、矛盾の無い範囲においてそれらは適宜読み替えられてよい。また、データは、情報の意味に解されてよく、矛盾の無い範囲においてそれらは適宜読み替えられてよい。データの伝送は、データの通信、データの送受信、データの配信等の意味に解されてよく、矛盾の無い範囲においてそれらは適宜読み替えられてよい。
 多数のユーザを含む仮想空間を利用した配信においては、膨大なデータの伝送及び処理が発生し、それによって、motion-to-photon latencyが生じたり、ユーザどうしのインタラクションに遅延が生じたりする。この問題が、開示される技術によって対処される。
 一実施形態において、データ通信に全光通信(APN(オールフォトニクスネットワーク))が用いられる。伝送路が光ファイバで構成され、データは、光電変換を介さず光信号のままで伝送される。信号のルーティングは光スイッチで行われ、そこでの遅延は発生しない。他のデータが多重化されることによる遅延、伝送レートの低下、遅延の揺らぎ(ジッタ)が発生しないか、或いは非常に小さくなる。光ファイバを利用するため、伝送遅延も非常に短い。
 多数のユーザ、例えば100万人レベルの視聴者が参加するようなライブイベントを配信する場合には、データ伝送量、映像生成のためのレンダリング処理が膨大になり、遅延の問題が顕在化する。上述の全光通信とは別のアプローチの検討も重要である。
 詳細は後述するが、例えば、システムの構成要素とシステムの実装に必要なネットワークリソースが定義される。ネットワークリソースの物理配置上の特性を生かして、システムの構成要素がネットワークリソースに割り当てられる(マッピングされる)。また、演者と視聴者の3Dモデルについて、求められる品質と用途から、伝送する3Dモデルデータが使い分けられる。システムの構成要素間で、処理内容に応じて、伝送するデータの形式が定義される。一般的なサーバ・クライアント構成と比較して、システムの構成要素間のデータレートを削減し、3Dシーン生成、表示のためのレンダリング処理の負荷を分散し、また、遅延を低減することができる。より多くのユーザへのデータ配信(配信の大規模化)が可能になる。
 自由視点空間を構成する3Dモデルデータは、近距離視点でも高画質が担保されるように高精細さが求められるが、従来の2D映像データと比較するとデータ量が膨大になる。加えて、会場に集まる多数の視聴者の3Dモデルデータを処理する必要があり、単純にそれらの3Dモデルデータを伝送すると、ネットワークの伝送帯域容量を超えてしまう。膨大なデータを処理(レンダリング等)するために、高速なコンピューティングリソースも必要になる。
 一実施形態において、演者と視聴者とで、異なる3Dモデルが用いられる。このうちの視聴者の3Dモデルを、アバターとも称する。例えば、演者の動きがボリュ―メトリックキャプチャされ、時系列に変化する演者の3Dモデルデータが生成される。一方で、視聴者の3Dモデルは、静的な3Dモデルデータ(アバターデータ)、及び、その3Dモデルを動かす(動的なアバターを得るための)アニメーションデータで構成される。視聴者の動きは、視聴者の3Dモデルデータにアニメーションデータを反映させることで実現する。
 また、システムを構成するネットワークリソースとして、例えば1つのセントラルサーバ装置、多数のエッジサーバ装置、さらに多数のクライアント装置(オンプレミス装置)の3つの構成要素が定義される。ネットワークリソースの地理的配置の工夫により、データが一箇所に集中する問題が緩和され、また、処理負荷が分散される。ネットワーク上でのデータ集中(局所的な高データレート)が低減され、また、遅延も低減される。多数のユーザが参加する仮想空間内での自由視点リアルタイム音楽ライブ配信を提供することができる。
1.実施形態
 図1は、実施形態に係るデータ配信システム100の概略構成の例を示す図である。データ配信システム100は、仮想空間を利用したさまざまなイベントを、複数のユーザに配信(提供)する。イベントは、ライブイベントであってよい。イベントのライブ配信(リアルタイム配信)が行われる。仮想空間は、仮想化されたライブイベント会場を含む。イベントの例は、音楽ライブ、スポーツ、トークショー等であるが、これらに限定されるものではない。なお、とくに説明がある場合を除き、以下では、イベントは音楽ライブであるものとする。
 仮想空間は、3次元の仮想空間(3D仮想空間)である。そのような仮想空間は、メタバース、デジタルツイン等と呼ばれることもある。仮想空間内のユーザを表す3Dモデルは、アバター、デジタルヒューマン等と呼ばれることもある。仮想空間は、複数のユーザの3Dモデルを含む仮想空間であり、また、リアルタイムに変化する仮想空間であってよい。
 データ配信システム100を利用する複数のユーザは、視聴者Au及び演者Pを含む。視聴者Au及び演者Pを区別しない場合は、単にユーザとも呼ぶ。視聴者Auは、複数の視聴者Auであってよく、図1には、3人の視聴者Auが例示される。各視聴者Auを区別できるように、視聴者Au-1、視聴者Au-2及び視聴者Au-3と称し図示する。演者Pは、1又は複数の演者Pであってよく、図1には、1人の演者Pが例示される。
 データ配信システム100は、複数の装置(データ処理装置等とも呼べる)を含んで構成される。具体的に、データ配信システム100は、複数のクライアント装置と、複数のエッジサーバ装置と、1つ以上のセントラルサーバ装置と、複数のデータベース装置とを含む。図1には、複数のクライアント装置として、複数のクライアント装置1、及びクライアント装置1-Pが例示される。複数のエッジサーバ装置として、複数のエッジサーバ装置2、及びエッジサーバ装置2-Pが例示される。1つ以上のセントラルサーバ装置として、1つのセントラルサーバ装置3が例示される。複数のデータベース装置として、データベース装置20、データベース装置20-P及びデータベース装置30が例示される。
 上述の各装置は、物理的に離れた複数の領域にわたって分散して配置される。複数の領域は、オンプレミス領域R1と、リージョナル領域R2と、セントラル領域R3とを含む。なお、図1において同じ領域内に示される異なる装置どうしも、物理的に離れて配置され得る。
 オンプレミス領域R1には、クライアント装置1及びクライアント装置1-Pが配置される。クライアント装置1及びクライアント装置1-Pは、ユーザである視聴者Au及び演者Pが直接使用する装置(オンプレミス装置とも呼べる)であり、ユーザごとに設けられる。
 視聴者Auの数に対応する複数のクライアント装置1が存在する。視聴者Au-1のクライアント装置1を、クライアント装置1-1と称し図示する。視聴者Au-2のクライアント装置1を、クライアント装置1-2と称し図示する。視聴者Au-3のクライアント装置1を、クライアント装置1-3と称し図示する。これらをとくに区別しない場合は、単にクライアント装置1と呼ぶ。
 クライアント装置1及びクライアント装置1-Pを含む複数のクライアント装置の各々は、対応するエッジサーバ装置2と通信する。また、この例では、クライアント装置1-Pは、エッジサーバ装置2-Pだけでなく、エッジサーバ装置2及びセントラルサーバ装置3とも通信する。
 視聴者Auのクライアント装置1は、キャプチャ装置11と、ディスプレイ装置12とを含む。
 キャプチャ装置11は、視聴者Auの体の動き、顔の表情、体の各部の位置、向き、音声等のデータを取得する。キャプチャ装置11は、カラーカメラ、深度センサ、HMD(Head Mounted Display)、コントローラ、マイク等を含んで構成されてよい。カラーカメラの例は、RGBカメラ等である。深度センサの例は、ToF(Time of Flight)センサ等である。HMDは、視聴者Auの頭部に装着されて用いられる。コントローラは、例えば視聴者Auが手で持って使用する。マイクは視聴者Auの音声を集音する。集音された音は、例えばサンプリングされてデジタル化される。キャプチャ装置11によって取得されたデータを、視聴者Auのキャプチャデータ(又はセンシングデータ)とも称する。なお、カラーカメラ等に代えて、或いはそれとともに、キャプチャ装置11は、視聴者Auの体に取り付けられる加速度センサ等を含んで構成されてもよい。加速度センサから得られる視聴者Auの体の部分の加速度のデータ、さらにはその部分の速度や位置のデータを、キャプチャデータとして取得することができる。
 ディスプレイ装置12は、仮想空間の映像を表示したり、音を出力したりする。ディスプレイ装置12の表示映像は、視聴者Auの視点で観たときの仮想空間の映像であってよい。表示映像は、演者Pの3Dモデルを含んでよく、また、他の視聴者Auの3Dモデルを含んでよい。ディスプレイ装置12の出力音は、視聴者Auの音声、演奏音を含んでよく、また、他の視聴者Auの音声を含んでよい。あたかも視聴者Auがライブ会場にいるかのような映像、音が提供される。
 演者Pのクライアント装置1-Pは、キャプチャ装置11-Pと、ディスプレイ装置12-Pと、3Dモデル生成装置13とを含む。
 キャプチャ装置11-Pは、演者Pの体の動き、顔の表情、体の各部の位置、向き、音声、演奏音等のデータを取得する。キャプチャ装置11-Pは、例えば、カラーカメラ、深度センサ、HMD、コントローラ、マイク等を含んで構成されてよい。カメラは、多数のカメラであってよく、それにより、多くの異なる視点で観たときの演者Pの体の動き等のデータが取得される(ボリュメトリックキャプチャ)。また、マイクは、複数のマイクであってよい。キャプチャ装置11-Pによって取得されたデータを、演者Pのキャプチャデータとも称する。演者Pのキャプチャデータは、例えば1秒間に30回等のレートで演者Pの動きを多視点の2D映像としてキャプチャしたデータであってよい。前述のキャプチャ装置11と同様に、加速度センサ等がキャプチャ装置11-Pに含まれてもよい。
 ディスプレイ装置12-Pは、仮想空間の映像を表示したり、音を出力したりする。ディスプレイ装置12-Pの表示映像は、演者Pの視点で観たときの仮想空間の映像であってもよいし、それとは別の位置から演者Pを観たときの仮想空間の映像(演者Pの3Dモデルを含む映像)であってもよい。これにより、演者Pは、視聴者Auの反応を確認したり、演者P自身をモニタしたりすることができる。
 3Dモデル生成装置13は、キャプチャ装置11-Pによって取得された演者Pのキャプチャデータに基づいて、演者Pの3Dモデルデータを生成する。演者Pの3Dモデルデータは、第1の3Dモデルデータと、第2の3Dモデルデータとを含む。第1の3Dモデルデータは、第2の3Dモデルデータよりも高精度な3Dモデルのデータであってよい。第2の3Dモデルデータは、第1の3Dモデルデータよりもデータ量が小さくてよい。
 第1の3Dモデルデータの例は、メッシュデータ、テクスチャデータ、ポイントクラウドデータ等である。3Dモデル生成装置13は、演者Pのキャプチャデータに含まれる演者Pの画像データ等に基づいて、立体的なメッシュデータ及びテクスチャデータのデータを生成したり、ポイントクラウドデータを生成したりする。
 第2の3Dモデルデータの例は、バウンディングボックスデータ(Bounding box)である。バウンディングボックスデータについて、図2も参照して説明する。
 図2は、バウンディングボックスデータの例を示す図である。バウンディングボックスデータは、演者Pの3Dモデルを取り囲むように記述されるデータである。この例では、バウンディングボックスデータは、3Dモデルを取り囲む直方体の8個の頂点V1~頂点V8の位置と、正面方向を示すデータを含み、また、顔の向き或いは視線の方向を表すデータを含む。
 各辺をxyz軸に平行な直方体に制約すれば、正面方向は90°単位になるが、辺テーブルは不要である。例えば、最初の面、この例では頂点V1~頂点V4で規定される面の法線ベクトルが、正面とされる。視線方向は、6パラメータで表現される。例えば、x、y及びzの3パラメータが演者Pの目の位置を示し、yaw,pitch及びrollの3パラメータが視線方向を示す。
 第2の3Dモデルデータであるバウンディングボックスデータのデータ量は、通常の3Dモデルのデータ量と比較してかなり小さくなる。
 図1に戻り、例えば、3Dモデル生成装置13は、生成した3Dモデルデータのうちの第1の3Dモデルデータをエッジサーバ装置2-P(のレンダリング装置22-P)に送信し、第2の3Dモデルデータをセントラルサーバ装置3(の3Dシーン生成装置31)に送信する。このように3Dモデルデータのうちの第2の3Dモデルデータだけをセントラルサーバ装置3に送信することで、セントラルサーバ装置3へのデータ伝送レートを抑制することができる。
 図1に戻り、3Dモデル生成装置13は、演者Pのキャプチャデータのうちの演者Pの音、演奏音等のデータに基づいて、リスニングポジションを自由に変えられる音のデータ(オーディオデータ)も生成する。そのようなオーディオデータの例は、オブジェクトオーディオ、3Dオーディオ、6DoF(6自由度)オーディオ等のデータである。
 リージョナル領域R2には、クライアント装置1との間で伝送するデータを処理等する装置が配置される。リージョナル領域R2は、リージョナルデータセンター(DC)等とも呼べる。
 具体的に、図1に示される例では、リージョナル領域R2には、エッジサーバ装置2、データベース装置20-P、エッジサーバ装置2-P及びデータベース装置20-Pが配置される。エッジサーバ装置2は、クライアント装置1に対して設けられる。データベース装置20は、エッジサーバ装置2に対して設けられる。エッジサーバ装置2-Pは、クライアント装置1-Pに対して設けられる。データベース装置20-Pは、エッジサーバ装置2-Pに対して設けられる。
 1つのエッジサーバ装置2は、1又は2以上のクライアント装置1に対応し、従って、エッジサーバ装置2の数は、クライアント装置1の数よりも少なくてよい。図1に示される例では、1つのエッジサーバ装置2が、クライアント装置1-1~クライアント装置1-3に対応する。
 なお、同じエッジサーバ装置2(共通のエッジサーバ装置2)が対応するクライアント装置1のグループ、又はそれらのクライアント装置1を使用する視聴者Auのグループを、「視聴者グループ」(オーディエンスグループ)と称する。図1に示される例では、クライアント装置1-1~クライアント装置1-3又は視聴者Au-1~視聴者Au-3が、同じ視聴者グループに属する。
 エッジサーバ装置2及びエッジサーバ装置2-Pを含む複数のエッジサーバ装置の各々は、セントラルサーバ装置3と通信するとともに、互いに地理的に離れた位置に分散して配置される。なお、エッジサーバ装置2どうしの通信も可能であってよい。各エッジサーバ装置は、後述のセントラルサーバ装置3の3Dシーン生成装置31が生成した3Dシーン記述データに基づいて、対応するユーザへの配信データを生成する。配信データの一例は、仮想空間の映像及び音のデータ(映像データ、音データ)である。映像データは、レンダリング済みの映像データであってよい。
 エッジサーバ装置2は、モーションデータ生成装置21と、レンダリング装置22とを含む。エッジサーバ装置2に対応するデータベース装置20は、エッジサーバ装置2で用いられるデータを記憶する。データベース装置20に記憶されるデータとして、視聴者Auの3Dモデルデータ、3Dシーン記述データ、及びレンダリング済み映像・音データが例示される。
 データベース装置20中の視聴者Auの3Dモデルデータは、例えば予め生成されたり、準備された複数の3Dモデルから視聴者Auによって選択されたりした3Dモデルのデータである。視聴者Auの3Dモデルデータは、例えば後述のデータベース装置30に記憶されており、ライブ開始前に、その視聴者Auのクライアント装置1に対応するエッジサーバ装置2のデータベース装置20まで伝送され、記憶(格納)される。この3Dモデルデータは、視聴者Auの静的な3Dモデルのデータであり、後述のアニメーションデータに基づいて動かされる。視聴者Auの3Dモデルデータについて、図3も参照して説明する。
 図3は、視聴者Auの3Dモデルデータ(アバターデータ)の例を示す図である。例示される3Dモデルデータは、ジオメトリ(Mesh)データと表面の色を表すテクスチャデータで構成される。データ量としてはテクスチャデータが大半を占めるが、例えば5万ポリゴン、2K×2Kテクスチャの3Dモデルのデータサイズは13.54Mbytes程度になる。
 図1に戻り、データベース装置20中の3Dシーン記述データは、先にも述べたような、複数のユーザの3Dモデルを含みリアルタイムに変化する仮想空間のシーンを記述するデータである。3Dシーン記述データは、例えば、会場を構築する部品、ユーザ(視聴者Au、演者P)の3Dモデルの配置等の記述を含むデータである。3Dシーン記述データは、3Dシーンを構築するための設計図のようなデータともいえる。
 データベース装置20中のレンダリング済み映像・音データは、後述のレンダリング装置22、レンダリング装置22-Pによるレンダリングが行われた後の視聴者Auの3Dモデル、演者Pの3Dモデル等を含む仮想空間の映像のデータ、また、視聴者Auの音声、演者Pの音声、演奏音等を含む仮想空間の音のデータである。このようなデータをデータベース装置20に記録しておくことで、例えば音楽ライブが終了した後でも、視聴者Auは、音楽ライブの映像を観ることができる。データベース装置20に記憶されるレンダリング済み映像・音データは、視聴者Auの視点で観たときの映像のデータ及び視聴者Auの位置で聞こえる音のデータであってよい。
 モーションデータ生成装置21は、対応する視聴者Auのキャプチャデータに基づいて、その視聴者Auの3Dモデルのアニメーションデータ(モーションションデータとも呼べる)を生成する。アニメーションデータは、3Dモデルの関節の動き等を示すデータであり、静的(static)な3Dモデルデータを動的(dynamic)に動かすためにデータである。アニメーションデータについて、図4も参照して説明する。
 図4は、アニメーションデータの例を示す図である。3Dモデルの動きを100個の関節の位置・方向で表現したときのアニメーションデータのデータレートは、フレームレート=30fpsの場合、108kbpsになる。顔の表情も、関節の動きで表される。動きのある3Dモデルのデータそのものと比較して、データ量はかなり小さくなる。
 図1に戻り、アニメーションデータには、当該データの反映先を特定するデータ、例えば視聴者Auの3DモデルのUUID(Universally Unique Identifier)等が付与され得る。UUIDは、3Dシーン記述データでも用いられてよい。後述のレンダリング装置22では、例えばUUIDをキーとして、3Dシーン記述データが指定する視聴者Auの3Dモデルの位置が特定される。
 モーションデータ生成装置21は、視聴者Auの視野、視線等を示すデータ(視野・視線データ)も生成してよい。これにより、例えば後述のレンダリング装置22において、視聴者Auの視点で観たときの仮想空間の映像を生成することができる。とくに説明がある場合を除き、視線・視野データは、アニメーションデータに含まれるものとする。
 モーションデータ生成装置21は、視聴者Auの3Dモデルの音声データも生成する。音声データは、アニメーションデータに含まれてもよいし、アニメーションデータとは別のデータであってもよい。とくに説明がある場合を除き、音声データも、アニメーションデータに含まれるものとする。
 モーションデータ生成装置21は、生成したアニメーションデータを、セントラルサーバ装置3に送信する。伝送されるのは、3Dモデルの動きを表すアニメーションデータであり、データ量が多くなる動的な3Dモデルデータ列(例えば1秒間に30回更新されることで動きを表現する3Dモデルデータ)そのものは伝送されない。その分、データ伝送量が低減される。
 レンダリング装置22は、3Dシーン記述データと、視聴者Auの3Dモデルデータ及び演者Pの3Dモデルデータとに基づいて、仮想空間のレンダリング済みの映像データを生成する。ここで用いられる3Dモデルデータは、先に説明したように、メッシュデータ、テクスチャデータ、ポイントクラウドデータ等の第1の3Dモデルデータであってよい。映像データは、ライブ中に配信データとして生成され、対応するクライアント装置1に送信(視聴者Auに配信)される。
 具体的に、レンダリング装置22は、3Dシーン記述データに基づいて、視聴者Auの視点で観たときの仮想空間の映像データをレンダリングによって生成する。生成された映像データは、対応する視聴者Auのクライアント装置1のディスプレイ装置12に伝送され、そこで映像が表示される。なお、音データも例えばレンダリング装置22によって生成され、ディスプレイ装置12まで伝送され、そこで音が出力される。
 エッジサーバ装置2-Pは、レンダリング装置22-Pを含む。エッジサーバ装置2-Pに対応するデータベース装置20-Pは、エッジサーバ装置2-Pで用いられるデータを記憶する。データベース装置20-Pに記憶されるデータとして、演者Pの3Dモデルデータ、3Dシーン記述データ、及びレンダリング済み映像・音データが例示される。
 データベース装置20-P中の演者Pの3Dモデルデータは、演者Pの3Dモデルのデータであり、先に説明したように3Dモデル生成装置13によって生成される。3Dシーン記述データは先に説明したとおりである。
 データベース装置20-P中のレンダリング済み映像・音データは、レンダリング装置22、レンダリング装置22-Pによるレンダリングが行われた後の視聴者Auの3Dモデル、演者Pの3Dモデル等を含む仮想空間の映像のデータ、また、視聴者Auの音声、演者Pの音声、演奏音等を含む仮想空間の音のデータである。このようなデータをデータベース装置20ーPに記録しておくことで、例えば音楽ライブが終了した後でも、演者Pは、音楽ライブの映像を観ることができる。データベース装置20-Pに記憶されるレンダリング済み映像・音データは、演者Pが所望する任意の視点及び位置、例えば演者Pの視点及び位置又はそれとは別の視点及び位置から演者Pを観たときの映像のデータ及びその位置で聞こえる音のデータであってよい。
 レンダリング装置22-Pは、3Dシーン記述データと、視聴者Auの3Dモデルデータ及び演者Pの3Dモデルデータとに基づいて、仮想空間のレンダリング済みの映像データを生成する。ここで用いられる3Dモデルデータも、先に説明した第1の3Dモデルデータであってよい。映像データは、ライブ中に配信データとして生成され、クライアント装置1-Pに送信(演者Pに配信)される。
 具体的に、レンダリング装置22-Pは、3Dシーン記述データに基づいて、演者Pが所望する任意の視点で観たときの仮想空間の映像データをレンダリングによって生成する。生成された映像データは、クライアント装置1-Pに伝送され、そこで映像が表示される。なお、音データも、例えばレンダリング装置22-Pによって生成され、ディスプレイ装置12まで伝送され、そこで音が出力される。
 セントラル領域R3には、リージョナル領域R2、さらにはオンプレミス領域R1との間で伝送するデータを処理等する装置が配置される。セントラル領域R3は、セントラルデータセンター(DC)等とも呼べる。
 具体的に、図1に示される例では、セントラル領域R3には、セントラルサーバ装置3及びデータベース装置30が配置される。セントラルサーバ装置3は、エッジサーバ装置2に対して設けられる。
 セントラルサーバ装置3は、1つの(単一の)セントラルサーバ装置3であってもよいし、複数のセントラルサーバ装置3であってよい。1つのセントラルサーバ装置3は、1又は2以上のエッジサーバ装置2に対応し、従って、セントラルサーバ装置3の数は、エッジサーバ装置2の数よりも少なくてよい。図1に示される例では、セントラルサーバ装置3は、1つのセントラルサーバ装置3である。
 セントラルサーバ装置3は、3Dシーン生成装置31を含む。セントラルサーバ装置3に対応するデータベース装置30は、セントラルサーバ装置3で用いられるデータを記憶する。データベース装置30に記憶されるデータとして、部品データ、視聴者Auの3Dモデルデータ、及び3Dシーン記述データが例示される。
 データベース装置30中の部品データは、ライブ会場を含む仮想空間を構成する部品のデータである。部品の例は、ステージ、観客席、照明等である。
 データベース装置30中の視聴者Auの3Dモデルデータ及び3Dシーン記述データについては、これまで説明したとおりである。
 3Dシーン生成装置31は、3Dシーン記述データを生成するために、3Dシーン生成装置31は、ライブ会場を含む仮想空間を構築する。例えば、データベース装置30内の部品データ、エッジサーバ装置2のモーションデータ生成装置21からのアニメーションデータ、クライアント装置1-Pの3Dモデル生成装置13からの演者Pの3Dモデルデータ等に基づいて、リアルタイムに変化する仮想空間が構築される。ここで用いられる3Dモデルデータは、先に説明したように、第2の3Dモデルデータ(バウンディングボックスデータ)であってよい。
 例えば、部品データに基づいて、仮想空間内に各種の部品が配置され、それによって、仮想空間における映像効果(視覚的なエフェクト)等が提供される。また、演者Pの3Dモデル及び視聴者Auの3Dモデルが、仮想空間内のライブ会場に配置される。アニメーションデータ、第2の3Dもモデルデータ(バウンディングボックスデータ)等に基づいて、それらの位置、動き等がリアルタイムに変化する。そのシーンを記述するデータが、3Dシーン記述データとして生成される。
 先にも述べたように、データ配信システム100を構成するは、互いに通信可能に構成される。図1に模式的に示されるように、通信は、ネットワークNを介して行われる。ネットワークNで接続された装置どうしの接続及びデータ伝送について、図5も参照して説明する。
 図5は、装置どうしの接続及びデータ伝送の例を示す図である。これまで説明した装置間のいくつかのデータ伝送が、矢印AR1~矢印AR14で示される。
 矢印AR1は、キャプチャ装置11からモーションデータ生成装置21へのデータ伝送を示す。例えば、キャプチャ装置11で取得された視聴者Auのキャプチャデータが伝送される。
 矢印AR2は、モーションデータ生成装置21から3Dシーン生成装置31へのデータ伝送を示す。例えば、視聴者Auの3Dモデルのアニメーションデータ、音声データが伝送される。
 矢印AR3は、モーションデータ生成装置21とレンダリング装置22との間のデータ伝送を示す。例えば、視聴者Auの3Dモデルのアニメーションデータが伝送される。
 矢印AR4は、3Dシーン生成装置31からレンダリング装置22ーPへのデータ伝送を示す。例えば、3Dシーン記述データが伝送される。
 矢印AR5は、3Dシーン生成装置31からレンダリング装置22へのデータ伝送を示す。例えば、3Dシーン記述データが伝送される。
 矢印AR6は、3Dシーン生成装置31とデータベース装置30との間のデータ伝送を示す。例えば、部品データ、視聴者Auの3Dモデルデータ、3Dシーン記述データが伝送される。
 矢印AR7は、レンダリング装置22とデータベース装置20との間のデータ伝送を示す。例えば、視聴者Auの3Dモデルデータ、3Dシーン記述データ、レンダリング済み映像・音データが伝送される。
 矢印AR8は、レンダリング装置22からディスプレイ装置12へのデータ伝送を示す。例えば、レンダリング済み映像・音データが伝送される。
 矢印AR9は、キャプチャ装置11-Pから3Dモデル生成装置13へのデータ伝送を示す。例えば、演者Pのキャプチャデータが伝送される。
 矢印AR10は、3Dモデル生成装置13からレンダリング装置22へのデータ伝送を示す。例えば、演者Pの3Dモデルのデータのうちの第1の3Dモデルデータ(ポイントクラウドデータ、メッシュ・テクスチャデー等)が伝送される。
 矢印AR11は、3Dモデル生成装置13から3Dシーン生成装置31へのデータ伝送を示す。例えば、演者Pの3Dモデルのデータのうちの第2の3Dモデルデータ(バウンディングボックスデータ)、音声データ等が伝送される。
 矢印AR12は、3Dモデル生成装置13からレンダリング装置22-Pへのデータ送信を示す。例えば、演者Pの3Dモデルのデータのうち、第1の3Dモデルデータ(ポイントクラウドデータ、メッシュ・テクスチャデータ等)が伝送される。
 矢印AR13は、レンダリング装置22-Pと、データベース装置20-Pとの間のデータ伝送を示す。例えば、演者Pの3Dモデルデータ、3Dシーン記述データ、レンダリング済み映像・音データが伝送される。
 矢印AR14は、レンダリング装置22-Pからディスプレイ装置12-Pへのデータ伝送を示す。例えば、レンダリング済み映像・音データが伝送される。
 例えば上記のようなデータ伝送を行うことで、データ配信システム100を構成する各装置(構成要素)を、ネットワークN上に分散配置して用いることができる。各装置は、ネットワークN上で利用可能なネットワークリソースとも呼べる。
 上記のように各装置を接続し、また、データ伝送を行うことで、データ処理負荷を分散するとともに、データ伝送も分散することができる。これにより、冒頭で述べたような遅延を低減することができる。一実施形態において、ネットワークNは、全光ネットワークであってよく、ネットワークNを用いた装置間の通信は全光通信であってよい。遅延低減効果がさらに高められる。結果として、多くのユーザへのデータ配信、この例では大規模な自由視点リアルタイム音楽ライブ配信を提供することができる。図6も参照して説明する。
 図6は、ネットワークリソースの分担の例を示す図である。基本となるネットワーク構成はサーバ・クライアントモデルであり、例示されるネットワーク構成は、階層構造を有する。セントラル領域R3に配置された1つのセントラルサーバ装置3に、リージョナル領域R2に配置された複数のエッジサーバ装置2が接続される。また、各エッジサーバ装置2に、オンプレミス領域R1に配置された1又は複数のクライアント装置1が接続される。
 図6には、装置間の物理的な距離の例も示される。この例では、クライアント装置1とエッジサーバ装置2との間の距離は、数百m~数十kmである。エッジサーバ装置2とセントラルサーバ装置3との間の距離は、数十km~数百kmである。
 先にも述べたように、セントラルサーバ装置3は、1つのセントラルサーバ装置3であってもよいし、複数のセントラルサーバ装置3であってもよい。1つのセントラルサーバ装置3だけでカバーする配信対象地域が広くなるにつれて、ネットワークN上の遅延が顕在化し得る。この問題は、例えば、互いにネットワークNを介して通信可能な複数のセントラルサーバ装置3を用いることで対処できる。1つのセントラルサーバ装置3がカバーする配信対象地域が広くなりすぎるのを防ぐことができるからである。これにより、例えば遅延に起因するユーザ体験の低下を抑制することができる。図7も参照して説明する。
 図7は、セントラルサーバ装置3の配置の例を示す図である。データ配信システム100がデータ配信可能な範囲が、セントラルサーバ装置3を内側に含むサークルで模式的に示される。図7の(A)に示される例では、1つのセントラルサーバ装置3だけで、すべての配信対象地域がカバーされる。これに対し、図7の(B)に示される例では、1つのセントラルサーバ装置3だけですべての配信対象地域をカバーすることができず、従って、異なる位置に配置され互いに通信可能な2つのセントラルサーバ装置3を用いて、すべての配信対象地域がカバーされる。
 なお、複数のセントラルサーバ装置3を用いる場合には、セントラルサーバ装置3間の通信オーバーヘッド、サーバ利用コスト等が必要にはなる。1つのセントラルサーバ装置3だけを用いる場合には、その必要性は無い。
 図6に戻り、セントラルサーバ装置3とクライアント装置1との間に、エッジサーバ装置2が介在する。エッジサーバ装置2は、セントラルサーバ装置3がカバーする配信対象の地域をさらに分割し、細分化した地域ごとに1つのエッジサーバ装置2が担当するように配置される。
 エッジサーバ装置2の地理的位置のいくつかの決定手法(設計手法)について述べる。例えば、エッジサーバ装置2どうしの間の距離がほぼ等距離になるように、エッジサーバ装置2を配置してよい。設計が容易であるといったメリットがある。クライアント装置1の密度に応じてエッジサーバ装置2の配置を変えてもよい。エッジサーバ装置2の負荷を平準化させることができる。図8も参照して説明する。
 図8は、エッジサーバ装置2の地理的配置の例を示す図である。エッジサーバ装置2は、クライアント装置1の密度に応じて配置される。例えば、各エッジサーバ装置2が対応するクライアント装置1の数が同じか又は近づくように、各エッジサーバ装置2が配置される。
 図6に戻り、エッジサーバ装置2どうしは、セントラルサーバ装置3を介して通信してもよいし、セントラルサーバ装置3を介さずに直接通信してもよい。例えば、互いに近くに配置されたエッジサーバ装置2どうしは、直接通信してよい。互いに離れて配置されたエッジサーバ装置2どうしは、セントラルサーバ装置3を介して通信してよい。
 クライアント装置1は、基本的には物理的に最も近い距離に位置するエッジサーバ装置2との間でデータ伝送する。これにより、クライアント装置1とエッジサーバ装置2との間のデータ伝送に起因する遅延が最小化される。
 図6に示されるようなネットワークリソースに、データ配信システム100の構成要素が対応付けられる(マッピングされる)。図9も参照して説明する。
 図9は、マッピングの例を示す図である。データ配信システム100の構成要素、構成要素の数、及びネットワークリソースへの対応付けの関係が表で示される。
 データ配信システム100の構成要素として、これまで説明したキャプチャ装置11、キャプチャ装置11-P、ディスプレイ装置12、ディスプレイ装置12-P、モーションデータ生成装置21、レンダリング装置22、データベース装置20、3Dモデル生成装置13、3Dシーン生成装置31、データベース装置30、レンダリング装置22-P及びデータベース装置20-P示される。
 キャプチャ装置11及びキャプチャ装置11-Pの数は、視聴者Auの数及び演者Pの数と同じである。これらの構成要素は、クライアント装置1及びクライアント装置1-Pに配置され、ネットワークリソースに対応付けられる。
 モーションデータ生成装置21、レンダリング装置22及びデータベース装置20の数は、視聴者グループの数と同じであり、これらの構成要素は、エッジサーバ装置2とその付近に配置され、ネットワークリソースに対応付けられる。
 3Dモデル生成装置13の数は、演者Pの数と同じであり、この構成要素は、クライアント装置1-Pに配置され、ネットワークリソースに対応付けられる。
 3Dシーン生成装置31及びデータベース装置30の数は、1又は複数であり、これらの構成要素は、セントラルサーバ装置3とその付近に配置され、ネットワークリソースに対応付けられる。
 レンダリング装置22-P及びデータベース装置20-Pの数は、演者Pの数と同じであり、これらの構成要素は、エッジサーバ装置2-Pとその付近に配置され、ネットワークリソースに対応付けられる。
 視聴者グループについて改めて述べる。視聴者グループは、同じエッジサーバ装置2が対応する一群のクライアント装置1又はそれらを使用する一群の視聴者Auを指し示す。同じ視聴者グループに属するクライアント装置1又は視聴者Auは、例えば、同じエッジサーバ装置2から物理的に近くに位置している。図10及び図11も参照して説明する。
 図10及び図11は、視聴者グループの例を示す図である。複数の視聴者グループそれぞれが、サークルで模式的に示される。同じ視聴者グループに属するクライアント装置1又は視聴者Auの地理的規模は、例えば、エッジサーバ装置2を中心として、数km~百km程度であってよい。日本の場合で述べると、あくまで一例に過ぎないが、都道府県ごとに、エッジサーバ装置2が配置され、対応する視聴者グループが存在してよい。
 或る視聴者グループに属する一群のクライアント装置1は、物理的に近い距離に位置しているため、それらを使用する視聴者Auどうしの会話や体の動き等によって、同じ仮想空間内でインタラクションが行われた場合に、応答遅延が小さくなるという特徴がある。このような特徴を生かす観点から、一実施形態において、原則として1つの視聴者グループに対して1つのライブ会場を提供するように、仮想空間が構築されてよい。セントラルサーバ装置3の3Dシーン生成装置31は、各ライブ会場の3Dシーンを生成してよい。
 ネットワークNが全光ネットワークであれば、遅延の変動が無く、視聴者グループの地理的規模から最大遅延時間を見積もることができるため、同じライブ会場に集まる視聴者Auの3Dモデルどうしの自然なインタラクションを保証することができる。人間が応答遅延を知覚できる最小時間を例えば50ms(ミリ秒)とすると、最大遅延時間が50msに収まるように視聴者グループの範囲を決めれば、その視聴者グループに属する視聴者Auの3Dモデルに対し、遅延を知覚しない自然なインタラクションを提供できることになる。このような考え方で音楽ライブの配信地域を視聴者グループに分割すれば、すべての視聴者Auの3Dモデルに対して、自然なインタラクションを提供することも可能である。
 ところで、互いに異なる視聴者グループに属する視聴者Auの3Dモデルどうしでは、同じ視聴者グループに属する視聴者Auの3Dモデルどうしほどの自然なインタラクションの提供の保証は難しくなる可能性がある。その場合、例えば仮想空間内の音楽ライブ会場に巨大な映像パネルを設置する等して、そこに他の視聴者グループの音楽会場の様子を表示し、それぞれの音楽会場にいる視聴者Auの3Dモデルどうしのインタラクションを実現してもよい。図12を参照して説明する。
 図12は、異なる視聴者グループに属する視聴者Auの3Dモデルどうしのインタラクションの例を示す図である。例えば図12に示されるような仮想空間の映像が、或る視聴者グループに属する視聴者Auが使用するクライアント装置1のディスプレイ装置12によって表示される。画面の両側には、それぞれ、別の視聴者グループのライブ会場の映像が表示される。なお、視聴者グループどうしの間の物理的な距離が近いほど、それらの視聴者グループに属する視聴者Auの3Dモデルどうしのインタラクションにおける遅延は小さくなる。
 図13~図22は、データ配信システム100の動作(データ配信方法、データ処理方法)の例を示す図である。配信前から配信中(ライブ開始前からライブ中)のデータ配信システム100の動作を、いくつかの段階に分けて説明する。
<配信前>
<配信準備>
 図13及び図14に、配信準備段階でのデータ配信システム100の動作の例を示す図である。図13には、データ配信システム100において実行されるいくつかの処理が示される。図14には、データ配信システム100におけるいくつかのデータ伝送が太矢印で示される。
 ステップS1において、視聴者Auの3Dモデルデータが生成され、又は、3Dモデルが選択される。視聴者Auの3Dモデルデータの生成は、例えばその視聴者Auのクライアント装置1のキャプチャ装置11によって取得された視聴者Auのキャプチャデータに基づいて行われる。生成はエッジサーバ装置2で行われてもよいしセントラルサーバ装置3で行われてもよい。3Dモデルの選択は、先にも述べたように、予め準備されたいくつかの3Dモデルから視聴者Auが自身の3Dモデルを選択することによって行われる。選択は、例えば、先に述べたコントローラ(キャプチャ装置11の一例)、ディスプレイ装置12等を用いて行われてよい。
 ステップS2において、視聴者Auの3Dモデルデータがアップロードされ、又は、3Dモデルの選択が決定される。先のステップS1で視聴者Auの3Dモデルが生成された場合は、そのデータが、データベース装置30及びデータベース装置20まで伝送される。なお、視聴者Auの3Dモデルデータは、その視聴者Auのクライアント装置1に対応するエッジサーバ装置2に対応するデータベース装置20に伝送される。先のステップS1で3Dモデルが選択された場合は、選択された3Dモデルのデータが、その視聴者Auの3Dモデルのデータとして決定される。決定された視聴者Auの3Dモデルデータは、データベース装置30及びデータベース装置20まで伝送される。なお、すでに視聴者Auの3Dモデルデータがデータベース装置30又はデータベース装置20に記憶されている場合には、そこへのデータ伝送は不要である。
 ステップS3において、視聴者Auの3Dモデルデータがデータベース装置30及びデータベース装置20に記憶される。先のステップS2で伝送された3Dモデルデータを、伝送先のデータベース装置が記憶する。
 例えば以上のようにして、配信準備の段階で、視聴者Auの3Dモデルデータが、データベース装置30及びデータベース装置20まで伝送され、記憶される。視聴者Auの3Dモデルはデータ量が多いので、配信前にデータベース装置30及びデータベース装置20に伝送することで、伝送速度等の制約を受けることなく(非リアルタイムで)データ伝送できるメリットがある。
<配信直前準備>
 図15及び図16は、配信直前準備段階でのデータ配信システム100の動作の例を示す図である。図15には、データ配信システム100において実行されるいくつかの処理が示される。図16には、データ配信システム100におけるいくつかのデータ伝送が太矢印で示される。
 ステップS11において、視聴者Auの3Dモデルデータが、モーションデータ生成装置21にロードされる。例えば、図16の(A)に示されるように、データベース装置20内の視聴者Auの3Dモデルデータが、モーションデータ生成装置21まで伝送される。或いは、図16の(B)に示されるように、データベース装置30内の視聴者Auの3Dモデルデータが、モーションデータ生成装置21まで伝送される。
 例えば以上のようにして、配信直前の準備の段階で、視聴者Auの3Dモデルデータが、モーションデータ生成装置21まで伝送され、モーションデータ生成装置21においてすぐに利用可能な状態になる。その後、配信が開始する。
<配信中>
 図17~図22は、配信中のデータ配信システム100の動作の例を示す図である。
<キャプチャ>
 図17及び図18は、視聴者Au及び演者Pの情報の取得(キャプチャ)に関するデータ配信システム100の動作の例を示す図である。図17には、データ配信システム100において実行されるいくつかの処理が示される。図18には、データ配信システム100におけるいくつかのデータ伝送が太矢印で示される。
 ステップS21において、視聴者Auのキャプチャデータがモーションデータ生成装置21に伝送される。キャプチャ装置11は、視聴者Auのキャプチャデータを取得し、モーションデータ生成装置21に送信する。モーションデータ生成装置21は、キャプチャ装置11からのキャプチャデータを受信する。
 ステップS22において、視聴者Auの3Dモデルのアニメーションデータが生成される。モーションデータ生成装置21は、先のステップS1で受信した視聴者Auのキャプチャデータと、データベース装置20からロードした視聴者Auの3Dモデルデータとに基づいて、視聴者Auの3Dモデルのアニメーションデータを生成する。
 ステップS23において、アニメーションデータが3Dシーン生成装置31に伝送される。モーションデータ生成装置21は、先のステップS22で生成したアニメーションデータを、3Dシーン生成装置31に送信する。3Dシーン生成装置31は、モーションデータ生成装置21からのアニメーションデータを受信する。
 ステップS24において、演者Pのキャプチャデータが3Dモデル生成装置13に伝送される。キャプチャ装置11-Pは、演者Pのキャプチャデータを取得し、3Dモデル生成装置13に送信する。3Dモデル生成装置13は、キャプチャ装置11-Pからのキャプチャデータを受信する。
 ステップS25において、演者Pの第2の3Dモデルデータ、例えばバウンディングボックスデータが生成される。3Dモデル生成装置13は、先のステップS24で受信した演者Pのキャプチャデータに基づいて、演者Pの第2の3Dモデルデータを生成する。
 ステップS26において、第2の3Dモデルデータが3Dシーン生成装置31に伝送される。3Dモデル生成装置13は、先のステップS25で生成した演者Pの第2の3Dモデルデータを、3Dシーン生成装置31に送信する。3Dシーン生成装置31は、3Dモデル生成装置13からの第2の3Dモデルデータを受信する。
 例えば上記のようにして、配信中の視聴者Au及び演者Pのキャプチャデータが取得され、アニメーションデータ及び第2の3Dモデルデータが3Dシーン生成装置31まで伝送される。
 なお、上記のステップS21~ステップS23の処理と、ステップS24~ステップS26の処理とは、逆の順序で実行されてもよいし、並列に実行されてもよい。
<配信データの生成>
<視聴者Auへの配信データの生成>
 図19及び図20は、視聴者Auへの配信映像の生成に関するデータ配信システム100の動作の例を示す。図19には、データ配信システム100において実行されるいくつかの処理が示される。図20には、データ配信システム100におけるいくつかのデータ伝送が太矢印で示される。
 ステップS31において、3Dシーン記述データが生成され、レンダリング装置22に伝送される。3Dシーン生成装置31は、視聴者Auの3Dモデルのアニメーションデータと、演者Pの第2の3Dモデルデータ(バウンディングボックスデータ)とに基づいて、3Dシーンを構築する。例えば、3Dシーン生成装置31は、データベース装置30内の部品データに基づいてライブ会場を含む仮想空間を構築し、データベース装置30内の視聴者Auの3Dモデルデータに基づいて、視聴者Auの3Dモデルを仮想空間内に配置する。また、3Dシーン生成装置31は、演者Pの第2の3Dモデルデータに基づいて、演者Pの仮想空間内の位置を決定する(例えばステージ上に配置する)。3Dシーン生成装置31は、このようにして得られた3Dシーンを記述するデータを、3Dシーン記述データとして生成し、レンダリング装置22に送信する。レンダリング装置22は、3Dシーン生成装置31からの3Dシーン記述データを受信する。
 ステップS32において、視聴者Auの最新のアニメーションデータがレンダリング装置22に伝送される。最新のアニメーションデータは、視聴者Auの最新のキャプチャデータを反映する(視聴者Auの動作をリアルタイムに反映する)データともいえる。モーションデータ生成装置21は、例えば、視聴者Auの最新のアニメーションデータ(視野・視線データも含む)を生成し、レンダリング装置22に送信する。レンダリング装置22は、モーションデータ生成装置21からの視聴者Auの最新のアニメーションデータを受信する。
 ステップS33において、演者Pの最新の第1の3Dモデルデータ(ポイントクラウドデータ等)がレンダリング装置22に伝送される。最新の第1の3Dモデルデータは、演者Pの最新のキャプチャデータを反映する(演者Pの動作をリアルタイムに反映する)データともいえる。3Dモデル生成装置13は、演者Pの最新の第1の3Dモデルデータを生成し、レンダリング装置22に送信する。レンダリング装置22は、3Dモデル生成装置13からの演者Pの最新の第1の3Dモデルデータを受信する。
 ステップS34において、レンダリング済み映像・音データが生成される。レンダリング装置22は、3Dシーン記述データ、視聴者Auの3Dモデルデータ、アニメーションデータ、演者Pの第1の3Dモデルデータ及びキャプチャデータ等に基づいて、レンダリング済み映像・音データを生成する。このデータは、視聴者Auへの配信データである。
 ステップS35において、レンダリング済み映像・音データがディスプレイ装置12に伝送される。レンダリング装置22は、先のステップS34で生成したレンダリング済み映像・音データを、ディスプレイ装置12に送信する。ディスプレイ装置12は、レンダリング装置22からのレンダリング済み映像・音データを受信し、出力(映像表示及び音出力)する。
 ステップS36において、レンダリング済み映像・音データがデータベース装置20に伝送される。レンダリング装置22は、先のステップS34で生成したレンダリング済み映像・音データをデータベース装置20に送信する。データベース装置20は、レンダリング装置22からのレンダリング済み映像・音データを受信し、記憶する。
 例えば上記のようにして、映像・音データを含む配信データが視聴者Auに配信される。
<演者Pへの配信データの生成>
 図21及び図22は、演者Pへの配信映像の生成に関するデータ配信システム100の動作の例を示す。図21には、データ配信システム100において実行されるいくつかの処理が示される。図22には、データ配信システム100におけるいくつかのデータ伝送が太矢印で示される。
 ステップS41において、3Dシーン記述データが生成され、レンダリング装置22-Pに伝送される。3Dシーン生成装置31は、これまで説明したように3Dシーン記述データを生成し、レンダリング装置22-Pに送信する。レンダリング装置22-Pは、3Dシーン生成装置31からの3Dシーン記述データを受信する。
 ステップS42において、演者Pの最新の第2の3Dモデルデータ(バウンディングボックスデータ)がレンダリング装置22-Pに伝送される。最新の第2の3Dモデルデータは、演者Pの最新のキャプチャデータを反映する(演者Pの動作をリアルタイムに反映する)データともいえる。3Dモデル生成装置13は、演者Pの最新の第2の3Dモデルデータを生成し、レンダリング装置22ーPに送信する。レンダリング装置22ーPは、3Dモデル生成装置13からの演者Pの最新の第2の3Dモデルデータを受信する。
 ステップS43において、レンダリング済み映像・音データが生成される。レンダリング装置22-Pは、例えば、視聴者Auの3Dモデルデータ、アニメーションデータ、演者Pの第2の3Dモデルデータ等に基づいて、レンダリング済み映像・音データを生成する。このデータは、演者Pへの配信データである。
 ステップS44において、レンダリング済み映像・音データがディスプレイ装置12-Pに伝送される。レンダリング装置22-Pは、先のステップS43で生成したレンダリング済み映像・音データを、ディスプレイ装置12-Pに送信する。ディスプレイ装置12-Pは、レンダリング装置22-Pからのレンダリング済み映像・音データを受信し、出力(映像表示及び音出力)する。
 ステップS45において、レンダリング済み映像・音データがデータベース装置20-Pに伝送される。レンダリング装置22-Pは、先のステップS43で生成したレンダリング済み映像・音データを、データベース装置20-Pに送信する。データベース装置20-Pは、レンダリング装置22-Pからのレンダリング済み映像・音データを受信し、記憶する。
 例えば上記のようにして、映像・音データを含む配信データが演者Pに配信される。
 以上で説明したデータ配信システム100によれば、分散配置された複数のエッジサーバ装置2、2-Pの各々が対応する視聴者Au、演者Pへの配信データを生成するので、処理負荷が分散される。また、例えば、クライアント装置1-Pからセントラルサーバ装置3へは、演者Pの3Dモデルデータのうちの第2の3Dモデルデータ(バウンディングボックスデータ)が伝送される。エッジサーバ装置2からセントラルサーバ装置3へは、視聴者Auの3Dモデルのアニメーションデータが伝送される。セントラルサーバ装置3からエッジサーバ装置2及びエッジサーバ装置2-Pへは、3Dシーン記述データが伝送される。このような形式のデータを伝送することで、セントラルサーバ装置3におけるデータ伝送量を減らすことができる。従って、処理負荷の集中やデータ伝送量の増加に起因して生じうる遅延、例えばmotion-to-photon latency、仮想空間におけるユーザの3Dモデルどうしのインタラクションの遅延等を抑制することができる。比較例及び検討例も用いて説明する。
<比較例>
 図23及び図24は、比較例を示す図である。図24に示される比較例1は、典型的なサーバ・クライアント構成である。3Dシーン生成装置・レンダリング装置が、サーバに相当する。この比較例1の構成では、入力データ及び出力データがサーバに集中するという問題がある。サーバにおいて、ユーザ(視聴者Au及び演者P)の3Dモデルデータ(例えば先に述べた第1の3Dモデルデータに相当)が入力され、また、ユーザごとに異なるレンダリング映像が生成され、対応するユーザに配信される。例えばユーザ一人当たりの入力データレートが100Mbpsの場合、ユーザが100万人になると、合計の入力データレートは100T(テラ)bpsにもなる。
 図24に示される比較例2では、比較例1よりは、データ及び処理負荷の集中が緩和される。比較例2では、ユーザ(視聴者Au及び演者P)の3Dモデルデータを受信する3Dシーン生成装置と、ユーザに配信する映像を生成するレンダリング装置とが分離されている。レンダリング済みの映像がレンダリング装置から出力されるので、ユーザからの入力データと、それらへの出力データとが一つの装置に集中することは無い。しかしながら、3Dシーン生成装置に全ユーザの3Dモデルデータが集中する点は変わらず、課題が残る(課題(a))。また、3Dシーン生成装置からレンダリング装置へは、3Dシーンを構成するすべてのデータが伝送されるので、3Dシーン生成装置とレンダリング装置との間のデータ伝送レートが非常に高いという課題も残る(課題(b))。
<検討例>
 図25は、検討例を示す図である。上述の課題(a)、すなわち3Dシーン生成装置にデータが集中する問題が対処される。検討例では、3Dモデルデータをレンダリング装置に直接送る経路が設けられる。ユーザ(視聴者Au及び演者P)は、3Dシーン生成装置及びレンダリング装置の両方に3Dモデルデータを伝送することになるが、そのデータ内容を変える工夫をする。配信が開始されると、演者Pから3Dシーン生成装置へは、第2の3Dモデルデータ(バウンディングボックスデータ)が伝送される。一方、視聴者Auから3Dシーン生成装置へは、視聴者Auの3Dモデルを動かすためのアニメーションデータが伝送される。このように3Dモデルのデータをそのまま3Dシーン生成装置へ伝送しないようにすることで、3Dシーン生成装置への入力データレートが低減される。3Dシーン生成装置は基本的にはシステム内に1つ、または2~3個程度の少数を想定する。各レンダリング装置に対しては、3Dモデルデータを記憶するためのデータベース装置が設けられる。
 上述の課題(b)に対しては、レンダリング装置をシステム内に複数存在させ、各レンダリング装置でのレンダリングに必要な3Dシーン記述データに基づいて、レンダリング処理が行われる。全ユーザの3Dモデルを含む3Dシーンデータの伝送は不要である。例えば先の実施形態で説明したように、配信対象地域を分割し、それぞれの地域に対してレンダリング装置を分散配置する。レンダリング装置は、その近辺に居住する視聴者Auとの間でデータ伝送を行う。或いはその地域にある、キャプチャ装置・3Dモデル生成装置を備えるカラオケボックス、ライブスペース等の施設から参加する視聴者Auとデータ送受信を行う。レンダリング装置と視聴者Auは物理的に近い距離に位置する分、motion-to-photon latencyが低減される。また、同一のレンダリング装置に対応する視聴者グループ内では、視聴者Auの3Dモデルどうしのインタラクションにおける応答遅延が小さくなる。
 上記の検討例の構成をベースとして、さらに視聴者Auの3Dモデル生成装置をキャプチャ装置から分離してモーションデータ生成装置とし、演者Pの3Dモデル生成装置をキャプチャ装置から分離して3Dモデル生成装置とした構成が、先に説明した実施形態に係るデータ配信システム100になる。なお、図25の検討例の構成も、実施形態の1つであってよい。
2.変形例
 開示される技術は、上記の実施形態に限定されない。いくつかの変形例について説明する。
 ネットワークリソースに関して、エッジサーバ装置2の機能が分けて(分解されて)配置されてもよい。なお、ここでのエッジサーバ装置2は、対応するデータベース装置20も含めた構成であってよい。図26を参照して説明する。
 図26は、ネットワークリソースの例を示す図である。図26の(A)には、これまで説明した実施形態におけるネットワークリソースが示される。視聴者Au又は演者Pが使用する複数のクライアント装置1と、各々が1又は2以上のクライアント装置1に対応する複数のエッジサーバ装置2と、複数のエッジサーバ装置2に対応する1又は2以上のセントラルサーバ装置3とが、物理的に離れた位置に配置される。なお、装置間の距離も例示される。
 エッジサーバ装置2は、フロントサーバとしての機能と、MEC(計算資源)としての機能の両方の機能を有するともいえる。一実施形態において、それらの機能が分けて(分解されて)配置されてよい。そのような変形例が、図26の(B)に示される。
 図26の(B)に示される変形例では、各エッジサーバ装置2は、MEC2aと、フロント部2bと含むとともにそれらを分解できるように構成され、それらが分けて配置される。MEC2aは、これまで説明したモーションデータ生成装置21、レンダリング装置22及びデータベース装置20等による各種の処理に必要な計算資源(計算リソース)である。MEC2aは、フロントサーバとして機能し、例えば、対応するクライアント装置1との間でデータ伝送したり、対応するユーザに(そのクライアント装置1に)にMEC2aを割り当てたりする。この割り当てを、MEC2aの負荷状況等に応じてダイナミックに行うことで、フロント部2bは、ロードバランサとしての役割を担い得る。
 上記のようなエッジサーバ装置2は、これまでエッジサーバ装置2が担っていたリソース割り当て機能を、フロント部2bとして独立させた構成ともいえる。これにより、MEC2aの地理的配置の自由度が高まる。図27も参照して説明する。
 図27は、変形例のネットワーク構成の例を示す図である。クライアント装置1(図27中の「視聴者」に相当)は、最も近いフロント部2b(フロントサーバ)に接続される。フロント部2bは、距離が近い周辺の複数のMEC2aと接続される。各MEC2aは、セントラルサーバ装置3セントラルサーバと接続され、さらに、周辺のMEC2aと接続される。
 フロント部2bとMEC2aは同一拠点に配置されてもよいし、例えば数~数十km程度離れて配置されてもよい。フロント部2bどうしの間にMEC2aが配置されてもよい。MEC2aの距離は、例えば数km~数十km程度であってよい。
 MEC2aは、複数の物理的な計算資源、例えばCPU、GPU等のプロセッサを含んで構成されてよい。或いは、MEC2aは、仮想的な計算資源、例えば仮想化された複数の計算資源・インスタンス(GPUリソースを含む)等によって実現されてもよい。
 各クライアント装置1には、専用の計算資源(物理or仮想)が1:1で割り当てられる。仮想化により、クライアント装置1からは1つの計算資源が割り当てられているように見える。
 フロント部2bによるMEC2aの割り当ては、他のエッジサーバ装置2のMEC2aを割り当てることを含んでよい。例えば、視聴者Auのクライアント装置1から物理的距離が最も近いエッジサーバ装置2のフロント部2bは、基本的に、そのエッジサーバ装置2のMEC2aをその視聴者Auに割り当てる。ただし、そのMEC2aに割り当て可能な計算資源が残っていない場合、フロント部2bは、次に地理的距離が近い(エッジサーバ装置2の)MEC2aをその視聴者Auに割り当てる。地理的距離を優先順位として探索することで、生じ得る通信遅延を最小化することができる。
 なお、実際に視聴者Auに対して割り当てられたMEC2aに対応するデータベース装置20には、例えば先に説明したように、対応する視聴者Auの3Dモデルデータ等が配信前に伝送され記憶される。
 クライアント装置1に割り当てられた仮想計算資源が、どのくらいのハードウェアで構成されているかは、クライアント装置1(すなわち視聴者Au又は演者P)は意識しない。一般には、1つのCPU、1つのGPUが複数のクライアント装置1に計算資源を提供するが、その逆、すなわち複数のCPU、複数のGPUが1つのクライアント装置1に計算資源を提供してもよい。
 仮想計算資源へのハードウェアの割り当ては、ユースケースごとの処理負荷見積で決まる。時間経過により動的にハードウェア割り当てを変更するケースもあり得る。
3.ハードウェア構成の例
 図28は、装置のハードウェア構成の例を示す図である。これまで説明したデータ配信システム100に含まれる各装置(データ処理装置等)、具体的にはクライアント装置1、エッジサーバ装置2、セントラルサーバ装置3さらにはそれらに含まれる各装置は、例えばコンピュータ1000を含んで構成され得る。
 コンピュータ1000は、CPU1100、RAM1200、ROM(Read Only Memory)1300、HDD(Hard Disk Drive)1400、通信インタフェース1500、及び入出力インタフェース1600を有する。コンピュータ1000の各部は、バス1050によって接続される。
 CPU1100は、ROM1300又はHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。例えば、CPU1100は、ROM1300又はHDD1400に格納されたプログラムをRAM1200に展開し、各種プログラムに対応した処理を実行する。
 ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるBIOS(Basic Input Output System)等のブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
 HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を非一時的に記録する、コンピュータが読み取り可能な記録媒体である。具体的には、HDD1400は、プログラムデータ1450の一例である本開示に係る各動作を実行するためのプログラムを記録する記録媒体である。
 通信インタフェース1500は、コンピュータ1000が外部ネットワーク1550(例えばインターネット)と接続するためのインタフェースである。例えば、CPU1100は、通信インタフェース1500を介して、他の機器からデータを受信したり、CPU1100が生成したデータを他の機器へ送信したりする。
 入出力インタフェース1600は、上述したI/F部18を含む構成であり、入出力デバイス1650とコンピュータ1000とを接続するためのインタフェースである。例えば、CPU1100は、入出力インタフェース1600を介して、キーボードやマウス等の入力デバイスからデータを受信する。また、CPU1100は、入出力インタフェース1600を介して、ディスプレイやスピーカやプリンタ等の出力デバイスにデータを送信する。また、入出力インタフェース1600は、所定の記録媒体(メディア)に記録されたプログラム等を読み取るメディアインタフェースとして機能してもよい。メディアとは、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、又は半導体メモリ等である。
 例えば、コンピュータ1000が、クライアント装置1、エッジサーバ装置2又はセントラルサーバ装置3として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、クライアント装置1、エッジサーバ装置2又はセントラルサーバ装置3の機能を実現する。また、HDD1400には、プログラム等が格納される。なお、CPU1100は、プログラムデータ1450をHDD1400から読み取って実行するが、他の例として、外部ネットワーク1550を介して、他の装置からこれらのプログラムを取得してもよい。
4.まとめ
 以上で説明した技術は、例えば次のように特定される。開示される技術の1つは、データ配信システム100である。図1~図22、図26及び図27等を参照して説明したように、データ配信システム100は、セントラルサーバ装置3と、複数のエッジサーバ装置2、2-Pとを含む。セントラルサーバ装置3(3Dシーン生成装置31)は、複数のユーザ(視聴者Au、演者P)の3Dモデルを含みリアルタイムに変化する仮想空間のシーンを記述する3Dシーン記述データを生成する。複数のエッジサーバ装置2、2-Pの各々(レンダリング装置22、22-P)は、セントラルサーバ装置3と通信するとともに互いに地理的に離れた位置に分散して配置され、セントラルサーバ装置3が生成した3Dシーン記述データに基づいて、対応するユーザへの配信データを生成する。
 上記のデータ配信システム100によれば、分散配置された複数のエッジサーバ装置2、2-Pの各々が対応するユーザへの配信データを生成するので、処理負荷が分散される。セントラルサーバ装置3においては、リアルタイムに変化する仮想空間のすべてのデータを生成する必要はなく、そのシーンを記述する3Dシーン記述データを生成すれば足りる。その分、セントラルサーバ装置3におけるデータ伝送量を減らすことができる。従って、処理負荷の集中やデータ伝送量の増加に起因して生じうる遅延、例えばmotion-to-photon latency、仮想空間におけるユーザどうしのインタラクションの遅延等を抑制することができる。
 図1等を参照して説明したように、3Dシーン記述データは、仮想空間内の複数のユーザの配置の記述を含むデータであってよい。例えばこのような3Dシーン記述データを用いることで、セントラルサーバ装置3におけるデータ伝送量を減らしつつ、エッジサーバ装置2、2-Pにおいて配信データを生成することができる。
 図1及び図5等を参照して説明したように、エッジサーバ装置2、2-P(レンダリング装置22、レンダリング装置22-P)は、3Dシーン記述データと、ユーザの3Dモデルデータとに基づいて、仮想空間のレンダリング済みの映像データを、配信データとして生成してよい。これにより、レンダリングに要する処理負荷を分散するとともに、レンダリング済みの映像データをユーザに配信することができる。データ配信システム100を映像配信システムとして用いることができる。
 図1及び図5等を参照して説明したように、エッジサーバ装置2(レンダリング装置22)は、対応するユーザ(視聴者Au)の3Dモデルのアニメーションデータを生成し、生成したアニメーションデータと、3Dシーン記述データと、ユーザの3Dモデルデータ(アバターデータ)とに基づいて、映像データを生成してよい。例えばこのようにして、動きのあるユーザの3Dモデルを含む映像データを生成することができる。また、アニメーションデータのデータ量が、動きのある3Dモデルデータそのものを示すデータよりも小さい分だけ、データ伝送量を抑制することができる。
 図1等を参照して説明したように、アニメーションデータは、対応するユーザ(視聴者Au)の視野・視線データを含み、エッジサーバ装置2(レンダリング装置22)は、対応するユーザ(視聴者Au)の視点で観たときの映像データを生成してよい。これにより、対応するユーザへの配信に適した映像データを生成することができる。
 図1及び図5等を参照して説明したように、エッジサーバ装置2(レンダリング装置22)は、生成したアニメーションデータをセントラルサーバ装置3(3Dシーン生成装置31)に送信し、セントラルサーバ装置3は、エッジサーバ装置2からのアニメーションデータに基づいて、3Dシーン記述データを生成してよい。このようにデータ量の小さいアニメーションデータをエッジサーバ装置2からセントラルサーバ装置3に送信し、セントラルサーバ装置3で3Dシーン記述データを生成することで、データ伝送量を抑制することができる。
 図1、図2及び図5等を参照して説明したように、データ配信システム100は、エッジサーバ装置2、2-P及びセントラルサーバ装置3と通信するとともに、対応するユーザ(演者P)の3Dモデルデータを生成するクライアント装置1-P(3Dモデル生成装置13)をさらに備え、クライアント装置1ーP(3Dモデル生成装置13)が生成する3Dモデルデータは、ポイントクラウドデータ、メッシュデータ及びテクスチャデータの少なくとも1つを含む第1の3Dモデルデータと、バウンディングボックスデータを含む第2の3Dモデルデータと、を含み、クライアント装置1-P(3Dモデル生成装置13)は、生成した3Dモデルデータのうちの第1の3Dモデルデータをエッジサーバ装置2、2-P(レンダリング装置22、レンダリング装置22-P)に送信し、第2の3Dモデルデータをセントラルサーバ装置3(3Dシーン生成装置31)に送信し、エッジサーバ装置2、2-P(レンダリング装置22、レンダリング装置22-P)は、第1の3Dモデルデータに基づいて、映像データを生成し、セントラルサーバ装置3(3Dシーン生成装置31)は、第2の3Dモデルデータに基づいて、3Dシーン記述データを生成してよい。このようにデータ量の小さい第2の3Dモデルデータだけをセントラルサーバ装置3に伝送し、そこで3Dシーン記述データを生成することで、データ伝送量を抑制することができる。
 図26及び図27等を参照して説明したように、複数のエッジサーバ装置2の各々は、計算資源であるMEC2aと、対応するユーザ(視聴者Au)にMEC2aを割り当てるフロント部2bと、を含み、フロント部2bによる割り当ては、他のエッジサーバ装置2のMEC2aを割り当てることを含んでよい。これにより、MEC2aの地理的配置の自由度を高めることができる。
 図1等を参照して説明したように、仮想空間は、仮想化されたライブイベント会場を含み、複数のユーザは、複数の視聴者Au及び1以上の演者Pを含んでよい。例えばこのようなライブイベントを低遅延で配信することができる。
 図1等を参照して説明したように、通信は、光通信であってよい(ネットワークNは全光通信ネットワークであってよい)。これにより、遅延をさらに抑制できる可能性が高まる。
 図1等を参照して説明したように配信データは、映像データ及び音データを含んでよい。このようなデータ量の大きいデータを配信する場合でも、遅延を抑制することができる。
 図1~図22、図26及び図27等を参照して説明したデータ配信方法も、開示される技術の1つである。データ配信方法は、セントラルサーバ装置3(3Dシーン生成装置31)が、複数のユーザ(視聴者Au、演者P)の3Dモデルを含みリアルタイムに変化する仮想空間のシーンを記述する3Dシーン記述データを生成すること(ステップS31、ステップS41)と、各々がセントラルサーバ装置3と通信するとともに互いに地理的に離れた位置に分散して配置された複数のエッジサーバ装置2、2-Pが、セントラルサーバ装置3が生成した3Dシーン記述データに基づいて、対応するユーザへの配信データを生成すること(ステップS34、ステップS43)と、を含む。このようなデータ配信方法によっても、これまで説明したように遅延を抑制することができる。
 データ配信システム100を構成するデータ処理装置、例えばエッジサーバ装置2、2-P、また、そのようなデータ処理装置を用いたデータ処理方法も、開示される技術である。図1~図22、図26及び図27等を参照して説明したように、エッジサーバ装置2、2-Pは、複数のユーザ(視聴者Au、演者P)の3Dモデルを含みリアルタイムに変化する仮想空間のシーンを記述する3Dシーン記述データに基づいて、対応するユーザへの配信データを生成する。データ処理方法は、エッジサーバ装置2、2-Pが、複数のユーザの3Dモデルを含みリアルタイムに変化する仮想空間のシーンを記述する3Dシーン記述データに基づいて、対応するユーザへの配信データを生成すること(ステップS34、ステップS43)を含む。このようなデータ処理装置又はデータ処理方法によっても、これまで説明したように遅延を抑制することができる。
 なお、本開示に記載された効果は、あくまで例示であって、開示された内容に限定されない。他の効果があってもよい。
 以上、本開示の実施形態について説明したが、本開示の技術的範囲は、上述の実施形態そのままに限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。また、異なる実施形態及び変形例にわたる構成要素を適宜組み合わせてもよい。
 開示される技術は、次のように説明することもできる。例えば、データ配信システム100は、映像・音楽配信システムであってよい。現実空間での視聴者Auや演者Pの動きが反映された仮想空間を実現するために、1つ又は少数のセントラルデータセンター(セントラル領域R3、セントラルサーバ装置3)に3Dシーン生成装置31を配置し、映像・音楽コンテンツを提供する各地域に存在するリージョナルデータセンター(リージョナル領域R2、エッジサーバ装置2、2-P)にレンダリング装置22、22-Pを分散配置してよい。
 リージョナルデータセンターは、セントラルデータセンター又は他のリージョナルデータセンターとネットワークNで接続されてよい。
 3Dシーン生成装置31は、仮想空間内の映像・音楽コンテンツを設計・制御する3Dシーン記述データを生成してよい。
 レンダリング装置22、22-Pは、3Dシーン記述データ基づき、視聴者Auや演者Pの視野・視線データに従って、視聴者Auや演者Pが視聴する映像・オーディオ(映像・音)をレンダリング処理によって生成してよい。
 視聴者Au及び演者Pのリアルタイムな動きデータは、基本的に地理的に最も距離が近いリージョナルデータセンターが受信してよい。また、視聴者Au及び演者Pは、基本的に地理的距離が最も近いリージョナルデータセンターから、レンダリング映像(レンダリング済みの映像)を受信してよい。
 実空間での視聴者Auの動きを仮想空間に反映させる動きデータは、視聴者Auのアバターデータ(3Dモデルデータ)と、アバターデータに対するアニメーションデータで構成されてよい。
 実空間での視聴者Auの動きは、視聴者Auのアバターデータに対するアニメーションデータを3Dシーン生成装置31に送信することにより、仮想空間に反映されてよい。
 実空間での演者Pの動きを仮想空間に反映させる動きデータは、演者Pの動きを時々刻々とキャプチャし、時系列で変化する3Dモデルデータで構成されてよい。
 実空間での演者Pの動きは、演者の3Dモデルデータに関わるバウンディングボックスデータを3Dシーン生成装置31に送信することにより、仮想空間に反映されてよい。
 共通のリージョナルデータセンターを利用するクライアント(クライアント装置1又はそれを使用する視聴者Au)の集合である視聴者グループに所属するクライアント装置1間又は視聴者Au間では、あらかじめ算出されたある遅延時間以下でインタラクションが可能であることが保証されてよい。
 視聴者Auのアバターを動かすアニメーションデータ(モーションデータ)を生成するモーションデータ生成装置21は、アニメーションデータをリージョナルデータセンター内のレンダリング装置22に送信するとともに、セントラルデータセンターへ送信してよい。
 視聴者Auのための映像・音楽データを生成するレンダリング装置22は、リアルタイムな視聴者Auの動きを低遅延にレンダリング画像に反映させるために、セントラルデータセンターから受信した3Dシーン記述データに、モーションデータ生成装置21からの、視聴者Auの最新のアニメーションデータを組み合せてレンダリング画像を生成してよい。
 演者Pの動きを低データレートで3Dシーンに反映させるために、3Dモデル生成装置13は、演者Pのリアルタイムなバウンディングボックスデータを3Dシーン生成装置31があるセントラルデータセンターへ送信してよい。
 演者Pのための映像・音楽データを生成するレンダリング装置22-Pは、リアルタイムな演者Pの動きを低遅延にレンダリング画像に反映させるために、セントラルデータセンターから受信した3Dシーン記述データに、3Dモデル生成装置13からの、演者Pの最新の3Dモデルデータを組み合せてレンダリング画像を生成してよい。
 これまで説明した技術によれば、例えば、全光ネットワーク上での大規模インタラクティブ音楽ライブ配信を実現する際の課題を解決するために、システム構成が考案され、物理的なネットワークリソースへの対応付けが定義される。これにより、従来の単純なサーバ・クライアント構成と比較して、ネットワーク上のデータレートの削減、低遅延化、より多人数の視聴者の参加が可能になる。
 音楽ライブ全体を制御するセントラルデータセンターに3Dシーン生成装置31を配置し、各地域のデータセンター(リージョナルデータセンター)にレンダリング装置22、22-Pを分散配置する。視聴者AU及び演者Pは、物理的距離が近いリージョナルデータセンターに、キャプチャ装置11、11-Pからのセンシングデータ(キャプチャデータ)或いはオンプレミスで生成した3Dモデルデータを送信する。また、物理的距離が近いリージョナルデータセンターから、レンダリングされた映像を受信する。これにより、視聴者のmotion-to-photon latencyを低減できる。同じリージョナルデータセンターを利用する視聴者Auどうしのインタラクション時の応答遅延を低減できる。レンダリング装置22、22-Pのレンダリング処理負荷を分散できる。レンダリング装置22、22-Pからのレンダリング画像の出力を分散できる。
 視聴者Auの動きを3Dシーンに反映させるために、リージョナルデータセンターは、リアルタイム3Dモデルデータとして、視聴者Auのアバターを動かすアニメーションデータ(モーションデータ)をセントラルデータセンターへ送信する。これにより、セントラルデータセンターへの、視聴者Auに関する入力データのレートを低減する。
 リージョナルデータセンターは、セントラルデータセンターから受信した3Dシーン記述データに、モーションデータ生成装置21からのより新しいアニメーションデータを組み合せて3Dシーンを構築する。 視聴者Auのmotion-to-photon latencyを低減できる。
 演者Pの動きを3Dシーンに反映させるために、リージョナルデータセンターは、リアルタイム3Dモデルデータとして、演者Pのバウンディングボックスデータをセントラルデータセンターへ送信する。これにより、セントラルデータセンターへの、演者Pに関する入力データのレートを低減する。
 リージョナルデータセンターは、セントラルデータセンターから受信した3Dシーン記述データに、3Dモデル生成装置13からのより新しい3Dモデルデータを組み合せて3Dシーンを構築する。これにより、演者Pのmotion-to-photon latencyを低減できる。
 なお、本技術は以下のような構成も取ることができる。
(1)
 複数のユーザの3Dモデルを含みリアルタイムに変化する仮想空間のシーンを記述する3Dシーン記述データを生成するセントラルサーバ装置と、
 各々が前記セントラルサーバ装置と通信するとともに互いに地理的に離れた位置に分散して配置され、前記セントラルサーバ装置が生成した前記3Dシーン記述データに基づいて、対応するユーザへの配信データを生成する複数のエッジサーバ装置と、
 を備える、
 データ配信システム。
(2)
 前記3Dシーン記述データは、前記仮想空間内の前記複数のユーザの3Dモデルの配置の記述を含むデータである、
 (1)に記載のデータ配信システム。
(3)
 前記エッジサーバ装置は、前記3Dシーン記述データと、前記ユーザの3Dモデルデータとに基づいて、前記仮想空間のレンダリング済みの映像データを、前記配信データとして生成する、
 (1)又は(2)に記載のデータ配信システム。
(4)
 前記エッジサーバ装置は、対応するユーザの3Dモデルのアニメーションデータを生成し、生成したアニメーションデータと、前記3Dシーン記述データと、前記ユーザの3Dモデルデータとに基づいて、前記映像データを生成する、
 (3)に記載のデータ配信システム。
(5)
 前記アニメーションデータは、対応するユーザの視野・視線データを含み、
 前記エッジサーバ装置は、前記対応するユーザの視点で観たときの前記映像データを生成する、
 (4)に記載のデータ配信システム。
(6)
 前記エッジサーバ装置は、生成したアニメーションデータをセントラルサーバ装置に送信し、
 前記セントラルサーバ装置は、前記エッジサーバ装置からのアニメーションデータに基づいて、前記3Dシーン記述データを生成する、
 (4)又は(5)に記載のデータ配信システム。
(7)
 前記エッジサーバ装置及び前記セントラルサーバ装置と通信するとともに、対応するユーザの3Dモデルデータを生成するクライアント装置をさらに備え、
 前記クライアント装置が生成する3Dモデルデータは、
 メッシュデータ、テクスチャデータ及びポイントクラウドデータの少なくとも1つを含む第1の3Dモデルデータと、
 バウンディングボックスデータを含む第2の3Dモデルデータと、
 を含み、
 前記クライアント装置は、生成した3Dモデルデータのうちの前記第1の3Dモデルデータを前記エッジサーバ装置に送信し、前記第2の3Dモデルデータを前記セントラルサーバ装置に送信し、
 前記エッジサーバ装置は、前記第1の3Dモデルデータに基づいて、前記映像データを生成し、
 前記セントラルサーバ装置は、前記第2の3Dモデルデータに基づいて、前記3Dシーン記述データを生成する、
 (3)~(6)のいずれかに記載のデータ配信システム。
(8)
 前記複数のエッジサーバ装置の各々は、
 計算資源であるMECと、
 対応するユーザに前記MECを割り当てるフロント部と、
 を含み、
 前記フロント部による前記割り当ては、他のエッジサーバ装置のMECを割り当てることを含む、
 (1)~(7)のいずれかに記載のデータ配信システム。
(9)
 前記仮想空間は、仮想化されたライブイベント会場を含み、
 前記複数のユーザは、複数の視聴者及び1又は複数の演者を含む、
 (1)~(8)のいずれかに記載のデータ配信システム。
(10)
 前記通信は、全光通信である、
 (1)~(9)のいずれかに記載のデータ配信システム。
(11)
 前記配信データは、映像データ及び音データを含む、
 (1)~(10)のいずれかに記載のデータ配信システム。
(12)
 セントラルサーバ装置が、複数のユーザの3Dモデルを含みリアルタイムに変化する仮想空間のシーンを記述する3Dシーン記述データを生成することと、
 各々が前記セントラルサーバ装置と通信するとともに互いに地理的に離れた位置に分散して配置された複数のエッジサーバ装置が、前記セントラルサーバ装置が生成した前記3Dシーン記述データに基づいて、対応するユーザへの配信データを生成することと、
 を含む、
 データ配信方法。
(13)
 複数のユーザの3Dモデルを含みリアルタイムに変化する仮想空間のシーンを記述する3Dシーン記述データに基づいて、対応するユーザへの配信データを生成する、
 データ処理装置。
(14)
 データ処理装置が、複数のユーザの3Dモデルを含みリアルタイムに変化する仮想空間のシーンを記述する3Dシーン記述データに基づいて、対応するユーザへの配信データを生成することを含む、
 データ処理方法。
   100 データ配信システム
     1 クライアント装置
    11 キャプチャ装置
    12 ディスプレイ装置
   1-P クライアント装置
  11-P キャプチャ装置
  12-P ディスプレイ装置
    13 3Dモデル生成装置
     2 エッジサーバ装置(データ処理装置)
    20 データベース装置
    21 モーションデータ生成装置
    22 レンダリング装置
   2-P エッジサーバ装置(データ処理装置)
  20-P データベース装置
  22-P レンダリング装置
    2a MEC
    2b フロント部
     3 セントラルサーバ装置(データ処理装置)
    30 データベース装置
    31 3Dシーン生成装置(データ処理装置)
    Au 視聴者(ユーザ)
     N ネットワーク
     P 演者(ユーザ)
    R1 オンプレミス領域
    R2 リージョナル領域
    R3 セントラル領域

Claims (14)

  1.  複数のユーザの3Dモデルを含みリアルタイムに変化する仮想空間のシーンを記述する3Dシーン記述データを生成するセントラルサーバ装置と、
     各々が前記セントラルサーバ装置と通信するとともに互いに地理的に離れた位置に分散して配置され、前記セントラルサーバ装置が生成した前記3Dシーン記述データに基づいて、対応するユーザへの配信データを生成する複数のエッジサーバ装置と、
     を備える、
     データ配信システム。
  2.  前記3Dシーン記述データは、前記仮想空間内の前記複数のユーザの3Dモデルの配置の記述を含むデータである、
     請求項1に記載のデータ配信システム。
  3.  前記エッジサーバ装置は、前記3Dシーン記述データと、前記ユーザの3Dモデルデータとに基づいて、前記仮想空間のレンダリング済みの映像データを、前記配信データとして生成する、
     請求項1に記載のデータ配信システム。
  4.  前記エッジサーバ装置は、対応するユーザの3Dモデルのアニメーションデータを生成し、生成したアニメーションデータと、前記3Dシーン記述データと、前記ユーザの3Dモデルデータとに基づいて、前記映像データを生成する、
     請求項3に記載のデータ配信システム。
  5.  前記アニメーションデータは、対応するユーザの視野・視線データを含み、
     前記エッジサーバ装置は、前記対応するユーザの視点で観たときの前記映像データを生成する、
     請求項4に記載のデータ配信システム。
  6.  前記エッジサーバ装置は、生成したアニメーションデータをセントラルサーバ装置に送信し、
     前記セントラルサーバ装置は、前記エッジサーバ装置からのアニメーションデータに基づいて、前記3Dシーン記述データを生成する、
     請求項4に記載のデータ配信システム。
  7.  前記エッジサーバ装置及び前記セントラルサーバ装置と通信するとともに、対応するユーザの3Dモデルデータを生成するクライアント装置をさらに備え、
     前記クライアント装置が生成する3Dモデルデータは、
     メッシュデータ、テクスチャデータ及びポイントクラウドデータの少なくとも1つを含む第1の3Dモデルデータと、
     バウンディングボックスデータを含む第2の3Dモデルデータと、
     を含み、
     前記クライアント装置は、生成した3Dモデルデータのうちの前記第1の3Dモデルデータを前記エッジサーバ装置に送信し、前記第2の3Dモデルデータを前記セントラルサーバ装置に送信し、
     前記エッジサーバ装置は、前記第1の3Dモデルデータに基づいて、前記映像データを生成し、
     前記セントラルサーバ装置は、前記第2の3Dモデルデータに基づいて、前記3Dシーン記述データを生成する、
     請求項3に記載のデータ配信システム。
  8.  前記複数のエッジサーバ装置の各々は、
     計算資源であるMECと、
     対応するユーザに前記MECを割り当てるフロント部と、
     を含み、
     前記フロント部による前記割り当ては、他のエッジサーバ装置のMECを割り当てることを含む、
     請求項1に記載のデータ配信システム。
  9.  前記仮想空間は、仮想化されたライブイベント会場を含み、
     前記複数のユーザは、複数の視聴者及び1又は複数の演者を含む、
     請求項1に記載のデータ配信システム。
  10.  前記通信は、全光通信である、
     請求項1に記載のデータ配信システム。
  11.  前記配信データは、映像データ及び音データを含む、
     請求項1に記載のデータ配信システム。
  12.  セントラルサーバ装置が、複数のユーザの3Dモデルを含みリアルタイムに変化する仮想空間のシーンを記述する3Dシーン記述データを生成することと、
     各々が前記セントラルサーバ装置と通信するとともに互いに地理的に離れた位置に分散して配置された複数のエッジサーバ装置が、前記セントラルサーバ装置が生成した前記3Dシーン記述データに基づいて、対応するユーザへの配信データを生成することと、
     を含む、
     データ配信方法。
  13.  複数のユーザの3Dモデルを含みリアルタイムに変化する仮想空間のシーンを記述する3Dシーン記述データに基づいて、対応するユーザへの配信データを生成する、
     データ処理装置。
  14.  データ処理装置が、複数のユーザの3Dモデルを含みリアルタイムに変化する仮想空間のシーンを記述する3Dシーン記述データに基づいて、対応するユーザへの配信データを生成することを含む、
     データ処理方法。
PCT/JP2023/029160 2022-08-12 2023-08-09 データ配信システム、データ配信方法、データ処理装置及びデータ処理方法 WO2024034646A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022128941 2022-08-12
JP2022-128941 2022-08-12

Publications (1)

Publication Number Publication Date
WO2024034646A1 true WO2024034646A1 (ja) 2024-02-15

Family

ID=89851671

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/029160 WO2024034646A1 (ja) 2022-08-12 2023-08-09 データ配信システム、データ配信方法、データ処理装置及びデータ処理方法

Country Status (1)

Country Link
WO (1) WO2024034646A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021230068A1 (ja) * 2020-05-13 2021-11-18 ソニーグループ株式会社 配信装置及び配信方法
WO2022125154A1 (en) * 2020-12-08 2022-06-16 Tencent America LLC Adaptation of 2d video for streaming to heterogenous client end-points
US20230102054A1 (en) * 2021-09-30 2023-03-30 Nokia Technologies Oy Method, an apparatus and a computer program product for video encoding and video decoding

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021230068A1 (ja) * 2020-05-13 2021-11-18 ソニーグループ株式会社 配信装置及び配信方法
WO2022125154A1 (en) * 2020-12-08 2022-06-16 Tencent America LLC Adaptation of 2d video for streaming to heterogenous client end-points
US20230102054A1 (en) * 2021-09-30 2023-03-30 Nokia Technologies Oy Method, an apparatus and a computer program product for video encoding and video decoding

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SHUICHI AOKI: "6D-05 A study of a rendering system compatible with scene description", PROCEEDINGS OF THE 84TH NATIONAL CONFERENCE IPSJ, NETWORK SECURITY; MARCH 3-5, 2022, vol. 84, no. 3, 17 February 2022 (2022-02-17), pages 3-23 - 3-24, XP009552965 *

Similar Documents

Publication Publication Date Title
JP6878014B2 (ja) 画像処理装置及びその方法、プログラム、画像処理システム
JP2022536182A (ja) データストリームを同期させるシステム及び方法
KR102441514B1 (ko) 하이브리드 스트리밍
US20210291058A1 (en) Live camera video character representations
JP6306089B2 (ja) ネットワークを通してメディアを伝送するシステム及び方法
JP2019022151A (ja) 情報処理装置、画像処理システム、制御方法、及び、プログラム
US20230319328A1 (en) Reference of neural network model for adaptation of 2d video for streaming to heterogeneous client end-points
US11331587B2 (en) Video game player, spectator and audience interaction
WO2024034646A1 (ja) データ配信システム、データ配信方法、データ処理装置及びデータ処理方法
US11344816B2 (en) Video game waiting queue and audience interaction
US11570227B2 (en) Set up and distribution of immersive media to heterogenous client end-points
JP2019050593A (ja) 画像処理システム、画像処理装置、制御方法、及び、プログラム
US20240064360A1 (en) Distribution control apparatus, distribution control system, distribution control method and program
JP2023075859A (ja) 情報処理装置、情報処理方法、及び、プログラム
JP2016509486A (ja) ネットワークを介して送信するためのビデオゲーム画面画像の生成及び符号化を行う方法及びシステム
WO2022125154A1 (en) Adaptation of 2d video for streaming to heterogenous client end-points
JP2019071650A (ja) 制御装置、制御方法、及び、プログラム
JP2020102053A (ja) コンテンツ配信システム、受信装置及びプログラム
KR102585727B1 (ko) 경량형 xr 장치를 위한 xr 스트리밍 시스템 및 이의 운용 방법
US12003792B2 (en) Adaptation of 2D video for streaming to heterogenous client end-points
JP2019075740A (ja) 画像処理システム、画像処理装置、画像伝送方法、及び、プログラム
US11943271B2 (en) Reference of neural network model by immersive media for adaptation of media for streaming to heterogenous client end-points
KR20240067414A (ko) 대규모 가상 공연 네트워크 시스템에서의 데이터 최적화 및 동기화 방법
US20230007067A1 (en) Bidirectional presentation datastream
JP2023075860A (ja) 情報処理装置、情報処理方法、及び、プログラム

Legal Events

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

Ref document number: 23852608

Country of ref document: EP

Kind code of ref document: A1