← Back to Patent Explorer
US4941387A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for intelligent chord accompaniment

Assignee: National Semiconductor Corp
•
Filing: 1988-01-19
•
Granted: 1990-07-17
•
Expires: 2008-01-19
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A digital synthesizer type electronic musical instrument that has the ability to automatically accompany a pre-recorded song with appropriate chords. The pre-recorded song is transposed into the key of C major, divided into a number of musical sequences, and then stored in a data structure. By analyzing the data structure of each musical sequence, the electronic musical instrument also can provide intelligent accompaniment, such as voice leading, to the notes that the operator plays on the keyboard.

Inventors

  • 👤 Anthony G. Williams
  • 👤 David T. Starkey

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-10 02:29
CPC Classifications
G; G10; G10H; G10H1/00; G10H1/36; G10H1/38; G10H2210/00; G10H2210/571; G10H2210/591; G10H2210/596; G10H2210/601; G10H2210/606; G10H2210/616; G10H2210/626

Claims Analysis

Total Claims: 6
Claim 1
Independent Claim 251 words
A method for providing a musical performance by an electronic musical instrument comprising the steps of: a. transposing a song having a plurality of sequences, each of the sequences having a plurality of notes, into the key of C-major and pre-recording the song with its plurality of sequences; b. organizing the pre-recorded plurality of transposed sequences into a song data structure for playback by the electronic musical instrument; c. organizing data within the song data structure into a sequence of portions including a header portion, an introductory sequence portion, a normal musical sequence portion, and an ending sequence portion; d. reading from the song data structure status information stored in the header portion of the data structure; e. proceeding to a next sequential portion of the sequence of portions; f. getting a current time command from the header portion; g. determining if the time to execute a current command has arrived yet; h. continuing to step i. if the time has arrived, otherwise jumping back to step g.; i. fetching a current event; j. determining if a track of the current event is active; k. continuing to step l. if the track of the current event is active, otherwise jumping back to step g.; l. determining if a current track resolver of the current event is active; m. continuing if the current track resolver is active to step n.; n. selecting a resolver; o. resolving the current event note into wavetable data; and synthesizing the wavetable data into a musical note.
Claim 2
Independent Claim 251 words
A method for providing a musical performance by an electronic musical instrument comprising the steps of: a. transposing a song having a plurality of sequences, each of the sequences having a plurality of notes, into the key of C-major and pre-recording the song with its plurality of sequences; b. organizing the pre-recorded plurality of transposed sequences into a song data structure for playback by the electronic musical instrument; c. organizing data within the song data structure into a sequence of portions including a header portion, an introductory sequence portion, a normal musical sequence portion, and an ending sequence portion; d. reading from the song data structure status information stored in the header portion of the data structure; e. proceeding to a next sequential portion of the sequence of portions; f. getting a current time command from the header portion; g. determining if the time to execute a current command has arrived yet; h. continuing to step i. if the time has arrived, otherwise jumping back to step g.; i. fetching a current event; j. determining if a track of the current event is active; k. continuing to step l. if the track of the current event is active, otherwise jumping back to step g.; l. determining if a current track resolver of the current event is active; m. continuing if the current track resolver is active to step n.; n. selecting a resolver; o. resolving the current event note into wavetable data; and synthesizing the wavetable data into a musical note.
Claim 3
Dependent Claim 214 words
An electronic musical instrument for providing a musical performance comprising: means for transposing a song having a plurality of sequences, each sequence having a plurality of notes therein into the key of C-major, and pre-recording the song with its plurality of sequences; means for organizing the pre-recorded plurality of transposed sequences into a song data structure for playback by the electronic musical instrument; means for organizing data within a data structure of the song into a sequence of portions including a header portion, an introductory sequence portion, a normal musical sequence portion, and an ending sequence portion; means for reading from the data structure of the song status information stored in the header portion thereof; means for proceeding to a subsequent portion of the sequence of portions; means for getting a current time command from the header portion of the sequence of portions; means for determining if the time to execute the current time command has arrived yet; means for fetching a current event; means for determining if a track of the current event is active; means for determining if a track resolver of the current event is active; means for selecting a resolver; means for resolving the current event into wavetable data; and means for synthesizing the wavetable data into a musical note.
Claim 4
Dependent Claim 214 words
An electronic musical instrument for providing a musical performance comprising: means for transposing a song having a plurality of sequences, each sequence having a plurality of notes therein into the key of C-major, and pre-recording the song with its plurality of sequences; means for organizing the pre-recorded plurality of transposed sequences into a song data structure for playback by the electronic musical instrument; means for organizing data within a data structure of the song into a sequence of portions including a header portion, an introductory sequence portion, a normal musical sequence portion, and an ending sequence portion; means for reading from the data structure of the song status information stored in the header portion thereof; means for proceeding to a subsequent portion of the sequence of portions; means for getting a current time command from the header portion of the sequence of portions; means for determining if the time to execute the current time command has arrived yet; means for fetching a current event; means for determining if a track of the current event is active; means for determining if a track resolver of the current event is active; means for selecting a resolver; means for resolving the current event into wavetable data; and means for synthesizing the wavetable data into a musical note.
Claim 5
Independent Claim 294 words
A method for providing a musical performance by an electronic musical instrument comprising the steps of: a. transposing a song having a plurality of sequences, each sequence having a plurality of notes into the key of C-major and pre-recording the song and the plurality of sequences; b. organizing the pre-recorded plurality of transposed sequences into a song data structure for playback by the electronic musical instrument; c. organizing data within the song data structure into a header portion, an introductory sequence portion, a normal musical sequence portion, and an ending sequence portion; d. reading from the song data structure status information stored in the header portion of the song data structure; e. proceeding to a next portion of the sequence; f. getting a current time command from the sequence header; g. determining if the time to execute the current command has arrived yet; h. continuing to step i. if the time has arrived, otherwise jumping back to step g.; i. fetching the current event; j. determining if the track of the current event is currently active or if the track is currently muted by a muting mask; k. continuing to step l. if the track of the current event is active, otherwise jumping back to step g.; l. determining if a track resolver of the current event is active; m. continuing if the current track resolver is active to step n.; n. selecting a resolver; o. resolving the current event note into wavetable data; p. synthesizing the wavetable data into a musical note; and q. determining if the playback of the ending portion of the sequence has been completed, if it has been completed the playback of the song data structure is completed and the method terminates, otherwise the method returns to step e.
Claim 6
Independent Claim 294 words
A method for providing a musical performance by an electronic musical instrument comprising the steps of: a. transposing a song having a plurality of sequences, each sequence having a plurality of notes into the key of C-major and pre-recording the song and the plurality of sequences; b. organizing the pre-recorded plurality of transposed sequences into a song data structure for playback by the electronic musical instrument; c. organizing data within the song data structure into a header portion, an introductory sequence portion, a normal musical sequence portion, and an ending sequence portion; d. reading from the song data structure status information stored in the header portion of the song data structure; e. proceeding to a next portion of the sequence; f. getting a current time command from the sequence header; g. determining if the time to execute the current command has arrived yet; h. continuing to step i. if the time has arrived, otherwise jumping back to step g.; i. fetching the current event; j. determining if the track of the current event is currently active or if the track is currently muted by a muting mask; k. continuing to step l. if the track of the current event is active, otherwise jumping back to step g.; l. determining if a track resolver of the current event is active; m. continuing if the current track resolver is active to step n.; n. selecting a resolver; o. resolving the current event note into wavetable data; p. synthesizing the wavetable data into a musical note; and q. determining if the playback of the ending portion of the sequence has been completed, if it has been completed the playback of the song data structure is completed and the method terminates, otherwise the method returns to step e.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1993-07-16 1994-01-15 1994-07-17 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1997-07-16 1998-01-15 1998-07-17 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2001-07-16 2002-01-15 2002-07-17 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag