WO2019022256A1 - 音楽連動制御プラットフォーム及び音楽連動制御プラットフォームの制御方法 - Google Patents

音楽連動制御プラットフォーム及び音楽連動制御プラットフォームの制御方法 Download PDF

Info

Publication number
WO2019022256A1
WO2019022256A1 PCT/JP2018/028398 JP2018028398W WO2019022256A1 WO 2019022256 A1 WO2019022256 A1 WO 2019022256A1 JP 2018028398 W JP2018028398 W JP 2018028398W WO 2019022256 A1 WO2019022256 A1 WO 2019022256A1
Authority
WO
WIPO (PCT)
Prior art keywords
music
time
control
reproduction
player
Prior art date
Application number
PCT/JP2018/028398
Other languages
English (en)
French (fr)
Inventor
後藤 真孝
井上 隆広
Original Assignee
国立研究開発法人産業技術総合研究所
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 国立研究開発法人産業技術総合研究所 filed Critical 国立研究開発法人産業技術総合研究所
Priority to GB2001694.5A priority Critical patent/GB2579488B/en
Priority to JP2019532894A priority patent/JP6784977B2/ja
Priority to US16/634,270 priority patent/US11288032B2/en
Publication of WO2019022256A1 publication Critical patent/WO2019022256A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8106Monomedia components thereof involving special audio data, e.g. different tracks for different languages
    • H04N21/8113Monomedia components thereof involving special audio data, e.g. different tracks for different languages comprising music, e.g. song in MP3 format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/165Management of the audio stream, e.g. setting of volume, audio stream path
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10KSOUND-PRODUCING DEVICES; METHODS OR DEVICES FOR PROTECTING AGAINST, OR FOR DAMPING, NOISE OR OTHER ACOUSTIC WAVES IN GENERAL; ACOUSTICS NOT OTHERWISE PROVIDED FOR
    • G10K15/00Acoustics not otherwise provided for
    • G10K15/02Synthesis of acoustic waves
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10KSOUND-PRODUCING DEVICES; METHODS OR DEVICES FOR PROTECTING AGAINST, OR FOR DAMPING, NOISE OR OTHER ACOUSTIC WAVES IN GENERAL; ACOUSTICS NOT OTHERWISE PROVIDED FOR
    • G10K15/00Acoustics not otherwise provided for
    • G10K15/04Sound-producing devices
    • 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/242Synchronization processes, e.g. processing of PCR [Program Clock References]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43076Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of the same content streams on multiple devices, e.g. when family members are watching the same movie on different devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content

