WO2020166094A1 - 情報処理装置、情報処理方法及び情報処理プログラム - Google Patents
情報処理装置、情報処理方法及び情報処理プログラム Download PDFInfo
- Publication number
- WO2020166094A1 WO2020166094A1 PCT/JP2019/009353 JP2019009353W WO2020166094A1 WO 2020166094 A1 WO2020166094 A1 WO 2020166094A1 JP 2019009353 W JP2019009353 W JP 2019009353W WO 2020166094 A1 WO2020166094 A1 WO 2020166094A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- information
- application
- information processing
- user
- music data
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H1/00—Details of electrophonic musical instruments
- G10H1/0008—Associated control or indicating means
- G10H1/0025—Automatic or semi-automatic music composition, e.g. producing random music, applying rules from music theory or modifying a musical piece
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H1/00—Details of electrophonic musical instruments
- G10H1/0033—Recording/reproducing or transmission of music for electrophonic musical instruments
- G10H1/0041—Recording/reproducing or transmission of music for electrophonic musical instruments in coded form
- G10H1/0058—Transmission between separate instruments or between individual components of a musical system
- G10H1/0066—Transmission between separate instruments or between individual components of a musical system using a MIDI interface
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H1/00—Details of electrophonic musical instruments
- G10H1/36—Accompaniment arrangements
- G10H1/38—Chord
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2210/00—Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
- G10H2210/101—Music Composition or musical creation; Tools or processes therefor
- G10H2210/125—Medley, i.e. linking parts of different musical pieces in one single piece, e.g. sound collage, DJ mix
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2220/00—Input/output interfacing specifically adapted for electrophonic musical tools or instruments
- G10H2220/091—Graphical user interface [GUI] specifically adapted for electrophonic musical instruments, e.g. interactive musical displays, musical instrument icons or menus; Details of user interactions therewith
- G10H2220/101—Graphical user interface [GUI] specifically adapted for electrophonic musical instruments, e.g. interactive musical displays, musical instrument icons or menus; Details of user interactions therewith for graphical creation, edition or control of musical data or parameters
- G10H2220/106—Graphical user interface [GUI] specifically adapted for electrophonic musical instruments, e.g. interactive musical displays, musical instrument icons or menus; Details of user interactions therewith for graphical creation, edition or control of musical data or parameters using icons, e.g. selecting, moving or linking icons, on-screen symbols, screen regions or segments representing musical elements or parameters
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2240/00—Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
- G10H2240/075—Musical metadata derived from musical analysis or for use in electrophonic musical instruments
- G10H2240/081—Genre classification, i.e. descriptive metadata for classification or selection of musical pieces according to style
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2240/00—Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
- G10H2240/095—Identification code, e.g. ISWC for musical works; Identification dataset
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2250/00—Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
- G10H2250/311—Neural networks for electrophonic musical instruments or musical processing, e.g. for musical recognition or control, automatic composition or improvisation
Definitions
- the present disclosure relates to an information processing device, an information processing method, and an information processing program. Specifically, it relates to use of music data composed based on machine learning.
- the music data proposed (generated) by the AI can be used in the composition work, so that the user can compose from various viewpoints.
- the present disclosure proposes an information processing device, an information processing method, and an information processing program capable of improving the convenience of the automatic music function by AI.
- an information processing device that controls a first application and a second application that functions as a plug-in that extends the function of the first application.
- the first application includes a control unit that controls an operation of the second application in the first application, and the second application selects setting information for controlling a composition function based on machine learning.
- a transmission/reception unit that transmits the setting information to an external server that executes the composition function based on the machine learning via the network and receives the music data composed by the external server.
- FIG. 1 It is a conceptual diagram which shows the flow of the information processing which concerns on embodiment. It is a figure (1) which shows an example of the user interface which concerns on embodiment. It is a figure (2) which shows an example of the user interface which concerns on embodiment. It is a figure which shows an example of the style palette which concerns on embodiment. It is a block diagram showing a flow of information processing concerning an embodiment. It is a figure showing an information processing system concerning an embodiment of this indication. It is a figure which shows the structural example of the user terminal which concerns on embodiment. It is a figure showing an example of composition composition information concerning an embodiment. It is a figure which shows an example of the composition music information which concerns on embodiment. It is a figure showing an example of history information concerning an embodiment.
- Embodiment 1-1 Example of information processing according to the embodiment 1-2.
- Configuration of information processing system according to embodiment 1-3 Configuration of information processing apparatus (user terminal) according to the embodiment 1-4.
- Configuration of external server (processing server) according to the embodiment 1-5 Information processing procedure according to the embodiment 2.
- Modification 2-1 Form of music data 2-2.
- Host application 2-3 Control by DAW 2-4.
- Other Embodiments 4. 4. Effect of information processing apparatus according to the present disclosure Hardware configuration
- FIG. 1 is a conceptual diagram showing a flow of information processing according to the embodiment.
- the information processing according to the embodiment is executed by the user terminal 10, which is an example of the information processing apparatus according to the present disclosure, and the processing server 100, which is an example of the external server according to the present disclosure.
- the user terminal 10 and the processing server 100 communicate with each other using the wired or wireless network N (for example, the Internet) shown in FIG.
- the numbers of user terminals 10 and processing servers 100 are not limited to those shown in FIG.
- the user terminal 10 illustrated in FIG. 1 is an example of an information processing device according to the present disclosure.
- the user terminal 10 is an information processing terminal such as a PC (personal computer), a tablet terminal, or a smartphone.
- the user terminal 10 is provided (installed) with various program applications (hereinafter, simply referred to as “apps”).
- the user terminal 10 activates and executes various applications and executes various information processing.
- the user terminal 10 includes an application (so-called DAW) that realizes a comprehensive music production environment.
- DAW application
- the application (DAW) is referred to as a first application or host application.
- the first application according to the embodiment can incorporate (insert) another application for expanding the function. That is, it is assumed that the first application can use a so-called plug-in that is another application for expanding the function. In this case, the first application functions as a host application of the incorporated plug-in.
- the user terminal 10 includes an application having an automatic music composition function by AI.
- the application application having an automatic music composition function by AI
- the application is referred to as a second application or a plug-in.
- the second application according to the embodiment is incorporated as a plug-in of the above-described first application.
- the plug-in can take the form of VST (Steinberg's Virtual Studio Technology) (registered trademark), AudioUnits, AAX (Avid Audio eXtension), or the like, for example.
- the processing server 100 illustrated in FIG. 1 is a server device that executes information processing regarding the second application included in the user terminal 10.
- the processing server 100 is a so-called cloud server, and executes predetermined information processing based on the information instructed from the user terminal 10 via the network N.
- the processing server 100 generates music data based on the information transmitted from the user terminal 10 based on a predetermined learning process and data output from the learned model.
- the processing server 100 executes the automatic song function by AI based on the instruction from the user terminal 10.
- the processing server 100 provides the user terminal 10 with music data that is automatically composed using a Markov model or the like, as shown in the above-mentioned prior art documents and the like.
- the user terminal 10 uses the second application as a plug-in to drag and drop the music data provided from the processing server 100 on the second application onto the first application, or the first application. You can do editing work on the app.
- the automatic music function depends on the processing performance (CPU power etc.) of the terminal on which the processing is executed, but as shown in FIG. 1, the user terminal 10 performs learning processing and the like on its own device. Instead, the processing server 100 is caused to execute the processing.
- the user terminal 10 can execute a process having a relatively high processing load called an automatic music function while conserving the resources of the device itself. Therefore, the user terminal 10 can solve the DAW processing delay (occurrence of latency, etc.) that has been a conventional problem.
- the user terminal 10 according to the present disclosure can improve the convenience of the automatic song function by AI.
- FIG. 1 the outline of the information processing according to the present disclosure will be described along the flow using FIG. 1.
- the user terminal 10 activates the host application (first application) 20 (step S1).
- the user terminal 10 activates a plug-in (second application) 22 as an example of a plug-in that operates on the host application 20 (step S2).
- the user terminal 10 selects setting information of a music piece to be automatically tuned by the plug-in 22 according to the user's operation. Although details will be described later, the user terminal 10 selects setting information such as chord progression of a music piece to be automatically tuned, subjective image of the music piece (dark, bright, etc.), composition of the music piece, and the like according to a user operation. Then, the user terminal 10 transmits the selected setting information to the processing server 100 (step S3).
- the processing server 100 performs a predetermined learning process based on the setting information transmitted from the user terminal 10 and a composition process based on the learning result (step S4).
- a composition process for example, the process described in the above prior art document may be used.
- the processing server 100 generates the composed music data.
- the processing server 100 transmits the generated music data to the user terminal 10 (step S5).
- the user terminal 10 receives the music data transmitted from the processing server 100 in the plug-in 22.
- the music data includes information such as chord progressions, melody, and bass note progressions generated by the processing server 100.
- the music data may be standard data such as MIDI (Musical Instrument Digital Interface) data, waveform data, or DAW original standard data.
- the user may edit the received music data on the plug-in 22, or may copy the music data to the host application 20 and use it on the host application 20.
- the user terminal 10 controls the host application 20 and the plug-in 22 that functions as a plug-in that extends the function of the host application 20. Further, the host application 20 controls the operation of the plug-in 22 in the host application 20. Further, the plug-in 22 selects setting information for controlling the composition function based on machine learning, transmits the setting information to the processing server 100 via the network N, and outputs the music data composed by the processing server 100. To receive.
- the user terminal 10 uses the automatic song function as a DAW plug-in. Therefore, the user can receive the support of the automatic music composition function in the normal working environment of DAW. Further, the user can avoid the occurrence of processing delay in the DAW by causing the processing server 100 to bear the processing load in the automatic music composition function. As a result, the user terminal 10 can improve the convenience of the automatic music composition function by AI.
- FIG. 2 is a diagram (1) showing an example of the user interface according to the embodiment.
- FIG. 2 shows an example of a user interface when the plug-in 22 is displayed on the screen of the user terminal 10.
- the user interface 30 displays the music data received by the plug-in 22.
- the music data in the plug-in 22 is made up of three different types of data: melody, chord, and bass sound.
- the user interface 30 shown in FIG. 2 displays the melody-related data among the three different types of data.
- the setting information 31 displays information about the style palette, which is an example of setting information in the automatic music composition function.
- the style palette is designation information for designating a material music piece as learning data for machine learning.
- the setting information 32 displays information about harmony, which is an example of setting information in the automatic song function.
- the information on harmony is, for example, information for determining the probability that the constituent sounds included in the chord appear in the melody in the music data composed by the processing server 100. For example, when the user sets the information regarding harmony to “strict”, the probability that the constituent sound included in the chord appears in the melody in the music data that is automatically composed increases. On the other hand, when the user sets the information about the harmony to “loose”, the probability that the constituent sound included in the chord appears in the melody in the music data automatically tuned decreases. In the example of FIG. 2, the user has shown that the information regarding the harmony is applied from “strict”.
- the setting information 33 displays note length information, which is an example of setting information in the automatic music function.
- the note length information is, for example, information for determining the note length in the music data composed by the processing server 100. For example, if the user sets the note length information to "long”, the notes in which the length of the note to be pronounced is relatively long (for example, whole note, half note, etc.) ) Will be more likely to appear. On the other hand, if the user sets the note length information to “short”, the notes in which the length of the note to be pronounced is relatively short (for example, an eighth note or a sixteenth note) in the automatically composed music data. Etc.) will be more likely to appear.
- the setting information 34 which is an example of setting information in the automatic music function, displays information for determining the type and amount of material music other than the material music included in the specification information (style palette specified by the user).
- Such information is, for example, information for determining whether or not to strictly perform learning based on the music included in the style palette specified by the user in the music data composed by the processing server 100. For example, when the user sets such information to “never”, the tendency that the music other than the music included in the style palette is used in learning of the automatic music becomes low. On the other hand, if the user sets such information to “only”, there is an increased tendency for music other than the music included in the style palette to be used in learning automatic music.
- the music data 35 displays the specific music data transmitted from the processing server 100.
- the music data 35 includes information indicating chord progressions such as Cm, information indicating pitches within notes and lengths of notes, transitions of note pitches (in other words, melody), and the like.
- the music data 35 may include, for example, four different contents. That is, the processing server 100 may transmit a plurality of pieces of music data instead of transmitting only one kind of music data that is automatically composed. Thereby, the user can select the music data that he/she likes from the generated plurality of music data candidates, or can compose a favorite music by combining the plurality of music data.
- FIG. 3 is a diagram (2) illustrating an example of the user interface according to the embodiment.
- the user terminal 10 displays a user interface 38 that displays data regarding chords and a user interface 39 that displays data regarding bass sounds on the screen. It may be displayed.
- note information different from the music data 35 in the user interface 30 is displayed on the user interface 38 and the user interface 39.
- the user interface 38 displays note information (for example, constituent sounds of the chord Cm) regarding chords corresponding to the melody of the music data.
- the user interface 39 also displays note information (for example, “C” sound for the chord Cm) related to the bass sound corresponding to the melody or chord of the music data.
- the user can perform operations such as selecting information to be copied to the host application 20 from the displayed user interface 30, user interface 38, and user interface 39, and editing some bass sounds, for example. ..
- FIG. 4 is a diagram showing an example of a style palette according to the embodiment.
- the window 40 shown in FIG. 4 is an example of a user interface displayed on the plug-in 22.
- the user refers to the characteristic information of the style palette displayed in the window 40, and selects an image that matches the music piece that the user wants to perform the automatic music piece.
- the user selects the style palette 41 in which the characteristic information “bright” is described, the style palette 42 in which the characteristic information “dark” is described, and the like.
- the user has a style palette 43 in which the genre and type of music are described as characteristic information such as “American” and a style palette in which the composition of music is described as characteristic information such as “A melody ⁇ B melody ⁇ chorus”. Select 44.
- the style palette is information for the processing server 100 to specify the music used for learning. That is, each style palette includes information for specifying an existing song that has been composed in advance. For example, it is assumed that the style palette 41 is associated with the constituent music list 50. The constituent song list 50 includes a plurality of existing songs. Further, it is assumed that the style pallet 42 is associated with the constituent music list 51. The constituent music list 51 includes a plurality of existing music different from the music included in the constituent music list 50.
- the learning model generated by machine learning based on the style palette 41 and the learning model generated by machine learning based on the style palette 42 are different. This is because the learning data in machine learning changes depending on the style palette selected by the user. That is, the style palette can be said to be designation information for designating the learning data in the automatic composition.
- the songs that make up the style palette shall be registered in advance by, for example, the administrator or provider of the plug-in 22.
- the administrator of the plug-in 22 extracts a plurality of songs that are subjectively “bright” to generate the component music list 50, and associates the component music list 50 with the style palette 41.
- the style palette and the music corresponding to the style palette may be arbitrarily edited by the user who uses the plug-in 22.
- the user may select a music from a music distribution service or a web service such as SNS (Social Networking Service), and combine the selected music to generate a desired style palette.
- SNS Social Networking Service
- the user arbitrarily extracts music included in a playlist automatically generated by a predetermined music application or a playlist provided to a user who uses the music application,
- the constituent music of the generated style palette may be changed or a new style palette may be generated. This allows the user to flexibly generate his or her own style palette.
- the user may select multiple style palettes when selecting the style palette as the setting information.
- the user selects the style palette 41 as the setting information for composing a part of the music (for example, the first 8 measures), and composes a different part of the music (for example, the middle 8 measures).
- the style palette 42 may be selected as the setting information.
- Information including such a plurality of style palettes is hereinafter referred to as a style palette sequence.
- the style palette sequence can be said to be combination designation information that is a combination of style palette designation information that specifies music. The user can easily create various music data having a plurality of characteristics in one music by setting a style palette sequence and performing composition.
- FIG. 5 is a block diagram showing the flow of information processing according to the embodiment.
- a processing block 60 shown in FIG. 5 shows a flow of processing executed by the DAW (host application 20) and the plug-in 22.
- a performer records a sound played by a musical instrument and creates data such as MIDI.
- the plug-in 22 generates music data corresponding to a melody, a chord, and a bass sound instead of the performer.
- the performer or the plug-in 22 generates the melody 61, the chord 62, or the bass sound 63.
- the user records the melody 61, the chord 62, and the bass sound 63 used for the music in the recorder related to the DAW, and creates each track corresponding to the melody, the chord, and the bass sound.
- the user sets the musical instrument information indicating the musical instrument used for the performance, for the melody 61 generated by the plug-in 22.
- the user sets musical instrument information such as playing the melody 61 on the guitar registered in the DAW.
- the user records the sound played on the virtual guitar in the recorder and creates a track corresponding to the guitar. Since the DAW can create a plurality of tracks, a track based on the performance sound of the performer and a track based on the music data created by the plug-in 22 may coexist.
- the user mixes on the DAW and creates music data after going down the track.
- the user performs mastering on the DAW, adjusts the acoustic signal level, etc., and then creates a music file 65 that can be played back by a playback device or the like.
- the user uses the data automatically performed by the plug-in 22 in accordance with the performance data performed by the performer and the created MIDI data to perform the DAW.
- a user can create a piece of music on a DAW by mixing the performance data played by the performer with a melody that is automatically composed by AI, or by incorporating a chord progression proposed by AI. it can.
- FIG. 6 is a diagram illustrating an example of the information processing system 1 according to the first embodiment of the present disclosure.
- the information processing system 1 includes a user terminal 10, a processing server 100, and a management server 200.
- the user terminal 10 is an example of an information processing device according to the present disclosure, and controls the operations of the host application 20 and the plug-in 22.
- the processing server 100 is an example of an external server according to the present disclosure, and cooperates with the plug-in 22 to perform automatic music composition processing.
- the management server 200 is a server managed by, for example, a business operator who provides the plug-in 22.
- the management server 200 manages the user authority of the user who uses the plug-in 22 and the information of the style palette that can be used by the plug-in 22. For example, the management server 200 determines whether the user has the authority to use the plug-in 22 based on the user ID that uniquely identifies the user. In addition, the management server 200 creates a style palette, edits music that composes the style palette, and transmits information about the style palette to the user terminal 10 and the processing server 100. The management server 200 may be integrated with the processing server 100.
- FIG. 7 is a diagram illustrating a configuration example of the user terminal 10 according to the embodiment of the present disclosure.
- the user terminal 10 includes a communication unit 11, an input unit 12, a display unit 13, a storage unit 15, and a control unit 16.
- the communication unit 11 is realized by, for example, a NIC (Network Interface Card) or the like.
- the communication unit 11 is connected to a network N (Internet or the like) by wire or wirelessly, and transmits/receives information to/from the processing server 100, the management server 200, or the like via the network N.
- a network N Internet or the like
- the input unit 12 is an input device that receives various operations from a user.
- the input unit 12 is realized by an operation key or the like included in the user terminal 10.
- the display unit 13 is a display device for displaying various information.
- the display unit 13 is realized by a liquid crystal display or the like. When a touch panel is used for the user terminal 10, a part of the input unit 12 and the display unit 13 are integrated.
- the storage unit 15 is realized by, for example, a semiconductor memory device such as a RAM (Random Access Memory) or a flash memory (Flash Memory), or a storage device such as a hard disk or an optical disk.
- the storage unit 15 stores various data used for information processing.
- the storage unit 15 stores various information such as composition setting information 151, composition music information 152, history information 153, and musical instrument information 154.
- composition setting information 151 composition setting information 151
- composition music information 152 composition music information 152
- history information 153 history information 153
- musical instrument information 154 musical instrument information 154
- the composition setting information 151 is information used when the plug-in 22 (second application) executes an automatic composition song.
- FIG. 8 shows an example of the composition setting information 151 according to the embodiment.
- FIG. 8 is a diagram showing an example of the composition setting information 151 according to the embodiment.
- the composition setting information 151 includes composition corpus information and performance style information.
- the composition corpus information stores the music data used as the learning data of the automatic music or the location where the music data is stored (for example, the address of the data server). Further, the composition corpus information includes, for example, information such as the average length of notes of each song and modulation.
- the performance style information information such as the performance style of the music used as the learning data of the automatic music is stored.
- the playing style includes, for example, information such as the overall shuffle ratio, the chord and bass note division, and the overall balance.
- the composition music information 152 is information of the music used when the plug-in 22 executes the automatic music.
- FIG. 9 shows an example of the composition music information 152 according to the embodiment.
- FIG. 9 is a diagram showing an example of the composition music information 152 according to the embodiment.
- the composition song information 152 includes a song ID, a style palette ID, and a style palette sequence ID.
- the music ID indicates identification information for uniquely identifying an existing music used as learning data.
- the style palette ID indicates identification information for identifying a style palette composed of a plurality of existing songs.
- the style palette sequence ID indicates identification information for identifying a style palette sequence composed of a plurality of style palettes.
- the history information 153 indicates the history of the user's operation in the host application 20 or the plug-in 22 and the history of songs created by the user.
- FIG. 10 shows an example of the history information 153 according to the embodiment.
- FIG. 10 is a diagram showing an example of the history information 153 according to the embodiment.
- the history information 153 includes composition music information.
- the composition music information is composed of music data transmitted from the processing server 100 and a plurality of candidate data included in the music data (for example, as shown in FIG. 2, four types of signatures generated based on certain setting information, etc.). (Including music data 35 including), and music data edited by the user.
- the assigned musical instrument information 154 indicates musical instrument data transmitted from the processing server 100 and musical instrument information set for a plurality of candidate data included in the musical piece data.
- FIG. 11 shows an example of the assigned instrument information 154 according to the embodiment.
- FIG. 11 is a diagram showing an example of assigned musical instrument information 154 according to the embodiment.
- the assigned instrument information 154 includes assigned instrument information.
- the assigned musical instrument information is set in the song data transmitted from the processing server 100, information for identifying an instrument set to virtually play a plurality of candidate data included in the song data, and set in the song data. Indicates the name of the instrument.
- the assigned musical instrument information can be set to different information for each melody, chord, and bass tone.
- the control unit 16 is a program (for example, an information processing program according to the present disclosure) stored in the user terminal 10 by, for example, a CPU (Central Processing Unit), an MPU (Micro Processing Unit), a GPU (Graphics Processing Unit), or the like. Is implemented by using RAM (Random Access Memory) as a work area.
- the control unit 16 is a controller, and may be realized by an integrated circuit such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array).
- the control unit 16 has a host application control unit 161 and a plug-in application control unit 165, and realizes or executes the functions and actions of information processing described below.
- the host application control unit 161 includes a plug-in control unit 162, a reproduction unit 163, and a display control unit 164.
- the plug-in application control unit 165 includes a selection unit 166, a transmission/reception unit 167, a reproduction unit 168, and a display control unit 169. Note that the internal configuration of the control unit 16 is not limited to the configuration shown in FIG. 7, and may be another configuration as long as it is a configuration for performing information processing described later.
- the host application control unit 161 controls the host application 20 (DAW which is the first application).
- the plug-in control unit 162 controls the operation of various plug-ins in the host application 20.
- the plug-in control unit 162 controls operations such as calling the plug-in in the host application 20, starting the plug-in on the host application 20, and copying data in the plug-in to the host application 20.
- the plug-in control unit 162 individually sets musical instrument information for designating a tone color for reproducing a chord, a melody or a bass sound included in the music data received by the plug-in from the processing server 100.
- the plug-in control unit 162 reads out information about the virtual musical instrument registered on the DAW, and causes each of the virtual musical instruments to play a chord, a melody, or a bass sound included in the musical piece data of the plug-in. Set the information.
- the playback unit 163 controls the playback processing in the host application 20.
- the reproduction unit 163 has a synchronous reproduction function in the host application 20, a reproduction information transmission function, a sound synthesis reproduction function, a reproduction style arrangement function, and the like.
- the reproducing unit 163 cooperates with the synchronous reproducing function of the reproducing unit 168 of the plug-in to reproduce the music data held by the plug-in.
- the reproduction unit 163 can acquire and reproduce the melody, the chord, and the bass sound of the portion corresponding to the reproduction position by passing the time information indicating the reproduction position of the host application to the plug-in. ..
- the playing unit 163 may process the playing data according to the playing style and play the processed data.
- the display control unit 164 controls display control processing in the host application 20.
- the display control unit 164 has a performance information display function of displaying information of each track on the screen (display unit 13), a composition music information pasting function of copying information such as music data to the track, and the like.
- the display control unit 164 controls so as to individually display windows for displaying information on chords, melody or bass sounds included in the music data received by the plug-in from the processing server 100. For example, the display control unit 164 displays the user interface corresponding to each of the chord, melody, and bass sound on the screen of the DAW, as shown in FIG.
- the display control unit 164 controls transmission/reception of information between each window that displays information about a chord, melody, or bass sound and a window that displays information about a host application according to a user's operation.
- the user can quickly perform processing such as copying the music data that is automatically composed on an arbitrary track on the DAW and performing editing work.
- the display control unit 164 may control not only the information between the host application and the plug-in but also the exchange of information between the windows of the displayed plug-in. That is, the display control unit 164 may control transmission/reception of information between the windows that display information related to chords, melodies, or bass sounds in accordance with the user's operation.
- the plug-in application control unit 165 controls the operation of the plug-in operating on the host application 20.
- the plug-in application control unit 165 activates the plug-in on the host application 20 according to the user's operation.
- the selection unit 166 selects setting information for controlling the composition function based on machine learning. For example, the selection unit 166 selects, as the setting information, designation information for designating a material music piece as learning data for machine learning. Specifically, the style palette shown in FIG. 4 or the like corresponds to the designation information.
- the selection unit 166 includes designation information stored in advance in the storage unit 15 according to a user's operation, the feature information indicating a feature of the designation information, and a plurality of material songs associated with the feature information. Select the specified information. For example, the user refers to the characteristic information (“bright”, “dark”, etc.) of the style palette via the window 40 shown in FIG. Then, the user selects, based on the characteristic information, a style palette including desired characteristic information in the music piece that the AI wants to compose.
- the selection unit 166 is a combination of the first designation information corresponding to some measures of the music data composed by the external server and the second designation information corresponding to some other measures.
- the designated information may be selected.
- the combination designation information corresponds to the style palette sequence.
- the first designation information corresponds to a style palette that is setting information for composing a part of measures.
- the second designation information corresponds to a style palette which is setting information for composing some other bars.
- the selection unit 166 may select detailed setting information regarding music data to be composed.
- the selection unit 166 may select, as the setting information, the note length information included in the music data composed by the processing server 100 based on the style palette. For example, the selection unit 166 accepts the selection of the note length information from the user via the display of the slider or the like of the setting information 33 included in the user interface 30 shown in FIG.
- the selection unit 166 may select, as the setting information, information for determining the probability that the constituent sound included in the chord appears in the melody in the music data composed by the processing server 100 based on the style palette. Good. For example, the selection unit 166 determines the probability that the constituent sound included in the chord appears in the melody from the user via the display of the slider or the like of the setting information 32 included in the user interface 30 or the like shown in FIG. Accept a selection of information.
- the selection unit 166 uses, as the setting information, information for determining the type and amount of the material music other than the material music included in the style palette in the music data composed by the processing server 100 based on the style palette. You may choose. For example, the selection unit 166 determines the type and amount of the material song other than the material song included in the style palette from the user through the display of the slider of the setting information 34 included in the user interface 30 shown in FIG. 2 and the like. Accept the selection of information to do.
- the selection unit 166 may select information other than the style palette as the setting information for allowing the automatic tune.
- the selection unit 166 may select, as the setting information, the chord progression in the song to be composed based on the user's operation. In this case, the processing server 100 automatically generates music data based on the chord progression selected by the user.
- the transmission/reception unit 167 transmits the setting information selected by the selection unit 166 to the processing server 100 that executes the composition function based on machine learning via the network N, and receives the music data composed by the processing server 100. ..
- the transmission/reception unit 167 transmits the style palette selected by the selection unit 166 to the processing server 100. Then, the transmission/reception unit 167 receives the music data generated by the processing server 100 based on the style palette.
- the transmitting/receiving unit 167 receives, for example, a chord in a bar of a specified length, a melody in a bar, and a bass sound in a bar as music data.
- Such information may be data such as MIDI or MusicXML, information of DAW original standard, or waveform data (WAV file or the like).
- the transmitting/receiving unit 167 may also transmit the style palette sequence selected by the selecting unit 166 to the processing server 100. In this case, the transmitting/receiving unit 167 receives the music data generated by the processing server 100 based on the style palette sequence.
- the transmitting/receiving unit 167 may store the style palette sequence and the music data in the storage unit 15 in association with each other. As a result, the user can refer to what kind of music data was created by what kind of style palette sequence as a history, so that such information can be utilized for the composition work.
- the transmission/reception unit 167 may also transmit various setting information other than the style palette and the style palette sequence to the processing server 100.
- the transmission/reception unit 167 uses the note length information set by the user, the information for determining the probability that the constituent sounds included in the chord appear in the melody, and the material music other than the material music included in the style palette. Information for determining the type and amount of the is transmitted to the processing server 100.
- the transmitting/receiving unit 167 after receiving the music data composed by the processing server 100 and then performing a reproduction or editing operation on the music data by the user, transmits information regarding the reproduction or editing operation to the processing server 100. May be.
- the processing server 100 can acquire information such as how or how much the composed song data was used.
- the processing server 100 may adjust the learning method and the generated music data based on the information. For example, the processing server 100 may analyze past music data used by more users and preferentially generate music data having such characteristics.
- the playback unit 168 controls the playback process in the plug-in.
- the reproduction unit 168 reproduces the music data received by the transmission/reception unit 167.
- the reproduction unit 168 sets arbitrary instrument information for each of the melody, chord, and bass sound included in the music data, and reproduces each data.
- the reproducing unit 168 may combine and reproduce each of the melody, the chord, and the bass sound.
- the display control unit 169 controls display processing in the plug-in. For example, the display control unit 169 displays a window such as a user interface showing plug-in information on the screen.
- the display control unit 169 acquires, for example, four types of music data of four measures as shown in FIG. 2, and displays the four candidates side by side in the user interface.
- the user can select a final candidate by connecting good parts from the four types of music data candidates along the time axis (that is, by performing comping). For example, the user can delete some notes of the melody, connect them, change the length of the notes, or change the height of the notes.
- the display control unit 169 may perform a control of displaying a history of past music data composed by the processing server 100 from the storage unit 15 and displaying a history of past music data according to a user operation.
- the user can proceed with the composition work while referring to the data composed by the processing server 100 in the past.
- the user can determine the final candidate by comparing the latest song created by editing with the history of songs edited in the past.
- the display control unit 169 calls from the storage unit 15 a history of editing operations performed on the past song data composed by the processing server 100, and at the same time, displays the editing operations performed on the past song data. You may control to display. As a result, the user can refer to the editing operation performed in the past, the music data generated by the editing operation, and the like, so that the composition work can be efficiently performed.
- FIG. 2 and FIG. 3 show an example in which the music data is displayed on the user interface in a format such as a so-called piano roll, which indicates the pitch and the length of the note, the display control unit 169 uses the staff notation.
- the music data may be displayed in a format unique to DAW.
- FIG. 12 is a diagram illustrating a configuration example of the processing server 100 according to the embodiment.
- the processing server 100 has a communication unit 110, a storage unit 120, and a control unit 130.
- the processing server 100 includes an input unit (for example, a keyboard and a mouse) that receives various operations from an administrator who manages the processing server 100, and a display unit (for example, a liquid crystal display) for displaying various information. You may have.
- the communication unit 110 is realized by, for example, NIC.
- the communication unit 210 is connected to the network N by wire or wirelessly, and transmits/receives information to/from the user terminal 10, the management server 20, and the like via the network N.
- the storage unit 120 is realized by, for example, a semiconductor memory device such as a RAM or a flash memory, or a storage device such as a hard disk or an optical disk.
- the storage unit 120 stores various data used for information processing.
- the storage unit 120 stores various information such as user information 121, music information 122, style palette information 123, style palette sequence information 124, user composition information 125, and history information 126. .. Hereinafter, each information will be described.
- the user information 121 indicates information on a user who uses the plug-in 22 (second application).
- FIG. 13 shows an example of the user information 121 according to the embodiment.
- FIG. 13 is a diagram showing an example of the user information 121 according to the embodiment.
- the user information 121 includes a user ID, user meta information, and authority information.
- the user ID indicates identification information for uniquely identifying the user.
- the user meta information is additional information of the user such as the name and address of the user.
- the authority information is, for example, identification information indicating whether the user who uses the plug-in is an administrator, a general user, or a special user.
- the music information 122 indicates information on music used for automatic music processing.
- FIG. 14 shows an example of the music information 122 according to the embodiment.
- FIG. 14 is a diagram showing an example of the music information 122 according to the embodiment.
- the music information 122 includes a music ID, music meta information, melody information, chord progression information, and bass note progression information.
- the song ID indicates identification information for uniquely identifying the song.
- the music meta information is, for example, information such as a music title, a composer, an era, and a genre.
- the melody information is, for example, scale information expressing a vocal part.
- the chord progression information is, for example, time-series information that expresses the transition of chords of music.
- the bass note progress information is time series information indicating the root note of the chord progression information.
- the style palette information 123 indicates information about a style palette used for automatic music composition processing.
- FIG. 15 shows an example of the style palette information 123 according to the embodiment.
- FIG. 15 is a diagram showing an example of the style palette information 123 according to the embodiment.
- the style palette information 123 includes a style palette ID, style palette meta information, and a music ID.
- the style palette ID indicates identification information for uniquely identifying the style palette.
- the style palette meta information is, for example, the name of a style palette, subjective characteristic information such as bright or dark, fast or slow, a structure in which a music structure is composed of A melody, B melody, and rust, and Information such as characteristics of chord progression. Note that the name of the style palette meta information may be accompanied by chord progression information or the like. This allows the user to intuitively understand the characteristics of the style palette. Further, as shown in FIG. 15, a plurality of music IDs are linked and registered in the style palette.
- the style palette information 123 is registered by the management server 200 or the like, for example.
- the style palette sequence information 124 shows information about a style palette sequence used for automatic music composition processing.
- FIG. 16 shows an example of the style palette sequence information 124 according to the embodiment.
- FIG. 16 is a diagram showing an example of the style palette sequence information 124 according to the embodiment.
- the style palette sequence information 124 includes a style palette sequence ID, style palette sequence meta information, style palette ID, and formulation information.
- the style palette sequence ID indicates identification information for uniquely identifying the style palette sequence.
- the style palette sequence meta information is, for example, the name of a style palette sequence, and subjective characteristic information such as bright or dark, fast or slow.
- a plurality of style palette IDs are linked and registered in the style palette sequence.
- the compounding information is information about the arrangement of style palettes in the style palette sequence.
- the user composition information 125 indicates information about composition received from the user terminal 10.
- FIG. 17 shows an example of the user composition information 125 according to the embodiment.
- FIG. 17 is a diagram showing an example of the user composition information 125 according to the embodiment.
- the user composition information 125 includes a user ID, a music ID, a style palette ID, and a style palette sequence ID.
- the user ID indicates identification information for uniquely identifying the user.
- the song ID indicates identification information for identifying a song created for the user identified by the user ID.
- the style palette ID indicates identification information for identifying the style palette transmitted from the user specified by the user ID.
- the style palette sequence ID indicates identification information for identifying the style palette sequence transmitted from the user specified by the user ID.
- the history information 126 is various history related to information processing of the processing server 100.
- FIG. 18 shows an example of the history information 126 according to the embodiment.
- FIG. 18 is a diagram showing an example of the history information 126 according to the embodiment.
- the history information 126 includes composition history information and operation history information.
- the composition history information is a history of songs created by the processing server 100.
- the operation history information is information such as a history of editing operations performed by the user on the user terminal 10.
- the operation history information is, for example, information such as information on re-composition by the user, information on selection of composed music data, information on editing music data, number of times of reproduction, number of times of reproduction skipped, and the like. These pieces of information may be used as learning data of the composition unit 134 described later.
- the control unit 130 is realized, for example, by a CPU, MPU, GPU, or the like executing a program stored inside the processing server 100 using a RAM or the like as a work area. Further, the control unit 130 is a controller, and may be realized by an integrated circuit such as ASIC or FPGA.
- control unit 130 includes a reception unit 131, a management unit 132, an acquisition unit 133, a composition unit 134, and a transmission unit 135, and functions and actions of information processing described below. Realize or execute.
- the internal configuration of the control unit 130 is not limited to the configuration shown in FIG. 12, and may be another configuration as long as it is a configuration for performing information processing described later.
- the reception unit 131 receives various types of information transmitted from the management server 200. For example, the reception unit 131 receives information about a user who uses the plug-in, information about a style palette, information about a material song used as an automatic song, and the like. For example, the reception unit 131 performs a process of issuing a user ID to the user or receiving information about the user when the user activates the product (plug-in, DAW, etc.) when purchasing the product. Execute. In addition, the reception unit 131 receives registration of music associated with the style palette, editing of the style palette, and the like in accordance with operations and commands from the management server 200.
- the management unit 132 manages various information received by the reception unit 131. For example, the management unit 132 stores various types of information in the storage unit 120 and updates the stored information as appropriate.
- the management unit 132 when the management unit 132 completes the style palette registration process, the user can acquire and browse the list of style palette information.
- the acquisition unit 133 acquires a request for an automatic tune transmitted from the user terminal 10.
- the acquisition unit 133 acquires the setting information transmitted with the request.
- the acquisition unit 133 acquires a style palette desired by the user as the setting information.
- the music composition unit 134 composes music based on the setting information acquired by the acquisition unit 133.
- the music composition unit 134 may compose music using various existing music generation algorithms.
- the composition unit 134 may use a music generation algorithm that uses a Markov chain or a music generation algorithm that uses deep learning.
- the composition unit 134 generates a plurality of pieces of music data for one piece of setting information sent by the user. With this, the user can receive a plurality of suggestions from the composition unit 134, and thus can proceed with composition work by using more diverse information.
- the composition unit 134 associates the generated music data with the user ID of the user who has transmitted the style palette, and stores them in the storage unit 120 as history information.
- the transmission unit 135 transmits the music data generated by the composition unit 134 to the user terminal 10.
- FIG. 19 is a flowchart showing a procedure of information processing according to the embodiment.
- the user terminal 10 activates the automatic music composition function (plug-in) on the host application according to the user's operation (S101).
- the user terminal 10 determines whether or not the selection of the style palette or the like has been received from the user (step S102). When the selection of the style palette or the like has not been received from the user (step S102; No), the user terminal 10 waits until the selection is received.
- the user terminal 10 selects the style palette according to the user's operation (step S103).
- the user terminal 10 may accept various setting information other than the style palette in step S102.
- the user terminal 10 determines whether or not a composition request is received from the user (step S104). When the composition request is not received from the user (step S104; No), the user terminal 10 waits until the request is received.
- the user terminal 10 transmits the accepted setting information to the processing server 100 together with the composition request (step S105). Then, the user terminal 10 receives the music data composed (generated) by the processing server 100 (step S106).
- the user terminal 10 determines whether or not the edit processing or the like has been performed by the user on the user terminal 10 (step S107).
- the user terminal 10 waits until the editing process is accepted (step S107).
- step S107 when the edit processing or the like has been performed (step S107; Yes), the user terminal 10 reflects the edit and transmits information regarding the edit operation to the processing server 100 (step S108).
- the user terminal 10 determines again whether or not the composition request is received from the user (step S109).
- the user terminal 10 receives new setting information from the user.
- step S109 when the composition request is not accepted from the user (step S109; No), the user terminal 10 determines whether or not the host application end request is accepted (step S110). When the end request of the host application is not received (step S110; No), the user terminal 10 continues the editing process of the music data currently received. On the other hand, when the end request of the host application is received (step S110; Yes), the user terminal 10 ends the host application and the plug-in, and ends the process.
- the type of information set in the musical instrument information 154 of the music data in the plug-in is assumed to be melody, chord, or bass sound, but the present invention is not limited to this.
- the assigned instrument information 154 can be applied not only to the melody, chord, and bass tone, but also to the performance part of each instrument of the full orchestra, for example.
- the DAW is assumed as the host application, but the host application is not limited to this.
- the host application may be a video editing application or the like instead of the music editing application.
- the setting information and the like may be selected by the host application. That is, the user terminal 10 may transmit the setting information (for example, chord progression) selected in the host application to the processing server 100 to execute the automatic song processing.
- the host application provides the plug-in with an API (Application Programming Interface) or the like for the plug-in to use the information of the host application, and obtains the information for generating the style palette from the host application.
- the transmission/reception processing with the processing server 100 may be controlled.
- the user terminal 10 generates an arbitrary chord progression using the chord generation function of the DAW, which is the host application. Then, the user terminal 10 may execute the automatic tune based on the chord progression generated by the DAW. For example, the user terminal 10 inputs the chord progression generated by the DAW into the plug-in, and transmits the chord progression to the processing server 100 via the plug-in.
- the host application controls to send the information about the chord progression generated in the host application to the plug-in. Then, the plug-in selects the chord progression information generated in the host application as the setting information. Further, the plug-in transmits the chord progression information generated in the host application to the processing server 100, and receives the music data composed based on the chord progression information.
- the user terminal 10 may automatically select the style palette to be transmitted to the processing server 100 based on the chord progression generated by the DAW. For example, the user terminal 10 may select a style palette having characteristics similar to the chord progression generated by the DAW and send it to the processing server 100. Also, the user terminal 10 sequentially selects a style palette according to the progress based on the chord progression generated by the DAW, generates a style palette sequence, and transmits the generated style palette sequence to the processing server 100. Good.
- the user terminal 10 may also be set so that the plug-in enables information access to the base track on the host application.
- the user makes a setting such that the base track of the DAW follows the music data in which the track is automatically composed.
- the base track is automatically supplemented in accordance with the music data generated by the processing server 100 and the chord progression generated by the DAW, for example.
- the user terminal 10 may be set so that the plug-in enables information access to the melody track on the host application.
- the user makes a setting such that the melody track of the DAW follows the music data in which the track is automatically composed.
- the generated melody is automatically inserted in the track.
- the user sets the DAW in a mode for editing a combination of a plurality of music data (referred to as Comping mode etc.)
- Comping mode a mode for editing a combination of a plurality of music data
- the user can select a desired portion of a plurality of tracks appearing on the screen to complete the melody. ..
- User terminal 10 may also be configured to allow the plugin to access information to the melody track and MIDI input on the host app.
- the user can compose music by making full use of both the automatic music composition function and the MIDI input.
- the user inputs an arbitrary chord progression in 4 bars and causes the DAW to perform a loop play. Then, the user inputs with the MIDI keyboard in time with the loop performance.
- the user terminal 10 can automatically create a personal style palette on the processing server 100 side.
- the user can instruct start, stop, save, name, delete, etc. of creating these personal style palettes in the newly added style palette menu on the DAW.
- Such personal style palettes may be made publicly available via the style palette menu.
- the user terminal 10 may also be set so that the plug-in enables information access to the audio track on the host application.
- the audio track is, for example, a track in which a musical instrument performance sound is recorded, and is, for example, a chord performance by a piano, a bass sound performance by a bass guitar, a melody by a reed instrument, or the like.
- the plug-in accesses the audio tracks, analyzes audio data such as the melody, chord, and bass sound of each track by signal processing, and obtains NIDI information of the melody, chord progression information, and the like.
- the plug-in may use, for example, a 12-tone analysis technique when analyzing.
- the user terminal 10 may transmit the analyzed information to the processing server 100 and automatically infer the optimum chord progression by machine learning or the like. Then, the processing server 100 defines a style palette sequence based on this chord progression information. As a result, the user can perform the assisted composition work based on the style palette sequence generated by the processing server 100, so that, for example, it is possible to recompose the whole or partially recompose and replace it. Become.
- the user terminal 10 may also be set so that the plug-in enables information access to the existing master track on the host application.
- the master track is, for example, a track down into two stereo channels after mixing in the DAW.
- the plug-in accesses the master track, analyzes the audio data by signal processing, and obtains chord progression information and the like.
- the user terminal 10 may transmit the analyzed information to the processing server 100 and automatically infer the optimum chord progression by machine learning or the like.
- the processing server 100 defines a style palette sequence based on this chord progression information.
- the user can perform the assisted composition work based on the style palette sequence generated by the processing server 100, so that, for example, it is possible to recompose the whole or partially recompose and replace it. Become.
- the user terminal 10 may apply such functions to the plug-in and use them for the information processing according to the present disclosure. For example, as described above, the user terminal 10 generates a style palette sequence based on the chord progression generated by the DAW, or publishes the style palette sequence on the network, thereby performing composition processing between users. Can be activated.
- the processing server 100 is installed on the cloud network, but the present invention is not limited to this example, and if the processing server 100 and the management server 200 can communicate with the user terminal 10, the processing server 100 and the management server 200 can use the LAN It may be installed on a network such as a Local Area Network.
- the first application and the second application may be applications installed in different devices.
- the user terminal 10 may hold only the function of the first application and may play the sound source or the like by controlling the second application installed in another device such as a tablet terminal or a smartphone.
- each component of each illustrated device is functionally conceptual, and does not necessarily have to be physically configured as illustrated. That is, the specific form of distribution/integration of each device is not limited to that shown in the figure, and all or part of the device may be functionally or physically distributed/arranged in arbitrary units according to various loads and usage conditions. It can be integrated and configured.
- the information processing apparatus functions as the first application (the host application 20 in the embodiment) and the plug-in that extends the function of the first application.
- Two applications (plug-in 22 in the embodiment) are controlled.
- the first application includes a control unit (a host application control unit 161 in the embodiment) that controls the operation of the second application in the first application.
- the second application executes a composition function based on machine learning based on the setting information via a network and a selection unit (selection unit 166 in the embodiment) that selects setting information for controlling the composition function based on machine learning.
- a transmission/reception unit (transmission/reception unit 167 in the embodiment) that transmits to an external server (processing server 100 in the embodiment) and receives music data composed by the external server.
- the information processing apparatus handles the second application having the automatic music composition function as a plug-in and causes the external server to execute the actual composition process.
- the information processing apparatus can provide the user with an environment with good work efficiency while suppressing the processing load. That is, the information processing apparatus can improve the convenience of the automatic song function based on AI.
- the transmitting/receiving unit receives, as music data, a chord in a bar of a specified length, a melody in a bar, and a bass sound in a bar.
- the information processing apparatus can individually refer to or edit the music data, so that the convenience of the user can be improved.
- the control unit individually sets the musical instrument information for specifying the tone color when playing a chord, melody or bass tone included in the music data.
- the information processing apparatus can provide various reproduction environments.
- the control unit controls to individually display windows for displaying information on chords, melody or bass sounds included in the music data.
- the information processing apparatus can improve the convenience of the user's editing operation.
- the control unit controls transmission/reception of information between each window displaying information on chords, melody or bass sound and the window displaying information on the first application according to a user's operation. Accordingly, the information processing apparatus can exchange information between the first application and the second application by an operation such as drag and drop, so that the convenience of the user's editing operation can be improved.
- the control unit controls the transmission and reception of information between the windows that display information about chords, melodies or bass sounds.
- the information processing apparatus can improve the convenience of the user's editing operation.
- the selection unit selects, as the setting information, designation information (a style palette in the embodiment) for designating a material song that is learning data for machine learning.
- the transmission/reception unit transmits the designation information selected by the selection unit to the external server.
- the information processing apparatus can specify various characteristics desired by the user and execute the automatic tune.
- the selection unit is designation information that is stored in advance in the storage unit (the storage unit 15 in the embodiment) according to a user's operation, and is characteristic information indicating a feature of the designation information and a plurality of materials associated with the feature information. Select the specified information including the music. With this, the information processing apparatus can improve convenience when the user selects the designated information.
- the selection unit combines combination designation information (first designation information corresponding to some measures of the music data composed by the external server and second designation information corresponding to some other measures) (In the embodiment, the style palette sequence) is selected. Thereby, the information processing apparatus can automatically generate various music pieces.
- the transmission/reception unit When the transmission/reception unit receives the music data composed by the external server based on the combination designation information, the transmission/reception unit stores the combination designation information and the music data in the storage unit in association with each other. As a result, the information processing apparatus can improve the convenience when the user refers to the combination designation information or the like that is the basis of the music data created in the past.
- the selection unit selects, as the setting information, the note length information included in the music data composed by the external server based on the specified information.
- the transmission/reception unit transmits the designation information and the note length information to the external server. As a result, the information processing device can generate music data having characteristics desired by the user.
- the selection unit selects, as the setting information, information for determining the probability that the constituent sound included in the chord appears in the melody in the music data composed by the external server based on the designation information.
- the transmission/reception unit transmits, to the external server, the designation information and information for determining the probability that the constituent sounds included in the chord appear in the melody.
- the information processing device can generate music data having characteristics desired by the user.
- the selection unit selects, as setting information, information for determining the type and amount of material music other than the material music included in the designation information in the music data composed by the external server based on the designation information.
- the transmitting/receiving unit transmits the designation information and information for determining the type and amount of the material song other than the material song included in the designated information to the external server.
- the information processing device can generate music data having characteristics desired by the user.
- the second application calls a history of past music data composed by an external server from a storage unit according to a user's operation, and controls a display control unit (display control in the embodiment to display a history of past music data).
- the unit 169) is further provided.
- the information processing apparatus can improve convenience when the user refers to past operation history and the like.
- the display control unit recalls a history of editing operations performed on the past music data composed by the external server from the storage unit, and controls to display the editing operations performed on the past music data. ..
- the information processing apparatus can improve convenience when the user refers to past operation history and the like.
- the transmitting/receiving unit transmits the information regarding the reproduction or editing operation to the external server when the user performs the reproduction or editing operation on the music data.
- the information processing apparatus can cause the processing server 100 to perform further learning based on the editing performed by the user.
- the selection unit selects the chord progression in the composed song as the setting information based on the user's operation.
- the transmission/reception unit transmits the chord progression selected by the selection unit to the external server. With this, the information processing apparatus can provide the music data desired by the user regardless of the designation information.
- the control unit controls the chord progression information generated in the first application to be sent to the second application.
- the selection unit selects, as the setting information, information on the chord progression generated in the first application.
- the transmission/reception unit transmits the information regarding the chord progression generated in the first application to the external server, and receives the music data composed based on the information regarding the chord progression.
- the information processing apparatus can execute composition processing that makes use of the function of the first application such as DAW.
- FIG. 20 is a hardware configuration diagram showing an example of a computer 1000 that realizes the function of the user terminal 10.
- the computer 1000 has a CPU 1100, a RAM 1200, a ROM (Read Only Memory) 1300, an HDD (Hard Disk Drive) 1400, a communication interface 1500, and an input/output interface 1600.
- the respective units of the computer 1000 are connected by a bus 1050.
- the CPU 1100 operates based on a program stored in the ROM 1300 or the HDD 1400, and controls each part. For example, the CPU 1100 expands a program stored in the ROM 1300 or the HDD 1400 into the RAM 1200 and executes processing corresponding to various programs.
- the ROM 1300 stores a boot program such as a BIOS (Basic Input Output System) executed by the CPU 1100 when the computer 1000 starts up, a program dependent on the hardware of the computer 1000, and the like.
- BIOS Basic Input Output System
- the HDD 1400 is a computer-readable recording medium that non-temporarily records a program executed by the CPU 1100, data used by the program, and the like. Specifically, the HDD 1400 is a recording medium that records an information processing program according to the present disclosure, which is an example of the program data 1450.
- the communication interface 1500 is an interface for connecting the computer 1000 to an external network 1550 (for example, the Internet).
- the CPU 1100 receives data from another device or transmits the data generated by the CPU 1100 to another device via the communication interface 1500.
- the input/output interface 1600 is an interface for connecting the input/output device 1650 and the computer 1000.
- the CPU 1100 receives data from an input device such as a keyboard or a mouse via the input/output interface 1600.
- the CPU 1100 also transmits data to an output device such as a display, a speaker, a printer, etc. via the input/output interface 1600.
- the input/output interface 1600 may function as a media interface for reading a program or the like recorded in a predetermined recording medium (medium).
- Examples of media include optical recording media such as DVD (Digital Versatile Disc) and PD (Phase change rewritable Disk), magneto-optical recording media such as MO (Magneto-Optical disk), tape media, magnetic recording media, and semiconductor memory. Is.
- optical recording media such as DVD (Digital Versatile Disc) and PD (Phase change rewritable Disk)
- magneto-optical recording media such as MO (Magneto-Optical disk), tape media, magnetic recording media, and semiconductor memory.
- the CPU 1100 of the computer 1000 realizes the functions of the control unit 16 and the like by executing the information processing program loaded on the RAM 1200.
- the HDD 1400 stores the information processing program according to the present disclosure and the data in the storage unit 15.
- the CPU 1100 reads the program data 1450 from the HDD 1400 and executes the program data.
- these programs may be acquired from another device via the external network 1550.
- An information processing apparatus that controls a first application and a second application that functions as a plug-in that extends the function of the first application
- the first application is A control unit for controlling the operation of the second application in the first application
- the second application is A selection unit for selecting setting information for controlling the composition function based on machine learning
- a transmission/reception unit that transmits the setting information to an external server that executes the composition function based on the machine learning via a network, and receives the music data composed by the external server.
- An information processing apparatus including.
- the transmitter/receiver is The information processing apparatus according to (1), wherein a chord in a bar having a specified length, a melody in the bar, and a bass sound in the bar are received as the music data.
- the control unit is The information processing apparatus according to (2), wherein the musical instrument information for designating a tone color for reproducing a chord, a melody, or a bass tone included in the music data is individually set.
- the control unit is The information processing apparatus according to (3), wherein each of the windows that displays information about a chord, a melody, or a bass sound included in the music data is individually displayed.
- the control unit is The information processing device according to (4), which controls transmission and reception of information between each window that displays information about the chord, melody, or bass sound and a window in which information about the first application is displayed according to a user operation .. (6)
- the control unit is The information processing apparatus according to (4) or (5), wherein transmission/reception of information between windows that display information about the chord, melody, or bass sound is controlled according to a user operation.
- the selection unit As the setting information, select designation information for designating a material music piece as the learning data of the machine learning,
- the transmitter/receiver is The information processing apparatus according to any one of (1) to (6), wherein the designation information selected by the selection unit is transmitted to the external server.
- the selection unit According to a user's operation, selecting designation information stored in advance in a storage unit, the designation information including feature information indicating a feature of the designation information and a plurality of material songs associated with the feature information is selected.
- the information processing device according to (7).
- the selection unit Select combination designation information that is a combination of first designation information corresponding to some measures and second designation information corresponding to other measures of the music data composed by the external server.
- the information processing apparatus according to (7) or (8).
- the transmitter/receiver is The information processing device according to (9), wherein when the music data composed by the external server based on the combination designation information is received, the combination designation information and the music data are stored in the storage unit in association with each other.
- the selection unit As the setting information, note length information included in music data composed by the external server based on the designation information is selected,
- the transmitter/receiver is The information processing apparatus according to any one of (7) to (10), wherein the designation information and the note length information are transmitted to the external server.
- the selection unit As the setting information, in the music data composed by the external server based on the designation information, information for determining a probability that a constituent sound included in a chord appears in a melody is selected,
- the transmitter/receiver is The information processing device according to any one of (7) to (11), which transmits information for determining a probability that a constituent sound included in the designation information and the chord appears in a melody to the external server.
- the selection unit As the setting information, in the music data composed by the external server based on the designation information, select information for determining the type and amount of the material music other than the material music included in the designation information,
- the transmitter/receiver is The information processing apparatus according to any one of (7) to (12), which transmits the designation information and information for determining the type and amount of the material song other than the material song included in the designated information to the external server. .. (14)
- the second application is According to a user's operation, a history of past music data composed by the external server is retrieved from the storage unit, and a display control unit is further provided for controlling to display the history of the past music data.
- the information processing device according to any one of 13).
- the display control unit The history of the editing operation executed on the past music data composed by the external server is called from the storage unit, and the editing operation executed on the past music data is controlled to be displayed (14) )
- the transmitter/receiver is After the music data composed by the external server is received, when the user performs a reproduction or editing operation on the music data, information regarding the reproduction or editing operation is transmitted to the external server (1) to ( 15. The information processing device according to any one of 15).
- the selection unit As the setting information, the chord progression of the song to be composed is selected based on the user's operation,
- the transmitter/receiver is The information processing apparatus according to any one of (1) to (16), which transmits the chord progression selected by the selection unit to the external server.
- the control unit is Controlling to send the chord progression information generated in the first app to the second app,
- the selection unit As the setting information, select the chord progression information generated in the first application,
- the transmitter/receiver is The information related to chord progression generated in the first application is transmitted to the external server, and the music data composed based on the information regarding chord progression is received.
- the first application is Controlling the operation of the second application in the first application
- the second application is Select setting information to control the composition function based on machine learning
- the first application is Controlling the operation of the second application in the first application
- the second application is Select setting information to control the composition function based on machine learning
- An information processing program that causes the information processing apparatus to function so as to transmit the setting information to an external server that executes a composition function based on the machine learning via a network, and receive music data composed by the external server.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Electrophonic Musical Instruments (AREA)
- Auxiliary Devices For Music (AREA)
Abstract
本開示に係る情報処理装置(100)は、第1アプリ(20)と、当該第1アプリの機能を拡張するプラグインとして機能する第2アプリ(20)とを制御する情報処理装置であって、第1アプリは、第1アプリにおける第2アプリの動作を制御する制御部(161)を備え、第2アプリは、機械学習に基づく作曲機能を制御するための設定情報を選択する選択部(166)と、ネットワークを介して、設定情報を機械学習に基づく作曲機能を実行する外部サーバ(200)に送信し、外部サーバによって作曲された楽曲データを受信する送受信部(167)と、を備える。
Description
本開示は、情報処理装置、情報処理方法及び情報処理プログラムに関する。詳しくは、機械学習に基づいて作曲される楽曲データの利用に関する。
AI(Artificial Intelligence)の進歩に伴い、芸術分野におけるコンピュータの活用が進められている。
例えば、既存の楽曲を学習データとして機械学習を行って楽曲生成のための学習モデルを生成し、新たな楽曲をコンピュータに作曲させる技術が知られている(例えば、特許文献1)。かかる技術では、マルコフモデルを用いて、既存の楽曲の特徴を模倣したり、より自然な旋律を生成したりすることが可能である。
従来技術によれば、作曲作業においてAIによって提案(生成)された楽曲データを利用することができるため、ユーザは、より多様な観点に基づいて作曲を行うことができる。
しかしながら、上記の従来技術では、AIによる自動作曲機能の利便性を向上させることができるとは限らない。例えば、現状ではユーザの多くはDAW(Digital Audio Workstation)を利用して作曲や編曲、録音等の作業を行う。しかし、ユーザが上記の従来技術をDAWと併用して利用する際には、異なる作業環境を行き来しながら作業を進めることになるため、作業効率が低下するおそれがある。また、AIによる自動作曲機能は、一般に情報処理の負荷が大きいため、端末装置においてDAWと同時に実行すると、充分な機能が発揮できなかったり、DAW側の処理に遅延を発生させたりするおそれがある。
そこで、本開示では、AIによる自動作曲機能の利便性を向上させることができる情報処理装置、情報処理方法及び情報処理プログラムを提案する。
上記の課題を解決するために、本開示に係る一形態の情報処理装置は、第1アプリと、当該第1アプリの機能を拡張するプラグインとして機能する第2アプリとを制御する情報処理装置であって、前記第1アプリは、前記第1アプリにおける前記第2アプリの動作を制御する制御部を備え、前記第2アプリは、機械学習に基づく作曲機能を制御するための設定情報を選択する選択部と、ネットワークを介して、前記設定情報を前記機械学習に基づく作曲機能を実行する外部サーバに送信し、当該外部サーバによって作曲された楽曲データを受信する送受信部と、を備える。
以下に、本開示の実施形態について図面に基づいて詳細に説明する。なお、以下の各実施形態において、同一の部位には同一の符号を付することにより重複する説明を省略する。
以下に示す項目順序に従って本開示を説明する。
1.実施形態
1-1.実施形態に係る情報処理の一例
1-2.実施形態に係る情報処理システムの構成
1-3.実施形態に係る情報処理装置(ユーザ端末)の構成
1-4.実施形態に係る外部サーバ(処理サーバ)の構成
1-5.実施形態に係る情報処理の手順
2.変形例
2-1.楽曲データの形態
2-2.ホストアプリ
2-3.DAWによる制御
2-4.情報処理システムの態様
3.その他の実施形態
4.本開示に係る情報処理装置の効果
5.ハードウェア構成
1.実施形態
1-1.実施形態に係る情報処理の一例
1-2.実施形態に係る情報処理システムの構成
1-3.実施形態に係る情報処理装置(ユーザ端末)の構成
1-4.実施形態に係る外部サーバ(処理サーバ)の構成
1-5.実施形態に係る情報処理の手順
2.変形例
2-1.楽曲データの形態
2-2.ホストアプリ
2-3.DAWによる制御
2-4.情報処理システムの態様
3.その他の実施形態
4.本開示に係る情報処理装置の効果
5.ハードウェア構成
(1.実施形態)
[1-1.実施形態に係る情報処理の一例]
まず、図1を用いて、本開示に係る情報処理の一例を説明する。図1は、実施形態に係る情報処理の流れを示す概念図である。実施形態に係る情報処理は、本開示に係る情報処理装置の一例であるユーザ端末10、及び、本開示に係る外部サーバの一例である処理サーバ100によって実行される。ユーザ端末10及び処理サーバ100は、図1に示す有線又は無線のネットワークN(例えばインターネット等)を用いて相互に通信を行う。なお、ユーザ端末10及び処理サーバ100の台数は、図1に図示したものに限られない。
[1-1.実施形態に係る情報処理の一例]
まず、図1を用いて、本開示に係る情報処理の一例を説明する。図1は、実施形態に係る情報処理の流れを示す概念図である。実施形態に係る情報処理は、本開示に係る情報処理装置の一例であるユーザ端末10、及び、本開示に係る外部サーバの一例である処理サーバ100によって実行される。ユーザ端末10及び処理サーバ100は、図1に示す有線又は無線のネットワークN(例えばインターネット等)を用いて相互に通信を行う。なお、ユーザ端末10及び処理サーバ100の台数は、図1に図示したものに限られない。
図1に示すユーザ端末10は、本開示に係る情報処理装置の一例である。例えば、ユーザ端末10は、PC(personal computer)やタブレット端末、スマートフォン等の情報処理端末である。ユーザ端末10には、各種のプログラムアプリケーション(以下、単に「アプリ」と称する)が備えられる(インストールされる)。ユーザ端末10は、各種アプリを起動実行し、各種情報処理を実行する。
実施形態では、ユーザ端末10は、総合的な音楽制作環境を実現するアプリ(いわゆるDAW)を備える。以下の説明では、当該アプリ(DAW)を、第1アプリもしくはホストアプリと称する。実施形態に係る第1アプリは、機能を拡張するための他のアプリを組み込む(挿入する)ことが可能である。すなわち、第1アプリは、機能を拡張するための他のアプリである、いわゆるプラグインを利用可能であるものとする。この場合、第1アプリは、組み込まれたプラグインのホストアプリとして機能する。
また、実施形態では、ユーザ端末10は、AIによる自動作曲機能を有するアプリを備える。以下の説明では、当該アプリ(AIによる自動作曲機能を有するアプリ)を第2アプリもしくはプラグインと称する。実施形態に係る第2アプリは、上記した第1アプリのプラグインとして組み込まれるものとする。プラグインは、例えば、VST(Steinberg's Virtual Studio Technology)(登録商標)、AudioUnits、AAX(Avid Audio eXtension)等の形態をとることができる。
図1に示す処理サーバ100は、ユーザ端末10が備える第2アプリに関する情報処理を実行するサーバ装置である。例えば、処理サーバ100は、いわゆるクラウドサーバであり、ネットワークNを介してユーザ端末10から指令された情報に基づいて、所定の情報処理を実行する。具体的には、処理サーバ100は、ユーザ端末10から送信された情報に基づき、所定の学習処理や、学習したモデルから出力されるデータに基づいて楽曲データを生成する。言い換えれば、処理サーバ100は、ユーザ端末10の指令に基づき、AIによる自動作曲機能を実行する。例えば、処理サーバ100は、上述した先行技術文献等に示されるように、マルコフモデル等を用いて自動作曲された楽曲データをユーザ端末10に提供する。
上記のように、ユーザ端末10は、プラグインとして第2アプリを利用することで、第2アプリ上で処理サーバ100から提供された楽曲データを第1アプリ上にドラッグアンドドロップしたり、第1アプリ上で編集作業を行ったりすることができる。また、従来では、自動作曲機能は、処理が実行される端末の処理性能(CPUパワー等)に依存していたが、図1に示すように、ユーザ端末10は、自装置で学習処理等を行わず、処理サーバ100に処理を実行させる。これにより、ユーザ端末10は、自装置のリソースを節約しつつ、自動作曲機能という処理負荷の比較的高い処理を実行することができる。このため、ユーザ端末10は、従来の課題であったDAWの処理遅延(レイテンシーの発生等)を解決することができる。結果として、本開示に係るユーザ端末10は、AIによる自動作曲機能の利便性を向上させることができる。以下、本開示に係る情報処理の概要について、図1を用いて流れに沿って説明する。
図1に示すように、ユーザ端末10は、ホストアプリ(第1アプリ)20を起動する(ステップS1)。また、ユーザ端末10は、ホストアプリ20で動作するプラグインの一例として、プラグイン(第2アプリ)22を起動する(ステップS2)。
ユーザ端末10は、ユーザの操作に従い、プラグイン22において自動作曲する楽曲の設定情報を選択する。詳細は後述するが、ユーザ端末10は、ユーザの操作に従い、自動作曲する楽曲のコード進行や、楽曲の主観的イメージ(暗い、明るいなど)、楽曲の構成等の設定情報を選択する。そして、ユーザ端末10は、選択した設定情報を処理サーバ100に送信する(ステップS3)。
処理サーバ100は、ユーザ端末10から送信された設定情報に基づいて、所定の学習処理を行い、学習結果に基づいて作曲処理を行う(ステップS4)。かかる作曲処理には、例えば上記の先行技術文献に記載された処理が利用されてもよい。そして、処理サーバ100は、作曲した楽曲データを生成する。
続いて、処理サーバ100は、生成した楽曲データをユーザ端末10に送信する(ステップS5)。ユーザ端末10は、プラグイン22において、処理サーバ100から送信された楽曲データを受信する。例えば、楽曲データには、処理サーバ100によって生成されたコード進行や、メロディや、ベース音進行等の情報が含まれる。なお、楽曲データは、MIDI(Musical Instrument Digital Interface)データ等の標準規格データであってもよいし、波形データであってもよいし、DAW独自規格データであってもよい。ユーザは、受信した楽曲データをプラグイン22上で編集してもよいし、また、楽曲データをホストアプリ20にコピーし、ホストアプリ20上で利用してもよい。
このように、ユーザ端末10は、ホストアプリ20と、ホストアプリ20の機能を拡張するプラグインとして機能するプラグイン22とを制御する。また、ホストアプリ20は、ホストアプリ20におけるプラグイン22の動作を制御する。また、プラグイン22は、機械学習に基づく作曲機能を制御するための設定情報を選択し、ネットワークNを介して、設定情報を処理サーバ100に送信し、処理サーバ100によって作曲された楽曲データを受信する。
すなわち、ユーザ端末10は、DAWのプラグインとして自動作曲機能を利用する。このため、ユーザは、DAWという通常の作業環境のままで自動作曲機能の支援を受けることができる。また、ユーザは、自動作曲機能における処理負荷を処理サーバ100に担わせることで、DAWにおいて処理の遅延が発生することを回避できる。結果として、ユーザ端末10は、AIによる自動作曲機能の利便性を向上させることができる。
次に、図2乃至図4を用いて、プラグイン22による自動作曲機能の詳細について説明する。
図2は、実施形態に係るユーザインターフェイスの一例を示す図(1)である。図2には、プラグイン22がユーザ端末10の画面上に表示された際のユーザインターフェイスの一例を示す。
図2に示す例では、ユーザインターフェイス30は、プラグイン22が受信した楽曲データを表示する。なお、詳細は後述するが、プラグイン22における楽曲データは、メロディとコードとベース音の3種類の異なるデータから構成される。図2に示すユーザインターフェイス30は、3種類の異なるデータのうち、メロディに関するデータを表示する。
設定情報31は、自動作曲機能における設定情報の一例である、スタイルパレットに関する情報を表示する。スタイルパレットとは、機械学習の学習データとなる素材楽曲を指定するための指定情報である。
設定情報32は、自動作曲機能における設定情報の一例である、ハーモニーに関する情報を表示する。ハーモニーに関する情報とは、例えば、処理サーバ100によって作曲される楽曲データにおける、コードに含まれる構成音がメロディに登場する確率を決定するための情報である。例えば、ユーザがハーモニーに関する情報を「厳格(strict)」に設定すると、自動作曲された楽曲データにおいて、コードに含まれる構成音がメロディに登場する確率が高くなる。一方、ユーザがハーモニーに関する情報を「ゆるい(loose)」に設定すると、自動作曲された楽曲データにおいて、コードに含まれる構成音がメロディに登場する確率が低くなる。図2の例では、ユーザは、ハーモニーに関する情報を「厳格(strict)」よりに適用させたことを示している。
設定情報33は、自動作曲機能における設定情報の一例である、音符の長さ情報を表示する。音符の長さ情報とは、例えば、処理サーバ100によって作曲される楽曲データにおける、音符の長さを決定するための情報である。例えば、ユーザが音符の長さ情報を「長い(long)」に設定すると、自動作曲された楽曲データにおいて、発音される音の長さが比較的長い音符(例えば、全音符や2分音符等)が登場する確率が高くなる。一方、ユーザが音符の長さ情報を「短い(short)」に設定すると、自動作曲された楽曲データにおいて、発音される音の長さが比較的短い音符(例えば、8分音符や16分音符等)が登場する確率が高くなる。
設定情報34は、自動作曲機能における設定情報の一例である、指定情報(ユーザが指定したスタイルパレット)に含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報を表示する。かかる情報は、例えば、処理サーバ100によって作曲される楽曲データにおいて、ユーザが指定したスタイルパレットに含まれる楽曲に基づいて学習を厳格に行うか否かを決定するための情報である。例えば、ユーザがかかる情報を「利用しない(never)」に設定すると、自動作曲における学習において、スタイルパレットに含まれる楽曲以外の楽曲が利用される傾向が低くなる。一方、ユーザがかかる情報を「利用する(only)」に設定すると、自動作曲における学習において、スタイルパレットに含まれる楽曲以外の楽曲が利用される傾向が高くなる。
楽曲データ35は、処理サーバ100から送信された具体的な楽曲データを表示する。図2の例では、楽曲データ35は、Cm等のコード進行を示す情報や、小節内の音高や音符の長さを示す情報、音符の高さの移り変わり(言い換えればメロディ)等を含む。また、図2に示すように、楽曲データ35は、例えば4種類の異なる内容を含んでもよい。すなわち、処理サーバ100は、自動作曲された楽曲データとして1種類だけを送信するのではなく、複数の楽曲データを送信してもよい。これにより、ユーザは、生成された複数の楽曲データの候補から、自身が好む楽曲データを選択したり、複数の楽曲データを組み合わせて好みの楽曲を作曲したりすることができる。
なお、図2に示すユーザインターフェイス30は、楽曲データに含まれるメロディ、コード、ベース音の3種類の異なるデータのうち、メロディに関するデータを表示しているが、他のデータについては、他のユーザインターフェイスに表示される。この点について、図3を用いて説明する。図3は、実施形態に係るユーザインターフェイスの一例を示す図(2)である。
図3に示すように、ユーザ端末10は、メロディに関するデータを表示するユーザインターフェイス30に加えて、コードに関するデータを表示するユーザインターフェイス38や、ベース音に関するデータを表示するユーザインターフェイス39を画面上に表示してもよい。図3での図示は省略しているが、ユーザインターフェイス38やユーザインターフェイス39には、ユーザインターフェイス30における楽曲データ35とは異なる音符情報が表示される。具体的には、ユーザインターフェイス38には、楽曲データのメロディに対応するコードに関する音符情報(例えば、コードCmの構成音等)が表示される。また、ユーザインターフェイス39には、楽曲データのメロディやコードに対応するベース音に関する音符情報(例えば、コードCmであれば「C」音等)が表示される。
ユーザは、表示されたユーザインターフェイス30、ユーザインターフェイス38、ユーザインターフェイス39の中から、ホストアプリ20にコピーする情報を選択したり、例えばベース音の一部を編集したりといった作業を行うことができる。
続いて、図4を用いて、上記した設定情報の一例であるスタイルパレットに関して説明する。図4は、実施形態に係るスタイルパレットの一例を示す図である。
図4に示すウインドウ40は、プラグイン22において表示されるユーザインターフェイスの一例である。ユーザは、例えば、ウインドウ40に表示されたスタイルパレットの特徴情報を参照して、自動作曲させたい楽曲と一致するイメージを選択する。例えば、ユーザは、「明るい」という特徴情報が記載されたスタイルパレット41や、「暗い」という特徴情報が記載されたスタイルパレット42等を選択する。また、ユーザは、「アメリカン」という、楽曲のジャンルや種別が特徴情報として記載されたスタイルパレット43や、「Aメロ→Bメロ→サビ」という、楽曲の構成が特徴情報として記載されたスタイルパレット44を選択する。
なお、上記のように、スタイルパレットとは、処理サーバ100が学習に用いる楽曲を指定するための情報である。すなわち、各スタイルパレットには、予め作曲された既存楽曲を特定するための情報が含まれる。例えば、スタイルパレット41には、構成楽曲リスト50が対応付けられているものとする。構成楽曲リスト50には、複数の既存楽曲が含まれる。また、スタイルパレット42には、構成楽曲リスト51が対応付けられているものとする。構成楽曲リスト51には、構成楽曲リスト50に含まれる楽曲とは異なる複数の既存楽曲が含まれる。
このため、スタイルパレット41に基づいて機械学習されて生成される学習モデルと、スタイルパレット42に基づいて機械学習されて生成される学習モデルとは異なる。これは、ユーザが選択したスタイルパレットによって、機械学習における学習データが変化することによる。すなわち、スタイルパレットとは、自動作曲における学習データを指定するための指定情報ともいえる。
スタイルパレットを構成する楽曲は、例えば、プラグイン22の管理者や提供者等により予め登録されるものとする。例えば、プラグイン22の管理者は、主観として「明るい」と感じられる複数の楽曲を抽出して構成楽曲リスト50を生成し、構成楽曲リスト50とスタイルパレット41とを対応付ける。なお、スタイルパレット及びスタイルパレットに対応する楽曲は、プラグイン22を利用するユーザによって任意に編集されてもよい。例えば、ユーザは、楽曲配信サービスやSNS(Social Networking Service)等のウェブサービスから楽曲を選択し、選択した楽曲を組み合わせて、所望するスタイルパレットを生成してもよい。具体的には、ユーザは、所定の音楽アプリが自動的に生成したプレイリストや、音楽アプリを利用するユーザに対して提供しているプレイリストに含まれる楽曲を任意に抽出して、自身が生成したスタイルパレットの構成楽曲を変更したり、新たにスタイルパレットを生成したりしてもよい。これにより、ユーザは、自身の好むスタイルパレットを柔軟に生成することができる。
なお、ユーザは、設定情報としてスタイルパレットを選択する際に、複数のスタイルパレットを選択してもよい。例えば、ユーザは、曲の一部(例えば、先頭の8小節)を作曲させるための設定情報としてスタイルパレット41を選択し、曲の異なる一部(例えば、中間の8小節)を作曲させるための設定情報としてスタイルパレット42を選択してもよい。このような複数のスタイルパレットを含む情報を、以下では、スタイルパレットシーケンスと称する。言い換えれば、スタイルパレットシーケンスとは、スタイルパレットという楽曲を指定する指定情報を組み合わせた、組み合わせ指定情報といえる。ユーザは、スタイルパレットシーケンスを設定して作曲を行わせることで、一つの楽曲中に複数の特徴を有するような多様な楽曲データを簡易に作成することができる。
続いて、図5を用いて、ホストアプリ20とプラグイン22との関係性を概念的に示す。図5は、実施形態に係る情報処理の流れを示すブロック図である。
図5に示す処理ブロック60は、DAW(ホストアプリ20)とプラグイン22とで実行される処理の流れを示す。通常、演奏者は、楽器を演奏した音を録音したり、MIDI等のデータを作成したりする。また、実施形態に係る情報処理では、演奏者に代わり、プラグイン22によってメロディやコード、ベース音に対応する楽曲データが生成される。例えば、演奏者やプラグイン22によって、メロディ61や、コード62や、ベース音63が生成される。
その後、ユーザは、DAWに係るレコーダにおいて、楽曲に用いるメロディ61や、コード62や、ベース音63を録音し、メロディやコードやベース音に対応する各トラック(track)を作成する。例えば、ユーザは、プラグイン22によって生成されたメロディ61に対して、演奏に用いる楽器を示す楽器情報を設定する。具体的には、ユーザは、DAWに登録されているギターでメロディ61を演奏する、といった楽器情報を設定する。そして、ユーザは、レコーダにおいて、仮想的なギターで演奏された音を録音し、ギターに対応するトラックを作成する。なお、DAWは複数のトラックを作成することが可能であるため、演奏者による演奏音に基づくトラックと、プラグイン22によって作成された楽曲データに基づくトラックとが併存してもよい。
その後、ユーザは、DAW上でミキシングを行い、トラックダウン等を経て楽曲データを作成する。また、ユーザは、DAW上でマスタリングを行い、音響信号レベルの調整等を経て、再生機器等で再生可能な音楽ファイル65を作成する。
このように、実施形態に係る情報処理によれば、ユーザは、演奏者が演奏を行った演奏データや、作成したMIDIデータに合わせて、プラグイン22によって自動作曲されたデータを利用してDAW上で楽曲作成を行うことができる。例えば、ユーザは、DAW上で、演奏者が演奏を行った演奏データに、AIによって自動作曲されたメロディをミックスしたり、AIから提案されたコード進行を組み込んだりして楽曲を作成することができる。
以上、本開示に係る情報処理の全体の流れの概要を説明した。図6以下では、ユーザ端末10を含む情報処理システム1の構成を説明するとともに、種々の処理の詳細を順に説明する。
[1-2.第1の実施形態に係る情報処理システムの構成]
図6は、本開示の第1の実施形態に係る情報処理システム1の一例を示す図である。図1に示すように、情報処理システム1は、ユーザ端末10と、処理サーバ100と、管理サーバ200とを含む。
[1-2.第1の実施形態に係る情報処理システムの構成]
図6は、本開示の第1の実施形態に係る情報処理システム1の一例を示す図である。図1に示すように、情報処理システム1は、ユーザ端末10と、処理サーバ100と、管理サーバ200とを含む。
ユーザ端末10は、本開示に係る情報処理装置の一例であり、ホストアプリ20やプラグイン22の動作を制御する。
処理サーバ100は、本開示に係る外部サーバの一例であり、プラグイン22と協働して自動作曲処理を行う。
管理サーバ200は、例えばプラグイン22を提供する事業者等によって管理されるサーバである。
例えば、管理サーバ200は、プラグイン22を利用するユーザのユーザ権限を管理したり、プラグイン22で利用可能なスタイルパレットの情報を管理したりする。例えば、管理サーバ200は、ユーザを一意に特定する利用者IDに基づいて、ユーザがプラグイン22を利用する権限を有するか否かを判定する。また、管理サーバ200は、スタイルパレットを作成したり、スタイルパレットを構成する楽曲を編集したりするとともに、スタイルパレットに関する情報をユーザ端末10や処理サーバ100に送信する。なお、管理サーバ200は、処理サーバ100と一体に構成されてもよい。
[1-3.実施形態に係る情報処理装置(ユーザ端末)の構成]
次に、図7を用いて、本開示に係る情報処理装置の一例であるユーザ端末10の構成について説明する。図7は、本開示の実施形態に係るユーザ端末10の構成例を示す図である。図7に示すように、ユーザ端末10は、通信部11と、入力部12と、表示部13と、記憶部15と、制御部16とを有する。
次に、図7を用いて、本開示に係る情報処理装置の一例であるユーザ端末10の構成について説明する。図7は、本開示の実施形態に係るユーザ端末10の構成例を示す図である。図7に示すように、ユーザ端末10は、通信部11と、入力部12と、表示部13と、記憶部15と、制御部16とを有する。
通信部11は、例えば、NIC(Network Interface Card)等によって実現される。通信部11は、ネットワークN(インターネット等)と有線又は無線で接続され、ネットワークNを介して、処理サーバ100や管理サーバ200等との間で情報の送受信を行う。
入力部12は、ユーザから各種操作を受け付ける入力装置である。例えば、入力部12は、ユーザ端末10に備えられた操作キー等によって実現される。表示部13は、各種情報を表示するための表示装置である。例えば、表示部13は、液晶ディスプレイ等によって実現される。なお、ユーザ端末10にタッチパネルが採用される場合には、入力部12の一部と表示部13とは一体化される。
記憶部15は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部15は、情報処理に用いる各種データを記憶する。
図7に示すように、記憶部15は、作曲設定情報151や、作曲楽曲情報152、履歴情報153、担当楽器情報154といった各種情報を記憶する。以下、各情報について説明する。
作曲設定情報151は、プラグイン22(第2アプリ)が自動作曲を実行する際に利用する情報である。図8に、実施形態に係る作曲設定情報151の一例を示す。図8は、実施形態に係る作曲設定情報151の一例を示す図である。
図8に示すように、作曲設定情報151は、作曲コーパス情報及び演奏スタイル情報を含む。作曲コーパス情報は、自動作曲の学習データとして用いられる楽曲のデータもしくは楽曲のデータが保存された場所(例えばデータサーバのアドレス等)が記憶される。また、作曲コーパス情報は、例えば、各楽曲の音符の平均長や転調等の情報を含む。
演奏スタイル情報は、自動作曲の学習データとして用いられる楽曲における演奏スタイル等の情報が記憶される。演奏スタイルは、例えば、全体のシャッフルの割合やコードとベースの音符割、全体のバランス等の情報を含む。
作曲楽曲情報152は、プラグイン22が自動作曲を実行する際に利用する楽曲の情報である。図9に、実施形態に係る作曲楽曲情報152の一例を示す。図9は、実施形態に係る作曲楽曲情報152の一例を示す図である。
図9に示すように、作曲楽曲情報152は、楽曲ID、スタイルパレットID、スタイルパレットシーケンスIDを含む。楽曲IDは、学習データとして用いられる既存楽曲を一意に特定するための識別情報を示す。スタイルパレットIDは、複数の既存楽曲によって構成されるスタイルパレットを特定するための識別情報を示す。スタイルパレットシーケンスIDは、複数のスタイルパレットから構成されるスタイルパレットシーケンスを特定するための識別情報を示す。
履歴情報153は、ホストアプリ20やプラグイン22においてユーザが操作した履歴や、ユーザにより作成された楽曲の履歴を示す。図10に、実施形態に係る履歴情報153の一例を示す。図10は、実施形態に係る履歴情報153の一例を示す図である。
図10に示すように、履歴情報153は、作曲楽曲情報を含む。作曲楽曲情報は、処理サーバ100から送信された楽曲データや、楽曲データに含まれる複数の候補データ(例えば図2に示したように、ある設定情報に基づいて生成された4種類の符割等を含む楽曲データ35等)や、ユーザの編集後の楽曲データ等を含む。
担当楽器情報154は、処理サーバ100から送信された楽曲データや、楽曲データに含まれる複数の候補データに対して設定される楽器情報を示す。図11に、実施形態に係る担当楽器情報154の一例を示す。図11は、実施形態に係る担当楽器情報154の一例を示す図である。
図11に示すように、担当楽器情報154は、担当楽器情報を含む。担当楽器情報は、処理サーバ100から送信された楽曲データや、楽曲データに含まれる複数の候補データを仮想的に演奏するために設定される楽器を特定するための情報や、楽曲データに設定された楽器の名称等を示す。例えば、担当楽器情報は、メロディ、コード、ベース音のそれぞれに異なる情報が設定可能である。
図7に戻って説明を続ける。制御部16は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)、GPU(Graphics Processing Unit)等によって、ユーザ端末10内部に記憶されたプログラム(例えば、本開示に係る情報処理プログラム)がRAM(Random Access Memory)等を作業領域として実行されることにより実現される。また、制御部16は、コントローラ(controller)であり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現されてもよい。
図7に示すように、制御部16は、ホストアプリ制御部161と、プラグインアプリ制御部165とを有し、以下に説明する情報処理の機能や作用を実現または実行する。ホストアプリ制御部161は、プラグイン制御部162と、再生部163と、表示制御部164とを含む。プラグインアプリ制御部165は、選択部166と、送受信部167と、再生部168と、表示制御部169とを含む。なお、制御部16の内部構成は、図7に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
ホストアプリ制御部161は、ホストアプリ20(第1アプリであるDAW)を制御する。
プラグイン制御部162は、ホストアプリ20における各種プラグインの動作を制御する。例えば、プラグイン制御部162は、ホストアプリ20においてプラグインを呼び出したり、ホストアプリ20上でプラグインを起動したり、プラグイン内のデータをホストアプリ20にコピーしたりする動作を制御する。
例えば、プラグイン制御部162は、プラグインが処理サーバ100から受信した楽曲データに含まれるコード、メロディ又はベース音を再生する際の音色を指定するための楽器情報を個別に設定する。例えば、プラグイン制御部162は、DAW上に登録されている仮想楽器の情報を読み出し、プラグインの楽曲データに含まれるコード、メロディ又はベース音のそれぞれを演奏させるために、各々に仮想楽器の情報を設定する。
再生部163は、ホストアプリ20における再生処理を制御する。再生部163は、ホストアプリ20における同期再生機能や、再生情報送出機能や、音合成再生機能や、再生スタイルアレンジ機能等を有する。
例えば、再生部163は、プラグインの再生部168の有する同期再生機能と連携し、プラグインが保持する楽曲データを再生する。例えば、再生部163は、ホストアプリが再生している位置を示す時間情報をプラグインに渡すことにより、当該再生位置に対応する箇所のメロディやコード、ベース音を取得し、再生することができる。
また、再生部163は、プラグインにおいて演奏スタイル等が設定されている場合、当該演奏スタイルに従って再生データを加工し、加工したデータを再生してもよい。
表示制御部164は、ホストアプリ20における表示制御処理を制御する。例えば、表示制御部164は、各トラックの情報を画面(表示部13)に表示する演奏情報表示機能や、楽曲データ等の情報をトラックにコピーする作曲楽曲情報貼り付け機能等を有する。
また、表示制御部164は、プラグインが処理サーバ100から受信した楽曲データに含まれるコード、メロディ又はベース音に関する情報を表示するウインドウを各々個別に表示するよう制御する。例えば、表示制御部164は、図3に示すように、コード、メロディ又はベース音の各々に対応するユーザインターフェイスをDAWの画面上に表示する。
また、表示制御部164は、ユーザの操作に従い、コード、メロディ又はベース音に関する情報を表示する各ウインドウと、ホストアプリに関する情報が表示されたウインドウ間の情報の送受信を制御する。これにより、ユーザは、DAW上において、自動作曲された楽曲データを任意のトラックにコピーしたり、編集作業を行ったりといった処理を迅速に行うことができる。
なお、表示制御部164は、ホストアプリとプラグイン間の情報のみならず、表示されたプラグインのウインドウ間の情報のやりとりを制御してもよい。すなわち、表示制御部164は、ユーザの操作に従い、コード、メロディ又はベース音に関する情報を表示する各ウインドウ間の情報の送受信を制御してもよい。
プラグインアプリ制御部165は、ホストアプリ20上で動作するプラグインの動作を制御する。例えば、プラグインアプリ制御部165は、ユーザの操作に従い、ホストアプリ20上でプラグインを起動する。
選択部166は、機械学習に基づく作曲機能を制御するための設定情報を選択する。例えば、選択部166は、設定情報として、機械学習の学習データとなる素材楽曲を指定するための指定情報を選択する。具体的には、指定情報とは、図4等で示したスタイルパレットが該当する。
例えば、選択部166は、ユーザの操作に従い、予め記憶部15に記憶された指定情報であって、指定情報の特徴を示す特徴情報と、特徴情報に対応付けられた複数の素材楽曲とを含む指定情報を選択する。例えば、ユーザは、図4で示したウインドウ40等を介して、スタイルパレットの特徴情報(「明るい」、「暗い」等)を参照する。そして、ユーザは、特徴情報に基づいて、AIに作曲させたい楽曲において所望する特徴情報を含むスタイルパレットを選択する。
また、選択部166は、外部サーバによって作曲される楽曲データのうち一部の小節に対応する第1の指定情報と、他の一部の小節に対応する第2の指定情報とを組み合わせた組み合わせ指定情報を選択してもよい。上記のように、組み合わせ指定情報とは、スタイルパレットシーケンスに対応する。また、第1の指定情報とは、一部の小節を作曲させるための設定情報であるスタイルパレットに対応する。また、第2の指定情報とは、他の一部の小節を作曲させるための設定情報であるスタイルパレットに対応する。
また、選択部166は、スタイルパレットの他に、作曲される楽曲データに関する詳細な設定情報を選択してもよい。
例えば、選択部166は、設定情報として、スタイルパレットに基づいて処理サーバ100によって作曲される楽曲データに含まれる音符の長さ情報を選択してもよい。例えば、選択部166は、図2に示すユーザインターフェイス30等に含まれる設定情報33のスライダ等の表示を介して、ユーザから音符の長さ情報の選択を受け付ける。
また、選択部166は、設定情報として、スタイルパレットに基づいて処理サーバ100によって作曲される楽曲データにおける、コードに含まれる構成音がメロディに登場する確率を決定するための情報を選択してもよい。例えば、選択部166は、図2に示すユーザインターフェイス30等に含まれる設定情報32のスライダ等の表示を介して、ユーザから、コードに含まれる構成音がメロディに登場する確率を決定するための情報の選択を受け付ける。
また、選択部166は、設定情報として、スタイルパレットに基づいて処理サーバ100によって作曲される楽曲データにおける、当該スタイルパレットに含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報を選択してもよい。例えば、選択部166は、図2に示すユーザインターフェイス30等に含まれる設定情報34のスライダ等の表示を介して、ユーザから、スタイルパレットに含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報の選択を受け付ける。
また、選択部166は、自動作曲させるための設定情報として、スタイルパレット以外の情報を選択してもよい。一例として、選択部166は、設定情報として、作曲される楽曲におけるコード進行をユーザの操作に基づいて選択してもよい。この場合、処理サーバ100は、ユーザが選択したコード進行に基づいて楽曲データを自動生成する。
送受信部167は、ネットワークNを介して、選択部166によって選択された設定情報を、機械学習に基づく作曲機能を実行する処理サーバ100に送信し、処理サーバ100によって作曲された楽曲データを受信する。
例えば、送受信部167は、選択部166によって選択されたスタイルパレットを処理サーバ100に送信する。そして、送受信部167は、スタイルパレットに基づき処理サーバ100によって生成された楽曲データを受信する。
送受信部167は、楽曲データとして、例えば、規定された長さの小節におけるコード、小節におけるメロディ、小節におけるベース音を受信する。かかる情報は、MIDIやMusicXML等のデータであってもよいし、DAW独自規格の情報であってもよいし、波形データ(WAVファイル等)であってもよい。
また、送受信部167は、選択部166によって選択されたスタイルパレットシーケンスを処理サーバ100に送信してもよい。この場合、送受信部167は、スタイルパレットシーケンスに基づき処理サーバ100によって生成された楽曲データを受信する。
送受信部167は、スタイルパレットシーケンスに基づいて処理サーバ100によって作曲された楽曲データを受信した場合、スタイルパレットシーケンスと当該楽曲データとを対応付けて記憶部15に格納してもよい。これにより、ユーザは、どのようなスタイルパレットシーケンスによってどのような楽曲データが作成されたかを履歴として参照することができるため、かかる情報を作曲作業に活用できる。
また、送受信部167は、スタイルパレットやスタイルパレットシーケンス以外の各種設定情報を処理サーバ100に送信してもよい。例えば、送受信部167は、ユーザによって設定された音符の長さ情報や、コードに含まれる構成音がメロディに登場する確率を決定するための情報や、スタイルパレットに含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報等を処理サーバ100に送信する。
また、送受信部167は、処理サーバ100によって作曲された楽曲データを受信したのち、ユーザによって楽曲データに対する再生もしくは編集操作が行われた場合、当該再生もしくは編集操作に関する情報を処理サーバ100に送信してもよい。これにより、処理サーバ100は、作曲した楽曲データがどのように利用されたか、あるいは、どれくらい利用されたかといった情報を取得することができる。この場合、処理サーバ100は、かかる情報に基づいて、学習手法や生成する楽曲データを調整してもよい。例えば、処理サーバ100は、より多くのユーザに利用される過去の楽曲データを分析し、かかる特徴を有する楽曲データを優先的に生成するようにしてもよい。
再生部168は、プラグインにおける再生処理を制御する。例えば、再生部168は、送受信部167によって受信された楽曲データを再生する。具体的には、再生部168は、楽曲データに含まれるメロディやコード、ベース音の各々に任意の楽器情報を設定し、各々のデータを再生する。なお、再生部168は、メロディやコード、ベース音の各々を組み合わせて再生してもよい。
表示制御部169は、プラグインにおける表示処理を制御する。例えば、表示制御部169は、プラグインの情報を示すユーザインターフェイス等のウインドウを画面上に表示する。
表示制御部169は、例えば図2に示したように、4小節の楽曲データを4種類取得し、ユーザインターフェイス内に4つの候補を並べて表示する。ユーザは、4種類の楽曲データの候補から良い箇所を時間軸に沿って繋ぎ合わせて(すなわちコンピング(comping)を行って)、最終候補を選択することができる。例えば、ユーザは、メロディの音符を一部削除したり、繋げたり、音符の長さを変えたり、音符の高さを変えたりすることができる。
また、表示制御部169は、ユーザの操作に従い、処理サーバ100によって作曲された過去の楽曲データの履歴を記憶部15から呼び出すとともに、過去の楽曲データの履歴を表示するよう制御してもよい。これにより、ユーザは、過去に処理サーバ100によって作曲されたデータを参照しながら、作曲作業を進めることができる。例えば、ユーザは、編集によって作成された最新の楽曲と、過去に編集した楽曲の履歴とを比べながら、最終候補を決定することができる。
また、表示制御部169は、処理サーバ100によって作曲された過去の楽曲データに対して実行された編集操作の履歴を記憶部15から呼び出すとともに、過去の楽曲データに対して実行された編集操作を表示するよう制御してもよい。これにより、ユーザは、過去に行った編集操作や、編集操作によって生じた楽曲データ等を参照することができるので、作曲作業を効率良く行うことができる。
なお、図2や図3では、楽曲データが音高や音符の長さを示す、いわゆるピアノロールのような形式でユーザインターフェイス上に表示される例を示したが、表示制御部169は、五線譜やDAW独自の形式で楽曲データを表示してもよい。
[1-4.実施形態に係る外部サーバ(処理サーバ)の構成]
次に、本開示に係る外部サーバの一例である処理サーバ100の構成について説明する。図12は、実施形態に係る処理サーバ100の構成例を示す図である。
次に、本開示に係る外部サーバの一例である処理サーバ100の構成について説明する。図12は、実施形態に係る処理サーバ100の構成例を示す図である。
図12に示すように、処理サーバ100は、通信部110と、記憶部120と、制御部130とを有する。なお、処理サーバ100は、処理サーバ100を管理する管理者等から各種操作を受け付ける入力部(例えば、キーボードやマウス等)や、各種情報を表示するための表示部(例えば、液晶ディスプレイ等)を有してもよい。
通信部110は、例えば、NIC等によって実現される。通信部210は、ネットワークNと有線又は無線で接続され、ネットワークNを介して、ユーザ端末10や管理サーバ20等との間で情報の送受信を行う。
記憶部120は、例えば、RAM、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部120は、情報処理に用いる各種データを記憶する。
図12に示すように、記憶部120は、ユーザ情報121や、楽曲情報122や、スタイルパレット情報123や、スタイルパレットシーケンス情報124や、ユーザ作曲情報125や、履歴情報126といった各種情報を記憶する。以下、各情報について説明する。
ユーザ情報121は、プラグイン22(第2アプリ)を利用するユーザの情報を示す。図13に、実施形態に係るユーザ情報121の一例を示す。図13は、実施形態に係るユーザ情報121の一例を示す図である。
図13に示すように、ユーザ情報121は、利用者ID、利用者メタ情報、権限情報を含む。利用者IDは、ユーザを一意に特定するための識別情報を示す。利用者メタ情報は、例えば、ユーザの氏名や住所など、ユーザの付加情報である。権限情報は、例えば、プラグインを利用するユーザが管理者であるか、一般利用者であるか、特別利用者であるか等の識別情報である。
楽曲情報122は、自動作曲処理に利用される楽曲の情報を示す。図14に、実施形態に係る楽曲情報122の一例を示す。図14は、実施形態に係る楽曲情報122の一例を示す図である。
図14に示すように、楽曲情報122は、楽曲ID、楽曲メタ情報、メロディー情報、コード進行情報、ベース音進行情報を含む。楽曲IDは、楽曲を一意に特定するための識別情報を示す。楽曲メタ情報は、例えば、楽曲の曲名、作曲者、年代、ジャンル等の情報である。メロディー情報は、例えば、ボーカルパートを表現する音階情報等である。コード進行情報は、例えば、楽曲の和音の遷移を表現する時系列情報である。ベース音進行情報は、コード進行情報のルート音を示す時系列情報である。
スタイルパレット情報123は、自動作曲処理に利用されるスタイルパレットに関する情報を示す。図15に、実施形態に係るスタイルパレット情報123の一例を示す。図15は、実施形態に係るスタイルパレット情報123の一例を示す図である。
図15に示すように、スタイルパレット情報123は、スタイルパレットID、スタイルパレットメタ情報、楽曲IDを含む。スタイルパレットIDは、スタイルパレットを一意に特定するための識別情報を示す。スタイルパレットメタ情報は、例えば、スタイルパレットの名称や、明るいか暗い、速いか遅い等の主観的な特徴情報や、曲の構造がAメロ、Bメロ、サビで構成されているといった構造や、コード進行の特徴等の情報である。なお、スタイルパレットメタ情報の名称にはコード進行の情報等が付されてもよい。これにより、ユーザは、直感的にスタイルパレットの特徴を把握することが可能となる。また、図15に示すように、スタイルパレットには、複数の楽曲IDが紐付けられて登録される。スタイルパレット情報123は、例えば管理サーバ200等によって登録される。
スタイルパレットシーケンス情報124は、自動作曲処理に利用されるスタイルパレットシーケンスに関する情報を示す。図16に、実施形態に係るスタイルパレットシーケンス情報124の一例を示す。図16は、実施形態に係るスタイルパレットシーケンス情報124の一例を示す図である。
図16に示すように、スタイルパレットシーケンス情報124は、スタイルパレットシーケンスID、スタイルパレットシーケンスメタ情報、スタイルパレットID、調合情報を含む。スタイルパレットシーケンスIDは、スタイルパレットシーケンスを一意に特定するための識別情報を示す。スタイルパレットシーケンスメタ情報は、例えば、スタイルパレットシーケンスの名称や、明るいか暗い、速いか遅い等の主観的な特徴情報である。また、図16に示すように、スタイルパレットシーケンスには、複数のスタイルパレットIDが紐付けられて登録される。また、調合情報とは、スタイルパレットシーケンスにおけるスタイルパレットの並びに関する情報等である。
ユーザ作曲情報125は、ユーザ端末10から受信した、作曲に関する情報を示す。図17に、実施形態に係るユーザ作曲情報125の一例を示す。図17は、実施形態に係るユーザ作曲情報125の一例を示す図である。
図17に示すように、ユーザ作曲情報125は、利用者ID、楽曲ID、スタイルパレットID、スタイルパレットシーケンスIDを含む。利用者IDは、ユーザを一意に特定するための識別情報を示す。楽曲IDは、利用者IDで特定されるユーザに対して生成した楽曲を識別する識別情報を示す。スタイルパレットIDは、利用者IDで特定されるユーザから送信されたスタイルパレットを識別する識別情報を示す。スタイルパレットシーケンスIDは、利用者IDで特定されるユーザから送信されたスタイルパレットシーケンスを識別する識別情報を示す。
履歴情報126は、処理サーバ100の情報処理に関する各種履歴である。図18に、実施形態に係る履歴情報126の一例を示す。図18は、実施形態に係る履歴情報126の一例を示す図である。
図18に示すように、履歴情報126は、作曲履歴情報、操作履歴情報を含む。作曲履歴情報は、処理サーバ100が生成した楽曲の履歴である。操作履歴情報は、ユーザ端末10上でユーザが編集操作した履歴等の情報である。操作履歴情報は、例えば、ユーザが再作曲した情報や作曲された楽曲データを選択した情報、楽曲データを編集した情報、再生した回数、再生をスキップした回数等の情報である。これらの情報は、後述する作曲部134の学習データとして利用されてもよい。
図12に戻って説明を続ける。制御部130は、例えば、CPUやMPU、GPU等によって、処理サーバ100内部に記憶されたプログラムがRAM等を作業領域として実行されることにより実現される。また、制御部130は、コントローラであり、例えば、ASICやFPGA等の集積回路により実現されてもよい。
図12に示すように、制御部130は、受付部131と、管理部132と、取得部133と、作曲部134と、送信部135とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部130の内部構成は、図12に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
受付部131は、管理サーバ200から送信される各種情報を受け付ける。例えば、受付部131は、プラグインを利用するユーザの情報や、スタイルパレットに関する情報や、自動作曲で用いられる素材楽曲等の情報を受け付ける。例えば、受付部131は、ユーザが製品(プラグインやDAW等)の購入時にアクティベーションを行う際に、当該ユーザに対して利用者IDを発行したり、当該ユーザに関する情報を受け付けたりする処理を実行する。また、受付部131は、管理サーバ200からの操作や指令に従い、スタイルパレットに紐付ける楽曲の登録や、スタイルパレットの編集等を受け付ける。
管理部132は、受付部131によって受け付けられた各種情報を管理する。例えば、管理部132は、各種情報を記憶部120内に格納し、また、格納した情報を適宜更新する。
例えば、管理部132によるスタイルパレットの登録処理が完了すると、ユーザは、スタイルパレット情報の一覧を取得、閲覧することが可能となる。
取得部133は、ユーザ端末10から送信される自動作曲のリクエストを取得する。また、取得部133は、リクエストとともに送信された設定情報を取得する。例えば、取得部133は、設定情報として、ユーザが所望するスタイルパレットを取得する。
作曲部134は、取得部133によって取得された設定情報に基づいて作曲を行う。作曲部134は、種々の既存の楽曲生成アルゴリズムを利用して作曲を行ってもよい。例えば、作曲部134は、マルコフ連鎖を用いた楽曲生成アルゴリズムを利用してもよいし、深層学習を用いた楽曲生成アルゴリズムを利用してもよい。上述のように、作曲部134は、ユーザから送信された一つの設定情報に対して、複数の楽曲データを生成する。これにより、ユーザは、複数の提案を作曲部134から受けることができるため、より多様な情報を利用して作曲作業を進めることができる。
作曲部134は、作曲処理によって楽曲データを生成すると、生成した楽曲データと、スタイルパレットを送信したユーザの利用者IDとを対応付けて、履歴情報として記憶部120内に記憶する。
送信部135は、作曲部134によって生成された楽曲データをユーザ端末10に送信する。
[1-5.実施形態に係る情報処理の手順]
次に、図19を用いて、実施形態に係る情報処理の手順について説明する。図19は、実施形態に係る情報処理の手順を示すフローチャートである。
次に、図19を用いて、実施形態に係る情報処理の手順について説明する。図19は、実施形態に係る情報処理の手順を示すフローチャートである。
図19に示すように、ユーザ端末10は、ユーザの操作に従い、ホストアプリ上において自動作曲機能(プラグイン)を起動する(S101)。
続いて、ユーザ端末10は、スタイルパレット等の選択をユーザから受け付けたか否かを判定する(ステップS102)。スタイルパレット等の選択をユーザから受け付けていない場合(ステップS102;No)、ユーザ端末10は、選択を受け付けるまで待機する。
一方、スタイルパレット等の選択をユーザから受け付けた場合(ステップS102;Yes)、ユーザ端末10は、ユーザの操作に従い、スタイルパレットを選択する(ステップS103)。なお、ユーザ端末10は、ステップS102において、スタイルパレット以外の種々の設定情報を受け付けてもよい。
その後、ユーザ端末10は、作曲要求をユーザから受け付けたか否かを判定する(ステップS104)。作曲要求をユーザから受け付けていない場合(ステップS104;No)、ユーザ端末10は、要求を受け付けるまで待機する。
一方、作曲要求をユーザから受け付けた場合(ステップS104;Yes)、ユーザ端末10は、作曲要求とともに、受け付けた設定情報を処理サーバ100に送信する(ステップS105)。その後、ユーザ端末10は、処理サーバ100によって作曲(生成)された楽曲データを受信する(ステップS106)。
続けて、ユーザ端末10は、ユーザ端末10上でユーザによって編集処理等が行われたか否かを判定する(ステップS107)。編集処理等が行われていない場合(ステップS107;No)、ユーザ端末10は、編集処理等を受け付けるまで待機する(ステップS107)。
一方、編集処理等が行われた場合(ステップS107;Yes)、ユーザ端末10は、編集を反映するとともに、編集操作に関する情報を処理サーバ100に送信する(ステップS108)。
その後、ユーザ端末10は、再び作曲要求をユーザから受け付けたか否かを判定する(ステップS109)。作曲要求をユーザから受け付けた場合(ステップS109;Yes)、ユーザ端末10は、ユーザから新たな設定情報を受け付ける。
一方、作曲要求をユーザから受け付けない場合(ステップS109;No)、ユーザ端末10は、ホストアプリの終了要求を受け付けたか否かを判定する(ステップS110)。ホストアプリの終了要求を受け付けていない場合(ステップS110;No)、ユーザ端末10は、現時点で受信している楽曲データの編集処理を継続する。一方、ホストアプリの終了要求を受け付けた場合(ステップS110;Yes)、ユーザ端末10は、ホストアプリ及びプラグインを終了させ、処理を終了する。
(2.変形例)
上述した情報処理システム1は、上記実施形態以外にも種々の異なる形態にて実施されてよい。そこで、以下では、実施形態の変形例について説明する。
上述した情報処理システム1は、上記実施形態以外にも種々の異なる形態にて実施されてよい。そこで、以下では、実施形態の変形例について説明する。
[2-1.楽曲データの形態]
上記実施形態では、プラグインにおける楽曲データの担当楽器情報154等において、設定される情報の種類を、メロディ、コード、ベース音と想定したが、これに限られない。例えば、担当楽器情報154は、メロディ、コード、ベース音のみならず、例えば、フルオーケストラの各楽器の演奏パートにも適用可能である。
上記実施形態では、プラグインにおける楽曲データの担当楽器情報154等において、設定される情報の種類を、メロディ、コード、ベース音と想定したが、これに限られない。例えば、担当楽器情報154は、メロディ、コード、ベース音のみならず、例えば、フルオーケストラの各楽器の演奏パートにも適用可能である。
[2-2.ホストアプリ]
上記実施形態では、ホストアプリとしてDAWを想定したが、これに限られない。例えば、ホストアプリは、音楽編集用アプリではなく、映像編集アプリ等であってもよい。
上記実施形態では、ホストアプリとしてDAWを想定したが、これに限られない。例えば、ホストアプリは、音楽編集用アプリではなく、映像編集アプリ等であってもよい。
[2-3.DAWによる制御]
上記実施形態では、ユーザ端末10がプラグイン上で設定情報を選択し、選択した情報を処理サーバ100に送信する例を示した。しかし、設定情報等は、ホストアプリによって選択されてもよい。すなわち、ユーザ端末10は、ホストアプリにおいて選択された設定情報(例えば、コード進行)等を処理サーバ100に送信し、自動作曲処理を実行させてもよい。この場合、ホストアプリは、例えばプラグインがホストアプリの情報を利用するためのAPI(Application Programming Interface)等をプラグインに提供し、スタイルパレットを生成するための情報をホストアプリ上から取得させたり、処理サーバ100との送受信処理等を制御したりしてもよい。
上記実施形態では、ユーザ端末10がプラグイン上で設定情報を選択し、選択した情報を処理サーバ100に送信する例を示した。しかし、設定情報等は、ホストアプリによって選択されてもよい。すなわち、ユーザ端末10は、ホストアプリにおいて選択された設定情報(例えば、コード進行)等を処理サーバ100に送信し、自動作曲処理を実行させてもよい。この場合、ホストアプリは、例えばプラグインがホストアプリの情報を利用するためのAPI(Application Programming Interface)等をプラグインに提供し、スタイルパレットを生成するための情報をホストアプリ上から取得させたり、処理サーバ100との送受信処理等を制御したりしてもよい。
例えば、ユーザ端末10は、ホストアプリであるDAWが備えるコード生成機能を利用して任意のコード進行を生成する。そして、ユーザ端末10は、DAWによって生成されたコード進行に基づいて、自動作曲を実行させてもよい。例えば、ユーザ端末10は、DAWよって生成されたコード進行をプラグインに入力し、プラグインを介して、コード進行を処理サーバ100に送信する。
すなわち、ホストアプリは、ホストアプリにおいて生成されたコード進行に関する情報をプラグインに送るよう制御する。そして、プラグインは、設定情報として、ホストアプリにおいて生成されたコード進行に関する情報を選択する。さらに、プラグインは、ホストアプリにおいて生成されたコード進行に関する情報を処理サーバ100に送信し、コード進行に関する情報に基づいて作曲された楽曲データを受信する。
また、ユーザ端末10は、DAWによって生成されたコード進行に基づいて、処理サーバ100に送信するスタイルパレットを自動的に選択してもよい。例えば、ユーザ端末10は、DAWによって生成されたコード進行と類似する特徴を有するスタイルパレットを選択し、処理サーバ100に送信してもよい。また、ユーザ端末10は、DAWによって生成されたコード進行に基づいて、進行に合わせたスタイルパレットを順次選択し、スタイルパレットシーケンスを生成し、生成したスタイルパレットシーケンスを処理サーバ100に送信してもよい。
また、ユーザ端末10は、プラグインがホストアプリ上のベーストラックへの情報アクセスを可能にするよう設定してもよい。例えば、ユーザは、DAWのベーストラックにおいて、当該トラックが自動作曲された楽曲データに従う、といった設定を行う。この場合、当該ベーストラックは、例えば処理サーバ100によって生成された楽曲データや、DAWが生成したコード進行に従い、自動的に補完される。
また、ユーザ端末10は、プラグインがホストアプリ上のメロディトラックへの情報アクセスを可能にするよう設定してもよい。例えば、ユーザは、DAWのメロディトラックにおいて、当該トラックが自動作曲された楽曲データに従う、といった設定を行う。この場合、ユーザが、ある小節を選択して自動作曲要求を行うと、生成されたメロディが自動的に当該トラックに挿入される。また、ユーザは、複数の楽曲データを組み合わせて編集するモード(Compingモード等と称される)にDAWを設定すると、画面に現れる複数トラックの所望の部分を選択してメロディを完成させることができる。
また、ユーザ端末10は、プラグインがホストアプリ上のメロディトラックとMIDI入力への情報アクセスを可能にするよう設定してもよい。この場合、ユーザは、自動作曲機能とMIDI入力の双方を駆使して作曲作業を行うことができる。例えば、ユーザは、4小節に任意のコード進行を入力し、DAWにループ演奏させる。そして、ユーザは、ループ演奏に合わせて、MIDI鍵盤で入力を行う。ユーザ端末10は、このコード進行とメロディの情報を処理サーバ100にアップロードすることで、処理サーバ100側で個人スタイルパレットを自動作成することができる。例えば、ユーザは、DAW上における新規追加されたスタイルパレットメニューにて、これら個人スタイルパレット作成開始や停止、保存や名前付け、削除等が指示できる。このような個人スタイルパレットは、スタイルパレットメニューを介して一般に公開可能としてもよい。
また、ユーザ端末10は、プラグインがホストアプリ上のオーディオトラックへの情報アクセスを可能にするよう設定してもよい。オーディオトラックとは、例えば、楽器演奏音を録音したトラックであり、例えば、ピアノによるコード演奏、ベースギターによるベース音演奏、リード楽器によるメロディ等によるトラックである。プラグインは、オーディオトラックにアクセスし、各トラックのメロディやコード、ベース音等のオーディオデータを信号処理により分析し、メロディのNIDI情報や、コード進行情報等を得る。プラグインは、分析に際して、例えば12音解析技術等を用いてもよい。この場合、ユーザ端末10は、分析された情報を処理サーバ100に送信し、最適なコード進行を機械学習等により自動的に推論させてもよい。そして、処理サーバ100は、このコード進行情報をもとにスタイルパレットシーケンスを定義する。これにより、ユーザは、処理サーバ100により生成されたスタイルパレットシーケンスに基づくアシスト作曲作業を行うことができるため、例えば全体を再作曲したり、部分的に再作曲して差し替えたりすることが可能となる。
また、ユーザ端末10は、プラグインがホストアプリ上の既存のマスタートラックへの情報アクセスを可能にするよう設定してもよい。マスタートラックとは、例えば、DAW内のミキシングを経て、ステレオ2チャンネルにトラックダウンされたものである。プラグインは、マスタートラックにアクセスし、オーディオデータを信号処理により分析し、コード進行情報等を得る。ユーザ端末10は、分析された情報を処理サーバ100に送信し、最適なコード進行を機械学習等により自動的に推論させてもよい。そして、処理サーバ100は、このコード進行情報をもとにスタイルパレットシーケンスを定義する。これにより、ユーザは、処理サーバ100により生成されたスタイルパレットシーケンスに基づくアシスト作曲作業を行うことができるため、例えば全体を再作曲したり、部分的に再作曲して差し替えたりすることが可能となる。
上記のように、ユーザ端末10は、ホストアプリに種々の機能が備わっている場合、かかる機能をプラグインに適用させ、本開示に係る情報処理に利用してもよい。例えば、上記のように、ユーザ端末10は、DAWにより生成されたコード進行に基づいてスタイルパレットシーケンスを生成させたり、当該スタイルパレットシーケンスをネットワーク上で公開したりすることにより、ユーザ間の作曲処理を活性化させることができる。
[2-4.情報処理システムの態様]
実施形態では、処理サーバ100は、クラウドネットワーク上に設置されることを前提としているが、この例に限られず、ユーザ端末10と通信可能であれば、処理サーバ100や管理サーバ200は、LAN(Local Area Network)等のネットワーク上に設置されてもよい。
実施形態では、処理サーバ100は、クラウドネットワーク上に設置されることを前提としているが、この例に限られず、ユーザ端末10と通信可能であれば、処理サーバ100や管理サーバ200は、LAN(Local Area Network)等のネットワーク上に設置されてもよい。
実施形態では、ユーザ端末10内に第1アプリと第2アプリとがインストールされる例を示したが、第1アプリと第2アプリは、別の装置にインストールされるアプリであってもよい。例えば、ユーザ端末10は、第1アプリの機能のみを保持し、別の装置であるタブレット端末やスマートフォン等にインストールされた第2アプリを制御することにより、音源の再生等を行ってもよい。
(3.その他の実施形態)
上述した各実施形態に係る処理は、上記各実施形態以外にも種々の異なる形態にて実施されてよい。
上述した各実施形態に係る処理は、上記各実施形態以外にも種々の異なる形態にて実施されてよい。
また、上記各実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
また、上述してきた各実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
また、本明細書に記載された効果はあくまで例示であって限定されるものでは無く、他の効果があってもよい。
(4.本開示に係る情報処理装置の効果)
上述してきたように、本開示に係る情報処理装置(実施形態ではユーザ端末10)は、第1アプリ(実施形態ではホストアプリ20)と、第1アプリの機能を拡張するプラグインとして機能する第2アプリ(実施形態ではプラグイン22)とを制御する。第1アプリは、第1アプリにおける第2アプリの動作を制御する制御部(実施形態ではホストアプリ制御部161)を備える。第2アプリは、機械学習に基づく作曲機能を制御するための設定情報を選択する選択部(実施形態では選択部166)と、ネットワークを介して、設定情報を機械学習に基づく作曲機能を実行する外部サーバ(実施形態では処理サーバ100)に送信し、外部サーバによって作曲された楽曲データを受信する送受信部(実施形態では送受信部167)と、を備える。
上述してきたように、本開示に係る情報処理装置(実施形態ではユーザ端末10)は、第1アプリ(実施形態ではホストアプリ20)と、第1アプリの機能を拡張するプラグインとして機能する第2アプリ(実施形態ではプラグイン22)とを制御する。第1アプリは、第1アプリにおける第2アプリの動作を制御する制御部(実施形態ではホストアプリ制御部161)を備える。第2アプリは、機械学習に基づく作曲機能を制御するための設定情報を選択する選択部(実施形態では選択部166)と、ネットワークを介して、設定情報を機械学習に基づく作曲機能を実行する外部サーバ(実施形態では処理サーバ100)に送信し、外部サーバによって作曲された楽曲データを受信する送受信部(実施形態では送受信部167)と、を備える。
このように、本開示に係る情報処理装置は、自動作曲機能を有する第2アプリをプラグインとして取り扱うとともに、実際の作曲処理を外部サーバに実行させる。これにより、情報処理装置は、処理負荷を抑制しつつ、作業効率のよい環境をユーザに提供することができる。すなわち、情報処理装置は、AIによる自動作曲機能の利便性を向上させることができる。
送受信部は、楽曲データとして、規定された長さの小節におけるコード、小節におけるメロディ、小節におけるベース音を受信する。これにより、情報処理装置は、楽曲データを個別に参照したり編集したりすることができるので、ユーザの利便性を向上させることができる。
制御部は、楽曲データに含まれるコード、メロディ又はベース音を再生する際の音色を指定するための楽器情報を個別に設定する。これにより、情報処理装置は、多様な再生環境を提供することができる。
制御部は、楽曲データに含まれるコード、メロディ又はベース音に関する情報を表示するウインドウを各々個別に表示するよう制御する。これにより、情報処理装置は、ユーザの編集操作の利便性を向上させることができる。
制御部は、ユーザの操作に従い、コード、メロディ又はベース音に関する情報を表示する各ウインドウと、第1アプリに関する情報が表示されたウインドウ間の情報の送受信を制御する。これにより、情報処理装置は、第1アプリと第2アプリ間でドラッグアンドドロップ等の操作で情報のやりとりを行うことができるため、ユーザの編集操作の利便性を向上させることができる。
制御部は、ユーザの操作に従い、コード、メロディ又はベース音に関する情報を表示する各ウインドウ間の情報の送受信を制御する。これにより、情報処理装置は、ユーザの編集操作の利便性を向上させることができる。
選択部は、設定情報として、機械学習の学習データとなる素材楽曲を指定するための指定情報(実施形態ではスタイルパレット)を選択する。送受信部は、選択部によって選択された指定情報を外部サーバに送信する。これにより、情報処理装置は、ユーザが所望する種々の特徴を指定して自動作曲を実行することができる。
選択部は、ユーザの操作に従い、予め記憶部(実施形態では記憶部15)に記憶された指定情報であって、指定情報の特徴を示す特徴情報と、特徴情報に対応付けられた複数の素材楽曲とを含む指定情報を選択する。これにより、情報処理装置は、ユーザが指定情報を選択する際の利便性を向上させることができる。
選択部は、外部サーバによって作曲される楽曲データのうち一部の小節に対応する第1の指定情報と、他の一部の小節に対応する第2の指定情報とを組み合わせた組み合わせ指定情報(実施形態ではスタイルパレットシーケンス)を選択する。これにより、情報処理装置は、多様な楽曲を自動生成することができる。
送受信部は、組み合わせ指定情報に基づいて外部サーバによって作曲された楽曲データを受信した場合、組み合わせ指定情報と楽曲データとを対応付けて記憶部に格納する。これにより、情報処理装置は、過去に作成した楽曲データの基となった組み合わせ指定情報等をユーザが参照する際の利便性を向上させることができる。
選択部は、設定情報として、指定情報に基づいて外部サーバによって作曲される楽曲データに含まれる音符の長さ情報を選択する。送受信部は、指定情報及び音符の長さ情報を外部サーバに送信する。これにより、情報処理装置は、ユーザが所望する特徴を有する楽曲データを生成することができる。
選択部は、設定情報として、指定情報に基づいて外部サーバによって作曲される楽曲データにおける、コードに含まれる構成音がメロディに登場する確率を決定するための情報を選択する。送受信部は、指定情報及びコードに含まれる構成音がメロディに登場する確率を決定するための情報を外部サーバに送信する。これにより、情報処理装置は、ユーザが所望する特徴を有する楽曲データを生成することができる。
選択部は、設定情報として、指定情報に基づいて外部サーバによって作曲される楽曲データにおいて、指定情報に含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報を選択する。送受信部は、指定情報及び指定情報に含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報を外部サーバに送信する。これにより、情報処理装置は、ユーザが所望する特徴を有する楽曲データを生成することができる。
第2アプリは、ユーザの操作に従い、外部サーバによって作曲された過去の楽曲データの履歴を記憶部から呼び出すとともに、過去の楽曲データの履歴を表示するよう制御する表示制御部(実施形態では表示制御部169)をさらに備える。これにより、情報処理装置は、過去の操作履歴等をユーザが参照する際の利便性を向上させることができる。
表示制御部は、外部サーバによって作曲された過去の楽曲データに対して実行された編集操作の履歴を記憶部から呼び出すとともに、過去の楽曲データに対して実行された編集操作を表示するよう制御する。これにより、情報処理装置は、過去の操作履歴等をユーザが参照する際の利便性を向上させることができる。
送受信部は、外部サーバによって作曲された楽曲データを受信したのち、ユーザによって楽曲データに対する再生もしくは編集操作が行われた場合、再生もしくは編集操作に関する情報を外部サーバに送信する。これにより、情報処理装置は、ユーザが行った編集等を基づいて更なる学習を処理サーバ100に実行させることができる。
選択部は、設定情報として、作曲される楽曲におけるコード進行をユーザの操作に基づいて選択する。送受信部は、選択部によって選択されたコード進行を外部サーバに送信する。これにより、情報処理装置は、指定情報によらずとも、ユーザが所望する楽曲データを提供することができる。
制御部は、第1アプリにおいて生成されたコード進行に関する情報を第2アプリに送るよう制御する。選択部は、設定情報として、第1アプリにおいて生成されたコード進行に関する情報を選択する。送受信部は、第1アプリにおいて生成されたコード進行に関する情報を外部サーバに送信し、コード進行に関する情報に基づいて作曲された楽曲データを受信する。これにより、情報処理装置は、DAW等の第1アプリの機能を活かした作曲処理を実行することができる。
(5.ハードウェア構成)
上述してきた各実施形態に係るユーザ端末10やや処理サーバ100や管理サーバ200等の情報機器は、例えば図20に示すような構成のコンピュータ1000によって実現される。以下、実施形態に係るユーザ端末10を例に挙げて説明する。図20は、ユーザ端末10の機能を実現するコンピュータ1000の一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM(Read Only Memory)1300、HDD(Hard Disk Drive)1400、通信インターフェイス1500、及び入出力インターフェイス1600を有する。コンピュータ1000の各部は、バス1050によって接続される。
上述してきた各実施形態に係るユーザ端末10やや処理サーバ100や管理サーバ200等の情報機器は、例えば図20に示すような構成のコンピュータ1000によって実現される。以下、実施形態に係るユーザ端末10を例に挙げて説明する。図20は、ユーザ端末10の機能を実現するコンピュータ1000の一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM(Read Only Memory)1300、HDD(Hard Disk Drive)1400、通信インターフェイス1500、及び入出力インターフェイス1600を有する。コンピュータ1000の各部は、バス1050によって接続される。
CPU1100は、ROM1300又はHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。例えば、CPU1100は、ROM1300又はHDD1400に格納されたプログラムをRAM1200に展開し、各種プログラムに対応した処理を実行する。
ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるBIOS(Basic Input Output System)等のブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を非一時的に記録する、コンピュータが読み取り可能な記録媒体である。具体的には、HDD1400は、プログラムデータ1450の一例である本開示に係る情報処理プログラムを記録する記録媒体である。
通信インターフェイス1500は、コンピュータ1000が外部ネットワーク1550(例えばインターネット)と接続するためのインターフェイスである。例えば、CPU1100は、通信インターフェイス1500を介して、他の機器からデータを受信したり、CPU1100が生成したデータを他の機器へ送信したりする。
入出力インターフェイス1600は、入出力デバイス1650とコンピュータ1000とを接続するためのインターフェイスである。例えば、CPU1100は、入出力インターフェイス1600を介して、キーボードやマウス等の入力デバイスからデータを受信する。また、CPU1100は、入出力インターフェイス1600を介して、ディスプレイやスピーカーやプリンタ等の出力デバイスにデータを送信する。また、入出力インターフェイス1600は、所定の記録媒体(メディア)に記録されたプログラム等を読み取るメディアインターフェイスとして機能してもよい。メディアとは、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
例えば、コンピュータ1000が実施形態に係るユーザ端末10として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされた情報処理プログラムを実行することにより、制御部16等の機能を実現する。また、HDD1400には、本開示に係る情報処理プログラムや、記憶部15内のデータが格納される。なお、CPU1100は、プログラムデータ1450をHDD1400から読み取って実行するが、他の例として、外部ネットワーク1550を介して、他の装置からこれらのプログラムを取得してもよい。
なお、本技術は以下のような構成も取ることができる。
(1)
第1アプリと、当該第1アプリの機能を拡張するプラグインとして機能する第2アプリとを制御する情報処理装置であって、
前記第1アプリは、
前記第1アプリにおける前記第2アプリの動作を制御する制御部を備え、
前記第2アプリは、
機械学習に基づく作曲機能を制御するための設定情報を選択する選択部と、
ネットワークを介して、前記設定情報を前記機械学習に基づく作曲機能を実行する外部サーバに送信し、当該外部サーバによって作曲された楽曲データを受信する送受信部と、
を備える情報処理装置。
(2)
前記送受信部は、
前記楽曲データとして、規定された長さの小節におけるコード、当該小節におけるメロディ、当該小節におけるベース音を受信する
前記(1)に記載の情報処理装置。
(3)
前記制御部は、
前記楽曲データに含まれるコード、メロディ又はベース音を再生する際の音色を指定するための楽器情報を個別に設定する
前記(2)に記載の情報処理装置。
(4)
前記制御部は、
前記楽曲データに含まれるコード、メロディ又はベース音に関する情報を表示するウインドウを各々個別に表示するよう制御する
前記(3)に記載の情報処理装置。
(5)
前記制御部は、
ユーザの操作に従い、前記コード、メロディ又はベース音に関する情報を表示する各ウインドウと、前記第1アプリに関する情報が表示されたウインドウ間の情報の送受信を制御する
前記(4)に記載の情報処理装置。
(6)
前記制御部は、
ユーザの操作に従い、前記コード、メロディ又はベース音に関する情報を表示する各ウインドウ間の情報の送受信を制御する
前記(4)又は(5)に記載の情報処理装置。
(7)
前記選択部は、
前記設定情報として、前記機械学習の学習データとなる素材楽曲を指定するための指定情報を選択し、
前記送受信部は、
前記選択部によって選択された指定情報を前記外部サーバに送信する
前記(1)~(6)のいずれかに記載の情報処理装置。
(8)
前記選択部は、
ユーザの操作に従い、予め記憶部に記憶された指定情報であって、前記指定情報の特徴を示す特徴情報と、当該特徴情報に対応付けられた複数の素材楽曲とを含む指定情報を選択する
前記(7)に記載の情報処理装置。
(9)
前記選択部は、
前記外部サーバによって作曲される楽曲データのうち一部の小節に対応する第1の指定情報と、他の一部の小節に対応する第2の指定情報とを組み合わせた組み合わせ指定情報を選択する
前記(7)又は(8)に記載の情報処理装置。
(10)
前記送受信部は、
前記組み合わせ指定情報に基づいて前記外部サーバによって作曲された楽曲データを受信した場合、当該組み合わせ指定情報と当該楽曲データとを対応付けて記憶部に格納する
前記(9)に記載の情報処理装置。
(11)
前記選択部は、
前記設定情報として、前記指定情報に基づいて前記外部サーバによって作曲される楽曲データに含まれる音符の長さ情報を選択し、
前記送受信部は、
前記指定情報及び前記音符の長さ情報を前記外部サーバに送信する
前記(7)~(10)のいずれかに記載の情報処理装置。
(12)
前記選択部は、
前記設定情報として、前記指定情報に基づいて前記外部サーバによって作曲される楽曲データにおける、コードに含まれる構成音がメロディに登場する確率を決定するための情報を選択し、
前記送受信部は、
前記指定情報及び前記コードに含まれる構成音がメロディに登場する確率を決定するための情報を前記外部サーバに送信する
前記(7)~(11)のいずれかに記載の情報処理装置。
(13)
前記選択部は、
前記設定情報として、前記指定情報に基づいて前記外部サーバによって作曲される楽曲データにおいて、当該指定情報に含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報を選択し、
前記送受信部は、
前記指定情報及び当該指定情報に含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報を前記外部サーバに送信する
前記(7)~(12)のいずれかに記載の情報処理装置。
(14)
前記第2アプリは、
ユーザの操作に従い、前記外部サーバによって作曲された過去の楽曲データの履歴を記憶部から呼び出すとともに、当該過去の楽曲データの履歴を表示するよう制御する表示制御部をさらに備える
前記(1)~(13)のいずれかに記載の情報処理装置。
(15)
前記表示制御部は、
前記外部サーバによって作曲された過去の楽曲データに対して実行された編集操作の履歴を記憶部から呼び出すとともに、当該過去の楽曲データに対して実行された編集操作を表示するよう制御する
前記(14)に記載の情報処理装置。
(16)
前記送受信部は、
前記外部サーバによって作曲された楽曲データを受信したのち、ユーザによって当該楽曲データに対する再生もしくは編集操作が行われた場合、当該再生もしくは編集操作に関する情報を当該外部サーバに送信する
前記(1)~(15)のいずれかに記載の情報処理装置。
(17)
前記選択部は、
前記設定情報として、作曲される楽曲におけるコード進行をユーザの操作に基づいて選択し、
前記送受信部は、
前記選択部によって選択されたコード進行を前記外部サーバに送信する
前記(1)~(16)のいずれかに記載の情報処理装置。
(18)
前記制御部は、
前記第1アプリにおいて生成されたコード進行に関する情報を前記第2アプリに送るよう制御し、
前記選択部は、
前記設定情報として、前記第1アプリにおいて生成されたコード進行に関する情報を選択し、
前記送受信部は、
前記第1アプリにおいて生成されたコード進行に関する情報を前記外部サーバに送信し、当該コード進行に関する情報に基づいて作曲された楽曲データを受信する
前記(1)~(17)のいずれかに記載の情報処理装置。
(19)
第1アプリと、当該第1アプリの機能を拡張するプラグインとして機能する第2アプリとを制御する情報処理装置によって実行される情報処理方法であって、
前記第1アプリは、
前記第1アプリにおける前記第2アプリの動作を制御し、
前記第2アプリは、
機械学習に基づく作曲機能を制御するための設定情報を選択し、
ネットワークを介して、前記設定情報を前記機械学習に基づく作曲機能を実行する外部サーバに送信し、当該外部サーバによって作曲された楽曲データを受信する
情報処理方法。
(20)
第1アプリと、当該第1アプリの機能を拡張するプラグインとして機能する第2アプリとを制御する情報処理装置において、
前記第1アプリは、
前記第1アプリにおける前記第2アプリの動作を制御し、
前記第2アプリは、
機械学習に基づく作曲機能を制御するための設定情報を選択し、
ネットワークを介して、前記設定情報を前記機械学習に基づく作曲機能を実行する外部サーバに送信し、当該外部サーバによって作曲された楽曲データを受信する
ように前記情報処理装置を機能させる情報処理プログラム。
(1)
第1アプリと、当該第1アプリの機能を拡張するプラグインとして機能する第2アプリとを制御する情報処理装置であって、
前記第1アプリは、
前記第1アプリにおける前記第2アプリの動作を制御する制御部を備え、
前記第2アプリは、
機械学習に基づく作曲機能を制御するための設定情報を選択する選択部と、
ネットワークを介して、前記設定情報を前記機械学習に基づく作曲機能を実行する外部サーバに送信し、当該外部サーバによって作曲された楽曲データを受信する送受信部と、
を備える情報処理装置。
(2)
前記送受信部は、
前記楽曲データとして、規定された長さの小節におけるコード、当該小節におけるメロディ、当該小節におけるベース音を受信する
前記(1)に記載の情報処理装置。
(3)
前記制御部は、
前記楽曲データに含まれるコード、メロディ又はベース音を再生する際の音色を指定するための楽器情報を個別に設定する
前記(2)に記載の情報処理装置。
(4)
前記制御部は、
前記楽曲データに含まれるコード、メロディ又はベース音に関する情報を表示するウインドウを各々個別に表示するよう制御する
前記(3)に記載の情報処理装置。
(5)
前記制御部は、
ユーザの操作に従い、前記コード、メロディ又はベース音に関する情報を表示する各ウインドウと、前記第1アプリに関する情報が表示されたウインドウ間の情報の送受信を制御する
前記(4)に記載の情報処理装置。
(6)
前記制御部は、
ユーザの操作に従い、前記コード、メロディ又はベース音に関する情報を表示する各ウインドウ間の情報の送受信を制御する
前記(4)又は(5)に記載の情報処理装置。
(7)
前記選択部は、
前記設定情報として、前記機械学習の学習データとなる素材楽曲を指定するための指定情報を選択し、
前記送受信部は、
前記選択部によって選択された指定情報を前記外部サーバに送信する
前記(1)~(6)のいずれかに記載の情報処理装置。
(8)
前記選択部は、
ユーザの操作に従い、予め記憶部に記憶された指定情報であって、前記指定情報の特徴を示す特徴情報と、当該特徴情報に対応付けられた複数の素材楽曲とを含む指定情報を選択する
前記(7)に記載の情報処理装置。
(9)
前記選択部は、
前記外部サーバによって作曲される楽曲データのうち一部の小節に対応する第1の指定情報と、他の一部の小節に対応する第2の指定情報とを組み合わせた組み合わせ指定情報を選択する
前記(7)又は(8)に記載の情報処理装置。
(10)
前記送受信部は、
前記組み合わせ指定情報に基づいて前記外部サーバによって作曲された楽曲データを受信した場合、当該組み合わせ指定情報と当該楽曲データとを対応付けて記憶部に格納する
前記(9)に記載の情報処理装置。
(11)
前記選択部は、
前記設定情報として、前記指定情報に基づいて前記外部サーバによって作曲される楽曲データに含まれる音符の長さ情報を選択し、
前記送受信部は、
前記指定情報及び前記音符の長さ情報を前記外部サーバに送信する
前記(7)~(10)のいずれかに記載の情報処理装置。
(12)
前記選択部は、
前記設定情報として、前記指定情報に基づいて前記外部サーバによって作曲される楽曲データにおける、コードに含まれる構成音がメロディに登場する確率を決定するための情報を選択し、
前記送受信部は、
前記指定情報及び前記コードに含まれる構成音がメロディに登場する確率を決定するための情報を前記外部サーバに送信する
前記(7)~(11)のいずれかに記載の情報処理装置。
(13)
前記選択部は、
前記設定情報として、前記指定情報に基づいて前記外部サーバによって作曲される楽曲データにおいて、当該指定情報に含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報を選択し、
前記送受信部は、
前記指定情報及び当該指定情報に含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報を前記外部サーバに送信する
前記(7)~(12)のいずれかに記載の情報処理装置。
(14)
前記第2アプリは、
ユーザの操作に従い、前記外部サーバによって作曲された過去の楽曲データの履歴を記憶部から呼び出すとともに、当該過去の楽曲データの履歴を表示するよう制御する表示制御部をさらに備える
前記(1)~(13)のいずれかに記載の情報処理装置。
(15)
前記表示制御部は、
前記外部サーバによって作曲された過去の楽曲データに対して実行された編集操作の履歴を記憶部から呼び出すとともに、当該過去の楽曲データに対して実行された編集操作を表示するよう制御する
前記(14)に記載の情報処理装置。
(16)
前記送受信部は、
前記外部サーバによって作曲された楽曲データを受信したのち、ユーザによって当該楽曲データに対する再生もしくは編集操作が行われた場合、当該再生もしくは編集操作に関する情報を当該外部サーバに送信する
前記(1)~(15)のいずれかに記載の情報処理装置。
(17)
前記選択部は、
前記設定情報として、作曲される楽曲におけるコード進行をユーザの操作に基づいて選択し、
前記送受信部は、
前記選択部によって選択されたコード進行を前記外部サーバに送信する
前記(1)~(16)のいずれかに記載の情報処理装置。
(18)
前記制御部は、
前記第1アプリにおいて生成されたコード進行に関する情報を前記第2アプリに送るよう制御し、
前記選択部は、
前記設定情報として、前記第1アプリにおいて生成されたコード進行に関する情報を選択し、
前記送受信部は、
前記第1アプリにおいて生成されたコード進行に関する情報を前記外部サーバに送信し、当該コード進行に関する情報に基づいて作曲された楽曲データを受信する
前記(1)~(17)のいずれかに記載の情報処理装置。
(19)
第1アプリと、当該第1アプリの機能を拡張するプラグインとして機能する第2アプリとを制御する情報処理装置によって実行される情報処理方法であって、
前記第1アプリは、
前記第1アプリにおける前記第2アプリの動作を制御し、
前記第2アプリは、
機械学習に基づく作曲機能を制御するための設定情報を選択し、
ネットワークを介して、前記設定情報を前記機械学習に基づく作曲機能を実行する外部サーバに送信し、当該外部サーバによって作曲された楽曲データを受信する
情報処理方法。
(20)
第1アプリと、当該第1アプリの機能を拡張するプラグインとして機能する第2アプリとを制御する情報処理装置において、
前記第1アプリは、
前記第1アプリにおける前記第2アプリの動作を制御し、
前記第2アプリは、
機械学習に基づく作曲機能を制御するための設定情報を選択し、
ネットワークを介して、前記設定情報を前記機械学習に基づく作曲機能を実行する外部サーバに送信し、当該外部サーバによって作曲された楽曲データを受信する
ように前記情報処理装置を機能させる情報処理プログラム。
1 情報処理システム
10 ユーザ端末
11 通信部
12 入力部
13 表示部
15 記憶部
151 作曲設定情報
152 作曲楽曲情報
153 履歴情報
154 担当楽器情報
16 制御部
161 ホストアプリ制御部
162 プラグイン制御部
163 再生部
164 表示制御部
165 プラグインアプリ制御部
166 選択部
167 送受信部
168 再生部
169 表示制御部
100 処理サーバ
200 管理サーバ
10 ユーザ端末
11 通信部
12 入力部
13 表示部
15 記憶部
151 作曲設定情報
152 作曲楽曲情報
153 履歴情報
154 担当楽器情報
16 制御部
161 ホストアプリ制御部
162 プラグイン制御部
163 再生部
164 表示制御部
165 プラグインアプリ制御部
166 選択部
167 送受信部
168 再生部
169 表示制御部
100 処理サーバ
200 管理サーバ
Claims (20)
- 第1アプリと、当該第1アプリの機能を拡張するプラグインとして機能する第2アプリとを制御する情報処理装置であって、
前記第1アプリは、
前記第1アプリにおける前記第2アプリの動作を制御する制御部を備え、
前記第2アプリは、
機械学習に基づく作曲機能を制御するための設定情報を選択する選択部と、
ネットワークを介して、前記設定情報を前記機械学習に基づく作曲機能を実行する外部サーバに送信し、当該外部サーバによって作曲された楽曲データを受信する送受信部と、
を備える情報処理装置。 - 前記送受信部は、
前記楽曲データとして、規定された長さの小節におけるコード、当該小節におけるメロディ、当該小節におけるベース音を受信する
請求項1に記載の情報処理装置。 - 前記制御部は、
前記楽曲データに含まれるコード、メロディ又はベース音を再生する際の音色を指定するための楽器情報を個別に設定する
請求項2に記載の情報処理装置。 - 前記制御部は、
前記楽曲データに含まれるコード、メロディ又はベース音に関する情報を表示するウインドウを各々個別に表示するよう制御する
請求項3に記載の情報処理装置。 - 前記制御部は、
ユーザの操作に従い、前記コード、メロディ又はベース音に関する情報を表示する各ウインドウと、前記第1アプリに関する情報が表示されたウインドウ間の情報の送受信を制御する
請求項4に記載の情報処理装置。 - 前記制御部は、
ユーザの操作に従い、前記コード、メロディ又はベース音に関する情報を表示する各ウインドウ間の情報の送受信を制御する
請求項4に記載の情報処理装置。 - 前記選択部は、
前記設定情報として、前記機械学習の学習データとなる素材楽曲を指定するための指定情報を選択し、
前記送受信部は、
前記選択部によって選択された指定情報を前記外部サーバに送信する
請求項1に記載の情報処理装置。 - 前記選択部は、
ユーザの操作に従い、予め記憶部に記憶された指定情報であって、前記指定情報の特徴を示す特徴情報と、当該特徴情報に対応付けられた複数の素材楽曲とを含む指定情報を選択する
請求項7に記載の情報処理装置。 - 前記選択部は、
前記外部サーバによって作曲される楽曲データのうち一部の小節に対応する第1の指定情報と、他の一部の小節に対応する第2の指定情報とを組み合わせた組み合わせ指定情報を選択する
請求項7に記載の情報処理装置。 - 前記送受信部は、
前記組み合わせ指定情報に基づいて前記外部サーバによって作曲された楽曲データを受信した場合、当該組み合わせ指定情報と当該楽曲データとを対応付けて記憶部に格納する
請求項9に記載の情報処理装置。 - 前記選択部は、
前記設定情報として、前記指定情報に基づいて前記外部サーバによって作曲される楽曲データに含まれる音符の長さ情報を選択し、
前記送受信部は、
前記指定情報及び前記音符の長さ情報を前記外部サーバに送信する
請求項7に記載の情報処理装置。 - 前記選択部は、
前記設定情報として、前記指定情報に基づいて前記外部サーバによって作曲される楽曲データにおける、コードに含まれる構成音がメロディに登場する確率を決定するための情報を選択し、
前記送受信部は、
前記指定情報及び前記コードに含まれる構成音がメロディに登場する確率を決定するための情報を前記外部サーバに送信する
請求項7に記載の情報処理装置。 - 前記選択部は、
前記設定情報として、前記指定情報に基づいて前記外部サーバによって作曲される楽曲データにおいて、当該指定情報に含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報を選択し、
前記送受信部は、
前記指定情報及び当該指定情報に含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報を前記外部サーバに送信する
請求項7に記載の情報処理装置。 - 前記第2アプリは、
ユーザの操作に従い、前記外部サーバによって作曲された過去の楽曲データの履歴を記憶部から呼び出すとともに、当該過去の楽曲データの履歴を表示するよう制御する表示制御部をさらに備える
請求項1に記載の情報処理装置。 - 前記表示制御部は、
前記外部サーバによって作曲された過去の楽曲データに対して実行された編集操作の履歴を記憶部から呼び出すとともに、当該過去の楽曲データに対して実行された編集操作を表示するよう制御する
請求項14に記載の情報処理装置。 - 前記送受信部は、
前記外部サーバによって作曲された楽曲データを受信したのち、ユーザによって当該楽曲データに対する再生もしくは編集操作が行われた場合、当該再生もしくは編集操作に関する情報を当該外部サーバに送信する
請求項1に記載の情報処理装置。 - 前記選択部は、
前記設定情報として、作曲される楽曲におけるコード進行をユーザの操作に基づいて選択し、
前記送受信部は、
前記選択部によって選択されたコード進行を前記外部サーバに送信する
請求項1に記載の情報処理装置。 - 前記制御部は、
前記第1アプリにおいて生成されたコード進行に関する情報を前記第2アプリに送るよう制御し、
前記選択部は、
前記設定情報として、前記第1アプリにおいて生成されたコード進行に関する情報を選択し、
前記送受信部は、
前記第1アプリにおいて生成されたコード進行に関する情報を前記外部サーバに送信し、当該コード進行に関する情報に基づいて作曲された楽曲データを受信する
請求項1に記載の情報処理装置。 - 第1アプリと、当該第1アプリの機能を拡張するプラグインとして機能する第2アプリとを制御する情報処理装置によって実行される情報処理方法であって、
前記第1アプリは、
前記第1アプリにおける前記第2アプリの動作を制御し、
前記第2アプリは、
機械学習に基づく作曲機能を制御するための設定情報を選択し、
ネットワークを介して、前記設定情報を前記機械学習に基づく作曲機能を実行する外部サーバに送信し、当該外部サーバによって作曲された楽曲データを受信する
情報処理方法。 - 第1アプリと、当該第1アプリの機能を拡張するプラグインとして機能する第2アプリとを制御する情報処理装置において、
前記第1アプリは、
前記第1アプリにおける前記第2アプリの動作を制御し、
前記第2アプリは、
機械学習に基づく作曲機能を制御するための設定情報を選択し、
ネットワークを介して、前記設定情報を前記機械学習に基づく作曲機能を実行する外部サーバに送信し、当該外部サーバによって作曲された楽曲データを受信する
ように前記情報処理装置を機能させる情報処理プログラム。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP19914808.1A EP3926619A4 (en) | 2019-02-12 | 2019-03-08 | INFORMATION PROCESSING DEVICE, METHOD AND PROGRAM |
JP2020572065A JP7322900B2 (ja) | 2019-02-12 | 2019-03-08 | 情報処理装置、情報処理方法及び情報処理プログラム |
CN201980091286.XA CN113424253A (zh) | 2019-02-12 | 2019-03-08 | 信息处理装置、信息处理方法和信息处理程序 |
US17/310,436 US20220130359A1 (en) | 2019-02-12 | 2019-03-08 | Information processing device, information processing method, and information processing program |
DE112019006852.0T DE112019006852T5 (de) | 2019-02-12 | 2019-03-08 | Datenverarbeitungsvorrichtung, datenverarbeitungsverfahren und datenverarbeitungsprogramm |
JP2023121958A JP2023129639A (ja) | 2019-02-12 | 2023-07-26 | 情報処理装置、情報処理方法及び情報処理プログラム |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962804450P | 2019-02-12 | 2019-02-12 | |
US62/804,450 | 2019-02-12 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020166094A1 true WO2020166094A1 (ja) | 2020-08-20 |
Family
ID=72044448
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2019/009353 WO2020166094A1 (ja) | 2019-02-12 | 2019-03-08 | 情報処理装置、情報処理方法及び情報処理プログラム |
Country Status (6)
Country | Link |
---|---|
US (1) | US20220130359A1 (ja) |
EP (1) | EP3926619A4 (ja) |
JP (2) | JP7322900B2 (ja) |
CN (1) | CN113424253A (ja) |
DE (1) | DE112019006852T5 (ja) |
WO (1) | WO2020166094A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022044646A1 (ja) * | 2020-08-31 | 2022-03-03 | ソニーグループ株式会社 | 情報処理方法、情報処理プログラム及び情報処理装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090125799A1 (en) * | 2007-11-14 | 2009-05-14 | Kirby Nathaniel B | User interface image partitioning |
US9110817B2 (en) | 2011-03-24 | 2015-08-18 | Sony Corporation | Method for creating a markov process that generates sequences |
KR20180070340A (ko) * | 2016-12-16 | 2018-06-26 | 아주대학교산학협력단 | 인공지능을 이용한 작곡 시스템 및 작곡 방법 |
US20180190250A1 (en) * | 2016-12-30 | 2018-07-05 | ILIO Enterprises, LLC | Control system for audio production |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IES20020519A2 (en) * | 2001-10-09 | 2004-11-17 | Thurdis Developments Ltd | Multimedia apparatus |
US7169996B2 (en) * | 2002-11-12 | 2007-01-30 | Medialab Solutions Llc | Systems and methods for generating music using data/music data file transmitted/received via a network |
US20140000440A1 (en) * | 2003-01-07 | 2014-01-02 | Alaine Georges | Systems and methods for creating, modifying, interacting with and playing musical compositions |
KR100731761B1 (ko) * | 2005-05-02 | 2007-06-22 | 주식회사 싸일런트뮤직밴드 | 인터넷을 통한 음악제작 시스템 및 방법 |
US20070044639A1 (en) * | 2005-07-11 | 2007-03-01 | Farbood Morwaread M | System and Method for Music Creation and Distribution Over Communications Network |
US20090071315A1 (en) * | 2007-05-04 | 2009-03-19 | Fortuna Joseph A | Music analysis and generation method |
US9257053B2 (en) * | 2009-06-01 | 2016-02-09 | Zya, Inc. | System and method for providing audio for a requested note using a render cache |
US9177540B2 (en) * | 2009-06-01 | 2015-11-03 | Music Mastermind, Inc. | System and method for conforming an audio input to a musical key |
US8779268B2 (en) * | 2009-06-01 | 2014-07-15 | Music Mastermind, Inc. | System and method for producing a more harmonious musical accompaniment |
WO2012021799A2 (en) * | 2010-08-13 | 2012-02-16 | Rockstar Music, Inc. | Browser-based song creation |
KR101274961B1 (ko) * | 2011-04-28 | 2013-06-13 | (주)티젠스 | 클라이언트단말기를 이용한 음악 컨텐츠 제작시스템 |
US20180374461A1 (en) * | 2014-08-22 | 2018-12-27 | Zya, Inc, | System and method for automatically generating media |
US9721551B2 (en) * | 2015-09-29 | 2017-08-01 | Amper Music, Inc. | Machines, systems, processes for automated music composition and generation employing linguistic and/or graphical icon based musical experience descriptions |
US20200257723A1 (en) * | 2015-11-30 | 2020-08-13 | Sony Corporation | Information processing apparatus, information processing system, information processing method, and program |
US20220230104A1 (en) * | 2019-07-08 | 2022-07-21 | Sony Group Corporation | Information processing apparatus, information processing method, and information processing program |
EP4068272A4 (en) * | 2019-11-26 | 2022-12-07 | Sony Group Corporation | INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD AND INFORMATION PROCESSING PROGRAM |
JP7574803B2 (ja) * | 2019-11-26 | 2024-10-29 | ソニーグループ株式会社 | 情報処理装置、情報処理方法及び情報処理プログラム |
CN116057622A (zh) * | 2020-08-31 | 2023-05-02 | 索尼集团公司 | 信息处理方法、信息处理程序和信息处理装置 |
US11183160B1 (en) * | 2021-02-16 | 2021-11-23 | Wonder Inventions, Llc | Musical composition file generation and management system |
-
2019
- 2019-03-08 US US17/310,436 patent/US20220130359A1/en active Pending
- 2019-03-08 WO PCT/JP2019/009353 patent/WO2020166094A1/ja unknown
- 2019-03-08 DE DE112019006852.0T patent/DE112019006852T5/de active Pending
- 2019-03-08 CN CN201980091286.XA patent/CN113424253A/zh active Pending
- 2019-03-08 EP EP19914808.1A patent/EP3926619A4/en active Pending
- 2019-03-08 JP JP2020572065A patent/JP7322900B2/ja active Active
-
2023
- 2023-07-26 JP JP2023121958A patent/JP2023129639A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090125799A1 (en) * | 2007-11-14 | 2009-05-14 | Kirby Nathaniel B | User interface image partitioning |
US9110817B2 (en) | 2011-03-24 | 2015-08-18 | Sony Corporation | Method for creating a markov process that generates sequences |
KR20180070340A (ko) * | 2016-12-16 | 2018-06-26 | 아주대학교산학협력단 | 인공지능을 이용한 작곡 시스템 및 작곡 방법 |
US20180190250A1 (en) * | 2016-12-30 | 2018-07-05 | ILIO Enterprises, LLC | Control system for audio production |
Non-Patent Citations (1)
Title |
---|
BRIOT, JEAN-PIERRE ET AL.: "Music Generation by Deep Learning - Challenges and Directions", NEURAL COMPUTING AND APPLICATIONS, 30 September 2018 (2018-09-30), pages 1 - 17, XP081073413 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022044646A1 (ja) * | 2020-08-31 | 2022-03-03 | ソニーグループ株式会社 | 情報処理方法、情報処理プログラム及び情報処理装置 |
Also Published As
Publication number | Publication date |
---|---|
EP3926619A4 (en) | 2022-04-20 |
US20220130359A1 (en) | 2022-04-28 |
EP3926619A1 (en) | 2021-12-22 |
JP2023129639A (ja) | 2023-09-14 |
JP7322900B2 (ja) | 2023-08-08 |
CN113424253A (zh) | 2021-09-21 |
DE112019006852T5 (de) | 2021-10-28 |
JPWO2020166094A1 (ja) | 2021-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8173883B2 (en) | Personalized music remixing | |
JP5259075B2 (ja) | マッシュアップ装置およびコンテンツの作成方法 | |
US8732221B2 (en) | System and method of multimedia content editing | |
JP2019133181A (ja) | オーディオ・ファイルを生成するためのシステム及び方法 | |
JP5259083B2 (ja) | マッシュアップ用データの配布方法、マッシュアップ方法、マッシュアップ用データのサーバ装置およびマッシュアップ装置 | |
US6756533B2 (en) | Automatic music composing apparatus and automatic music composing program | |
US11869468B2 (en) | Musical composition file generation and management system | |
JP2008287125A (ja) | コンテンツの表示方法、コンテンツの表示装置、記録媒体、およびサーバ装置 | |
JP2019506065A (ja) | 音楽のセグメント別動画再生方法及び装置 | |
US20120072841A1 (en) | Browser-Based Song Creation | |
JP2023129639A (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
US20110231426A1 (en) | Song transition metadata | |
WO2020054064A1 (ja) | 楽曲編集システム、及び楽曲編集方法 | |
US7612279B1 (en) | Methods and apparatus for structuring audio data | |
JP6733240B2 (ja) | コンテンツの一覧の更新方法 | |
JP6509291B2 (ja) | 楽曲共作支援システム | |
JP2011197664A (ja) | 音楽ファイル再生装置及びシステム | |
US20240055024A1 (en) | Generating and mixing audio arrangements | |
JP4311692B2 (ja) | 楽曲データ再生システム | |
JP2004279756A (ja) | 音あるいは音楽に関連したコンテンツの利用装置およびプログラム | |
CN115064143A (zh) | 一种伴奏音频生成方法、电子设备及可读存储介质 | |
WO2013005301A1 (ja) | 再生装置、再生方法、及びコンピュータプログラム | |
JPWO2013005301A1 (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: 19914808 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2020572065 Country of ref document: JP Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 2019914808 Country of ref document: EP Effective date: 20210913 |