U.S. patent application number 15/922188 was filed with the patent office on 2019-09-19 for method and system for generating an audio or midi output file using a harmonic chord map.
The applicant listed for this patent is SCORE MUSIC PRODUCTIONS LIMITED. Invention is credited to Michael John Kiely.
Application Number | 20190287502 15/922188 |
Document ID | / |
Family ID | 65911114 |
Filed Date | 2019-09-19 |
![](/patent/app/20190287502/US20190287502A1-20190919-D00000.png)
![](/patent/app/20190287502/US20190287502A1-20190919-D00001.png)
![](/patent/app/20190287502/US20190287502A1-20190919-D00002.png)
![](/patent/app/20190287502/US20190287502A1-20190919-D00003.png)
![](/patent/app/20190287502/US20190287502A1-20190919-D00004.png)
![](/patent/app/20190287502/US20190287502A1-20190919-D00005.png)
![](/patent/app/20190287502/US20190287502A1-20190919-D00006.png)
![](/patent/app/20190287502/US20190287502A1-20190919-D00007.png)
![](/patent/app/20190287502/US20190287502A1-20190919-D00008.png)
![](/patent/app/20190287502/US20190287502A1-20190919-D00009.png)
![](/patent/app/20190287502/US20190287502A1-20190919-D00010.png)
View All Diagrams
United States Patent
Application |
20190287502 |
Kind Code |
A1 |
Kiely; Michael John |
September 19, 2019 |
METHOD AND SYSTEM FOR GENERATING AN AUDIO OR MIDI OUTPUT FILE USING
A HARMONIC CHORD MAP
Abstract
The present invention provides a system and method for
generating an output file including steps of generating audio or
MIDI content blocks from one or more musical performances;
receiving an input file having audio or MIDI music content;
determining a chord structure and tempo for the input file;
generating a harmonic chord map from the chord structure and tempo
for the input file; using the harmonic chord map to automatically
select content blocks, and generating the output file by combining
the selected content blocks and the input file. The invention
enables the creation of unique and new musical accompaniments by
re-purposing audio or MIDI content from back catalogs and/or
out-takes of musical works. The new arrangement may be provided in
multiple music styles, genres, or moods and may contain
performances from multiple musical instruments, which may be
pre-recorded from live instrument performances and/or of MIDI
generated musical content.
Inventors: |
Kiely; Michael John; (County
Wexford, IE) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
SCORE MUSIC PRODUCTIONS LIMITED |
County Dublin |
|
IE |
|
|
Family ID: |
65911114 |
Appl. No.: |
15/922188 |
Filed: |
March 15, 2018 |
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
G10H 1/38 20130101; G10H
2210/081 20130101; G10H 2210/576 20130101; G10H 2210/086 20130101;
G10H 2240/085 20130101; G10H 2240/131 20130101; G11B 27/031
20130101; G10H 2210/375 20130101; G10H 2240/081 20130101; G10H
2210/125 20130101; G10H 2210/076 20130101; G10H 2240/056 20130101;
G10H 1/0066 20130101; G10H 1/0025 20130101 |
International
Class: |
G10H 1/00 20060101
G10H001/00 |
Claims
1. A computer implemented method for generating an audio or MIDI
output file, the method including using one or more processors to
perform steps of: generating audio or MIDI content blocks from one
or more musical performances; wherein generating the audio or MIDI
content blocks comprises: receiving an audio or MIDI file including
content in a particular harmonic key from a musical performance;
determining the particular harmonic key and adapting the musical
performance to correspond to a plurality of harmonic keys,
including minor and major keys, and to a plurality of different
tempos, and recording said adapted musical performance in said
plurality of harmonic keys and said plurality of different tempos
to generate the audio or MIDI content blocks; receiving an input
file having audio or MIDI music content; determining a chord
structure and tempo for the input file; generating a harmonic chord
map from the chord structure and tempo for the input file; using
the harmonic chord map to automatically select a subset of the
audio or MIDI content blocks, and generating the audio or MIDI
output file by combining the subset of the audio or MIDI content
blocks and the input file.
2. (canceled)
3. The method as claimed in claim 1, in which the step of using the
harmonic chord map of the input file to select the subset of the
audio or MIDI content blocks includes steps of: for each bar in the
harmonic chord map, determining a harmonic key and tempo; selecting
content blocks corresponding to one or more musical instruments for
each bar in the harmonic chord map according to the harmonic key
and tempo for said each bar.
4-6. (canceled)
7. The method as claimed in claim 1, including a step of cutting
the audio or MIDI content blocks to desired intervals and/or
lengths.
8. The method as claimed in claim 1, in which the harmonic chord
map is generated automatically or by a user manually inputting a
chord structure and tempo for the input file.
9. The method as claimed in claim 1, in which each bar of the
harmonic chord map defines a linear time slot for a musical chord
and each content block in the subset is assigned to a time slot of
the harmonic chord map.
10. The method as claimed in claim 1, wherein selecting the subset
is further refined according to one or more of mood, style and/or
genre, and whereby the step of refining a content block according
to one or more of mood, style and/or genre is performed before
and/or after generation of the audio or MIDI output file.
11. The method as claimed in claim 1, including a step of assigning
a unique identifier to each of the audio or MIDI content blocks and
using the unique identifiers to select a unique combination of the
audio or MIDI content blocks.
12. The method as claimed in claim 11, including a step of storing
a record of the unique combination of unique identifiers for the
subset of the audio or MIDI content blocks of the audio of MIDI
output file generated in a storage device.
13. The method as claimed in claim 1, including a step of operating
a hold and replace module to hold some of the subset of the audio
or MIDI content blocks and replace others of the subset of the
audio or MIDI content blocks with alternative audio or MIDI content
blocks according to user preference input and matching the harmonic
chord map.
14. The method as claimed in claim 1, including a step of operating
a shuffle module to automatically hold some of the subset of the
audio or MIDI content blocks and replace others of the subset of
the audio or MIDI content blocks with alternative audio or MIDI
content blocks matching the harmonic chord map.
15. The method as claimed in claim 1, including a step of operating
an audio editing and mixing module to modify, refine, adjust, vary
and/or change audio or MIDI characteristics of a content block
and/or the audio or MIDI output file.
16. The method as claimed in claim 1, including a step of importing
other instrument performances and/or voice from an external source
for incorporation into the audio or MIDI output file.
17. The method as claimed in claim 1, including a step of operating
a synchronisation module to synchronise the audio or MIDI output
file with an audio or MIDI file, a video file, a still image file,
and/or a text file.
18. The method as claimed in claim 1, including a step of storing
each output file generated in a storage device for retrieval and
re-use and linking a plurality of storage devices to provide an
extended storage library of content blocks and audio or MIDI output
files for creating further content blocks for re-use.
19. A non-transitory machine-readable medium including instructions
that, when executed by one or more processors, cause the one or
processors to perform the steps according to claim 1.
20. A computer implemented system for generating an audio or MIDI
output file, the system including: means for generating audio or
MIDI content blocks from one or more musical performances; wherein
the means for generating the audio or MIDI content blocks
comprises: means for receiving an audio or MIDI file including
content in a particular harmonic key from a musical performance;
means for determining the particular harmonic key and adapting the
musical performance to correspond to a plurality of harmonic keys,
including minor and major keys, and to a plurality of different
tempos, and means for recording said adapted musical performance in
said plurality of harmonic keys and said plurality of different
tempos to generate the audio or MIDI content blocks; means for
receiving an input file having audio or MIDI music content; means
for determining a chord structure and tempo for the input file;
means for generating a harmonic chord map from the chord structure
and tempo for the input file; means for using the harmonic chord
map to automatically select a subset of the audio or MIDI content
blocks, and means for generating the audio or MIDI output file by
combining the subset of the audio or MIDI content blocks and the
input file.
21. A computer implemented method for generating an audio or MIDI
output file, the method including using one or more processors to
perform steps of: generating audio or MIDI content blocks from one
or more musical performances; wherein generating the audio or MIDI
content blocks comprises: receiving an audio or MIDI file including
content in a harmonic key from at least one musical performance;
determining the harmonic key of the musical performance, and
storing the audio or MIDI file as an audio or MIDI content block.
receiving an input file having audio or MIDI music content;
determining a chord structure and tempo for the input file;
generating a harmonic chord map from the chord structure and tempo
for the input file; using the harmonic chord map to automatically
select a subset of the audio or MIDI content blocks, and wherein
using the harmonic chord map of the input file to automatically
select the subset of the audio or MIDI content blocks comprises:
selecting one or more instrument types; for each instrument type of
the one or more instrument types: identifying a set of content
blocks for said each instrument type that matches the tempo of each
bar of music in the harmonic chord map, and for each bar of music
in the harmonic chord map, automatically selecting, from the set of
content blocks, a content block that is in the same harmonic key,
or that has a part or section that is in the same harmonic key, as
the bar of music; generating the audio or MIDI output file by
combining the subset of the audio or MIDI content blocks and the
input file.
22. The method as claimed in claim 21, further including a step of
removing sections of the content block that are not in the same
harmonic key as the bar of music of the harmonic chord map.
23. The method as claimed in claim 21, including a step of cutting
the audio or MIDI content blocks to desired intervals and/or
lengths.
24. The method as claimed in claim 21, wherein the harmonic chord
map is generated automatically or by a user manually inputting a
chord structure and tempo for the input file.
25. The method as claimed in claim 21, wherein each bar of the
harmonic chord map defines a linear time slot for a musical chord
and each content block in the subset is assigned to a time slot of
the harmonic chord map.
26. The method as claimed in claim 21, wherein selecting the subset
is further refined according to one or more of mood, style and/or
genre, and whereby the step of refining a content block according
to one or more of mood, style and/or genre is performed before
and/or after generation of the audio or MIDI output file.
27. The method as claimed in claim 21, including a step of
assigning a unique identifier to each of the audio or MIDI content
blocks and using the unique identifiers to select a unique
combination of the audio or MIDI content blocks.
28. The method as claimed in claim 27, including a step of storing
a record of the unique combination of unique identifiers for the
subset of the audio or MIDI content blocks of the audio of MIDI
output file generated in a storage device.
29. The method as claimed in claim 21, including a step of
operating a hold and replace module to hold some of the subset of
the audio or MIDI content blocks and replace others of the subset
of the audio or MIDI content blocks with alternative audio or MIDI
content blocks according to user preference input and matching the
harmonic chord map.
30. The method as claimed in claim 21, including a step of
operating a shuffle module to automatically hold some of the subset
of the audio or MIDI content blocks and replace others of the
subset of the audio or MIDI content blocks with alternative audio
or MIDI content blocks matching the harmonic chord map.
31. The method as claimed in claim 21, including a step of
operating an audio editing and mixing module to modify, refine,
adjust, vary and/or change audio or MIDI characteristics of a
content block and/or the audio or MIDI output file.
32. The method as claimed in claim 21, including a step of
importing other instrument performances and/or voice from an
external source for incorporation into the audio or MIDI output
file.
33. The method as claimed in claim 21, including a step of
operating a synchronisation module to synchronise the audio or MIDI
output file with an audio or MIDI file, a video file, a still image
file, and/or a text file.
34. The method as claimed in claim 21, including a step of storing
each output file generated in a storage device for retrieval and
re-use and linking a plurality of storage devices to provide an
extended storage library of content blocks and audio or MIDI output
files for creating further content blocks for re-use.
35. A non-transitory machine-readable medium including instructions
that, when executed by one or more processors, cause the one or
processors to perform the steps according to claim 21.
36. A computer implemented system for generating an audio or MIDI
output file, the system including: means for generating audio or
MIDI content blocks from one or more musical performances; wherein
the means for generating the audio or MIDI content blocks
comprises: means for receiving an audio or MIDI file including
content in a harmonic key from at least one musical performance;
means for determining the harmonic key of the musical performance,
and means storing the audio or MIDI file as an audio or MIDI
content block; and means for receiving an input file having audio
or MIDI music content; means for determining a chord structure and
tempo for the input file; means for generating a harmonic chord map
from the chord structure and tempo for the input file; means for
using the harmonic chord map to automatically select a subset of
the audio or MIDI content blocks; wherein the means for using the
harmonic chord map of the input file to automatically select the
subset of the audio or MIDI content blocks comprises: means for
selecting one or more instrument types, means for identifying, for
each instrument type of the one or more instrument types, a set of
content blocks for said each instruction type that matches the
tempo of each bar of music in the harmonic chord map, and means for
automatically selecting, for each bar of music in the harmonic
chord map, from the set of content blocks, a content block that is
in the same harmonic key, or that has a part or section that is in
the same harmonic key, as the bar of music; and means for
generating the audio or MIDI output file by combining the subset of
the audio or MIDI content blocks and the input file.
37. The system as claimed in claim 36, further including means for
removing sections of the content block that are not in the same
harmonic key as the bar of music of the harmonic chord map.
Description
TECHNICAL FIELD
[0001] The present invention relates to a method and system for
generating audio or MIDI (Musical Instrument Digital Interface)
files. More specifically, the invention relates to a method and
system for generating an audio or MIDI output file using a harmonic
chord map.
BACKGROUND
[0002] In the music industry massive back catalogs of musical works
previously produced by recording artists, bands or record companies
are unused at all or most major record labels. Many songs, although
often very well known, are largely exhausted and provide little or
no new revenue to writers, record labels and publishers.
[0003] There is however a high demand for re-purposing some of
these well-known songs through re-recording new and alternate
versions of songs for usage in production industries, such as in
films, trailers, gaming, advertising etc. However, such
re-purposing presents a significant problem and barrier to usage as
a result of the time and expense involved in re-recording new
versions of old songs.
[0004] Additionally, many bands and artists have accumulated a very
large back catalog of unused out-takes from previous works over a
number of years and sometimes decades. Such out-takes are songs or
parts of songs that never made it to album release. These out-takes
are often in audio file format, but can include MIDI format also.
These files often contain parts that can be considered hidden gems
that become hard to find or indeed hard to use or reuse.
[0005] It is therefore an object of the present invention to
provide a system and method for generating audio or MIDI output
files using musical content derived from such back catalogs and/or
out-takes of audio or MIDI content.
[0006] Further aspects of the present invention will become
apparent form the ensuing description which is given by way of
example only.
SUMMARY
[0007] According to the invention, there is provided a computer
implemented method for generating an audio or MIDI output file, the
method including using one or more processors to perform steps
of:
[0008] generating audio or MIDI content blocks from one or more
musical performances;
[0009] receiving an input file having audio or MIDI music
content;
[0010] determining a chord structure and tempo for the input
file;
[0011] generating a harmonic chord map from the chord structure and
tempo for the input file;
[0012] using the harmonic chord map to automatically select content
blocks, and generating the output file by combining the selected
content blocks and the input file.
[0013] Preferably, the step of generating audio or MIDI content
blocks includes steps of:
[0014] receiving an audio or MIDI file including content in a
harmonic key from a musical performance;
[0015] determining the harmonic key and adapting the musical
performance to correspond to at least one alternative harmonic key,
and
[0016] recording said adapted musical performance in said
alternative harmonic key to generate the audio or MIDI content
blocks.
[0017] Preferably, the step of generating audio or MIDI content
blocks of includes the further step of:
[0018] adapting the musical performance to correspond to all
harmonic keys, including minor and major keys, and to a plurality
of different tempos,
[0019] recording said adapted musical performance in all of said
harmonic keys and tempos to generate a plurality of audio or MIDI
content blocks.
[0020] Alternatively, the step of generating audio or MIDI content
blocks includes steps of:
[0021] receiving an audio or MIDI file including content in a
harmonic key from at least one musical performance;
[0022] determining the harmonic key of the musical performance,
and
[0023] storing each received audio or MIDI file as an audio or MIDI
content block.
[0024] Preferably, audio or MIDI content blocks are stored and
retrievable from storage according to musical instrument type,
tempo and/or harmonic key of the musical performance.
[0025] Alternatively, the step of using the harmonic chord map of
the input file to select content blocks includes steps of:
[0026] selecting at least one instrument type;
[0027] identifying content blocks for the or each instrument type
that match the tempo of each bar of music in the harmonic chord
map, and
[0028] for each selected instrument type and for each bar of music
in the harmonic chord map automatically selecting a content block
from the identified content blocks that is in the same harmonic key
or that has a part or section that is in the same harmonic key as
the bar of music.
[0029] Preferably, the method includes a step of removing sections
of a selected content block that are not in the same harmonic key
as the bar of music of the harmonic chord map.
[0030] Preferably, the harmonic chord map is generated
automatically. Alternatively, the harmonic chord map is generated
by a user manually inputting a chord structure and tempo for the
input file.
[0031] Preferably, the output file generated is in an audio or MIDI
file format.
[0032] Preferably, the steps for generating audio or MIDI content
blocks is performed on a plurality of musical performances, in
which each musical performance includes musical content from a
different musical instrument.
[0033] Preferably, the step of generating audio or MIDI content
blocks includes the further step of adapting the musical
performances according to one or more of different: moods, styles
and/or genre.
[0034] Preferably, the method includes a step of generating audio
or MIDI content blocks for a plurality of musical performances in
all twelve harmonic keys, in both major and minor keys (i.e. 24
harmonic keys), in a plurality of different tempos, and according
to one or more of different moods, styles and/or genres.
[0035] Preferably, the method includes a step of cutting the audio
or MIDI content blocks to desired intervals/or and lengths.
[0036] Preferably, the method includes storing the audio or MIDI
content blocks in storage means.
[0037] Preferably, the step of using the using the harmonic chord
map of the input file to select content blocks includes steps
of:
[0038] determining the harmonic key and tempo of at least one bar
in the harmonic chord map;
[0039] selecting a content block corresponding to or matching a
musical instrument for the at least one bar according to the
determined harmonic key and tempo.
[0040] In this way, the content blocks are arranged according to
the harmonic chord map and used to create the audio or MIDI output
file have the same tempo and harmonic map, which ensures the
harmonic integrity of the output file generated.
[0041] Preferably, the step of using the using the harmonic chord
map of the input file to select content blocks includes steps
of:
[0042] determining the harmonic key and tempo of each bar in the
harmonic chord map;
[0043] selecting content blocks corresponding to a plurality of
selected musical instruments for each bar according to the
determined harmonic key and tempo.
[0044] Preferably, each bar of the harmonic chord map defines a
linear time slot and each content block selected is assigned to a
time slot of the harmonic chord map.
[0045] Preferably, the step of using the using the harmonic chord
map of the input file to select content blocks is performed
automatically or manually by a user.
[0046] Preferably, content block selection is further refined
according to one or more of mood, style and/or genre. Such music
genre, music style and mood selection is provided as input by a
user to user interface means via a menu, such as a drop down menu,
an icon based menu or any other suitable means which provides users
with the capability to view and select from a plurality of options
regarding music genre, style and/or mood data or other user
preference as required or as desired.
[0047] Preferably, the step of refining a content block according
to one or more of mood, style and/or genre is performed before
and/or after generation of the output file to provide transitions
within the audio or MIDI output file between alternative moods
styles and/or genres.
[0048] Preferably, the method includes steps of assigning a unique
identifier to each content block and using the unique identifiers
to select a unique combination of content blocks.
[0049] The unique identifiers of the selected content blocks are
compared with records in a storage device, and if a record of a
combination of the unique identifiers is located then an output
file based on the combination of selected blocks is not generated.
However, if a record of the combination of unique identifiers for
the selected blocks is not located then this indicates the
selection is unique and has not been generated before, and so the
selected content blocks are combined to generate an audio or MIDI
output file.
[0050] Preferably, the method includes the step of storing a record
of the combination of unique identifiers for the selected blocks of
the audio of MIDI output file generated in a storage device.
[0051] In another embodiment of the invention, the method includes
the step of operating a hold and replace module to hold some of the
content blocks of the selected combination and replace others of
the selected combination with alternative content blocks according
to user preference input and matching the harmonic chord map.
[0052] Preferably, the method includes the step of operating a
shuffle module to automatically hold some of the content blocks of
the selected combination and replace others of the selected
combination with alternative content blocks matching the harmonic
chord map.
[0053] In another embodiment of the invention, the method includes
the step of operating an audio editing and mixing module to modify,
refine, adjust, vary and/or change audio or MIDI characteristics of
the output file generated.
[0054] In another embodiment of the invention, the method includes
the step of operating an editing and mixing module to modify,
refine, adjust, vary and/or change characteristics of a content
block.
[0055] In another embodiment of the invention, the method includes
the step of operating an audio editing and mixing module to adjust
the tempo and/or shift the harmonic key of a content block. Such
editing means and mixing means provides a user with full creative
control over mix and other parameters to modify as desired the
output file generated and content blocks used to form the output
file.
[0056] Preferably, the method includes the step of importing other
instrument performances and/or voice from an external source for
incorporation into the output file.
[0057] Preferably, the method includes the step of operating a
synchronisation module to synchronise the output file with an audio
or MIDI file, a video file, a still image file, and/or a text
file.
[0058] In another embodiment of the invention, the method includes
the step of storing each output file generated in a storage device
for retrieval and re-use.
[0059] Preferably, the method includes the step of linking a
plurality of storage devices to provide an extended storage library
of content blocks and audio or MIDI output files for creating
further content blocks for re-use.
[0060] The present invention is operable to receive an audio or
MIDI input file of a song, such as from a back catalog of music
(including a vocal melody and/or instrument parts), determine a
harmonic chord map of the song structure and then generate an audio
or MIDI output file by combining pre-recorded content blocks with
the input file recording of the original song. The content blocks
are selected to harmonically support the input file recording of
the original song and the process is performed automatically and in
real time.
[0061] To generate content blocks for use in providing an
accompaniment or backing track for the original input file the
present invention adapts musical performances to correspond to all
harmonic keys, including minor and major keys, and to a plurality
of different tempos and moods. The content blocks may be derived
from live instrument performances and/or of MIDI generated musical
content. By repeating the process content blocks may be created for
a plurality of different instruments, a plurality of performances
for each instrument, in multiple genres, and at different moods and
styles in multiple tempos recorded in the twelve keys (major and
minor).
[0062] Alternatively, out-takes of audio or MIDI files derived from
previous works may be stored and retrieved as content blocks.
[0063] The content blocks may then be automatically selected and
where required, cut into time slices or slots at required intervals
and in the required harmonic to provide a musical accompaniment for
the original input file such that the original input file derived
vocal melody will be accompanied by the selected content blocks,
even though the music provided by the content blocks were not
present in the original recording of that song, to provide an audio
or MIDI output file.
[0064] The present invention is adapted to enable bands or artists
to write new songs in their basic format which is inputted as an
audio vocal or MIDI file for the new song. The invention is
configured, on receiving an input file, to search through archived
files of such out-takes and to cut relevant usable sections from
many different unrelated recordings to combine relevant audio or
MIDI content blocks together for any or multiple different
instruments to thereby create a new backing track audio or MIDI
file for the new song from previously unused recorded content in
that band or artists personal content archive.
[0065] The present invention makes it possible to successfully
generate a unique new musical accompaniment for any input file
including an audio or MIDI file of a song (including a vocal melody
and/or instrument parts). The new musical arrangement can be in
any, or even multiple music styles, genres, or emotional moods and
can contain performances from multiple musical instruments, which
may be either pre recorded from live instrument performances and/or
of MIDI generated musical content.
[0066] The audio or MIDI output file generated includes a
combination of the selected content blocks and the audio or MIDI
input file of an original song. The content blocks used in the
output file are uniquely tagged to ensure the musical arrangement
of the selection of content blocks is unique.
[0067] The present invention enables the entire process also being
achieved entirely through audio and through MIDI format file types,
with finished performances including the audio or MIDI output file
being delivered as audio or MIDI files so that instrument sounds
can be changed or applied outside of a DAW
(Digital-Audio-Workstation) or similar third party software
applications. It is also possible to import externally created
audio or MIDI files and have those audio or MIDI files adapted and
expanded to the twelve basic harmonic keys both Major and Minor.
Imported MIDI files are then adapted through auto re-composition
and exported to match the template map of any chosen song or
melody.
[0068] In a still further embodiment of the invention, there is
provided a non-transitory machine-readable medium including
instructions that, when executed by one or more processors, cause
the one or processors to perform the steps according to a method as
described.
[0069] According to the invention, there is provided a computer
implemented system for generating an audio or MIDI output file, the
system including:
[0070] means for generating audio or MIDI content blocks from one
or more musical performances;
[0071] means for receiving an input file having audio or MIDI music
content;
[0072] means for determining a chord structure and tempo for the
input file;
[0073] means for generating a harmonic chord map from the chord
structure and tempo for the input file;
[0074] means for using the harmonic chord map to automatically
select content blocks, and
[0075] means for generating the output file by combining the
selected content blocks and the input file.
[0076] Preferably, the system further includes means for receiving
an audio or MIDI file including content in a harmonic key from a
musical performance;
[0077] means for determining the harmonic key and adapting the
musical performance to correspond to at least one alternative
harmonic key, and
[0078] means recording said adapted musical performance in said
alternative harmonic key to generate the audio or MIDI content
blocks.
[0079] Preferably, the system includes means for adapting the
musical performance to correspond to all harmonic keys, including
minor and major keys, and to a plurality of different tempos, and
means for recording said adapted musical performance in all of said
harmonic keys and tempos to generate a plurality of audio or MIDI
content blocks.
[0080] Preferably, the system further includes means for generating
audio or MIDI content from a plurality of musical performances, in
which each musical performance includes musical content from a
different musical instrument.
[0081] Preferably, the means for generating audio or MIDI content
blocks of includes means for adapting the musical performances
according to one or more of different moods, styles and/or
genre.
[0082] Preferably, the system includes means for generating audio
or MIDI content blocks for each musical performance in all twelve
harmonic keys, in both major and minor keys (i.e. 24 harmonic
keys), in a plurality of different tempos, and according to one or
more of different moods, styles and/or genres.
[0083] Preferably, the system includes means for cutting the audio
or MIDI content blocks to desired intervals/or and lengths.
[0084] Preferably, the system includes means for storing the audio
or MIDI content blocks in storage means.
[0085] Preferably, the system includes means for determining the
harmonic key and tempo of at least one bar in the harmonic chord
map, and means for selecting a content block corresponding to a
musical instrument for the at least one bar according to the
determined harmonic key and tempo.
[0086] Preferably, the system includes means for determining the
harmonic key and tempo of each bar in the harmonic chord map; and
means for selecting a content block corresponding to a plurality of
selected musical instruments for each bar according to the
determined harmonic key and tempo.
[0087] Preferably, the system includes means for receiving an audio
or MIDI file including content in a harmonic key from at least one
musical performance;
[0088] means for determining the harmonic key of the musical
performance, and means for storing each received audio or MIDI file
as an audio or MIDI content block.
[0089] Preferably, the system includes means for storing and
retrieving audio or MIDI content blocks according to musical
instrument type, tempo and/or harmonic key of the musical
performance.
[0090] Preferably, the system includes means for selecting at least
one instrument type;
[0091] means for identifying content blocks for the or each
instrument type that match the tempo of each bar of music in the
harmonic chord map, and
[0092] means for automatically selecting a content block from the
identified content blocks that is in the same harmonic key or that
has a part or section that is in the same harmonic key as the bar
of music in the harmonic chord map for each selected instrument
type.
[0093] Preferably, the system includes means for removing sections
of a selected content block that are not in the same harmonic key
as the bar of music of the harmonic chord map.
[0094] Preferably, the system includes means for assigning a unique
identifier or tag to each content block and using the unique
identifiers to select a unique combination of content blocks.
[0095] Use of the unique identifiers for the combination as a
registration number restricts the combination or anything close
from ever recurring thus ensuring the accompaniment file generated
is unique and original. A record of the combination of unique
identifiers for the selected content blocks in the audio of MIDI
output file generated in a storage device. Each output file
generated is stored in a storage device for retrieval and re-use
and a plurality of storage devices may be linked to provide an
extended storage library of content blocks and audio or MIDI output
files for creating further content blocks for re-use.
[0096] Preferably, the system includes storage means for storing a
record of the combination of unique identifiers for the selected
blocks of the audio of MIDI output file generated in a storage
device.
[0097] Preferably, the system includes a hold and replace module to
hold some of the content blocks of the selected combination and
replace others of the selected combination with alternative content
blocks according to user preference input and matching the harmonic
chord map.
[0098] Preferably, the system includes a shuffle module to
automatically hold some of the content blocks of the selected
combination and replace others of the selected combination with
alternative content blocks matching the harmonic chord map.
[0099] Preferably, the system includes an audio editing and mixing
module operable to modify, refine, adjust, vary and/or change audio
or MIDI characteristics of the output file generated.
[0100] Preferably, the editing and mixing module is further
operable to modify, refine, adjust, vary and/or change
characteristics of a content block.
[0101] Preferably, the editing and mixing module is operable to
adjust the tempo and/or shift the harmonic key of a content
block.
[0102] Such editing and mixing means provides a user with full
creative control over mix and other parameters to modify as desired
the output file generated and content blocks used to form the
output file.
[0103] Preferably, the system includes means for importing other
instrument performances and/or voice from an external source for
incorporation into the output file.
[0104] Preferably, the system includes a synchronisation module to
synchronise the output file with another audio or MIDI file, a
video file, a still image file, and/or a text file.
[0105] Preferably, the system includes means for linking a
plurality of storage devices to provide an extended storage library
of content blocks and audio or MIDI output files for creating
further content blocks for re-use.
[0106] There is also provided a computing device and/or arrangement
of computing devices having one or more processors, memory and
display means operable to display an interactive user interface
having the features as described.
[0107] In another embodiment of the invention, there is provided a
system for generating an audio or MIDI output file for adapting an
audio or MIDI input file substantially as herein described with
reference to and as shown in the accompanying drawings and/or
examples.
[0108] In another embodiment of the invention, there is provided a
method for generating an audio or MIDI output file for adapting an
audio or MIDI input file substantially as herein described with
reference to and as shown in the accompanying drawings and/or
examples.
DRAWINGS
[0109] The invention will be more clearly understood from the
following description of some embodiments thereof, given by way of
example only, with reference to the accompanying drawings, in
which:
[0110] FIGS. 1 and 2 are a stylised schematics showing steps in a
method for generating an audio or MIDI output file according to the
present invention;
[0111] FIG. 3 is a block diagram showing recordings of a piano
performance in a set of harmonic keys according to the
invention;
[0112] FIGS. 4 to 8 are flow diagrams showing an example of the
present invention in use in generating an audio or MIDI output
file;
[0113] FIG. 9 is a flow diagram showing steps in the method
according to the present invention in use in an externally created
MIDI file;
[0114] FIGS. 10 to 14 are flow diagrams showing a further example
of the present invention in use in generating an audio or MIDI
output file, and
[0115] FIG. 15 shows a system for adapting an audio or MIDI input
file for use in generating an output file according to the present
invention.
DETAILED DESCRIPTION
[0116] The method and system according to the present invention is
implemented by one or more computer processors and memory including
computer software program instructions executable by the one or
more processors. The computer processors may be provided by a
computer server or network of connected and/or distributed
computers.
[0117] The audio and/or MIDI input and output files of the present
invention will be understood to be received, stored or recorded
files containing audio or MIDI data or content which produce sound
output when processed by an audio or MIDI player. An audio file may
be received or recorded in audio file formats, including, but not
limited to, audio WAV format, MP3 format, advanced audio coding
(AAC) format, Ogg format or in any other format, analog, digital or
otherwise, as required. The desired audio or MIDI format may
optionally be specified by a user.
[0118] A harmonic chord map will be understood to be a chord or
harmonic progression map, which is a representation of the tempo
and progression of successive musical chords or harmonic keys in a
musical work.
[0119] Referring to the drawings and initially to FIG. 3, the
method includes an initial step 10 of generating audio or MIDI
content blocks from one or more musical performances. Step 10
includes receiving an audio or MIDI file including a musical
performance, determining the harmonic key of the performance and
adapting the musical performance to correspond to all harmonic keys
and at a plurality of different tempos.
[0120] As shown in FIG. 3, and by way of example only, a file
corresponding to a piano performance, `PIANO P1` 12 has been
received and determined as being in the C minor harmonic key at a
tempo of 100 beats per minute (bpm). The combination of the
harmonic key and tempo defines a harmonic chord map for the musical
performance file 12.
[0121] It will be understood however that a musical performance may
have multiple portions or bars, each sequential bar having the same
or a different harmonic key and tempo. It will be also understood
that there are twelve (12) basic harmonic keys upon which music may
be composed and recorded. These harmonic keys also have other
harmonic factors to be considered such as major/minor.
[0122] Once the harmonic chord map for the performance `PIANO P1`
12 is determined as being in C minor and 100 bpm, it is then
recorded in all twelve minor key sets at 100 bpm, namely:
Cm--C minor, C m--C sharp minor, Dm--D minor, D m--D sharp minor,
Em--E minor, E m--E sharp minor, Fm--F minor, F m--F sharp minor,
Gm--G minor, G m--G sharp minor, Am--A minor, A m--A sharp minor
and Bm--B minor, and in all 12 major key sets at 100 bpm, namely:
CMaj--C major, C Maj--C sharp major, DMaj--D major, D Maj--D sharp
major, E Maj--E major, E Maj--E sharp major, F Maj--F major, F
Maj--F sharp major, G Maj--G major, G Maj--G sharp major, A Maj--A
major, A Maj--A sharp major and B Maj--B major.
[0123] These twenty four piano performance recordings at 100 bpm,
indicated generally by the reference numeral 14, are then recorded
at a plurality of different tempos, such as 110 bpm, 115 bpm, 120
bpm, 125 bpm, . . . , 160 bpm and so on, up to a predefined maximum
tempo limit.
[0124] By creating musical performances, such as a piano
performance and then recording the same performance in all eleven
(12) keys (including the major and minor) and at multiple tempos,
the entire musical spectrum for that musical performance `PIANO P1`
is provided. It is these recordings for the entire musical spectrum
for a musical performance received that are used to generate a
number of content blocks 16, as shown in FIG. 3.
[0125] The steps may be repeated for many different musical
performances in which each musical performance includes musical
content from a different musical instrument, such as drums, bass,
guitar, strings and other instruments as required or as desired.
The content blocks 16 may be further adapted according to one or
more of different moods, styles and/or genres.
[0126] The method therefore includes generating audio or MIDI
content blocks 16 for each of many different musical performances
10 in all twelve harmonic keys, in both major and minor keys (i.e.
twenty four harmonic keys), at a plurality of different tempos, and
according to one different moods, styles and/or genres and storing
the audio or MIDI content blocks in storage means.
[0127] The audio or MIDI content blocks may optionally be formatted
to desired intervals and lengths as required and a unique
identifier is also assigned to each content block recorded.
[0128] Turning now to FIGS. 1 and 2, the method 1 includes a step
20 of receiving an input file (shown as Song A) having audio or
MIDI music content. The input file may be a vocal melody and may
include both vocal and/or musical performances from back catalogs
of pre-recorded music and/or live music.
[0129] At step 22, a chord structure (that is, the harmonic keys
making up the performance) and tempos thereof for the input file is
determined and a harmonic chord map is generated. In the instance
shown in FIG. 1, the harmonic chord map 24 is determined as
including, in a sequential order, the following six harmonic keys
or bars at a tempo of 100 bpm: C Major--A Minor--C Major--A
Minor--G Major--F Major
[0130] At step 26, a content block selection means automatically or
by user input determines an instrument or instruments to be
included in the accompaniment for the input file Song A, and it
having been determined that the input file requires a piano
accompaniment, at step 28, identifies from a storage means specific
or donor database specific content blocks that match the harmonic
chord map 24 for such a piano accompaniment.
[0131] At step 30, content blocks corresponding to a musical
instrument `PIANO P1` and having the determined harmonic key and
tempo for the harmonic chord map are selected by the content block
selection means. The content block selection means selects content
blocks from a database or library of stored content blocks for a
selected instrument, such that each content block selected matches
the chord structure and tempo of the input file `Song A`.
[0132] The selection of the instrument or instruments to include
may be automatically performed by the content block selection
means, and/or may be specified by a user according to user
preferences. Such a selection is performed by initially analysing
all content blocks from relevant keys and tempos for the specific
instrument for a match and then selecting such matching content
blocks for each bar C Major--A Minor--C Major--A Minor--G Major--F
Major of the input file.
[0133] At step 32, the selected content blocks are time sliced or
cut to the desired length in order to fit the bars and arranged
along the harmonic map of the input file. Thus each bar of the
harmonic chord map defines a linear time slot and each content
block selected is assigned to a time slot of the harmonic chord
map.
[0134] Thus as shown for an input file with the an original chord
structure C Major--A Minor--C Major--A Minor--G Major--F Major at
100 bpm, the content blocks selected, for example, for a piano
accompaniment, will also have a chord structure C Major--A Minor--C
Major--A Minor--G Major--F Major at 100 bpm. The relevant and
acceptable content blocks for an instrument are arranged along the
harmonic chord map in the correct order of harmonic chord marking
with a tempo time bar and beat markers.
[0135] The process is then repeated thus adapting other selected
instrument content blocks as required. For example, the process may
select drums, bass, guitar, strings etc and adapt content blocks
for these instruments for the harmonic chord map of the original
input file. Content blocks may be further selected or refined
according to one or more of mood, style and/or genre, and such
selection is provided as an input request by a user. Such a step of
refining a content block may performed before and/or after
generation of the output file to provide transitions within the
audio or MIDI output file between alternative moods styles and/or
genres.
[0136] The combination and arrangement of selected content blocks
along the harmonic map of the input file thus forms an instrument
accompaniment or backing track for the original input file song.
The unique identifiers of the selected content blocks are compared
with records in a storage device to ensure that the combination of
content blocks selected is unique.
[0137] At step 34, the original input file is aligned to the chord
structure harmonic and time map markings to ensure correct
placement for playback with the instrument accompaniment or backing
track including the selected content blocks.
[0138] At step 36, an audio or MIDI output file including the
selected content blocks and the original input file song is
generated to provide an adapted version of the vocal melody for
playback.
[0139] The present invention further provides a suite of tools to
provide a user with full creative control over mix and other
parameters to modify as desired the audio or MIDI output file
generated and content blocks used to form the output file,
including:
[0140] A hold and replace module to enable users to hold or retain
some of the content blocks of the selected combination and replace
others of the selected combination with alternative content blocks
according to user preference input and matching the harmonic chord
map.
[0141] A shuffle module to automatically hold some of the content
blocks of the selected combination and replace others of the
selected combination with alternative content blocks matching the
harmonic chord map.
[0142] An editing and mixing module to modify, refine, adjust, vary
and/or change audio or MIDI characteristics of content blocks
and/or the output file generated and to adjust the tempo and/or
shift the harmonic key of a content block.
[0143] An importing module to enable live or recorded instrument
performances and/or voice to be imported from an external source
for incorporation into the output file.
[0144] A synchronisation module to synchronise the output file with
an audio or MIDI file, a video file, a still image file, and/or a
text file.
[0145] The present invention enables the entire process also being
achieved entirely through audio and through MIDI format file types,
with finished performances including the audio or MIDI output file
being delivered as audio or MIDI files so that instrument sounds
can be changed or applied using a DAW (Digital-Audio-Workstation)
or other software applications. It is also possible to import
externally created audio or MIDI files and have those audio or MIDI
files adapted and expanded to 12 basic harmonic keys both Major and
Minor. Imported MIDI files are then adapted through auto
re-composition and exported to match the template map of any chosen
song or melody.
[0146] An example of the present invention for use in adapting an
input file will be described with reference to FIGS. 4 to 9.
[0147] As shown in FIG. 4, at step 40, an input file having the
title `Let it Be`, a well known song by the band The Beatles is
received as input. At step 42, the harmonic chord map for the song
is determined based on the various harmonic keys and tempos for
each bar of the song. FIG. 6 shows the harmonic chord map 60 for
the song `Let it Be` is determined as including bars with harmonic
keys C, G and A Major, all at a tempo of 110 bpm.
[0148] At step 44, this harmonic chord map is provided as input to
the content block selection means for selection of content blocks
to be used in generating a musical backing track or accompaniment
for the song `Let it Be` according to the harmonic chord map.
[0149] As shown in FIG. 5, at step 46, the content block selection
means automatically or by user driven input determines that the
backing track or accompaniment for the input fie song `Let it Be`
should include a piano instrumental part, and so examines all
stored piano content blocks P1 and, at step 48, selects content
blocks from the Piano P1 content blocks matching the harmonic map
and tempo of the harmonic chord map. As shown at step 62 of FIG. 6,
content blocks from repository `Piano P1` that were recorded in the
harmonic keys C, G and A Major and at a tempo of 110 bpm are
selected thus matching the harmonic chord map of the original input
file for `Let it Be`. As shown in FIG. 5, step 50, these selected
content blocks are applied and matched to the harmonic chord map of
the original input file song `Let it Be`. In this way, acceptable
content blocks for an instrumental accompaniment that harmonically
supports the original input file are selected arranged along the
harmonic chord map of the input file, in the correct order of
harmonic chord marking with a tempo time bar and beat markers.
[0150] As shown in FIG. 7, this process is then repeated thus
selecting other content blocks for different instruments as
required. For example, the process may additionally select content
blocks for a drum accompaniment 52, bass 54, guitar 56, strings 58
and select content blocks for these instruments for the harmonic
chord map of the original input file received at 40. As shown, the
original input file 40 is aligned to the chord structure harmonic
and time map markings to ensure correct placement for playback with
the instrument accompaniment or backing track including the
selected content blocks 50, 52, 54, 56, 58.
[0151] As shown in FIG. 8, at step 64, the unique identifiers of
the selected content blocks are compared with records in a storage
device to ensure that the combination of content blocks selected is
in the selected arrangement of content blocks 50, 52, 54, 56, 58 is
unique, and at step, 66 an audio or MIDI output file including the
arrangement of content blocks 50, 52, 54, 56, 58 and the original
input file song 40 is generated to provide an adapted unique
version of the original input file for playback.
[0152] FIG. 9 is a flow diagram showing steps in the method
according to the present invention in an externally created MIDI
file. As shown, at step 70, the externally created melody is in the
musical key of C Major and needs to be adapted, for example, to the
musical key of A minor to harmonically work with the harmonic chord
map of a song received as an input file. At step 72, the external
MIDI file is imported or received by the system of the present
invention where it is adapted. As shown in step 74, the adaptation
is achieved by auto-selecting notation which is not in the musical
key of A minor and moving them to the nearest note position that is
correct for the key of A minor. All other notation that is in
common to both musical keys C Major and A minor are left unaltered.
At step 76, the adapted MIDI file is output.
[0153] FIGS. 10 to 14 show a further example of the present
invention in use in generating an audio or MIDI output file in
which the process of generating content blocks differs to that
described with reference to FIGS. 4 to 9.
[0154] As shown in FIG. 10, the step of generating audio or MIDI
content blocks includes an initial step of receiving audio or MIDI
files 78 including content in a harmonic key from at least one
musical performance and determining the harmonic key of the musical
performance. Once determined each received audio or MIDI file 78 is
stored in storage means 80 as an audio or MIDI content block. Thus
multiple musicians, composers or others provide unrelated single
instrument performance recordings of varying lengths and of varying
tempos and harmonic structure to a collective data bank for storage
in either local or cloud based storage as content blocks.
[0155] The audio or MIDI content blocks are stored and retrievable
from storage means 80 according to musical instrument type, tempo
and/or harmonic key of the musical performance. As shown in FIG.
11, at step 82, an input file having audio or MIDI music content is
received, such as via a user interface means. In this way, users,
such as singers or songwriters may input a song melody and or a
measured harmonic chord structure of a song or musical passage. At
step 84, the input file or song melody is analysed and a harmonic
chord map and tempo 86 is automatically generated for that song
melody. Alternatively a user may manually input a chord structure
for a song.
[0156] At FIG. 12, the steps involved in using the harmonic chord
map of the input file 82 to select content blocks are shown.
Initially, a user selects from a user interface an instrument type
(such as guitar, bass, piano etc) from a selection menu. Such a
selection may also be based on mood and/or musical style.
[0157] At step 88, content blocks 90 that match the tempo of music
in the harmonic chord map are identified. In the instance shown,
the tempo was determined for the music represented in the harmonic
chord map as 120 bpm and so content blocks having a tempo of 120
bpm are identified. It will however be understood that tempo
changes at different parts of a harmonic chord map will result in
identifying content blocks at those different tempos.
[0158] As shown in FIG. 13, at step 92, content blocks 94 at the
determined tempo of 120 bpm for the harmonic chord map and for a
selected instrument type, in the instance shown, as a guitar, are
identified. Then for the selected instrument type and for each bar
of music in the harmonic chord map, at step 96, content blocks are
selected automatically from the identified content blocks that are
in the same harmonic key or that has a part or section that is in
the same harmonic key as the bar of music for the instrument.
[0159] Thus different parts of different content blocks derived
from different musical performances for the selected instrument are
effectively cut out and assembled along the harmonic chord map of
the input file to provide an ensemble backing track for the input
file. Sections or parts of a selected content block that are not in
the same harmonic key as the bar of music of the harmonic chord map
may be removed to ensure harmonic integrity with the underlying
harmonic chord map.
[0160] The present invention thus analyses each content block stem
for harmonic chord compatibility. When content blocks are found to
have whole or partial harmonic compatibility, those parts are cut
out and applied to the part or section of the inputted song
structure's harmonic chord map that is deemed to be a match.
[0161] As shown in FIG. 14, at step 97, the process is then
repeated for all desired instruments the user has selected to
include in the accompanying backing track for the original input
song. In the instance shown, content blocks 98 are selected for
instrument types, including guitar, bass, piano, banjo, organ and
drums, although it will be understood that any alternative or
additional combinations of instruments may be used as required or
as desired.
[0162] As shown in step 99, an audio or MIDI output file including
the arrangement of content blocks 98 and the original input file
song 82 is generated to provide an adapted unique version of the
original input file for playback.
[0163] The present invention is thus further adapted to enable
bands or artists to write new songs in their basic format which is
inputted as an audio vocal file or MIDI file for the new song. The
invention is configured to search through archived files and cuts
relevant usable sections from many different unrelated recordings
to combine relevant audio or MIDI content blocks together for any
or multiple different instruments thereby creating a new backing
track audio or MIDI file for the new song from previously unused
recorded content in that band or artists personnel content
archive.
[0164] It is also possible to shuffle an instrument thus replacing
it for a preferred performance at which point the system repeats
the entire process for that chosen instrument.
[0165] Furthermore the present platform and architecture can be
applied to further enhance editing, mixing and shuffling of
instruments. It is also possible to have a plurality of moods,
music styles and genres transition from one to another within the
same song structure and vocal performance. In other words the song
could start as a country song and at any point transition to
hip-hop, Latin, rock, orchestral etc all within the same track as
it plays out. As described using the process above the present
invention will also apply a unique identifier to every output file
generated to ensure that every output file is entirely unique and
thus never replicated for the same or any other song or vocal
melody inputted and received.
[0166] FIG. 15 shows a system 100 for generating an audio or MIDI
output file to adapt an audio or MIDI input file according to the
present invention. The system 100 includes means 110 for generating
audio or MIDI content blocks from one or more musical performances;
means 120 for receiving an input file having audio or MIDI music
content; means 130 for determining a chord structure and tempo for
the input file; means 140 for generating a harmonic chord map from
the chord structure and tempo for the input file; content block
selection means 150 for using the harmonic chord map to
automatically select content blocks, and means 160 for generating
the output file by combining the selected content blocks and the
input file.
[0167] The content block selection means 150 is further configured
for determining the harmonic key and tempo of each bar in the
harmonic chord map of the input file and for selecting content
blocks corresponding to a plurality of selected musical instruments
for each bar according to the determined harmonic key and
tempo.
[0168] The content block selection means 150 is also configured for
identifying content blocks for the or each instrument type that
match the tempo of each bar of music in the harmonic chord map, and
for automatically selecting a content block from the identified
content blocks that is in the same harmonic key or that has a part
or section that is in the same harmonic key as the bar of music in
the harmonic chord map for each selected instrument type.
[0169] The system also includes means 170 for receiving an audio or
MIDI file including content in an harmonic key from a musical
performance for use in generating the content blocks; means 180 for
determining the harmonic key and adapting the musical performance
to correspond to at least one alternative harmonic key, and means
190 for recording said adapted musical performance in said
alternative harmonic key to generate the audio or MIDI content
blocks.
[0170] The means 190 is further operable for storing each received
audio or MIDI file as an audio or MIDI content block and for
retrieving audio or MIDI content blocks according to musical
instrument type, tempo and/or harmonic key of the musical
performance.
[0171] The means 190 is further configured for adapting a musical
performance to correspond to all harmonic keys, including minor and
major keys, and to a plurality of different tempos, and for
recording said adapted musical performance in all of said harmonic
keys and tempos to generate a plurality of audio or MIDI content
blocks. The means 190 is also configured for generating audio or
MIDI content from a plurality of musical performances, in which
each musical performance includes musical content from a different
musical instrument. Means 190 is further configured for adapting
content blocks and/or an output file generated according to one or
more of different moods, styles and/or genres.
[0172] The means 190 is thus configured for generating audio or
MIDI content blocks for each musical performance in all twelve
harmonic keys, in both major and minor keys (i.e. 24 harmonic
keys), in a plurality of different tempos, and according to one or
more of different moods, styles and/or genres.
[0173] The system includes means 200 for cutting the audio or MIDI
content blocks to desired intervals/or and lengths, and means 210
for storing the audio or MIDI content blocks in storage means. Also
shown is means 290 for linking a plurality of storage devices 210
to provide an extended storage library of content blocks and audio
or MIDI output files for creating further content blocks for
re-use.
[0174] The system further includes means 220 for assigning a unique
identifier or tag to each content block to enable the content block
selection means 150 to use the unique identifiers to select a
unique combination of content blocks.
[0175] The system includes storage means 230 for storing a record
of the combination of unique identifiers for the selected blocks of
the audio of MIDI output file generated in a storage device.
[0176] The system also includes various tools for use by a user to
provide full creative control over an output file generated, and
for content blocks, including a hold and replace module 240; a
shuffle module 250; an audio editing and mixing module 260; a
synchronisation module 270 and means 280 for importing other
instrument performances and/or voice from an external source for
incorporation into the output file.
[0177] Aspects of the present invention have been described by way
of example only and it should be appreciated that additions and/or
modifications may be made thereto without departing from the scope
thereof as defined in the appended claims.
* * * * *