Definitions

  • the present invention relates to a music-linked control platform that synchronizes at least one of music reproduction and music-linked rendering with music, and a control method of the music-linked control platform.
  • Patent Document 1 it is determined whether a plurality of reproducing devices function as a master or a slave, and then the plurality of reproducing devices are content based on an instruction from the outside. There is disclosed a technique for suppressing a difference in reproduction timing when reproducing an image.
  • Patent Document 2 discloses an invention of synchronously viewing the same video between a plurality of terminals divided into a master terminal and a slave terminal.
  • An object of the present invention is to provide a music-linked control platform for synchronizing at least one of music reproduction and music-linked rendering to music with a plurality of devices and a control method of the music-linked control platform.
  • a music interlocking control platform for synchronizing at least one of music reproduction and music interlocking rendering to music with a plurality of devices includes one or more music interlocking control masters, a plurality of music interlocking control slaves, and a music interlocking control server Is equipped.
  • One or more music interlocking control masters are provided with a master music reproduction player, an individual time generator for generating an individual time, a communication means, and a master processor constituting a master control unit of the master music reproduction player, and a plurality of music contents
  • the master music player is controlled to play the music content selected from the above.
  • the plurality of music interlocking control slaves are at least one of a slave music reproduction player and a slave music interlocking effecter, an individual time generator generating an individual time, communication means, and at least one of a slave music reproduction player and a slave music interlocking effecter
  • a slave processor constituting a slave control unit is provided to control at least one of a slave music reproduction player and a slave music interlocking effect device.
  • the music-linked control server comprises a server processor having a reference time generator for generating a reference time and communication means connected to one or more music-linked control masters and a plurality of music-linked control slaves via a communication network.
  • the server processor performs the following: First, when a stage creation command is input from one or more music-linked control masters, a stage is created and a virtual music playback player is created. When a stage delete command is input from one or more music-linked control masters, the virtual music reproduction player is deleted and the stage is deleted. When an operation command related to reproduction of music content is input from one or more music-linked control masters, the state of the virtual music reproduction player is updated.
  • the state of the virtual music reproduction player is transmitted by transmitting one or more confirmation commands.
  • the state of the virtual music reproduction player is transmitted by transmitting one or more confirmation commands.
  • the music-linked control master or multiple music-linked control slaves When a synchronization request command for requesting synchronization between a reference time and an individual time is input from one or more music-linked control masters or a plurality of music-linked control slaves, the reference time at that time is transmitted as a synchronization request command. Send to one or more music-linked control masters or multiple music-linked control slaves.
  • the state of the virtual music playback player is instructed by an identifier (for example, a URL or the like) identifying the music content identifying the music content to be played back by one or more music interlocking control masters and a plurality of music interlocking control slaves, and the latest operation command
  • the latest operation content, the in-content playback time for which the operation command is to be operated (the elapsed time from the beginning of the content when the start time of the content is 0 seconds at the playback position in music content), in-content playback The time on the reference time corresponding to the time is included.
  • the identifier for identifying the representative music content is a URL, and the representative URL includes a URL of content including a video such as You Tube (registered trademark) and a URL of music content such as MP3.
  • the master control unit of the one or more music-linked control masters sets the time on the reference time corresponding to the in-content reproduction time determined from the state of the virtual music reproduction player operating at the reference time on the individual time corresponding to the in-content reproduction time. It has a function to control the master music playback player by converting it to the time of day.
  • the slave control units of the plurality of music interlocking control slaves convert the time on the reference time corresponding to the in-content reproduction time determined from the state of the virtual music reproduction player into the time on the individual time corresponding to the in-content reproduction time And a function to control at least one of a slave music reproduction player and a slave music interlocking effect device.
  • the music-linked control server updates the state of the virtual music playback player based on the operation command, and one or more musics The state of the latest virtual music player is made available to the interlocking control master and the plurality of music interlocking control slaves.
  • the music interlocking control server receives a confirmation command for confirming the state of the virtual music reproducing player from one or more music interlocking control masters or a plurality of music interlocking control slaves
  • the music interlocking control server reproduces the latest virtual music replay The state of the player is returned to the one or more music-linked control masters or the plurality of music-linked control slaves that have transmitted the confirmation command.
  • the master control unit of the one or more music-linked control masters that has received the latest virtual music playback player status is the in-content playback time that corresponds to the in-content playback time determined from the virtual music playback player status. And control the master music reproduction player to reproduce the music content obtained from the identifier.
  • the slave control units of the plurality of music-linked control slaves that have received the latest virtual music playback player state receive the time on the reference time corresponding to the in-content playback time determined from the virtual music playback player state And convert at least one of the slave music playback player and the slave music interlocking effect device to convert the music content obtained from the identifier or linked to the playback of the music content. To perform the effect.
  • the individual time in one or more music interlocking control masters and the individual time and music in a plurality of music interlocking control slaves can reproduce substantially the same music content in synchronization, and a plurality of musics
  • the slave music interlocking effect can be operated in synchronization with the reproduction of the music content.
  • a master music interlocking effect may be provided to one or more music interlocking control masters.
  • the master control unit of one or more music interlocking control masters uses the in-content playback time at the individual time (the elapsed time from the beginning of the content when the beginning time of the content is 0 seconds at the playback position in the music content)
  • the master music player acquires the actual in-content playback time at which the music content is actually played, and the actual in-content playback time should be originally played back.
  • the deviation from the original in-content reproduction time at the individual time is calculated, and when the deviation is a predetermined time or more, the master music reproduction player reproduces so that the deviation disappears and the original in-content reproduction time at the individual time is reproduced. It is preferable to have a function to control In this way, even if a shift or a delay occurs for some reason and a shift occurs, the shift can be repaired.
  • the slave control unit of the plurality of music interlocking control slaves has a slave music reproduction player, and the in-content reproduction time at the individual time (when the head time of the content is 0 seconds at the reproduction position in the music content)
  • the slave music reproduction player acquires the actual in-content reproduction time at which the music content is actually reproduced, and
  • the deviation between the reproduction time and the original in-content reproduction time at the individual time originally to be reproduced is calculated, and if the deviation is more than a predetermined time, the deviation disappears and the original in-content reproduction time at the individual time is It is preferable to have a function to control the playback of the slave music playback player so as to play back. In this way, even if a shift or a delay occurs for some reason and a shift occurs, the shift can be repaired.
  • the stage in the music-linked control server has a function of issuing a secret key and an access key to the music-linked control master, and when one or more music-linked control masters communicate with the stage of the music-linked control server Access using a key and an access key, and when multiple music linked control slaves communicate with the stage of the music linked control server, access is made using the access key issued to one or more music linked control masters It is preferable to
  • the secret key authorizes only one or more music-linked control masters to change the state of the virtual music player.
  • the user using the music-linked control master can teach the user using the music-linked control slave an access key using social media, electronic mail, or the like. Further, the access key can be transmitted to the music-linked control slave by a method such as QR code (registered trademark) or URL.
  • the music-linked control server specifies the stage and the virtual music reproduction player based on the access key when accessed by one or more music-linked control masters or a plurality of music-linked control slaves. Therefore, even if multiple music-linked control masters that play different music content are connected to the music-linked control server, one or more music-linked control masters or multiple music-linked control slaves are connected to the correct stage and virtual music playback player be able to.
  • the stage has a function of assigning an identification ID to one or more music-linked control masters and a plurality of music-linked control slaves that have been accessed for the first time.
  • the stage further has a function of managing the connection status of one or more music-linked control masters and a plurality of music-linked control slaves based on the identification ID and the access time. If identification ID is issued and managed, the music interlocking control master more than the set number and the music interlocked control slave more than the set number can be prevented from being connected to the music interlocked control server, and the connection is already cut off
  • the music-linked control master and the music-linked control slave can be persons outside the control.
  • the operation content recorded as the state of the virtual music reproduction player includes at least reproduction and stop of the music content. Specifically, if the operation command is a reproduction command as the state of the virtual music reproduction player, the reproduction state is recorded as the latest operation content, and the in-content reproduction time is recorded as the reproduction start time. When the command is a stop command, the stop state is recorded as the operation content, and the in-content reproduction time is designated as the reproduction stop time. Also, the operation content recorded as the state of the virtual music reproduction player may include seek during reproduction and seek during stop. In this case, the operation content recorded as the state of the virtual music reproduction player includes seek during reproduction and seek during stop. When the operation command is a seek command, a seek state during reproduction or a seek state during stop is recorded as the operation content, and the in-content reproduction time is recorded as the seek destination time.
  • the one or more music-linked control masters are communication terminals provided with a display unit having a display screen, and are configured to display the input interface of the music reproduction player on the display screen. Therefore, the user of one or more music-linked control masters can change the operation content using the input interface. This change is to update the state of the virtual music reproduction player, and the plurality of music-linked control slaves also perform reproduction according to the change.
  • a master control unit of one or more music interlocking control masters, a plurality of music interlocking control masters, and a slave control unit of a plurality of music interlocking control slaves, a confirmation command for periodically confirming the state of the virtual music reproduction player to the music interlocking control server It has a function to control the master music playback player and slave music playback player according to the change of the state of the virtual music playback player upon detection of the change of the state of the virtual music playback player transmitted and sent from the music-linked control server. doing. As a result, the playback operation can be performed by the master music playback player and the slave music playback player in the same state as the state of the virtual music playback player, and the synchronization operation can be performed by the music-linked effect device. In addition, the music-linked control slave can also be connected to the stage halfway. As a result, the number of connected music-linked control slaves can be easily increased.
  • the music analysis result includes one or more events.
  • the master music reproduction player and the slave music reproduction player are performing the reproduction operation, it is determined whether or not the in-content reproduction time in the master music reproduction player and the slave music reproduction player matches the time of the event. It is preferable to have a function to execute processing contents for an event. By doing this, it is possible to execute the processing content of the event in conjunction with the music.
  • the execution of the processing content of the event is autonomously performed individually by the music-linked control master and the music-linked control slave, the load of the music-linked control server does not increase with respect to the execution of the processing content of the event. It has the advantage of Moreover, even if communication is intermittent, the processing content of the event can be continuously executed.
  • the slave music interlocking directing devices of the plurality of music interlocking control slaves are controlled interlockingly with the music analysis result of the music by executing the processing contents for the event. By this, it is possible to realize the music interlocking of the effect.
  • the one or more music-linked control masters and the plurality of music-linked control slaves preferably have a function of setting processing content corresponding to one or more events according to the music analysis result included in the music content. In this way, the user or programmer can freely set the processing content corresponding to the event. Also, it is possible to link various effects to music and control various devices.
  • the event is determined based on a beat, a bar, a chorus section, a repetition section, or a chord included in the music analysis result.
  • One or more music interlocking control masters and a plurality of music interlocking control slaves record the offset time between the individual time and the reference time of the music interlocking control server obtained by requesting the synchronization request command as an offset time, and the offset time It is preferable to have a function to correct the original in-content reproduction time in the master music reproduction player and the slave music reproduction player, if the value of < In this way, when the difference between the individual time and the reference time of the music-linked control server obtained by requesting the synchronization request command for some reason becomes significantly large, the synchronization operation is substantially completely synchronized again. It will be possible to
  • one music linked control master may be used.
  • the present invention can also be specified as a control method of a music-linked control platform that synchronizes at least one of music reproduction and music-linked rendering with music.
  • the configuration of the platform used is the same as above.
  • the master control unit of one or more music interlocking control masters corresponds the time on the reference time corresponding to the in-content reproduction time determined from the state of the virtual music reproduction player to the in-content reproduction time Control the master music reproduction player by converting the time to the time on the individual time.
  • slave control units of a plurality of music interlocking control slaves convert the time on the reference time corresponding to the in-content reproduction time determined from the state of the virtual music reproduction player into the time on the individual time corresponding to the in-content reproduction time Control at least one of the slave music reproduction player and the slave music interlocking effect device.
  • FIG. 1 is a block diagram showing the configuration of an embodiment of a music-linked control platform for controlling a plurality of devices of the present invention in synchronization with music.
  • the music interlocking control platform 1 includes one or more music interlocking control masters 3, a plurality of music interlocking control slaves 5, and a music interlocking control server 7.
  • one or more of the music interlocking control masters 3 has a master music reproducing player 31, a master music interlocking effecter 32, an individual time generator 33 for generating an individual time, a communication means 34, and a master music reproduction.
  • a master processor 36 constituting a master control unit 35 of the player 31, a display unit 37 such as a liquid crystal display device, and an input interface 38 are provided.
  • the one or more music interlocking control master 3 controls the master music reproduction player 31 to reproduce music content selected from among a plurality of music contents on the web, and a liquid crystal display device, a light emitting device such as an LED, A master music interlocking effect device 32 consisting of a movable device such as a moving object is controlled in conjunction with the music content.
  • “in conjunction with music content” includes a case where it is linked with the analysis result of the music analysis unit 9.
  • at least one music interlocking control master 3 may be provided, and the master music interlocking effect device 32 may be omitted.
  • the master processor 36 can also be realized using a computer.
  • the plurality of music interlocking control slaves 5 are a slave music reproduction player 51 and a slave music interlocking effecter 52, an individual time generator 53 for generating an individual time, a communication means 54, a slave music reproduction player, A slave processor 56 constituting at least one slave control unit 55 of a slave music interlocking effecter, a display unit 57 such as a liquid crystal display device, and an input interface 58 are provided.
  • Each music interlocking control slave 5 controls the slave music reproduction player 51 and the slave music interlocking effect device 52.
  • the music interlocking control slave 5 does not have to have both the slave music reproducing player 51 and the slave music interlocking effect 52, and at least one of the slave music reproducing player 51 and the slave music interlocking effect 52 is provided. Just do it.
  • the slave processor 56 can be configured using a computer. In FIG. 1, although the music content and the music analysis result on the web are representatively displayed on only one music-linked control slave 5 representatively, other musics are shown in order to simplify the illustration. The input of the music content on the web and the music analysis result to the interlocking control slave 5 is omitted.
  • the music interlocking control server 7 is connected to one or more music interlocking control masters 3 and a plurality of music interlocking control slaves 5 via a communication network with a reference time generator 71 generating a reference time, as shown in FIG.
  • a server processor 73 having a communication means 72 is provided.
  • the server processor 73 configures the stage 74 and the virtual music playback player 75 for each music content to be played back in response to a request from the music-linked control master 3, and carries out the following.
  • the server processor 73 can be configured using a computer. In the following description, the algorithm shown in FIGS. 5 to 9 is used in combination.
  • a stage 74 is created and a virtual music reproduction player 75 is created.
  • the stage 74 in the music-linked control server 7 has a function of issuing a secret key and an access key to one or more music-linked control masters 3.
  • one or more music interlocking control masters 3 communicate with the stage of the music interlocking control server, they are accessed using a secret key and an access key, and a plurality of music interlocking control slaves 5 communicate with the stage 74 of the music interlocking control server 7 In doing so, access is performed using an access key issued to one or more music-linked control masters 3.
  • the secret key gives the authority to change the state of the virtual music reproduction player 75 only to one or more music-linked control masters 3.
  • the user who is using the music interlocking control master 3 teaches the access key to the user who is using the music interlocking control slave 5 in a face-to-face manner, and teaches the access key using social media, electronic mail, etc. It will be.
  • the music interlocking control slave 5 may be notified of the access key by a method such as a QR code or a URL. This operation is illustrated in the algorithm of FIG.
  • step ST51 it is determined whether the stage creation command has been input from the music-linked control master 3 based on whether "the stage creation button has been pressed". If Yes, the process proceeds to step ST52, a stage is created, and an access key and a secret key are issued. Thereafter, in step ST53, a virtual music reproduction player 75 is created.
  • a stage delete command is input from one or more music-linked control masters 3 (when "Yes? Are stage delete buttons pressed? Yes in step ST61), a virtual music reproduction player 75 is deleted and the stage 74 is deleted (steps ST62 and ST63).
  • the stage 74 updates the state of the virtual music reproduction player 75 when an operation command related to reproduction of music content is input from one or more music interlocking control masters 3 (steps ST71 and ST72).
  • This "operation command” includes a command that immediately changes the state and a command that changes the future state.
  • the stage 74 displays the status of the virtual music playback player 75
  • the confirmation command is sent back to the one or more music-linked control masters 3 or the plurality of music-linked control slaves 5 that have transmitted the confirmation command (steps ST 73 and 74).
  • stage 74 sets the reference time at that time as The synchronization request command is transmitted to the one or more music-linked control masters 3 or the plurality of music-linked control slaves 5 that have sent the synchronization request command (steps ST75 and ST76).
  • the one or more music-linked control masters 3 or the plurality of music-linked control slaves 5 that have received the reference time perform the synchronization operation by estimating the offset time.
  • the “state of virtual music playback player” in the virtual music playback player 75 is an identifier (for example, an identifier for identifying music content that specifies music content to be played back by one or more music linked control masters 3 and a plurality of music linked control slaves 5) , URL, etc., the latest operation content instructed by the latest operation command, the in-content reproduction time to which the operation command is to be operated, and the time on the reference time corresponding to the in-content reproduction time.
  • the identifier for identifying the representative music content is a URL
  • the representative URL includes a URL of content including a video such as You Tube (registered trademark) and a URL of music content such as MP3.
  • the music interlocking control platform 1 of the present embodiment does not have the music distribution function or the music upload function, and the music is directly streamed and reproduced from the original website.
  • the music interlocking control platform 1 may have a music distribution function and a music upload function as generally used.
  • the operation content recorded as “state of virtual music playback player” in virtual music playback player 75 includes playback of music content, stop, seek during playback, and seek during stop. ing.
  • the operation command is a reproduction command as the "state of virtual music reproduction player”
  • the reproduction state is recorded as the latest operation content
  • the in-content reproduction time is recorded as the reproduction start time.
  • the operation command is a stop command
  • the stop state is recorded as the operation content
  • the in-content reproduction time is designated as the reproduction stop time.
  • the operation command is a seek command
  • a seek state during reproduction or a seek state during stop is recorded as the operation content
  • the in-content reproduction time is recorded as the seek destination time.
  • the operation command may not include the seek command.
  • the stage 74 is an access key only when the one or more music-linked control master 3 and the plurality of music-linked control slaves 5 accessed in step ST81 have an access key.
  • the virtual music reproduction player is specified based on the above, and the access to the specified virtual music reproduction player is permitted, and it is determined that the access is from the music interlocking control master 3 only when the access is performed with the secret key. If there is no corresponding virtual music reproduction player, all access is denied (step ST82). Then, in step ST83, the stage 74 determines whether an identification number is attached at the time of access.
  • the stage 74 has a function of assigning identification IDs to one or more music-linked control masters 3 and multiple music-linked control slaves 5 accessed for the first time, as long as the master upper limit number or the slave upper limit number is equal to or less than the master upper limit number. (Step ST84). If the master upper limit number or the slave upper limit number is exceeded, the connection is rejected without issuing the identification ID.
  • the stage 74 further has a function of managing the connection status of the one or more music-linked control masters 3 and the plurality of music-linked control slaves 5 based on the identification ID and the access time.
  • a new identification ID is added to the master list or slave list managing the one or more music-linked control masters 3 and the plurality of music-linked control slaves 5 connected to the specified virtual music reproduction player, and the identification ID
  • the access time (time stamp) is recorded in the list (step ST85).
  • the stage 74 determines the validity of the identification ID in step ST87, and if it is not valid, issues the identification ID again in step ST84. If the identification ID is valid, the process proceeds to step ST88, and the access time (time stamp) of the identification ID is recorded in the master list or the slave list.
  • the virtual music reproduction player 75 operates according to the access content (step ST86).
  • the master list or slave list has an old identification ID for which a predetermined time (for example, one minute) has elapsed from the last access time. It is judged whether or not it is. If there is a corresponding identification ID, the identification ID is deleted from the master list or slave list.
  • the connection opportunity is given to more music-linked control masters 3, and if the number of music-linked control slaves 5 that can be connected is limited, more music-linked control The slave 5 can be given a connection opportunity.
  • the music interlocking control master 3 more than the set number as the master upper limit number or the slave upper limit number and the music interlocked control slave 5 more than the set number are connected to the music interlocked control server 7 Music-linked control master 3 and music-linked control slave 5 that have already been disconnected (a certain time has passed since the last access and there is a low probability of being connected) It can be done.
  • the master control unit 35 of the one or more music-linked control masters 3 sets the time on the reference time corresponding to the in-content reproduction time determined from the “state of virtual music reproduction player” to the on-discrete time corresponding to the in-content reproduction time. It has a function of converting to time and controlling the master music reproduction player 31 and the master music interlocking effect device 32.
  • the master control unit 35 of one or more music interlocking control masters 3 accesses the music interlocking control server 7 (step ST101).
  • the music-linked control master 3 requests time synchronization with the virtual music reproduction player 75 and receives the reference time and the “state of the virtual music reproduction player”.
  • the master control unit 35 of the one or more music-linked control masters 3 receiving the “state of virtual music reproduction player” determines the time on the reference time corresponding to the in-content reproduction time obtained from the state of the virtual music reproduction player 75 Convert to a time on an individual time that corresponds to the in-content playback time.
  • FIG. 11 shows the algorithm of this conversion. As shown in FIG.
  • the master control unit 35 calculates the time difference (offset time) obtained by subtracting the reference time of the music-linked control server from the individual time of the music-linked control master 3 by time synchronization (offset time estimation). calculate. Further, the master control unit 35 acquires the state of the virtual music reproduction player 75 of the music conjunction control server 7 (step ST102 b). Next, the time on the reference time corresponding to the in-content reproduction time is acquired (step ST102c). Finally, the offset time is added to the time on the reference time corresponding to the in-content reproduction time to convert it to a time on an individual time corresponding to the in-content reproduction time (step ST102d).
  • step ST103 of FIG. 10 if it is necessary to reproduce the music content, it is determined whether it is designated by the user who is using the music-linked control master 3. If it is necessary to play music, in step ST104, it is prepared to stream music content. Then, in step ST105, the interface of the master music reproduction player is displayed on the display unit 37 (if the music moving image is reproduced as a music-linked effect, the image display window is also displayed on the display unit 37). Thereafter, the music-linked control master 3 executes the algorithm of operations 2, 3 and 4 described later in parallel (step ST106).
  • FIG. 12 shows an example of an algorithm of the operation 2 in the case of transmitting a state change operation command from the music-linked control master 3 to the virtual music reproduction player of the music-linked control server 7.
  • this operation 2 it is determined in step ST121 whether the input interface 38 on the master music reproduction player of the music interlocking control master 3 has been operated or whether reproduction / stop / seek has been designated on the program. If YES, the process proceeds to step ST123, and the music interlocking control master 3 transmits an operation command (reproduction / stop / seek) to the virtual music reproduction player 75 of the music interlocked control server 7.
  • step ST122 If there is no designation by the operation command in step 121, the process proceeds to step ST122, and if a random interval of a predetermined time or more is already available after inquiring of the server of the previous time the state of the virtual music reproduction player, the virtual music reproduction player Query the status of Although the implementation can be performed even at a constant interval, if a random interval is adopted here, the access load of the music-linked control server 7 can be reduced. Then, when a change in the state of the virtual music reproduction player is detected in step ST124, the process proceeds to step ST125, and if there is no change, the process returns to step 121.
  • step ST125 in the case of the present embodiment, the master music reproduction player 31 is controlled in accordance with the state of the virtual music reproduction player (reproduction, stop, reproduction after seek, and control after seek). If the state of the virtual music playback player does not include playback after seek and stop after seek, it is necessary to include control according to playback after seek and stop after seek in the control of the master music playback player 31. There is no.
  • FIG. 13 shows an algorithm of the operation 3 when carrying out the processing content for the event.
  • this operation 3 it is determined in step ST131 whether or not the master music reproduction player 31 is performing a reproduction operation, and in the case of Yes, the process proceeds to step ST132.
  • step ST132 the in-content reproduction time (reproduction position in the music content) at the current time of the master music reproduction player 31 is acquired.
  • FIG. 14 shows a detailed algorithm of step ST132. First, at step ST132a, it is judged whether or not it is designated that the music content needs to be reproduced. If it is not necessary to reproduce the music content, the in-content reproduction time of the master music reproduction player 31 is calculated from the "state of virtual music reproduction player" in step 132f.
  • step 132b When playback is specified, in step 132b, the actual in-content playback time of the music content currently being played by the master music playback player 31 (the loading may be delayed due to the load on the network, etc. There is) get. Then, in step 132c, the original in-content reproduction time of the master music reproduction player 31 is calculated from the state of the virtual music reproduction player and stored. Then, in step 132d, it is determined whether the actual in-content reproduction time and the in-content reproduction time originally deviate from each other for a predetermined time or more. If the result is Yes, the process proceeds to step ST132e.
  • the state of the master music reproduction player 31 is updated (by seeking, etc., an operation is performed to bring the original in-content reproduction time closer to the state of reproduction).
  • the synchronization operation is substantially completely synchronized again
  • step ST132 After executing step ST132, it is determined in step ST133 whether or not there is an event in the in-content reproduction time, and in the case of Yes, the process registered in the event in step ST134 is called and executed.
  • the event is determined based on a beat, a bar, a chorus section, a repetition section, a chord or the like.
  • the music-linked control master 3 has a function of setting processing content corresponding to one or more events according to the music analysis result included in the music content. More specifically, when the master control unit 35 of the music interlocking control master 3 acquires the music analysis result corresponding to the music content, one or more events are included in the music analysis result, and the master music reproduction player reproduces the music.
  • the master music interlocking effect device 32 since the master music interlocking effect device 32 is provided, the master music interlocking effect device 32 is controlled interlockingly with the music analysis result of the music by executing the processing content for the event. By this, it is possible to realize the music interlocking of the effect. Also, if one or more music interlocking control masters 3 has a function to set the processing content corresponding to one or more events according to the music analysis result included in the music content, the user or programmer corresponds to the event It becomes possible to set processing contents freely. In addition, it becomes possible to link various effects to music and control various devices.
  • FIG. 15 shows an algorithm of operation 4 of the music interlocking control master.
  • the algorithm of the operation 4 it is determined in step ST151 whether or not a predetermined time has elapsed from the previous time synchronization. If the predetermined time has elapsed, the process proceeds to step ST152.
  • the music interlocking control master 3 transmits a synchronization request command to the virtual music reproduction player 75 to request time synchronization (offset time estimation) with the music interlocking control master 3, and the reference time of the music interlocking control server 7 To get
  • the master control unit 35 of the music interlocking control master 3 records a deviation from the reference time of the music interlocking control server 7 as an offset time.
  • the deviation from the reference time of the music-linked control server 7 is, for example, individual time A when the music-linked control master 3 transmits a request for time synchronization to the music-linked control server 7, and the request for time synchronization is music-linked control
  • the music-linked control master 3 has received information on the reference time B received by the server 7 and the information on the reference time B sent from the music-linked control server 7 to the music-linked control master 3 as a response to the request for time synchronization.
  • the operation of estimation of the offset time (a transmission of a request for time synchronization from the music-linked control master 3 side to the music-linked control server 7 and Reception at the music interlocking control master 3 side of the reply of the reference time by the music interlocking control server 7 is repeated a plurality of times (for example, three times), and the median value and the average value of the estimation results of the offset time of each time It may be an offset time.
  • the master control unit 35 of the music interlocking control master 3 corrects the original in-content reproduction time in the master music reproduction player 31 (ST153) ). In this way, when the difference between the individual time and the reference time of the music interlocking control server 7 obtained by requesting the synchronization request command becomes significantly large for some reason, the synchronization operation is substantially completely synchronized again It becomes possible to put it in the state.
  • the slave control unit 55 of the plurality of music interlocking control slaves 5 sets the time on the reference time corresponding to the in-content reproduction time determined from the “state of virtual music reproduction player” to the time on the individual time corresponding to the in-content reproduction time , And controls the slave music reproduction player 51 and the slave music interlocking effect unit 52.
  • the slave control units 55 of the plurality of music-linked control slaves 5 receiving the state of the virtual music reproduction player 75 also reproduce the time on the reference time corresponding to the in-content reproduction time determined from the state of the virtual music reproduction player 75 Convert to a time on an individual time corresponding to the time, and control the slave music playback player 51 and the slave music interlocking effect unit 52 to play music content obtained from an identifier such as a URL or to play this music content Execute linked productions.
  • the slave control unit 55 of one or more music interlocking control slaves 5 accesses the music interlocking control server 7 (step ST161).
  • the music-linked control slave 5 requests time synchronization with the virtual music reproduction player 75, and receives the reference time and the "state of virtual music reproduction player".
  • the slave control unit 55 of the one or more music-linked control slaves 5 having received the “state of virtual music reproduction player” determines the time on the reference time corresponding to the in-content reproduction time determined from the state of the virtual music reproduction player 75 Convert to a time on an individual time that corresponds to the in-content playback time.
  • FIG. 17 shows the algorithm of this conversion. As shown in FIG.
  • the slave control unit 55 determines the time difference (offset time) obtained by subtracting the reference time of the music-linked control server from the individual time of the music-linked control slave 5 by time synchronization (offset time estimation) in ST162a. calculate.
  • the slave control unit 55 also acquires the state of the virtual music reproduction player 75 of the music-linked control server 7 (step ST162 b).
  • the time on the reference time corresponding to the in-content reproduction time is acquired (step ST162c).
  • the offset time is added to the time on the reference time corresponding to the in-content reproduction time to convert it to the time on an individual time corresponding to the in-content reproduction time (step ST162 d).
  • step ST163 of FIG. 16 if it is necessary to reproduce the music content, it is determined whether it is designated by the user using the music-linked control slave 5. If it is necessary to play music, in step ST164, it is prepared to stream music content. Then, in step ST165, the interface of the slave music reproduction player is displayed on the display unit 57 (if the music moving image is reproduced as a music-linked effect, the video display window is also displayed on the display unit 57). Thereafter, the music-linked control slave 5 executes an algorithm of operations 2, 3 and 4 described later in parallel (step ST166).
  • FIG. 18 shows an algorithm of the operation 2 of the music-linked control slave.
  • step ST181 if a random interval of a predetermined time or more is already available after inquiring “server's state of virtual music reproduction player” from the previous server, the state of the virtual music reproduction player is inquired. Although the implementation can be performed even at a constant interval, if a random interval is adopted here, the access load of the music-linked control server 7 can be reduced.
  • step ST182 if it is detected in step ST182 that a change in the state of the virtual music player has been detected, the process proceeds to step ST183, and if there is no change, the process returns to step 181.
  • the slave music reproduction player 51 is controlled according to the state of the virtual music reproduction player (play, stop, play after seek, and control after seek). If the state of the virtual music playback player does not include playback after seek and stop after seek, it is necessary to include control according to playback after seek and stop after seek in the control of the master music playback player 51. There is no.
  • FIG. 19 shows an algorithm of the operation 3 when carrying out the processing content for the event.
  • this operation 3 it is determined in step ST191 whether or not the slave music reproduction player 51 is performing a reproduction operation, and in the case of Yes, the process proceeds to step ST192.
  • step ST192 the in-content reproduction time (reproduction position in the music content) at the current time of the slave music reproduction player 51 is acquired.
  • the detailed algorithm of step ST192 is substantially the same as the algorithm of FIG. First, a determination is made as to whether it is designated that playback of the music content is required. When it is not necessary to reproduce the music content, the in-content reproduction time of the slave music reproduction player 51 is calculated from the “state of virtual music reproduction player”.
  • the actual in-content playback time of the music content currently being played by the slave music playback player 51 (a load may be delayed due to network load etc.) is acquired Do. Then, the original in-content reproduction time of the slave music reproduction player 51 is calculated from the state of the virtual music reproduction player and stored. Then, it is determined whether the actual in-content reproduction time and the in-content reproduction time deviate from each other by a predetermined time or more. If the result of the determination is Yes, the state of the slave music reproduction player 51 is updated (by seeking, etc., the operation is performed closer to the state in which the original in-content reproduction time is reproduced). In this way, when the difference between the individual time and the reference time of the music-linked control server obtained by requesting the synchronization request command becomes significantly large for some reason, the synchronization operation is substantially completely synchronized again It will be possible to
  • step ST192 After executing step ST192, it is determined in step ST193 whether or not there is an event in the in-content reproduction time, and in the case of Yes, the process registered in the event in step ST194 is called and executed.
  • the music-linked control slave 5 has a function of setting processing content corresponding to one or more events according to the music analysis result included in the music content. More specifically, when the slave control unit 55 of the music interlocking control slave 5 acquires the music analysis result corresponding to the music content, the music analysis result includes one or more events, and the slave music reproduction player reproduces the music. While operating, it is determined whether or not the in-content reproduction time in the slave music reproduction player matches the time of the event, and the processing content for the coincident event is executed.
  • the slave music interlocking effect device 52 since the slave music interlocking effect device 52 is provided, the slave music interlocking effect device 52 is controlled interlockingly with the music analysis result of the music by executing the processing content for the event. By this, it is possible to realize the music interlocking of the effect.
  • the one or more music interlocking control slaves 5 also have the function of setting the processing content corresponding to one or more events according to the music analysis result included in the music content.
  • FIG. 20 shows an algorithm of operation 4 of the music interlocking control slave.
  • the algorithm of the operation 4 it is determined in step ST201 whether or not a predetermined time has elapsed from the previous time synchronization. If the predetermined time has elapsed, the process proceeds to step ST202.
  • the music interlocking control slave 5 transmits a synchronization request command to the virtual music reproduction player 75 to request time synchronization (offset time estimation) with the music interlocking control slave 5, and the reference time of the music interlocking control server 7 To get
  • the slave control unit 55 of the music-linked control slave 5 records a deviation from the reference time of the music-linked control server 7 as an offset time.
  • the deviation from the reference time of the music-linked control server 7 is, for example, individual time A when the music-linked control slave 5 transmits a request for time synchronization to the music-linked control server 7, and the request for time synchronization is music-linked control
  • the music-linked control slave 5 has received the information on the reference time B received by the server 7 and the reference time B sent from the music-linked control server 7 to the music-linked control slave 5 as a response to the request for time synchronization.
  • the operation of estimation of this offset time (transmission of a request for time synchronization from the music-linked control slave 5 to the music-linked control server 7 and Reception at the music-linked control slave 5 side of the response of the reference time by the music-linked control server 7 is repeated a plurality of times (for example, three times), and the median value and the average value of the estimation results of the offset time of each time are finalized It may be an offset time.
  • the offset time fluctuates more than a predetermined value (for example, 100 ms or more)
  • the slave control unit 55 of the music interlocking control slave 5 corrects the original in-content reproduction time in the slave music reproduction player 51 (ST203 ). In this way, when the difference between the individual time and the reference time of the music interlocking control server 7 obtained by requesting the synchronization request command becomes significantly large for some reason, the synchronization operation is substantially completely synchronized again It becomes possible to put it in the state.
  • FIG. 21 shows an operation algorithm used in an example of the music-linked control application operating on the music-linked control platform of this embodiment.
  • the operation of the music-linked control application on the music-linked control master 3 and the music-linked control slave 5 of this embodiment will be described using this operation algorithm.
  • the music-linked control application sets the music selected by the user for the music-linked control master 3 from the music-linked control master 3 to the virtual music reproduction player 75 of the music-linked control server 7 (step ST211).
  • the effect style selected by the user of the music interlocking control master 3 and / or the music interlocking control slave 5 is set to each of the music interlocking control master 3 and / or the music interlocking control slave 5, and each of them is selected according to the effect style.
  • the processing content for the event is registered in the master controller 35 and / or slave controller 55 of the music interlocking control master 3 and / or the music interlocking control slave 5 (steps ST212 and ST213).
  • the operation of the music-linked control application differs depending on whether it is the music-linked control master 3 or the music-linked control slave 5, the content of the subsequent execution is determined (step ST214).
  • the virtual music reproduction player 75 of the music-linked control server 7 is always accessed by the secret key, the access key and the identification ID (step ST215).
  • the music interlocking control master 3 automatically executes music interlocking control combined with reproduction of music content based on the algorithm of the operations 1 to 4 (step ST216).
  • the virtual music reproduction player 75 of the music-linked control server 7 is always accessed with the access key and the identification ID (step ST217).
  • the music-linked control slave 5 automatically executes music-linked control in accordance with the reproduction of the music content based on the algorithm of the operations 1 to 4 (step ST218).
  • an access key (character string, URL, QR code) for connecting various people to the virtual music playback player is issued.
  • the user notifies this access key to other people who want to enjoy music and directing together.
  • a programmer can freely and easily develop a music-linked control application itself that reproduces music content and renders effects simply by changing a sample program of the effect style using a development kit. it can. At that time, there is no need to be aware of control of a large number of devices, and if programming is performed to control one device, the platform automatically realizes time synchronization with other devices.
  • the presentation style of the platform of this embodiment can be used from a general web browser that can execute JavaScript (registered trademark) and has high versatility, different operating systems [Windows (registered trademark), MacOS (registered trademark)] It is possible to interlock and control a wide variety of devices such as a PC mounted and a smartphone / tablet mounted with different OSs [iOS (registered trademark), Android (registered trademark)]. Furthermore, if JavaScript environment Node.js which operates on the server is used, it is possible to produce effects utilizing the small and light terminal Raspberry Pi and IoT devices (robots, lighting devices, LEDs of costumes, etc.).
  • (A) Live event site A new effect such as displaying a varied animation on the screen of the visitor's smartphone becomes possible in accordance with the reproduction of music flowing from the site speaker.
  • the application can also be applied such that the same animation is displayed on a plurality of large screens in the hall, and the costumes and bracelets of the stage performer are illuminated. It is effective to use music interlocking control as an effect to have visitors have a sense of unity to enjoy in a scene such as before a live start after sitting or in an entrance waiting column of an event.
  • the platform of this embodiment enables users to create new music experiences in which their devices can be easily linked with other devices. Not only that, it is possible for programmers to enable new programming experiences that can easily produce large-scale music interlocking control as follows.
  • the platform of the present embodiment is a general-purpose platform that allows various programmers to develop music-linked control applications that realize various effects, and is excellent in that the extensibility is high and the effects are not fixed. If each device operates autonomously in conjunction with the reproduction of music by communication with the server, the entire devices appear to operate in synchronization even if the devices do not directly communicate with each other. Focusing on this, there is no problem even if the devices are diverse and many, and communication is intermittent. After each device acquires the music analysis result at the time of connection and synchronizes the time, the music playback time Depending on the event is calling the effect by driving the event autonomously. The playback time of the music playback player on each device is also adjusted autonomously so as not to deviate.
  • the individual time in one or more music interlocking control masters and the individual time in a plurality of music interlocking control slaves and the reference in the music interlocking server Even when the time does not match, one or more music interlocking control masters and a plurality of music interlocking control slaves can reproduce the same music content substantially synchronously and in a plurality of music interlocking control slaves Can operate the slave music linked effector in synchronization with the reproduction of the music content.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Acoustics & Sound (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Electrophonic Musical Instruments (AREA)
  • Reverberation, Karaoke And Other Acoustics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

複数の機器で音楽再生及び音楽連動演出の少なくとも一つを音楽に同期させる音楽連動制御プラットフォームを提供する。音楽連動制御マスター3のマスター制御部35は、仮想音楽再生プレーヤの状態から求まるコンテンツ内再生時刻に対応する基準時刻上の時刻を、コンテンツ内再生時刻に対応する個別時刻上の時刻に変換して、マスター音楽再生プレーヤ31及びマスター音楽連動演出器32を制御する機能を有している。複数の音楽連動制御スレーブ5のスレーブ制御部55は、仮想音楽再生プレーヤの状態から求まるコンテンツ内再生時刻に対応する基準時刻上の時刻を、コンテンツ内再生時刻に対応する個別時刻上の時刻に変換して、スレーブ音楽再生プレーヤ51及びスレーブ音楽連動演出器52を制御する機能を有している。

Description

音楽連動制御プラットフォーム及び音楽連動制御プラットフォームの制御方法
 本発明は、音楽再生及び音楽連動演出の少なくとも一つを音楽に同期させる音楽連動制御プラットフォーム及び音楽連動制御プラットフォームの制御方法に関するものである。
 音楽は、音だけでも楽しまれるが、ミュージックビデオで音楽と映像が連動するように、音楽の再生に連動した多様な演出と共に楽しまれることも多い。近年では音楽再生に合わせて、パソコンの画面上の表示内容を変えたり、ロボットを踊らせたりすることも可能になっている。ライブコンサートでは、多数のペンライトの光を一斉に変更する専用システムも用いられている。スマートフォン上の専用アプリケーションが単色発光するシステムもある。しかし、演出手段が固定された専用システムが個別に開発されていたために、拡張性が乏しかった。
 また特開2017-103547号公報(特許文献1)には、複数の再生装置がマスター及びスレーブのどちらとして機能しているかを判定した上で、外部からの命令に基づいて複数の再生装置がコンテンツを再生する際の再生タイミングの差を抑制する技術が開示されている。
 また特開2011-228784号公報(特許文献2)には、マスター端末とスレーブ端末とに分けられた複数端末間で同一映像を同期して視聴する発明が開示されている。
特開2017-103547号公報 特開2011-228784号公報
 しかし従来、人々が既に所有する多種多様な携帯端末(スマートフォン、タブレット)・パソコン・Internet of Things (IoT)デバイス(インターネットに接続されたロボット、照明機器等の機器)を自由自在に組み合わせながら、さまざまな楽曲に合わせて同時に制御して演出を楽しむことはできなかった。専用機器ではない既存の多数の多種多様な汎用機器を用いて音楽再生・演出を同期制御しようとしても、断続的で個別の非同期通信を繰り返す通信環境と多様な実行環境においては、連続的な再生が必要な音楽とそれに合わせた演出が機器ごとにずれやすく、技術的に困難だったからである。ユーザーが異なる演出を手軽に組み合わせたり、演出を変更したりすることも従来は実現されておらず、大規模な音楽連動制御に基づく新たな演出を、プログラマー(プログラミング技術を持つ開発者)が容易に開発できるようにするための開発キットもなかった。
 本発明の目的は、複数の機器で音楽再生及び音楽連動演出の少なくとも一つを音楽に同期させる音楽連動制御プラットフォーム及び音楽連動制御プラットフォームの制御方法を提供することにある。
 本発明の複数の機器で音楽再生及び音楽連動演出の少なくとも一つを音楽に同期させる音楽連動制御プラットフォームは、1以上の音楽連動制御マスターと、複数の音楽連動制御スレーブと、音楽連動制御サーバとを備えている。
 1以上の音楽連動制御マスターは、マスター音楽再生プレーヤと、個別時刻を発生する個別時刻発生器、通信手段及びマスター音楽再生プレーヤのマスター制御部を構成するマスタープロセッサを備えていて、複数の音楽コンテンツの中から選択した音楽コンテンツを再生するようにマスター音楽再生プレーヤを制御する。
 複数の音楽連動制御スレーブは、スレーブ音楽再生プレーヤ及びスレーブ音楽連動演出器の少なくとも一つと、個別時刻を発生する個別時刻発生器、通信手段並びにスレーブ音楽再生プレーヤ及びスレーブ音楽連動演出器の少なくとも一つのスレーブ制御部を構成するスレーブプロセッサを備えて、スレーブ音楽再生プレーヤ及びスレーブ音楽連動演出器の少なくとも一つを制御する。
 音楽連動制御サーバは、基準時刻を発生する基準時刻発生器と通信ネットワークを介して1以上の音楽連動制御マスター及び複数の音楽連動制御スレーブと接続される通信手段を有するサーバプロセッサを備えている。このサーバプロセッサは、以下のことを実施する。まず1以上の音楽連動制御マスターからステージ作成コマンドが入力されるとステージを作成するとともに仮想音楽再生プレーヤを作成する。1以上の音楽連動制御マスターからステージ削除コマンドが入力されると仮想音楽再生プレーヤを削除するとともに前記ステージを削除する。1以上の音楽連動制御マスターから音楽コンテンツの再生に関する操作コマンドが入力されると仮想音楽再生プレーヤの状態を更新する。1以上の音楽連動制御マスターまたは複数の音楽連動制御スレーブから、仮想音楽再生プレーヤの状態を確認する確認コマンドが入力されると、仮想音楽再生プレーヤの状態を、確認コマンドを送信してきた1以上の音楽連動制御マスターまたは複数の音楽連動制御スレーブに返信する。1以上の音楽連動制御マスターまたは複数の音楽連動制御スレーブから、基準時刻と個別時刻との同期を要求する同期要求コマンドが入力されると、そのときの基準時刻を、同期要求コマンドを送信してきた1以上の音楽連動制御マスターまたは複数の音楽連動制御スレーブに送信する。
 仮想音楽再生プレーヤの状態は、1以上の音楽連動制御マスター及び複数の音楽連動制御スレーブで再生する音楽コンテンツを特定する音楽コンテンツを識別する識別子(例えば、URL等)、最新の操作コマンドで指令された最新の操作内容、操作コマンドが操作対象とするコンテンツ内再生時刻(音楽コンテンツ内での再生位置で、コンテンツの先頭時刻を0秒としたときのコンテンツの先頭からの経過時刻)、コンテンツ内再生時刻に対応する基準時刻上の時刻を含んでいる。代表的な音楽コンテンツを識別する識別子はURLであり、代表的なURLは、You Tube(登録商標)等の映像を含んだコンテンツのURL、MP3のような音楽コンテンツのURLがある。
 1以上の音楽連動制御マスターのマスター制御部は、基準時刻において動作する仮想音楽再生プレーヤの状態から求まるコンテンツ内再生時刻に対応する基準時刻上の時刻を、コンテンツ内再生時刻に対応する個別時刻上の時刻に変換して、マスター音楽再生プレーヤを制御する機能を有している。複数の音楽連動制御スレーブのスレーブ制御部は、仮想音楽再生プレーヤの状態から求まるコンテンツ内再生時刻に対応する基準時刻上の時刻を、コンテンツ内再生時刻に対応する個別時刻上の時刻に変換して、スレーブ音楽再生プレーヤ及びスレーブ音楽連動演出器の少なくとも一つを制御する機能を有している。
 本発明においては、音楽連動制御サーバが、1以上の音楽連動制御マスターから音楽コンテンツに基づく操作コマンドが入力されると、操作コマンドに基づいて仮想音楽再生プレーヤの状態を更新し、1以上の音楽連動制御マスター及び複数の音楽連動制御スレーブに最新の仮想音楽再生プレーヤの状態を入手可能にする。そして音楽連動制御サーバは、1以上の音楽連動制御マスターまたは複数の音楽連動制御スレーブから、仮想音楽再生プレーヤの状態を確認する確認コマンドが入力されると、音楽連動制御サーバは最新の仮想音楽再生プレーヤの状態を、確認コマンドを送信してきた1以上の音楽連動制御マスターまたは複数の音楽連動制御スレーブに返信する。最新の仮想音楽再生プレーヤの状態を受け取った1以上の音楽連動制御マスターのマスター制御部は、仮想音楽再生プレーヤの状態から求まるコンテンツ内再生時刻に対応する基準時刻上の時刻を、コンテンツ内再生時刻に対応する個別時刻上の時刻に変換して、マスター音楽再生プレーヤを制御して前記識別子から得た音楽コンテンツを再生する。また最新の仮想音楽再生プレーヤの状態を受け取った複数の音楽連動制御スレーブのスレーブ制御部は、仮想音楽再生プレーヤの状態から求まるコンテンツ内再生時刻に対応する基準時刻上の時刻を、コンテンツ内再生時刻に対応する個別時刻上の時刻に変換して、スレーブ音楽再生プレーヤ及びスレーブ音楽連動演出器の少なくとも一つを制御して、前記識別子から得た音楽コンテンツを再生するかこの音楽コンテンツの再生に連動する演出を実行する。
 本発明によれば、上記のように音楽連動サーバ内の仮想音楽再生プレーヤの状態を基準とすることにより、1以上の音楽連動制御マスターにおける個別時刻及び複数の音楽連動制御スレーブにおける個別時刻と音楽連動サーバにおける基準時刻とが一致していない場合でも、1以上の音楽連動制御マスター及び複数の音楽連動制御スレーブにおいて、同じ音楽コンテンツを実質的に同期して再生することができ、また複数の音楽連動制御スレーブにおいては音楽コンテンツの再生に同期してスレーブ音楽連動演出器を動作させことができる。なお1以上の音楽連動制御マスターにもマスター音楽連動演出器が設けられていてもよい。これらの場合において、識別子に基づいて音楽コンテンツと音楽コンテンツの楽曲解析結果を入手し、音楽コンテンツは再生せずに、楽曲解析結果に基づいて、音楽連動演出器だけを動作させてもよいのは勿論である。
 1以上の音楽連動制御マスターのマスター制御部は、個別時刻におけるコンテンツ内再生時刻(音楽コンテンツ内での再生位置で、コンテンツの先頭時刻を0秒としたときのコンテンツの先頭からの経過時刻)に基づいてマスター音楽再生プレーヤを制御する際に、マスター音楽再生プレーヤが音楽コンテンツを実際に再生している実際のコンテンツ内再生時刻を取得し、実際のコンテンツ内再生時刻と、本来再生しているべき個別時刻における本来のコンテンツ内再生時刻とのずれを計算し、ずれが一定時間以上の場合には、ずれがなくなって個別時刻における本来のコンテンツ内再生時刻で再生するようにマスター音楽再生プレーヤの再生を制御する機能を有しているのが好ましい。このようにすると何らかの理由で、ゆれや遅延が発生して、ずれが生じている場合でも、そのずれを修復することができる。
 複数の音楽連動制御スレーブのスレーブ制御部が、スレーブ音楽再生プレーヤを有しており、個別時刻におけるコンテンツ内再生時刻(音楽コンテンツ内での再生位置で、コンテンツの先頭時刻を0秒としたときのコンテンツの先頭からの経過時刻)に基づいてスレーブ音楽再生プレーヤを制御する際には、スレーブ音楽再生プレーヤが音楽コンテンツを実際に再生している実際のコンテンツ内再生時刻を取得し、実際のコンテンツ内再生時刻と、本来再生しているべき個別時刻における本来のコンテンツ内再生時刻とのずれを計算し、ずれが一定時間以上の場合には、ずれがなくなって個別時刻における本来のコンテンツ内再生時刻で再生するようにスレーブ音楽再生プレーヤの再生を制御する機能を有しているのが好ましい。このようにすると何らかの理由で、ゆれや遅延が発生して、ずれが生じている場合でも、そのずれを修復することができる。
 音楽連動制御サーバ内のステージは、音楽連動制御マスターにシークレットキーとアクセスキーを発行する機能を有しており、1以上の音楽連動制御マスターが音楽連動制御サーバのステージと通信する際にはシークレットキーとアクセスキーを用いてアクセスし、複数の音楽連動制御スレーブが音楽連動制御サーバのステージと通信する際には1以上の音楽連動制御マスターに対して発行されたアクセスキーを用いてアクセスするようにするのが好ましい。シークレットキーは、1以上の音楽連動制御マスターだけに仮想音楽再生プレーヤの状態を変化させる権限を与えている。そして音楽連動制御マスターを利用しているユーザーは、音楽連動制御スレーブを利用しているユーザーに、ソーシャルメディア、電子メール等を利用してアクセスキーを教えることができる。また音楽連動制御スレーブには、アクセスキーをQRコード(登録商標)やURLなどの方法で伝えることができる。
 また音楽連動制御サーバは、1以上の音楽連動制御マスターまたは複数の音楽連動制御スレーブからアクセスがあると、アクセスキーに基づいてステージと仮想音楽再生プレーヤを特定する。したがって異なる音楽コンテンツを再生する複数の音楽連動制御マスターが音楽連動制御サーバに接続されていても、正しいステージと仮想音楽再生プレーヤに1以上の音楽連動制御マスターまたは複数の音楽連動制御スレーブを接続することができる。
 またステージは、初めてアクセスしてきた1以上の音楽連動制御マスター及び複数の音楽連動制御スレーブに、それぞれ識別IDを付与する機能を有している。そしてステージは、識別IDとアクセス時刻に基づいて、1以上の音楽連動制御マスター及び複数の音楽連動制御スレーブの接続状況を管理する機能を更に備えている。識別IDを発行して管理をすると、設定台数以上の音楽連動制御マスター及び設定台数以上の音楽連動制御スレーブが、音楽連動制御サーバに接続されることを防止できる上、すでに接続が切られている音楽連動制御マスター及び音楽連動制御スレーブを管理外の者とすることができる。
 なお仮想音楽再生プレーヤの状態として記録されている操作内容には、少なくとも音楽コンテンツの再生及び停止が含まれている。具体的な、仮想音楽再生プレーヤの状態として、操作コマンドが再生コマンドの場合には、最新の操作内容としては再生状態が記録され、再生開始時刻としてコンテンツ内再生時刻が記録されており、操作コマンドが停止コマンドの場合には、操作内容としては停止状態が記録されて、再生停止時刻としてコンテンツ内再生時刻が指定されている。また仮想音楽再生プレーヤの状態として記録されている操作内容には、再生中のシーク及び停止中のシークが含まれていてもよい。この場合、仮想音楽再生プレーヤの状態として記録されている操作内容には、再生中のシーク及び停止中のシークが含まれる。操作コマンドがシークコマンドの場合には、操作内容としては再生中のシーク状態または停止中のシーク状態が記録されて、シーク先時刻としてコンテンツ内再生時刻が記録されている。
 1以上の音楽連動制御マスターは、表示画面を有する表示部を備えた通信端末機であり、表示画面に音楽再生プレーヤの入力インターフェイスを表示するように構成されている。したがって1以上の音楽連動制御マスターのユーザーは、入力インターフェイスを用いて、操作内容を変更することができる。この変更は、仮想音楽再生プレーヤの状態を更新することになり、複数の音楽連動制御スレーブもこの変更に応じた再生を行うようになる。
 1以上の音楽連動制御マスター及び複数の音楽連動制御マスターのマスター制御部及び複数の音楽連動制御スレーブのスレーブ制御部は、定期的に音楽連動制御サーバに仮想音楽再生プレーヤの状態を確認する確認コマンド送信し、音楽連動制御サーバから送信されてきた仮想音楽再生プレーヤの状態の変化を検出すると、仮想音楽再生プレーヤの状態の変化に応じてマスター音楽再生プレーヤ及びスレーブ音楽再生プレーヤを制御する機能を有している。その結果、常に仮想音楽再生プレーヤの状態と同じ状態で、マスター音楽再生プレーヤ及びスレーブ音楽再生プレーヤで再生動作を行うこと、また音楽連動演出器で同期動作を行うことができる。また音楽連動制御スレーブが、途中からステージに接続することも可能になる。その結果、音楽連動制御スレーブの接続台数を簡単に増やすことができる。
 1以上の音楽連動制御マスターのマスター制御部及び複数の音楽連動制御スレーブのスレーブ制御部は、音楽コンテンツに対応する楽曲解析結果を取得すると、楽曲解析結果には1以上のイベントが含まれており、マスター音楽再生プレーヤ及びスレーブ音楽再生プレーヤが再生動作をしているときに、マスター音楽再生プレーヤ及びスレーブ音楽再生プレーヤにおけるコンテンツ内再生時刻がイベントの時刻に一致したか否かを判定し、一致したイベントに対する処理内容を実行する機能を有しているのが好ましい。このようにすると、音楽と連動してイベントの処理内容を実行することができる。その結果、イベントの処理内容の実行が、音楽連動制御マスター及び音楽連動制御スレーブで個々に自律的に行われるので、イベントの処理内容の実行に関して、音楽連動制御サーバの負荷が増加することはないという利点がある。また通信が断続的にあってもイベントの処理内容を連続して実行することができる。
 複数の音楽連動制御スレーブのスレーブ音楽連動演出器は、イベントに対する処理内容を実行することによって、音楽の楽曲解析結果に連動して制御される。これによって、演出の音楽連動が実現できる。
 1以上の音楽連動制御マスター及び複数の音楽連動制御スレーブは、音楽コンテンツに含まれる楽曲解析結果に応じて1以上のイベントに対応する処理内容を設定する機能を有しているのが好ましい。このようにすると、ユーザーまたはプログラマーがイベントに対応する処理内容を自在に設定することが可能になる。また多種多様な演出を音楽に連動させたり、多種多様な機器を制御することが可能になる。
 イベントは、楽曲解析結果に含まれるビート、小節、サビ区間、繰り返し区間、またはコードに基づいて定められている。
 1以上の音楽連動制御マスター及び複数の音楽連動制御スレーブは、個別時刻と、同期要求コマンドを要求して得た音楽連動制御サーバの基準時刻とのずれをオフセット時間として記録しており、オフセット時間が予め定めた値より大きく変動していたら、マスター音楽再生プレーヤ及びスレーブ音楽再生プレーヤにおける本来のコンテンツ内再生時刻を補正する機能を有しているのが好ましい。このようにすると何らかの原因で個別時刻と、同期要求コマンドを要求して得た音楽連動制御サーバの基準時刻とのずれ著しく大きくなったときに、実質的に同期動作を再び完全に同期した状態にすることが可能になる。
 音楽連動制御マスターは1台であってもよいのは勿論である。音楽連動制御マスターが1台だけの場合には、「1台の音楽連動制御マスターの状態」が「仮想音楽連動プレーヤの状態」と常に一致している状態で動作させることも可能となる。その場合には、1台の音楽連動制御マスターを仮想音楽連動プレーヤと同期させる必要がなくなる。したがってこのような場合には、1台の音楽連動制御マスターにおいて、仮想音楽再生プレーヤの状態から求まるコンテンツ内再生時刻に対応する基準時刻上の時刻を、コンテンツ内再生時刻に対応する個別時刻上の時刻に変換して、マスター音楽再生プレーヤを制御することをせずに、動作させてもよい。
 本発明は、音楽再生及び音楽連動演出の少なくとも一つを音楽に同期させる音楽連動制御プラットフォームの制御方法としても特定することができる。使用するプラットフォームの構成は、上記と同じである。音楽連動制御プラットフォームの制御方法では、1以上の音楽連動制御マスターのマスター制御部が、仮想音楽再生プレーヤの状態から求まるコンテンツ内再生時刻に対応する基準時刻上の時刻を、コンテンツ内再生時刻に対応する前記個別時刻上の時刻に変換して、前記マスター音楽再生プレーヤを制御する。また複数の音楽連動制御スレーブのスレーブ制御部が、前記仮想音楽再生プレーヤの状態から求まるコンテンツ内再生時刻に対応する基準時刻上の時刻を、コンテンツ内再生時刻に対応する個別時刻上の時刻に変換して、スレーブ音楽再生プレーヤ及びスレーブ音楽連動演出器の少なくとも一つを制御する。
本発明の音楽連動制御プラットフォームの実施の形態の構成を示すブロック図である。 実施の形態で用いる音楽連動制御マスターの構成を示すブロック図である。 実施の形態で用いる音楽連動制御スレーブの構成を示すブロック図である。 実施の形態で用いる音楽連動制御サーバの構成を示すブロック図である。 音楽連動制御サーバで用いるアルゴリズムを示すフローチャートである。 音楽連動制御サーバで用いるアルゴリズムを示すフローチャートである。 音楽連動制御サーバで用いるアルゴリズムを示すフローチャートである。 音楽連動制御サーバで用いるアルゴリズムを示すフローチャートである。 音楽連動制御サーバで用いるアルゴリズムを示すフローチャートである。 音楽連動制御マスターで用いるアルゴリズムを示すフローチャートである。 音楽連動制御マスターで用いるアルゴリズムを示すフローチャートである。 音楽連動制御マスターで用いるアルゴリズムを示すフローチャートである。 音楽連動制御マスターで用いるアルゴリズムを示すフローチャートである。 音楽連動制御マスターで用いるアルゴリズムを示すフローチャートである。 音楽連動制御マスターで用いるアルゴリズムを示すフローチャートである。 音楽連動制御スレーブで用いるアルゴリズムを示すフローチャートである。 音楽連動制御スレーブで用いるアルゴリズムを示すフローチャートである。 音楽連動制御スレーブで用いるアルゴリズムを示すフローチャートである。 音楽連動制御スレーブで用いるアルゴリズムを示すフローチャートである。 音楽連動制御スレーブで用いるアルゴリズムを示すフローチャートである。 本実施の形態の音楽連動制御プラットフォーム上で動作する音楽連動制御アプリケーションで用いるアルゴリズムを示すフローチャートである。 本実施の形態の利用シーンを示す図である。
 以下図面を参照して本発明の音楽連動制御プラットフォームの実施の形態の一例を詳細に説明する。図1は、本発明の複数の機器を音楽に同期させて制御する音楽連動制御プラットフォームの実施の形態の構成を示すブロック図である。音楽連動制御プラットフォーム1は、1以上の音楽連動制御マスター3と、複数の音楽連動制御スレーブ5と、音楽連動制御サーバ7とを備えている。
 [音楽連動制御マスター3の構成]
 1以上の音楽連動制御マスター3は、図2に示すように、マスター音楽再生プレーヤ31と、マスター音楽連動演出器32と、個別時刻を発生する個別時刻発生器33、通信手段34及びマスター音楽再生プレーヤ31のマスター制御部35を構成するマスタープロセッサ36と、液晶表示装置のような表示部37と、入力インターフェイス38を備えている。1以上の音楽連動制御マスター3は、ウェブ上の複数の音楽コンテンツの中から選択した音楽コンテンツを再生するようにマスター音楽再生プレーヤ31を制御し、液晶表示デバイスや、LED等の発光デバイスや、動くオブジェなどの可動装置からなるマスター音楽連動演出器32を音楽コンテンツに連動して制御する。なお本願明細書において、「音楽コンテンツに連動とは」、楽曲解析部9の解析結果と連動する場合を含むものである。なお本実施の形態においては、音楽連動制御マスター3は、少なくとも1台あればよく、またマスター音楽連動演出器32はなくてもよい。またマスタープロセッサ36は、コンピュータを用いて実現することができる。
 [音楽連動制御スレーブ5の構成]
 複数の音楽連動制御スレーブ5は、図3に示すように、スレーブ音楽再生プレーヤ51及びスレーブ音楽連動演出器52と、個別時刻を発生する個別時刻発生器53、通信手段54並びにスレーブ音楽再生プレーヤ及びスレーブ音楽連動演出器の少なくとも一つのスレーブ制御部55を構成するスレーブプロセッサ56、液晶表示装置のような表示部57と、入力インターフェイス58を備えている。各音楽連動制御スレーブ5は、スレーブ音楽再生プレーヤ51及びスレーブ音楽連動演出器52を制御する。なお音楽連動制御スレーブ5には、スレーブ音楽再生プレーヤ51及びスレーブ音楽連動演出器52の両方が揃っている必要はなく、スレーブ音楽再生プレーヤ51及びスレーブ音楽連動演出器52の少なくとも一方が設けられていればよい。またスレーブプロセッサ56は、コンピュータを用いて構成することができる。なお図1においては、代表的に1つの音楽連動制御スレーブ5だけにウェブ上の音楽コンテンツと楽曲解析結果が入力されている表示をしてあるが、図示を簡略化するために、その他の音楽連動制御スレーブ5へのウェブ上の音楽コンテンツと楽曲解析結果の入力は省略してある。
 [音楽連動制御サーバ7の構成と動作]
 音楽連動制御サーバ7は、図4に示すように、基準時刻を発生する基準時刻発生器71と通信ネットワークを介して1以上の音楽連動制御マスター3及び複数の音楽連動制御スレーブ5と接続される通信手段72を有するサーバプロセッサ73を備えている。このサーバプロセッサ73は、音楽連動制御マスター3からの要求に応じて、再生する音楽コンテンツ毎に、ステージ74と仮想音楽再生プレーヤ75を構成して、以下のことを実施する。サーバプロセッサ73はコンピュータを用いて構成することができる。なお以下の説明では、図5乃至図9に示したアルゴリズムを併用して説明をする。
 まず1以上の音楽連動制御マスター3からステージ作成コマンドが入力されるとステージ74を作成するとともに仮想音楽再生プレーヤ75を作成する。音楽連動制御サーバ7内のステージ74は、1以上の音楽連動制御マスター3にシークレットキーとアクセスキーを発行する機能を有している。1以上の音楽連動制御マスター3が音楽連動制御サーバのステージと通信する際にはシークレットキーとアクセスキーを用いてアクセスし、複数の音楽連動制御スレーブ5が音楽連動制御サーバ7のステージ74と通信する際には1以上の音楽連動制御マスター3に対して発行されたアクセスキーを用いてアクセスする。シークレットキーは、1以上の音楽連動制御マスター3だけに仮想音楽再生プレーヤ75の状態を変化させる権限を与えている。音楽連動制御マスター3を利用しているユーザーは、音楽連動制御スレーブ5を利用しているユーザーに、対面でアクセスキーを教えたり、ソーシャルメディア、電子メール等を利用してアクセスキーを教えたりすることになる。例えば、音楽連動制御スレーブ5には、アクセスキーをQRコードやURLなどの方法で伝えてもよい。この動作を図5のアルゴリズムに示す。ステップST51では、音楽連動制御マスター3からステージ作成コマンドが入力されたことを「ステージ作成ボタンが押された」か否かにより、判定する。Yesであれば、ステップST52へ進み、ステージを作成し、アクセスキーとシークレットキーを発行する。その後ステップST53で、仮想音楽再生プレーヤ75を作成する。
 図6のアルゴリズムに示すように、1以上の音楽連動制御マスター3からステージ削除コマンドが入力されると(ステップST61で「ステージ削除ボタンを押されたか?」がYesになると)、仮想音楽再生プレーヤ75を削除するとともにステージ74を削除する(ステップST62,ST63)。
 図7のアルゴリズムに示すように、ステージ74は、1以上の音楽連動制御マスター3から音楽コンテンツの再生に関する操作コマンドが入力されると仮想音楽再生プレーヤ75の状態を更新する(ステップST71,ST72)。この「操作コマンド」には即座に状態を変えるコマンドと未来の状態を変えるコマンドが含まれる。そしてステージ74は、1以上の音楽連動制御マスター3または複数の音楽連動制御スレーブ5から、仮想音楽再生プレーヤ75の状態を確認する確認コマンドが入力されると、仮想音楽再生プレーヤ75の状態を、確認コマンドを送信してきた1以上の音楽連動制御マスター3または複数の音楽連動制御スレーブ5に返信する(ステップST73及び74)。さらにステージ74は、1以上の音楽連動制御マスター3または複数の音楽連動制御スレーブ5から、基準時刻と個別時刻との同期を要求する同期要求コマンドが入力されると、そのときの基準時刻を、同期要求コマンドを送信してきた1以上の音楽連動制御マスター3または複数の音楽連動制御スレーブ5に送信する(ステップST75,ST76)。後に詳しく説明するように、基準時刻を受け取った1以上の音楽連動制御マスター3または複数の音楽連動制御スレーブ5では、オフセット時刻を推定して同期動作を行う。
 ここで仮想音楽再生プレーヤ75における「仮想音楽再生プレーヤの状態」は、1以上の音楽連動制御マスター3及び複数の音楽連動制御スレーブ5で再生する音楽コンテンツを特定する音楽コンテンツを識別する識別子(例えば、URL等)、最新の操作コマンドで指令された最新の操作内容、操作コマンドが操作対象とするコンテンツ内再生時刻、コンテンツ内再生時刻に対応する基準時刻上の時刻を含んでいる。代表的な音楽コンテンツを識別する識別子はURLであり、代表的なURLは、You Tube(登録商標)等の映像を含んだコンテンツのURL、MP3のような音楽コンテンツのURLがある。本実施の形態の音楽連動制御プラットフォーム1には音楽配信機能や楽曲アップロード機能はなく、楽曲は元のウェブサイト上から直接ストリーミング再生される。ただし、音楽連動制御プラットフォーム1が一般的に用いられているような音楽配信機能や楽曲アップロード機能を有していてもよいのは勿論である。
 なお本実施の形態では、仮想音楽再生プレーヤ75に「仮想音楽再生プレーヤの状態」として記録されている操作内容には、音楽コンテンツの再生、停止、再生中のシーク及び停止中のシークが含まれている。具体的な「仮想音楽再生プレーヤの状態」として、操作コマンドが再生コマンドの場合には、最新の操作内容としては再生状態が記録され、再生開始時刻としてコンテンツ内再生時刻が記録されている。操作コマンドが停止コマンドの場合には、操作内容としては停止状態が記録されて、再生停止時刻としてコンテンツ内再生時刻が指定されている。そして操作コマンドがシークコマンドの場合には、操作内容としては再生中のシーク状態または停止中のシーク状態が記録されて、シーク先時刻としてコンテンツ内再生時刻が記録されている。なお操作コマンドにシークコマンドが含まれていなくてもよいのは勿論である。
 また図8のアルゴリズムの一例に示すように、ステージ74は、ステップST81でアクセスしてきた1以上の音楽連動制御マスター3及び複数の音楽連動制御スレーブ5がアクセスキーを持っている場合だけ、アクセスキーに基づいて仮想音楽再生プレーヤを特定するとともに、特定した仮想音楽再生プレーヤへのアクセスを許容し、シークレットキーを持ってアクセスした場合だけ、音楽連動制御マスター3からのアクセスであると判定する。なお該当する仮想音楽再生プレーヤがない場合には、すべてのアクセスを拒否する(ステップST82)。そしてステージ74は、ステップST83で、アクセス時に識別番号が付いていたか否かの判定を実行する。ステージ74は、初めてアクセスしてきた1以上の音楽連動制御マスター3及び複数の音楽連動制御スレーブ5に、マスター上限数あるいはスレーブ上限数以下であれば、それぞれ識別IDを付与する機能を有している(ステップST84)。マスター上限数あるいはスレーブ上限数を超えていた場合には識別IDが発行されずに接続が拒否される。ステージ74は、識別IDとアクセス時刻に基づいて、1以上の音楽連動制御マスター3及び複数の音楽連動制御スレーブ5の接続状況を管理する機能を更に備えている。そして特定した仮想音楽再生プレーヤに接続中の1以上の音楽連動制御マスター3及び複数の音楽連動制御スレーブ5を管理するマスター一覧表またはスレーブ一覧表に新たな識別IDを追加して、その識別IDのアクセス時刻(タイムスタンプ)を一覧表に記録する(ステップST85)。またステージ74は、すでに識別IDを持っているアクセスがあった場合には、ステップST87で識別IDの有効性を判別し、有効でなければステップST84で再度の識別IDの発行を行う。識別IDが有効であれば、ステップST88に進んで、マスター一覧表またはスレーブ一覧表に、その識別IDのアクセス時刻(タイムスタンプ)を記録する。最後に、仮想音楽再生プレーヤ75は、アクセス内容に応じて動作する(ステップST86)。
 音楽連動制御サーバ7のステージ74では、図9のアルゴリズムに示すように、ステップST91で、マスター一覧表またはスレーブ一覧表に最終アクセス時刻から一定時間(例えば1分)以上経過した古い識別IDがあるか否かの判定を行う。該当する識別IDがあった場合には、マスター一覧表またはスレーブ一覧表からその識別IDを削除する。これによってアクセスしていない1以上の音楽連動制御マスター3及び複数の音楽連動制御スレーブ5との接続関係を解消して、音楽連動制御サーバ7の負荷を軽減するとともに、接続できる音楽連動制御マスター3の数が制限されている場合に、より多くの音楽連動制御マスター3に対して接続の機会を与え、接続できる音楽連動制御スレーブ5の数が制限されている場合に、より多くの音楽連動制御スレーブ5に対して接続の機会を与えることができる。このように識別IDを発行して管理をすると、マスター上限数あるいはスレーブ上限数として設定台数以上の音楽連動制御マスター3及び設定台数以上の音楽連動制御スレーブ5が、音楽連動制御サーバ7に接続されることを防止できる上、すでに接続が切られている(最後のアクセスから一定時間以上経過していて接続されてくる見込みが低い)音楽連動制御マスター3及び音楽連動制御スレーブ5を管理外のものとすることができる。
 [音楽連動制御マスターの機能]
 以下の説明では、音楽連動制御マスター3の機能と動作を説明する。
 1以上の音楽連動制御マスター3のマスター制御部35は、「仮想音楽再生プレーヤの状態」から求まるコンテンツ内再生時刻に対応する基準時刻上の時刻を、コンテンツ内再生時刻に対応する個別時刻上の時刻に変換して、マスター音楽再生プレーヤ31及びマスター音楽連動演出器32を制御する機能を有している。
 具体的には図10のアルゴリズム(音楽連動制御マスターの動作1)に示すように、1以上の音楽連動制御マスター3のマスター制御部35が音楽連動制御サーバ7にアクセスする(ステップST101)。音楽連動制御マスター3は、仮想音楽再生プレーヤ75との時刻同期を要求して基準時刻と「仮想音楽再生プレーヤの状態」を受け取る。そして「仮想音楽再生プレーヤの状態」を受け取った1以上の音楽連動制御マスター3のマスター制御部35は、仮想音楽再生プレーヤ75の状態から求まるコンテンツ内再生時刻に対応する基準時刻上の時刻を、コンテンツ内再生時刻に対応する個別時刻上の時刻に変換する。図11は、この変換のアルゴリズムを示している。図11に示すように、マスター制御部35は、ST102aで、時刻同期(オフセット時刻推定)によって音楽連動制御マスター3の個別時刻から音楽連動制御サーバの基準時刻を引いた時刻差(オフセット時刻)を算出する。またマスター制御部35は、音楽連動制御サーバ7の仮想音楽再生プレーヤ75の状態を取得する(ステップST102b)。次にコンテンツ内再生時刻に対応する基準時刻上の時刻を取得する(ステップST102c)。そして最後にコンテンツ内再生時刻に対応する基準時刻上の時刻に、オフセット時刻を加算することによって、コンテンツ内再生時刻に対応する個別時刻上の時刻に変換する(ステップST102d)。
 その後図10のステップST103において、音楽コンテンツの再生が必要だと音楽連動制御マスター3を利用しているユーザーによって指定されているかを判断する。音楽の再生が必要であれば、ステップST104で音楽コンテンツをストリーミング再生する準備をする。そしてステップST105では、マスター音楽再生プレーヤのインターフェイスを表示部37に表示する(音楽動画を音楽連動演出として再生する場合には、表示部37に映像表示用ウインドも表示する)。その後、音楽連動制御マスター3は、後述する動作2,3及び4のアルゴリズムを並列に実行する(ステップST106)。
 図12は、音楽連動制御マスター3から音楽連動制御サーバ7の仮想音楽再生プレーヤに状態変更の操作コマンドを送信する場合の動作2のアルゴリズムの一例を示している。この動作2では、ステップST121で音楽連動制御マスター3のマスター音楽再生プレーヤ上の入力インターフェイス38が操作されたか、あるいはプログラム上で再生・停止・シークが指定されたかの判断が行なわれる。そしてYesの場合には、ステップST123へ進み、音楽連動制御マスター3から音楽連動制御サーバ7の仮想音楽再生プレーヤ75へ操作コマンド(再生・停止・シーク)を送信する。ステップ121で操作コマンドによる指定がない場合には、ステップST122へと進み、仮想音楽再生プレーヤの状態を前回のサーバへ問い合わせてから一定時間以上のランダムな間隔が既に空いていたら、仮想音楽再生プレーヤの状態を問い合わせる。一定間隔でも実施することはできるが、ここでランダムな間隔を採用すると、音楽連動制御サーバ7のアクセス負荷を下げることができる。そしてステップST124で、仮想音楽再生プレーヤの状態の変化を検出したら、ステップST125へと進み、変化がなければステップ121へと戻る。ステップST125では、本実施の形態の場合、仮想音楽再生プレーヤの状態に応じて、マスター音楽再生プレーヤ31を制御する(再生、停止、シーク後に再生、シーク後に停止、に応じた制御をする)。なお仮想音楽再生プレーヤの状態に、シーク後に再生、シーク後に停止、が含まれていない場合には、マスター音楽再生プレーヤ31の制御において、シーク後に再生、シーク後に停止、に応じた制御を含める必要はない。
 図13はイベントに対する処理内容を実施する際の動作3のアルゴリズムを示している。この動作3で、ステップST131でマスター音楽再生プレーヤ31が再生動作をしているか否かの判断し、Yesの場合にはステップST132へと進む。ステップST132では、マスター音楽再生プレーヤ31の現時点でのコンテンツ内再生時刻(音楽コンテンツ内での再生位置)を取得する。図14は、ステップST132の詳細なアルゴリズムを示している。最初にステップST132aで、音楽コンテンツの再生が必要であると指定されているか否かの判断がなされる。音楽コンテンツの再生が必要ない場合には、ステップ132fでマスター音楽再生プレーヤ31のコンテンツ内再生時刻を「仮想音楽再生プレーヤの状態」から計算する。再生が指定されている場合には、ステップ132bで、マスター音楽再生プレーヤ31が現時点で再生している音楽コンテンツの実際のコンテンツ内再生時刻(ネットワークの負荷等により読み込みが遅れて遅延の可能性がある)を取得する。そしてステップ132cでマスター音楽再生プレーヤ31の本来のコンテンツ内再生時刻を仮想音楽再生プレーヤの状態から計算して記憶する。そしてステップ132dで、実際のコンテンツ内再生時刻と本来のコンテンツ内再生時刻が一定時間以上ずれているかを判断し、Yesであれば、ステップST132eへと進む。ステップ132eでは、マスター音楽再生プレーヤ31の状態を更新する(シーク等によって、本来のコンテンツ内再生時刻を再生している状態に近づけ操作をする)。このようにすると何らかの原因で個別時刻と、同期要求コマンドを要求して得た音楽連動制御サーバの基準時刻とのずれが著しく大きくなったときに、実質的に同期動作を再び完全に同期した状態にすることが可能になる。
 ステップST132を実行した後、ステップST133では、コンテンツ内再生時刻にイベントがあるか否か判断され、Yesの場合には、ステップST134でイベントに登録された処理を呼び出して実行する。ここでイベントは、ビート、小節、サビ区間、繰り返し区間、またはコード等に基づいて定められている。音楽連動制御マスター3は、音楽コンテンツに含まれる楽曲解析結果に応じて1以上のイベントに対応する処理内容を設定する機能を有している。より具体的には、音楽連動制御マスター3のマスター制御部35は、音楽コンテンツに対応する楽曲解析結果を取得すると、楽曲解析結果に1以上のイベントが含まれており、マスター音楽再生プレーヤが再生動作をしているときに、マスター音楽再生プレーヤにおけるコンテンツ内再生時刻がイベントの時刻に一致したか否かを判定し、一致したイベントに対する処理内容を実行する機能を有している。このようにすると、音楽と連動してイベントの処理内容を実行することができる。その結果、イベントの処理内容の実行が、音楽連動制御マスターによって自律的に行われるので、イベントの処理内容の実行に関して、音楽連動制御サーバ7の負荷が増加することはないという利点がある。また通信が断続的にあってもイベントの処理内容を連続して実行することができる。
 本実施の形態では、マスター音楽連動演出器32を備えているので、マスター音楽連動演出器32は、イベントに対する処理内容を実行することによって、音楽の楽曲解析結果に連動して制御される。これによって、演出の音楽連動が実現できる。また1以上の音楽連動制御マスター3が、音楽コンテンツに含まれる楽曲解析結果に応じて1以上のイベントに対応する処理内容を設定する機能を有していると、ユーザーまたはプログラマーがイベントに対応する処理内容を自在に設定することが可能になる。また多種多様な演出を音楽に連動させたり、多種多様な機器を制御したりすることが可能になる。
 図15は、音楽連動制御マスターの動作4のアルゴリズムを示している。動作4のアルゴリズムでは、ステップST151において、前回の時刻同期から一定時間が経過したかが判断され、一定時間が経過した場合には、ステップST152へと進む。ステップST152では、音楽連動制御マスター3は、同期要求コマンドを仮想音楽再生プレーヤ75に送信して音楽連動制御マスター3との時刻同期(オフセット時刻推定)を要求し、音楽連動制御サーバ7の基準時刻を取得する。音楽連動制御マスター3のマスター制御部35は、音楽連動制御サーバ7の基準時刻とのずれをオフセット時間として記録する。音楽連動制御サーバ7の基準時刻とのずれは、例えば、音楽連動制御マスター3が時刻同期の要求を音楽連動制御サーバ7に送信したときの個別時刻Aと、その時刻同期の要求を音楽連動制御サーバ7が受信したときの基準時刻Bと、その時刻同期の要求に対する返答として音楽連動制御サーバ7から音楽連動制御マスター3に送られてくる基準時刻Bの情報を音楽連動制御マスター3が受信したときの個別時刻Cの三つの時刻から計算することができ、個別時刻Aと個別時刻Cを加算して2で割った中間の時刻から、基準時刻Bを減算した結果を音楽連動制御マスター3と音楽連動制御サーバ7との時刻のずれ、すなわち、オフセット時刻と推定できる。オフセット時刻の推定精度を上げたり安定に推定させたりするためには、このオフセット時刻の推定の動作(音楽連動制御マスター3側からの音楽連動制御サーバ7への時刻同期の要求の送信と、その音楽連動制御サーバ7による基準時刻の返答の音楽連動制御マスター3側での受信)を複数回(例えば3回)繰り返し、その各回のオフセット時刻の推定結果の中央値や平均値を、最終的なオフセット時刻としてもよい。そして、オフセット時間が予め定めた値(例えば100ms以上)より大きく変動していたら、音楽連動制御マスター3のマスター制御部35は、マスター音楽再生プレーヤ31における本来のコンテンツ内再生時刻を補正する(ST153)。このようにすると何らかの原因で個別時刻と、同期要求コマンドを要求して得た音楽連動制御サーバ7の基準時刻とのずれが著しく大きくなったときに、実質的に同期動作を再び完全に同期した状態にすることが可能になる。
 [音楽連動制御スレーブの機能]
 以下の説明では、音楽連動制御スレーブ5の機能と動作を説明する。
 複数の音楽連動制御スレーブ5のスレーブ制御部55は、「仮想音楽再生プレーヤの状態」から求まるコンテンツ内再生時刻に対応する基準時刻上の時刻を、コンテンツ内再生時刻に対応する個別時刻上の時刻に変換して、スレーブ音楽再生プレーヤ51及びスレーブ音楽連動演出器52を制御する機能を有している。
 仮想音楽再生プレーヤ75の状態を受け取った複数の音楽連動制御スレーブ5のスレーブ制御部55も、仮想音楽再生プレーヤ75の状態から求まるコンテンツ内再生時刻に対応する基準時刻上の時刻を、コンテンツ内再生時刻に対応する個別時刻上の時刻に変換して、スレーブ音楽再生プレーヤ51及びスレーブ音楽連動演出器52を制御して、URL等の識別子から得た音楽コンテンツを再生するかこの音楽コンテンツの再生に連動する演出を実行する。
 具体的には図16のアルゴリズム(音楽連動制御スレーブの動作1)に示すように、1以上の音楽連動制御スレーブ5のスレーブ制御部55が音楽連動制御サーバ7にアクセスする(ステップST161)。音楽連動制御スレーブ5は、仮想音楽再生プレーヤ75との時刻同期を要求して基準時刻と「仮想音楽再生プレーヤの状態」を受け取る。そして「仮想音楽再生プレーヤの状態」を受け取った1以上の音楽連動制御スレーブ5のスレーブ制御部55は、仮想音楽再生プレーヤ75の状態から求まるコンテンツ内再生時刻に対応する基準時刻上の時刻を、コンテンツ内再生時刻に対応する個別時刻上の時刻に変換する。図17は、この変換のアルゴリズムを示している。図17に示すように、スレーブ制御部55は、ST162aで、時刻同期(オフセット時刻推定)によって音楽連動制御スレーブ5の個別時刻から音楽連動制御サーバの基準時刻を引いた時刻差(オフセット時刻)を算出する。またスレーブ制御部55は、音楽連動制御サーバ7の仮想音楽再生プレーヤ75の状態を取得する(ステップST162b)。次にコンテンツ内再生時刻に対応する基準時刻上の時刻を取得する(ステップST162c)。そして最後にコンテンツ内再生時刻に対応する基準時刻上の時刻に、オフセット時刻を加算することによって、コンテンツ内再生時刻に対応する個別時刻上の時刻に変換する(ステップST162d)。
 その後図16のステップST163において、音楽コンテンツの再生が必要だと音楽連動制御スレーブ5を利用しているユーザーによって指定されているかを判断する。音楽の再生が必要であれば、ステップST164で音楽コンテンツをストリーミング再生する準備をする。そしてステップST165では、スレーブ音楽再生プレーヤのインターフェイスを表示部57に表示する(音楽動画を音楽連動演出として再生する場合には、表示部57に映像表示用ウインドも表示する)。その後、音楽連動制御スレーブ5は、後述する動作2,3及び4のアルゴリズムを並列に実行する(ステップST166)。
 図18は、音楽連動制御スレーブの動作2のアルゴリズムを示している。このアルゴリズムでは、ステップST181で、「仮想音楽再生プレーヤの状態」を前回のサーバへ問い合わせてから一定時間以上のランダムな間隔が既に空いていたら、仮想音楽再生プレーヤの状態を問い合わせる。一定間隔でも実施することはできるが、ここでランダムな間隔を採用すると、音楽連動制御サーバ7のアクセス負荷を下げることができる。そしてステップST182で、仮想音楽再生プレーヤの状態の変化を検出したら、ステップST183へと進み、変化がなければステップ181へと戻る。ステップST183では、仮想音楽再生プレーヤの状態に応じて、スレーブ音楽再生プレーヤ51を制御する(再生、停止、シーク後に再生、シーク後に停止、に応じた制御をする)。なお仮想音楽再生プレーヤの状態に、シーク後に再生、シーク後に停止、が含まれていない場合には、マスター音楽再生プレーヤ51の制御において、シーク後に再生、シーク後に停止、に応じた制御を含める必要はない。
 図19は、イベントに対する処理内容を実施する際の動作3のアルゴリズムを示している。この動作3で、ステップST191でスレーブ音楽再生プレーヤ51が再生動作をしているか否かの判断し、Yesの場合にはステップST192へと進む。ステップST192では、スレーブ音楽再生プレーヤ51の現時点でのコンテンツ内再生時刻(音楽コンテンツ内での再生位置)を取得する。ステップST192の詳細なアルゴリズムは、図14のアルゴリズムと実質的に同じである。最初に、音楽コンテンツの再生が必要であると指定されているか否かの判断がなされる。音楽コンテンツの再生が必要ない場合には、スレーブ音楽再生プレーヤ51のコンテンツ内再生時刻を「仮想音楽再生プレーヤの状態」から計算する。再生が指定されている場合には、スレーブ音楽再生プレーヤ51が現時点で再生している音楽コンテンツの実際のコンテンツ内再生時刻(ネットワークの負荷等により読み込みが遅れて遅延の可能性がある)を取得する。そしてスレーブ音楽再生プレーヤ51の本来のコンテンツ内再生時刻を仮想音楽再生プレーヤの状態から計算して記憶する。そして実際のコンテンツ内再生時刻と本来のコンテンツ内再生時刻が一定時間以上ずれているかを判断する。判断の結果、Yesであれば、スレーブ音楽再生プレーヤ51の状態を更新する(シーク等によって、本来のコンテンツ内再生時刻を再生している状態に近づけ操作をする)。このようにすると何らかの原因で個別時刻と、同期要求コマンドを要求して得た音楽連動制御サーバの基準時刻とのずれが著しく大きくなったときに、実質的に同期動作を再び完全に同期した状態にすることが可能になる。
 ステップST192を実行した後、ステップST193では、コンテンツ内再生時刻にイベントがあるか否か判断され、Yesの場合には、ステップST194でイベントに登録された処理を呼び出して実行する。音楽連動制御スレーブ5は、音楽コンテンツに含まれる楽曲解析結果に応じて1以上のイベントに対応する処理内容を設定する機能を有している。より具体的には、音楽連動制御スレーブ5のスレーブ制御部55は、音楽コンテンツに対応する楽曲解析結果を取得すると、楽曲解析結果に1以上のイベントが含まれており、スレーブ音楽再生プレーヤが再生動作をしているときに、スレーブ音楽再生プレーヤにおけるコンテンツ内再生時刻がイベントの時刻に一致したか否かを判定し、一致したイベントに対する処理内容を実行する機能を有している。このようにすると、音楽と連動してイベントの処理内容を実行することができる。その結果、イベントの処理内容の実行が、音楽連動制御スレーブによって自律的に行われるので、イベントの処理内容の実行に関して、音楽連動制御サーバ7の負荷が増加することはないという利点がある。また通信が断続的にあってもイベントの処理内容を連続して実行することができる。
 また本実施の形態では、スレーブ音楽連動演出器52を備えているので、スレーブ音楽連動演出器52は、イベントに対する処理内容を実行することによって、音楽の楽曲解析結果に連動して制御される。これによって、演出の音楽連動が実現できる。また1以上の音楽連動制御スレーブ5も、音楽コンテンツに含まれる楽曲解析結果に応じて1以上のイベントに対応する処理内容を設定する機能を有している。
 図20は、音楽連動制御スレーブの動作4のアルゴリズムを示している。動作4のアルゴリズムでは、ステップST201において、前回の時刻同期から一定時間が経過したかが判断され、一定時間が経過した場合には、ステップST202へと進む。ステップST202では、音楽連動制御スレーブ5は、同期要求コマンドを仮想音楽再生プレーヤ75に送信して音楽連動制御スレーブ5との時刻同期(オフセット時刻推定)を要求し、音楽連動制御サーバ7の基準時刻を取得する。音楽連動制御スレーブ5のスレーブ制御部55は、音楽連動制御サーバ7の基準時刻とのずれをオフセット時間として記録する。音楽連動制御サーバ7の基準時刻とのずれは、例えば、音楽連動制御スレーブ5が時刻同期の要求を音楽連動制御サーバ7に送信したときの個別時刻Aと、その時刻同期の要求を音楽連動制御サーバ7が受信したときの基準時刻Bと、その時刻同期の要求に対する返答として音楽連動制御サーバ7から音楽連動制御スレーブ5に送られてくる基準時刻Bの情報を音楽連動制御スレーブ5が受信したときの個別時刻Cの三つの時刻から計算することができ、個別時刻Aと個別時刻Cを加算して2で割った中間の時刻から、基準時刻Bを減算した結果を音楽連動制御スレーブ5と音楽連動制御サーバ7との時刻のずれ、すなわち、オフセット時刻と推定できる。オフセット時刻の推定精度を上げたり安定に推定させたりするためには、このオフセット時刻の推定の動作(音楽連動制御スレーブ5側からの音楽連動制御サーバ7への時刻同期の要求の送信と、その音楽連動制御サーバ7による基準時刻の返答の音楽連動制御スレーブ5側での受信)を複数回(例えば3回)繰り返し、その各回のオフセット時刻の推定結果の中央値や平均値を、最終的なオフセット時刻としてもよい。そして、オフセット時間が予め定めた値(例えば100ms以上)より大きく変動していたら、音楽連動制御スレーブ5のスレーブ制御部55は、スレーブ音楽再生プレーヤ51における本来のコンテンツ内再生時刻を補正する(ST203)。このようにすると何らかの原因で個別時刻と、同期要求コマンドを要求して得た音楽連動制御サーバ7の基準時刻とのずれが著しく大きくなったときに、実質的に同期動作を再び完全に同期した状態にすることが可能になる。
 [音楽連動制御プラットフォーム上で動作する音楽連動制御アプリケーションの機能]
 図21は、本実施の形態の音楽連動制御プラットフォーム上で動作する音楽連動制御アプリケーションの一事例で用いる動作アルゴリズムを示している。この動作アルゴリズムを用いて、本実施の形態の音楽連動制御マスター3及び音楽連動制御スレーブ5上の音楽連動制御アプリケーションの動作を説明する。最初に、音楽連動制御アプリケーションは、ユーザーが音楽連動制御マスター3のために選択した楽曲を、音楽連動制御マスター3から音楽連動制御サーバ7の仮想音楽再生プレーヤ75に設定する(ステップST211)。次に音楽連動制御マスター3及び/または音楽連動制御スレーブ5のユーザーが選択した演出スタイルを、音楽連動制御マスター3及び/または音楽連動制御スレーブ5のそれぞれに設定し、その演出スタイルに応じて各イベントに対する処理内容を音楽連動制御マスター3及び/または音楽連動制御スレーブ5のマスター制御部35及び/またはスレーブ制御部55に登録する(ステップST212及びST213)。そして音楽連動制御アプリケーションの動作は、音楽連動制御マスター3または音楽連動制御スレーブ5のどちらであるかによって異なるので、その後の実行内容を決定する(ステップST214)。音楽連動制御マスター3として実行する場合には、音楽連動制御サーバ7の仮想音楽再生プレーヤ75に常にシークレットキー、アクセスキー及び識別IDでアクセスする(ステップST215)。音楽連動制御マスター3では、動作1乃至4のアルゴリズムに基づいて音楽コンテンツの再生に併せた音楽連動制御が自動的に実行される(ステップST216)。音楽連動制御スレーブ5として実行する場合には、音楽連動制御サーバ7の仮想音楽再生プレーヤ75に常にアクセスキー及び識別IDでアクセスする(ステップST217)。音楽連動制御スレーブ5では、動作1乃至4のアルゴリズムに基づいて音楽コンテンツの再生に併せた音楽連動制御が自動的に実行される(ステップST218)。
 [実施の形態の実用化のための開発の経緯]
 出願人は、音楽理解技術に基づいて人々の音楽体験をより豊かにすることで、学術・産業・社会・文化的に貢献することを目指した研究開発に取り組んできた。これまでに、ウェブ上の楽曲の中身を音楽理解技術で可視化する能動的音楽鑑賞サービス「Songle(ソングル)」(http://songle.jp)や、膨大な音楽コンテンツを俯瞰的に鑑賞できる音楽視聴支援サービス「Songrium(ソングリウム)」(http://songrium.jp)、楽曲に合わせて歌詞をアニメーション化できる歌詞アニメーション制作支援サービス「TextAlive(テキストアライブ)」(http://textalive.jp)を開発し、一般に公開してきた(2012年8月29日、2013年8月27日、2015年9月8日 産総研・JST共同プレス発表)。
 これらの研究開発を通じ、音楽に連動した表現・制御が価値を持ち、人々の関心も高いことが分かってきた。そこで、楽曲の中身(ビートや小節、サビ等)を楽曲解析した結果を一台のパソコンのウェブブラウザ上で利用して音楽に連動した演出ができる「Songle Widget(ソングルウィジェット)」(http://widget.songle.jp)の仕組みを開発し、2014年8月に試験公開した。
 そこで本出願のために新たな研究開発に取り組み、従来の技術では実現できていなかった複数台の多種多様な機器の同期制御に発展させて、インターネットに接続できる環境であれば、場所や人数を問わず、人々が同時刻に同一楽曲の音楽連動制御を楽しめる新たな仕組みを開発し、この開発に基づく技術について本発明を出願することとした。
 [開発内容]
 ウェブ上の楽曲の再生に合わせて、百人を超えるような多人数の人々が既に所有する多種多様な携帯端末(スマートフォン、タブレット)・パソコン・Internet of Things (IoT)デバイスを連携させて制御することができる仕組みを本発明の基礎技術として開発した。本発明のために開発した基礎技術による本実施の形態のプラットフォームでは、多数の汎用機器を自由自在に組み合わせた多様な実行環境で、通信が断続的であっても問題なく動作するように、各機器が自律的に音楽を再生しながら、それに連動してさまざまな演出をすることができる。人々はこの仕組みにより、異なる演出を手軽に組み合わせたり、演出を変更したりすることができる。
 本実施の形態のプラットフォームによって既に実現した音楽連動制御アプリケーション(アプリ)の一例は、以下の手順で利用できる。
 (1)楽曲と演出スタイルの選択
 ユーザーはスマートフォンやパソコン上のウェブブラウザを使って、ウェブサイト上で公開されている楽曲(MP3形式の音響信号ファイルや楽曲・動画共有サービス上の楽曲・動画)と、楽曲全体にわたる演出の仕方を決める数種類の「演出スタイル」を好みに応じて選択する。すると、音楽再生プレーヤが表示され、ウェブサイト上にある楽曲がストリーミング再生されるとともに、その楽曲のビートやサビなどに応じて多様に変化するCGアニメーション(CG映像)が、選択した演出スタイルに応じて描画され、楽曲を目と耳の両方で楽しむことができる。
 (2)アクセスキーの発行
 本実施の形態のプラットフォームでは、仮想音楽再生プレーヤにさまざまな人々が接続するためのアクセスキー(文字列、URL、QRコード)を発行する。ユーザーは、一緒に音楽と演出を楽しみたい他の人々に、このアクセスキーを通知する。
 (3)複数の汎用機器がインターネットを介して音楽に連動
 他の人々が自分のスマートフォンやパソコン上のウェブブラウザに、通知されたアクセスキーを入力すると、同じ楽曲の音楽再生プレーヤがインターフェイス上に表示され、場所を問わず全員が同じ瞬間に同期して楽曲とアニメーションを楽しむことができる。楽曲の途中で接続しても同期するだけでなく、アクセスキーを通知したユーザーが楽曲を変更したり再生・停止したりすれば、それに連動して、他の人々の楽曲やアニメーションも変更・再生・停止する。楽曲とアニメーションのどちらか一方だけを選択することもでき、例えばアクセスキーを配ったユーザーがスピーカーで鳴らしている音楽を一緒に聞きながら、その場にいる他の人々のスマートフォンの画面に同じアニメーションを音楽は再生せずに表示する使い方ができる。
 本実施の形態のプラットフォームを用いると、楽曲コンテンツを再生し演出を描画する音楽連動制御アプリそのものを、開発キットを用いて、演出スタイルのサンプルプログラムを変更するだけで、プログラマーが自由かつ容易に開発できる。その際、多数の機器制御を意識する必要がなく、一台の機器を制御するつもりでプログラミングをすれば、プラットフォームが他の機器との時刻同期を自動的に実現する。
 [本実施の形態の特徴]
 (1)ウェブ上の楽曲を再生しながら多種多様な携帯端末・パソコン・IoTデバイスの連動制御を実現
 本実施の形態のプラットフォームでは、ウェブサイト上で公開されている100万曲以上の楽曲を音楽サービスSongleが自動解析した結果を即座に利用して、楽曲毎に異なる中身に連動した演出を楽しむことが可能である。再生したい楽曲が自動解析されていなければ、SongleにそのURLを登録すると自動解析され、その楽曲も再生できる。Songleや本実施の形態のプラットフォームには音楽配信機能や楽曲アップロード機能はなく、楽曲は元のウェブサイト上から直接ストリーミング再生される仕組みとなっている。本実施の形態のプラットフォームの演出スタイルは、JavaScript(登録商標)が実行できる一般的なウェブブラウザから利用できて汎用性が高いため、異なるOS[Windows(登録商標)、MacOS(登録商標)]を搭載したパソコンや、異なるOS[iOS(登録商標)、Android(登録商標)]を搭載したスマートフォン・タブレットのような多種多様な機器を連動制御することが可能である。さらに、サーバ上で動作するJavaScript環境Node.jsを用いれば、小型軽量端末Raspberry Piや、IoTデバイス(ロボットや照明機器、衣装のLED等)を活用した演出もできる。
 楽曲を選んで再生すれば音楽連動制御ができる本実施の形態のプラットフォームの利用事例を実際に開発し、多種多様な機器によるさまざまな演出スタイルを容易に開発できることを確認している。
 (a)画面表示
 パソコン、iPhone(登録商標)、iPad(登録商標)、iPod touch(登録商標)、Android(登録商標)フォン、Raspberry Pi(登録商標)等を用いて、画面上で音楽に連動したアニメーションを表示できた。
 (b)空間演出制御
 照明機器やLEDを内蔵した光る生活雑貨(花瓶、キャンドル)等を用いて、部屋・環境の照明・光を音楽に連動して変化させられた。
 (c)ファッション制御
 LED(発光ダイオード)を装着・内蔵した光る衣装や光る腕輪を用いて、音楽に連動した発光制御ができた。
 (d)メカ制御
 小型ロボットや電動カーテンを用いて、音楽に連動してロボットを動かし、カーテンを開閉できた。
 (2)大規模な音楽連動制御に基づく音楽体験が今後さまざまな利用シーンで新たな価値を創出
 本実施の形態のプラットフォームを人々が利用すれば、楽曲の再生を開始すると、既に所有している携帯端末・パソコン等のスピーカーから同時に同じ楽曲が鳴り、しかもそれらの画面に、その音楽に合わせて動く多様で変化に富むアニメーションが表示可能になる。こうした音楽体験は従来なく、今後、例えば、図22に示すような利用シーンで新たな価値を創出できる可能性がある。
 (a)ライブ・イベント会場
 会場スピーカーから流れる音楽の再生に合わせて、来場者のスマートフォンの画面に変化に富んだアニメーションを表示するような新たな演出が可能になる。さらに、会場の複数の大型スクリーンにも同じアニメーションを出したり、ステージ登壇者の衣装や腕輪を発光させたりするような応用もできる。着席後のライブ開始前やイベントの入場待機列等の場面で来場者に一体感を持って楽しんでもらう演出として、音楽連動制御を活用しても効果的である。
 (b)ショッピングモール・店舗
 背景音楽(BGM)に連動して通路や店舗の壁面や床等のさまざまな箇所に演出が可能となる。大型照明機器、プロジェクター投影映像等が連動した演出で、モールや店舗全体に一体感が出すことができる。さらに来店者のスマートフォンと連動させても効果的である。
 (c)カフェ・飲食店
 飲食時の背景音楽(BGM)に、間接照明やディスプレイ・照明機器を連動させることで、ムードを変えたり、店舗毎に異なる印象を与えたりする演出が可能になる。
 (d)街中・屋外イベント
 街中全体を使った屋外イベントのような機会に、既に設置されているさまざまなディスプレイや照明、プロジェクションマッピング等を組み合わせて、音楽連動制御を実施することも考えられる。主催者が事前に用意した特別な演出を体験可能なQRコードを配布すれば、その街を訪れている人々が同時に音楽に連動した演出を楽しむことができる。
 (3)プログラマーが大規模音楽連動制御の利用事例を容易に開発できるプラットフォームを提供
 本実施の形態のプラットフォームは、ユーザーにとって自分の機器が容易に他の機器と連動する新たな音楽体験を可能にするだけでなく、以下のように、プログラマーにとっても大規模な音楽連動制御を容易に演出できる新たなプログラミング体験を可能にできる。そのための開発キットAPI(Application Programming Interface)、サンプルプログラム、チュートリアル)も提供している。
 (a)プログラマーは音楽に同期させるための時間管理を意識する必要がない。
楽曲の小節の先頭ではこういう演出、サビに入ったらこういう演出、という風にイベント駆動なプログラムを記述するだけで、楽曲中の再生時刻が各イベントの時刻に達すると自動的にそうした演出が実行される。しかも楽曲毎に手作業でイベントを設定する必要がなく、楽曲解析結果(ビート、小節、サビ、繰り返し区間、コード等)をイベントとして利用できる。
 (b)プログラマーは他の機器との連動制御を意識する必要がない。
一台の機器を念頭においてアプリをプログラミングするだけで、他の多数の機器と自動的に連動できる。しかも、スマートフォンやパソコンのウェブブラウザで動作するアプリ、ロボットを制御するアプリ、照明を制御するアプリのように、個別に開発されたさまざまな種類のアプリを、ある楽曲の再生に一緒に連動させることができる。このようにプログラマーは、通信や他の機器との連動制御を全く意識せずに、大規模な音楽連動制御を実現できる。
 本実施の形態のプラットフォームは、多様な演出を実現する音楽連動制御アプリをさまざまなプログラマーが開発できる汎用のプラットフォームであり、拡張性が高く演出が固定されていない点が優れている。サーバとの通信によって、各機器が楽曲の再生に連動して自律的に動作すれば、機器同士が直接通信をしなくても全体が同期して動作しているように見える。これに着目して、機器が多種多様かつ多数で、通信が断続的であっても問題ないように、各機器が接続時に楽曲解析結果を取得して時刻同期をした後は、楽曲の再生時刻に応じて自律的にイベント駆動で演出を呼び出している。各機器上での音楽再生プレーヤの再生時刻もずれないように自律的に調整する。これによってサーバへの接続台数が増えても各機器の動作に影響が少なく、各機器が音楽の途中からでも演出に参加可能になっている。また、音楽連動制御の仕組みが機種依存になって相互接続が困難になる問題が起きないように、ウェブ標準技術に基づいて実装した。これによってプログラマーはJavaScriptで記述したアプリを幅広い実行環境(JavaScriptが実行できる一般的なウェブブラウザ、JavaScript環境Node.jsなど)で動作させることができ、ユーザーはQRコード等で手軽にアプリを利用できるようになっている。
 本発明によれば、音楽連動サーバ内の仮想音楽再生プレーヤの状態を基準とすることにより、1以上の音楽連動制御マスターにおける個別時刻及び複数の音楽連動制御スレーブにおける個別時刻と音楽連動サーバにおける基準時刻とが一致していない場合でも、1以上の音楽連動制御マスター及び複数の音楽連動制御スレーブにおいて、同じ音楽コンテンツを実質的に同期して再生することができ、また複数の音楽連動制御スレーブにおいては音楽コンテンツの再生に同期してスレーブ音楽連動演出器を動作させることができる。
 1 音楽連動制御プラットフォーム
 3 音楽連動制御マスター
 31 マスター音楽再生プレーヤ
 32 マスター音楽連動演出器
 33 個別時刻発生器
 34 通信手段
 35 マスター制御部
 36 マスタープロセッサ
 37 表示部
 38 入力インターフェイス
 5 音楽連動制御スレーブ
 51 スレーブ音楽再生プレーヤ
 52 スレーブ音楽連動演出器
 53 個別時刻発生器
 54 通信手段
 55 スレーブ制御部
 56 スレーブプロセッサ
 57 表示部
 58 入力インターフェイス
 7 音楽連動制御サーバ
 71 基準時刻発生器
 72 通信手段
 73 サーバプロセッサ
 74 ステージ
 75 仮想音楽再生プレーヤ
 9 楽曲解析部

Claims (18)

  1.  複数の機器で音楽再生及び音楽連動演出の少なくとも一つを音楽に同期させる音楽連動制御プラットフォームにおいて、
     マスター音楽再生プレーヤと、個別時刻を発生する個別時刻発生器、通信手段及び前記マスター音楽再生プレーヤのマスター制御部を構成するマスタープロセッサを備えて、複数の音楽コンテンツの中から選択した音楽コンテンツを再生するように前記マスター音楽再生プレーヤを制御する1以上の音楽連動制御マスターと、
     スレーブ音楽再生プレーヤ及びスレーブ音楽連動演出器の少なくとも一つと、個別時刻を発生する個別時刻発生器、通信手段並びに前記スレーブ音楽再生プレーヤ及びスレーブ音楽連動演出器の少なくとも一つのスレーブ制御部を構成するスレーブプロセッサを備えて、前記スレーブ音楽再生プレーヤ及び前記スレーブ音楽連動演出器の少なくとも一つを制御する複数の音楽連動制御スレーブと、
     基準時刻を発生する基準時刻発生器と通信ネットワークを介して前記1以上の音楽連動制御マスター及び前記複数の音楽連動制御スレーブと接続される通信手段を有するサーバプロセッサを備え、
     前記サーバプロセッサにより、
     前記1以上の音楽連動制御マスターからステージ作成コマンドが入力されるとステージを作成するとともに仮想音楽再生プレーヤを作成し、
     前記1以上の音楽連動制御マスターからステージ削除コマンドが入力されると前記仮想音楽再生プレーヤを削除するとともに前記ステージを削除し、
     前記1以上の音楽連動制御マスターから前記音楽コンテンツの再生に関する操作コマンドが入力されると前記仮想音楽再生プレーヤの状態を更新し、
     前記1以上の音楽連動制御マスターまたは前記複数の音楽連動制御スレーブから、前記仮想音楽再生プレーヤの状態を確認する確認コマンドが入力されると前記仮想音楽再生プレーヤの状態を、前記確認コマンドを送信してきた前記1以上の音楽連動制御マスターまたは前記複数の音楽連動制御スレーブに返信し、
     前記1以上の音楽連動制御マスターまたは前記複数の音楽連動制御スレーブから、基準時刻と前記個別時刻との同期を要求する同期要求コマンドが入力されると、そのときの前記基準時刻を、前記同期要求コマンドを送信してきた前記1以上の音楽連動制御マスターまたは前記複数の音楽連動制御スレーブに送信する音楽連動制御サーバとを具備し、
     前記仮想音楽再生プレーヤの状態は、少なくとも前記1以上の音楽連動制御マスターで再生する前記音楽コンテンツを特定する音楽コンテンツを識別する識別子、最新の前記操作コマンドで指令された最新の操作内容、前記操作コマンドが操作対象とするコンテンツ内再生時刻、前記コンテンツ内再生時刻に対応する前記基準時刻上の時刻を含んでおり、
     前記1以上の音楽連動制御マスターの前記マスター制御部は、前記仮想音楽再生プレーヤの状態から求まる前記コンテンツ内再生時刻に対応する前記基準時刻上の時刻を、前記コンテンツ内再生時刻に対応する前記個別時刻上の時刻に変換して、前記マスター音楽再生プレーヤを制御する機能を有しており、
     前記複数の音楽連動制御スレーブの前記スレーブ制御部は、前記仮想音楽再生プレーヤの状態から求まる前記コンテンツ内再生時刻に対応する前記基準時刻上の時刻を、前記コンテンツ内再生時刻に対応する前記個別時刻上の時刻に変換して、前記スレーブ音楽再生プレーヤ及び前記スレーブ音楽連動演出器の少なくとも一つを制御する機能を有していることを特徴とする音楽連動制御プラットフォーム。
  2.  前記1以上の音楽連動制御マスターの前記マスター制御部は、前記個別時刻におけるコンテンツ内再生時刻に基づいて前記マスター音楽再生プレーヤを制御する際に、前記マスター音楽再生プレーヤが前記音楽コンテンツを実際に再生している実際のコンテンツ内再生時刻を取得し、前記実際のコンテンツ内再生時刻と、本来再生しているべき前記個別時刻における本来のコンテンツ内再生時刻とのずれを計算し、前記ずれが一定時間以上の場合には、前記ずれがなくなって前記個別時刻における本来のコンテンツ内再生時刻で再生するように前記マスター音楽再生プレーヤの再生を制御する機能を有している請求項1に記載の音楽連動制御プラットフォーム。
  3.  前記複数の音楽連動制御スレーブの前記スレーブ制御部は、前記スレーブ音楽再生プレーヤを有しており、前記個別時刻におけるコンテンツ内再生時刻に基づいて前記スレーブ音楽再生プレーヤを制御する際に、前記スレーブ音楽再生プレーヤが前記音楽コンテンツを実際に再生している実際のコンテンツ内再生時刻を取得し、前記実際のコンテンツ内再生時刻と、本来再生しているべき前記個別時刻における本来のコンテンツ内再生時刻とのずれを計算し、前記ずれが一定時間以上の場合には、前記ずれがなくなって前記個別時刻における本来のコンテンツ内再生時刻で再生するように前記スレーブ音楽再生プレーヤの再生を制御する機能を有している請求項1に記載の音楽連動制御プラットフォーム。
  4.  前記ステージは、前記音楽連動制御マスターにシークレットキーとアクセスキーを発行する機能を有しており、前記1以上の音楽連動制御マスターが前記音楽連動制御サーバの前記ステージと通信する際にはシークレットキーとアクセスキーを用いてアクセスし、前記複数の音楽連動制御スレーブが前記音楽連動制御サーバの前記ステージと通信する際には前記1以上の音楽連動制御マスターに対して発行された前記アクセスキーを用いてアクセスする請求項1に記載の音楽連動制御プラットフォーム。
  5.  前記音楽連動制御サーバは、前記1以上の音楽連動制御マスターまたは前記複数の音楽連動制御スレーブからアクセスがあると、前記アクセスキーに基づいて前記ステージと前記仮想音楽再生プレーヤを特定する機能を有している請求項1に記載の音楽連動制御プラットフォーム。
  6.  前記ステージは、初めてアクセスしてきた前記1以上の音楽連動制御マスター及び前記複数の音楽連動制御スレーブに、それぞれ識別IDを付与する機能を有し、
     前記ステージは、前記識別IDとアクセス時刻に基づいて、前記1以上の音楽連動制御マスター及び前記複数の音楽連動制御スレーブの接続状況を管理する機能を更に備えている請求項1に記載の音楽連動制御プラットフォーム。
  7.  前記仮想音楽再生プレーヤの状態として、
     前記操作コマンドが再生コマンドの場合には、前記最新の操作内容としては再生状態が記録され、再生開始時刻として前記コンテンツ内再生時刻が記録されており、
     前記操作コマンドが停止コマンドの場合には、前記操作内容としては停止状態が記録されて、再生停止時刻として前記コンテンツ内再生時刻が指定されている請求項1に記載の音楽連動制御プラットフォーム。
  8.  前記操作コマンドがシークコマンドの場合には、前記操作内容としては再生中のシーク状態または停止中のシーク状態が記録されて、シーク先時刻として前記コンテンツ内再生時刻が記録されている請求項1または7に記載の音楽連動制御プラットフォーム。
  9.  前記1以上の音楽連動制御マスターは、表示画面を有する表示部を備えた通信端末機であり、
     前記表示画面に前記マスター音楽再生プレーヤの入力インターフェイスを表示するように構成されている請求項1に記載の音楽連動制御プラットフォーム。
  10.  前記1以上の音楽連動制御マスターの前記マスター制御部及び前記複数の音楽連動制御スレーブの前記スレーブ制御部は、定期的に前記音楽連動制御サーバに前記仮想音楽再生プレーヤの状態を確認する前記確認コマンドを送信し、前記音楽連動制御サーバから送信されてきた前記仮想音楽再生プレーヤの状態の変化を検出すると、前記仮想音楽再生プレーヤの状態の変化に応じて前記マスター音楽再生プレーヤ及び前記スレーブ音楽再生プレーヤまたは前記スレーブ音楽連動演出器を制御する機能を有する請求項1に記載の音楽連動制御プラットフォーム。
  11.  前記1以上の音楽連動制御マスターのマスター制御部及び前記複数の音楽連動制御スレーブのスレーブ制御部は、前記音楽コンテンツに対応する楽曲解析結果を取得すると、前記楽曲解析結果には1以上のイベントが含まれており、前記マスター音楽再生プレーヤ及び前記スレーブ音楽再生プレーヤが再生動作をしているときに、前記マスター音楽再生プレーヤ及び前記スレーブ音楽再生プレーヤにおける前記コンテンツ内再生時刻が前記イベントの時刻に一致したか否かを判定し、一致した前記イベントに対する処理内容を実行する機能を有している請求項1乃至10のいずれか1項に記載の音楽連動制御プラットフォーム。
  12.  前記複数の音楽連動制御スレーブの前記スレーブ音楽連動演出器は、前記イベントに対する処理内容を実行することによって、前記音楽の楽曲解析結果に連動して制御される請求項11に記載の音楽連動制御プラットフォーム。
  13.  前記1以上の音楽連動制御マスター及び前記複数の音楽連動制御スレーブは、前記音楽コンテンツに含まれる前記楽曲解析結果に応じて前記1以上のイベントに対応する前記処理内容を設定する機能を有している請求項11に記載の音楽連動制御プラットフォーム。
  14.  前記イベントは、前記楽曲解析結果に含まれるビート、小節、サビ区間、繰り返し区間、またはコードに基づいて定められている請求項11乃至13のいずれか1項に記載の音楽連動制御プラットフォーム。
  15.  前記1以上の音楽連動制御マスター及び前記複数の音楽連動制御スレーブは、前記個別時刻と、前記同期要求コマンドを要求して得た前記音楽連動制御サーバの前記基準時刻とのずれをオフセット時間として記録しており、前記オフセット時間が予め定めた値より大きく変動していたら、前記マスター音楽再生プレーヤ及び前記スレーブ音楽再生プレーヤにおける前記本来のコンテンツ内再生時刻を補正する機能を有する請求項1に記載の音楽連動制御プラットフォーム。
  16.  前記1以上の音楽連動制御マスターが、前記スレーブ音楽連動演出器と同様のマスター音楽連動演出器を備えている請求項1に記載の音楽連動制御プラットフォーム。
  17.  複数の機器で音楽再生及び音楽連動演出の少なくとも一つを音楽に同期させる音楽連動制御プラットフォームにおいて、
     マスター音楽再生プレーヤと、個別時刻を発生する個別時刻発生器、通信手段及び前記マスター音楽再生プレーヤのマスター制御部を構成するマスタープロセッサを備えて、複数の音楽コンテンツの中から選択した音楽コンテンツを再生するように前記マスター音楽再生プレーヤで制御する音楽連動制御マスターと、
     スレーブ音楽再生プレーヤ及びスレーブ音楽連動演出器の少なくとも一つと、個別時刻を発生する個別時刻発生器、通信手段並びに前記スレーブ音楽再生プレーヤ及びスレーブ音楽連動演出器の少なくとも一つのスレーブ制御部を構成するスレーブプロセッサを備えて、前記スレーブ音楽再生プレーヤ及び前記スレーブ音楽連動演出器の少なくとも一つを制御する複数の音楽連動制御スレーブと、
     基準時刻を発生する基準時刻発生器と通信ネットワークを介して前記音楽連動制御マスター及び前記複数の音楽連動制御スレーブと接続される通信手段を有するサーバプロセッサを備え、
     前記サーバプロセッサにより、
     前記音楽連動制御マスターからステージ作成コマンドが入力されるとステージを作成するとともに仮想音楽再生プレーヤを作成し、
     前記音楽連動制御マスターからステージ削除コマンドが入力されると前記仮想音楽再生プレーヤを削除するとともに前記ステージを削除し、
     前記音楽連動制御マスターから前記音楽コンテンツの再生に関する操作コマンドが入力されると前記仮想音楽再生プレーヤの状態を更新し、
     前記音楽連動制御マスターまたは前記複数の音楽連動制御スレーブから、前記仮想音楽再生プレーヤの状態を確認する確認コマンドが入力されると前記仮想音楽再生プレーヤの状態を、前記確認コマンドを送信してきた前記音楽連動制御マスターまたは前記複数の音楽連動制御スレーブに返信し、
     前記音楽連動制御マスターまたは前記複数の音楽連動制御スレーブから、基準時刻と前記個別時刻との同期を要求する同期要求コマンドが入力されると、そのときの前記基準時刻を、前記同期要求コマンドを送信してきた前記音楽連動制御マスターまたは前記複数の音楽連動制御スレーブに送信する音楽連動制御サーバとを具備し、
     前記仮想音楽再生プレーヤの状態は、少なくとも前記音楽連動制御マスターで再生する前記音楽コンテンツを特定する音楽コンテンツを識別する識別子が得られるURL、最新の前記操作コマンドで指令された最新の操作内容、前記操作コマンドが操作対象とするコンテンツ内再生時刻、前記コンテンツ内再生時刻に対応する前記基準時刻上の時刻を含んでおり、
     前記複数の音楽連動制御スレーブの前記スレーブ制御部は、前記仮想音楽再生プレーヤの状態から求まる前記コンテンツ内再生時刻に対応する前記基準時刻上の時刻を、前記コンテンツ内再生時刻に対応する前記個別時刻上の時刻に変換して、前記スレーブ音楽再生プレーヤ及び前記スレーブ音楽連動演出器の少なくとも一つを制御する機能を有していることを特徴とする音楽連動制御プラットフォーム。
  18.  複数の機器で音楽再生及び音楽連動演出の少なくとも一つを音楽に同期させる音楽連動制御プラットフォームの制御方法であって、
     前記音楽連動制御プラットフォームは、
     マスター音楽再生プレーヤと、個別時刻を発生する個別時刻発生器、通信手段及び前記マスター音楽再生プレーヤのマスター制御部を構成するマスタープロセッサを備えて、複数の音楽コンテンツの中から選択した音楽コンテンツを再生するように前記マスター音楽再生プレーヤを制御する1以上の音楽連動制御マスターと、
     スレーブ音楽再生プレーヤ及びスレーブ音楽連動演出器の少なくとも一つと、個別時刻を発生する個別時刻発生器、通信手段並びに前記スレーブ音楽再生プレーヤ及びスレーブ音楽連動演出器の少なくとも一つのスレーブ制御部を構成するスレーブプロセッサを備えて、前記スレーブ音楽再生プレーヤ及び前記スレーブ音楽連動演出器の少なくとも一つを制御する複数の音楽連動制御スレーブと、
     基準時刻を発生する基準時刻発生器と通信ネットワークを介して前記1以上の音楽連動制御マスター及び前記複数の音楽連動制御スレーブと接続される通信手段を有するサーバプロセッサを備え、
     前記サーバプロセッサにより、
     前記1以上の音楽連動制御マスターからステージ作成コマンドが入力されるとステージを作成するとともに仮想音楽再生プレーヤを作成し、
     前記1以上の音楽連動制御マスターからステージ削除コマンドが入力されると前記仮想音楽再生プレーヤを削除するとともに前記ステージを削除し、
     前記1以上の音楽連動制御マスターから前記音楽コンテンツの再生に関する操作コマンドが入力されると前記仮想音楽再生プレーヤの状態を更新し、
     前記1以上の音楽連動制御マスターまたは前記複数の音楽連動制御スレーブから、前記仮想音楽再生プレーヤの状態を確認する確認コマンドが入力されると前記仮想音楽再生プレーヤの状態を、前記確認コマンドを送信してきた前記1以上の音楽連動制御マスターまたは前記複数の音楽連動制御スレーブに返信し、
     前記1以上の音楽連動制御マスターまたは前記複数の音楽連動制御スレーブから、基準時刻と前記個別時刻との同期を要求する同期要求コマンドが入力されると、そのときの前記基準時刻を、前記同期要求コマンドを送信してきた前記1以上の音楽連動制御マスターまたは前記複数の音楽連動制御スレーブに送信する音楽連動制御サーバとを具備し、
     前記仮想音楽再生プレーヤの状態は、少なくとも前記1以上の音楽連動制御マスターで再生する前記音楽コンテンツを特定する音楽コンテンツを識別する識別子、最新の前記操作コマンドで指令された最新の操作内容、前記操作コマンドが操作対象とするコンテンツ内再生時刻、前記コンテンツ内再生時刻に対応する前記基準時刻上の時刻を含んでおり、
     前記1以上の音楽連動制御マスターの前記マスター制御部が、前記仮想音楽再生プレーヤの状態から求まる前記コンテンツ内再生時刻に対応する前記基準時刻上の時刻を、前記コンテンツ内再生時刻に対応する前記個別時刻上の時刻に変換して、前記マスター音楽再生プレーヤを制御し、
     前記複数の音楽連動制御スレーブの前記スレーブ制御部が、前記前記仮想音楽再生プレーヤの状態から求まる前記コンテンツ内再生時刻に対応する前記基準時刻上の時刻を、前記コンテンツ内再生時刻に対応する前記個別時刻上の時刻に変換して、前記スレーブ音楽再生プレーヤ及び前記スレーブ音楽連動演出器の少なくとも一つを制御することを特徴とする音楽連動制御プラットフォームの制御方法。
PCT/JP2018/028398 2017-07-28 2018-07-30 音楽連動制御プラットフォーム及び音楽連動制御プラットフォームの制御方法 WO2019022256A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
GB2001694.5A GB2579488B (en) 2017-07-28 2018-07-30 Platform for control in synchronization with music and control method therefor
JP2019532894A JP6784977B2 (ja) 2017-07-28 2018-07-30 音楽連動制御プラットフォーム及び音楽連動制御プラットフォームの制御方法
US16/634,270 US11288032B2 (en) 2017-07-28 2018-07-30 Platform for control in synchronization with music and control method therefor

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017147233 2017-07-28
JP2017-147233 2017-07-28

Publications (1)

Publication Number Publication Date
WO2019022256A1 true WO2019022256A1 (ja) 2019-01-31

Family

ID=65039600

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/028398 WO2019022256A1 (ja) 2017-07-28 2018-07-30 音楽連動制御プラットフォーム及び音楽連動制御プラットフォームの制御方法

Country Status (4)

Country Link
US (1) US11288032B2 (ja)
JP (1) JP6784977B2 (ja)
GB (1) GB2579488B (ja)
WO (1) WO2019022256A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024052964A1 (ja) * 2022-09-05 2024-03-14 日本電信電話株式会社 映像同期装置、映像同期方法及び映像同期プログラム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102391981B1 (ko) * 2017-11-10 2022-04-28 에스에에스-이마고탁 게엠베하 복수의 재생장치에서 동기화된 비디오 재생을 위한 시스템
CN114495363B (zh) * 2022-01-07 2023-08-11 珠海格力电器股份有限公司 一种目标设备锁机方法、装置、电子设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030126211A1 (en) * 2001-12-12 2003-07-03 Nokia Corporation Synchronous media playback and messaging system
US20130103770A1 (en) * 2011-10-25 2013-04-25 Microsoft Corporation Distributed semi-synchronized event driven playback of multimedia

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7747338B2 (en) * 2006-08-18 2010-06-29 Xerox Corporation Audio system employing multiple mobile devices in concert
US7518051B2 (en) * 2005-08-19 2009-04-14 William Gibbens Redmann Method and apparatus for remote real time collaborative music performance and recording thereof
US8779265B1 (en) * 2009-04-24 2014-07-15 Shindig, Inc. Networks of portable electronic devices that collectively generate sound
JP5394307B2 (ja) 2010-04-15 2014-01-22 日本電信電話株式会社 同期再生システム、同期再生方法及び同期再生プログラム
KR20160048960A (ko) * 2013-08-30 2016-05-04 후아웨이 테크놀러지 컴퍼니 리미티드 복수 단말의 멀티미디어 파일 협동 플레이 방법, 및 관련 장치 및 시스템
US9313591B2 (en) * 2014-01-27 2016-04-12 Sonos, Inc. Audio synchronization among playback devices using offset information
CN115883901A (zh) * 2015-09-30 2023-03-31 苹果公司 对媒体的同步回放和控制
JP6432067B2 (ja) 2015-11-30 2018-12-05 サイレックス・テクノロジー株式会社 再生システム、及び、再生方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030126211A1 (en) * 2001-12-12 2003-07-03 Nokia Corporation Synchronous media playback and messaging system
US20130103770A1 (en) * 2011-10-25 2013-04-25 Microsoft Corporation Distributed semi-synchronized event driven playback of multimedia

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024052964A1 (ja) * 2022-09-05 2024-03-14 日本電信電話株式会社 映像同期装置、映像同期方法及び映像同期プログラム

Also Published As

Publication number Publication date
GB202001694D0 (en) 2020-03-25
JP6784977B2 (ja) 2020-11-18
GB2579488A (en) 2020-06-24
JPWO2019022256A1 (ja) 2020-02-27
US11288032B2 (en) 2022-03-29
GB2579488B (en) 2022-01-12
US20210064331A1 (en) 2021-03-04

Similar Documents

Publication Publication Date Title
US20230188798A1 (en) Multiple Household Management
KR101643482B1 (ko) 가라오케 및/또는 포토 부스 특징들을 갖는 디지털 주크박스 디바이스, 및 연관된 방법들
CN105308902B (zh) 媒体回放系统中的回放队列传送
JP6784977B2 (ja) 音楽連動制御プラットフォーム及び音楽連動制御プラットフォームの制御方法
CN105453179A (zh) 提供播放/暂停内容的系统和方法
CN105556896A (zh) 智能放大器激活
CN105144143A (zh) 音频内容的预缓存
US20210185474A1 (en) System and method for use of crowdsourced microphone or other information with a digital media content environment
JP2015069050A (ja) 携帯端末による照明の遠隔操作が可能な通信カラオケシステム
JP6246532B2 (ja) 通信カラオケシステム
JP2013231951A (ja) 音響データ処理装置および音響データ通信システム
JP7095597B2 (ja) 再生装置、再生方法、プログラム、及び再生システム
EP4122297A1 (en) Method and system for generating light effects
Park ARLooper: a mobile AR application for collaborative sound recording and performance
JP6210220B2 (ja) カラオケ装置
Slater Locating project studios and studio projects
JP2014186177A (ja) 再生装置
JP6058991B2 (ja) 歌唱音声に対応する歌唱動画選択システム
Alexandraki et al. Enabling virtual music performance communities
Bloomberg Making Musical Magic Live
JP2009201017A (ja) 動画像編集装置及び動画像編集方法並びにそのプログラム
WO2014075128A1 (en) Content presentation method and apparatus
JP2004040450A (ja) 情報配信システム、情報処理装置および方法、再生装置および方法、記録媒体、並びにプログラム
JP2014235301A (ja) ジェスチャーによるコマンド入力識別システム
JP7208859B2 (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: 18837355

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019532894

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 202001694

Country of ref document: GB

Kind code of ref document: A

Free format text: PCT FILING DATE = 20180730

122 Ep: pct application non-entry in european phase

Ref document number: 18837355

Country of ref document: EP

Kind code of ref document: A1