JPH0640270B2 - 和音進行記憶再生装置 - Google Patents

和音進行記憶再生装置

Info

Publication number
JPH0640270B2
JPH0640270B2 JP60014378A JP1437885A JPH0640270B2 JP H0640270 B2 JPH0640270 B2 JP H0640270B2 JP 60014378 A JP60014378 A JP 60014378A JP 1437885 A JP1437885 A JP 1437885A JP H0640270 B2 JPH0640270 B2 JP H0640270B2
Authority
JP
Japan
Prior art keywords
data
code data
chord
code
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP60014378A
Other languages
English (en)
Other versions
JPS61174599A (ja
Inventor
満 福井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP60014378A priority Critical patent/JPH0640270B2/ja
Publication of JPS61174599A publication Critical patent/JPS61174599A/ja
Publication of JPH0640270B2 publication Critical patent/JPH0640270B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、鍵操作等による演奏データをメモリに格納
し、その後その格納した演奏データを読出して自動演奏
する機能を備えた電子楽器に関し、特に実演奏によるコ
ード(chord:和音)データの格納およびその読出しを
行なうための和音進行記憶再生装置に関する。
〔発明の概要〕
この発明は、電子楽器による実演奏の鍵操作に基づくコ
ード(chord:和音)データのメモリへの格納およびそ
の読出しを行なうための和音進行記憶再生装置におい
て、コードの誤判定や誤入力によつて短い時間の間に複
数のコードデータが入力されたときは、時間的に前のデ
ータを無効にして後のデータを正確なデータとして採用
するようにして、鍵操作の僅かなバラツキ等によつて発
生する演奏者が意図しないコードを除去して、演奏者が
意図したとおりの自動コード演奏ができるようにしたも
のである。
また、正確なコードを決定するために宿命的に生じる時
間の遅れを修正して、記録データの再生時には、初めか
ら正しいコードが指定されたものとして自動コード演奏
ができるようにすることもできる。
〔従来の技術〕
鍵盤式電子楽器にメモリを備え、演奏者の鍵操作による
演奏内容をデータ化してメモリに格納して記憶し、その
後随時にその演奏データによる自動演奏をなし得るよう
にしたものがある(例えば、実開昭58−91798号
公報参照)。
ところで、一般に鍵盤楽器の演奏においては、メロデイ
(通常右手)と共に伴奏としてコード(通常左手)演奏
を行なつている。
その場合、コード(和音)演奏はアルペジオ(分散和
音)風の演奏態様を除いて3音(場合によつては4音)
同時押鍵するのが普通である。
そこで、電子オルガンにおけるフインガードコード等の
演奏態様にあつては、3押鍵によつてコード名を検出
し、その根音をもとにオードベースとコードが付けられ
るようになつている。
しかし、この条件だけであると、常に3押鍵そろつてか
らオートベースとコードがつくことになるので、発音が
遅れたりコード音が鳴らない隙間ができたりして不自然
になるので、従来から1押鍵又は2押鍵でも、その押鍵
情報からコード名を決定してオートベース音とコード音
を発生するようになつている。
ところが、人間の指による鍵操作の時間的精度には自か
ら限界があり、コード演奏のための複数鍵を同時に押鍵
したつもりでも、各指の長さの違いや利き指その他の原
因によつて、各鍵間の押下時間には数mS乃至10数m
S(ミリ秒)の差が生じてしまう。
この程度の時間差は人間にとつては同時と感じとられる
が、上述のような電子楽器においてはその正確な押鍵時
点でコードの種類を判別してしまうことになる。
例えば、Cメジヤのコードを演奏しようとしてG,E,
Cの3個の鍵を同時に押したつもりが、実際にはわずか
な時間差でG鍵,E鍵,C鍵の順で押鍵されたとする
と、コードの判別は最初のG鍵の押鍵によつてGメジ
ヤ,次にE鍵も押鍵されると(G,Eの2押鍵)Eマイ
ナ(Em)、さらにC鍵が押鍵されると(G,E,Cの
3押鍵)Cメジヤとなる。
したがつて、このコードデータをそのままメモリに格納
して自動演奏を行なうと、GメジヤとEマイナのコード
が短時間ずつ発音された後本来のCメジヤのコードが発
音されることになり、非常に聞き苦しいものとなるとい
う問題点があつた。
このような問題点を改善するため、例えば特公昭59−
41591号公報に見られるように、最初の押鍵後コー
ドの判別等の処理をするまでに「待ち時間」を設定し
て、その待ち時間中になされた押鍵は全て同時になされ
たものとして取扱うようにすることによつて、鍵操作の
バラツキによる誤つたコードの判別等を防ぐようにした
ものがある。
〔発明が解決しようとする問題点〕
しかしながら、前述の実開昭58−91798号公報に
記載されているようなコードデータを記憶・再生して自
動伴奏する装置の入力装置として、前述のように1押鍵
でも和音を検出するようなものや、「待ち時間」を設定
して正しいコード(和音)を検出するようなものを適用
したとすると、次のような問題がある。
前者の場合は、鍵操作の僅かなバラツキ等により、前述
したように短い時間内に演奏者が意図しない誤った複数
のコードデータがメモリに記憶されることになり、その
記憶されたコードデータの再生時には、短い時間内に頻
繁に変化するコードが発音されるおかしな演奏になって
しまう。
また、前者の場合も後者の場合も、正しいコードが確定
するタイミングは、本来そのコードが指定されるべき正
規のタイミングから遅れたタイミングとなるので、メモ
リには遅れたタイミングで正しいコードデータが記憶さ
れる(前者の場合は誤ったコードデータも記憶されてし
まうが)ことになり、再生時にはコード音の伴奏がメロ
ディ等の演奏とズレてしまっておかしな演奏になってし
まう。
この発明は、このような問題を解決するためになされた
ものであり、押鍵のバラツキ等によつて発生する不要な
コードデータをなくすことを第1の目的とする。
また、正確なコード判別をするための時間的な遅れによ
るメロデイとコードのずれや空白も生じないようにする
ことを第2の目的とする。
〔問題点を解決するための手段〕
第1の発明は上記第1の目的を達成するためになされた
ものであり、次の(a)〜(e)を備えた和音進行記憶再生装
置を提供する。
(a) 演奏者が所定の曲の進行に合わせて順次進行する和
音を押鍵によって実演奏しながら指定可能な鍵盤、 (b) 該鍵盤での押鍵状態からコード名を検出するコード
名検出手段、 (c) 該コード名検出手段で検出されたコード名に対応す
るコードデータを上記所定の曲の進行に合わせて順次格
納するメモリ、 (d) 該メモリへの1曲分のコードデータの格納終了後、
自動演奏の再生に合わせて該メモリに格納されたコード
データを順次読出す読出手段、 (e) 上記メモリへの上記コードデータの格納時に該コー
ドデータを補正する手段であつて、所定時間以内に前後
して発生した少なくとも2つのコードデータについて前
の方のコードデータを無効にする無効化手段、 第2,第3の発明は上記第1及び第2の目的を達成する
ためになされたものであり、第2の発明は、上記(a),
(b),(d)と次の(f)〜(h)とを備えた和音進行記憶再生装
置を提供する。
(f) 上記(c) のコード名検出手段で所定時間以内に前後
して少なくとも2つのコード名が検出された場合には前
の方のコード名を無効にして後の方のコード名に対応す
るコードデータを所要のコードデータとする無効化手
段、 (g) 該無効化手段で無効にされずに所要のコードデータ
とされたコードデータを無効にされた前の方のコード名
が検出されたタイミングに対応させるタイミング補正手
段、 (h) 該タイミング補正手段で補正されたコードデータを
上記所定の曲の進行に合わせて順次格納するメモリ、 第3の発明は、上記(a)〜(d)と次の(i)とを備えた和音
進行記憶再生装置を提供する。
(i) 上記(d) の読出手段による読出し時にコードデータ
を補正する手段であって、所定時間以内に前後して少な
くとも2つのコードデータが格納されている場合には前
の方のコードデータを無効にして後の方のコードデータ
を繰り上げて読み出して所要のコードデータとして出力
する無効化およびタイミング補正手段、 〔作 用〕 上記第1の発明によれば、演奏者は鍵盤の押鍵操作によ
って所望の曲の和音進行を本装置に入力していくことが
できる。コード名検出手段はその押鍵操作に基づいてコ
ード名を検出し、そのコード名に対応するコードデータ
が無効化手段を介して順次メモリに格納されていく。
その無効化手段は、コード名検出手段の出力に対し、所
定時間以内に前後して発生する少なくとも2つのコード
データについて前の方のコードデータを無効にしてメモ
リには不要なコードデータが格納されないようにする。
そして、メモリに1曲分の和音進行のコードデータが格
納された後、自動演奏の再生に合わせて読出手段が順次
このメモリに格納されたコードデータを読出し、そのデ
ータによつて自動コード演奏が行なわれる。
また、第2の発明によれば、上記と同様に無効化手段に
よつて不要なコードデータを無効化し、所要のコードデ
ータのみを順次メモリに格納する際、無効化されずに所
要のコードデータとされたコードデータの発生タイミン
グを無効化された前の方のコード名が検出されたタイミ
ングに対応させるように、タイミング補正手段がタイミ
ングを補正して順次メモリに書き込む。
そして、1曲分のコードデータの格納終了後、読出手段
は補正されたタイミングで所要のコードデータのみを読
出し、そのコードデータによつて自動コード演奏が行わ
れる。
また、第3の発明によれば、コード名検出手段によつて
検出されたコード名に対応するコードデータを直接メモ
リに順次格納してくが、1曲分のコードデータの格納終
了後、読出手段がそのコードデータを読出す際に、所定
時間以内に前後して少なくとも2つのコードデータが格
納されている場合には前の方のコードデータを無効にし
て後の方のコードデータを繰り上げて読み出して所要の
コードデータとして出力するように、無効化およびタイ
ミング補正手段が読出手段を制御し、それによつて順次
出力される所要のコードによって自動コード演奏が行わ
れる。
したがつて、これらの発明によれば、所要のコードデー
タのみを演奏者が意図した正確なタイミングで順次出力
することができるので、メロデイ音とのズレが発生する
ようなことがなく、常に演奏者が意図した正確なタイミ
ングでのコード進行を再現させる。
〔実施例〕
以下、この発明の実施例を添付図面を参照して説明す
る。
この発明による和音進行記憶再生装置の3つの異なる実
施例について説明するが、これらの装置は、その概略構
成をそれぞれ第1図乃至第3図に機能ブロツク図で示す
ように、鍵盤における押鍵情報に基づいてコードデータ
発生手段(図示せず)によつて発生される一連のコード
データを入力して、その入力タイミング又は継続時間デ
ータと共に格納するメモリ1と、その一連のコードデー
タのメモリ1への格納時又はメモリ1からの読出し時に
そのコードデータを補正する補正手段2とを備えてい
る。
そして、この補正手段2は、上記一連のコードデータの
連続する前後のコードデータ間の時間間隔を各コードデ
ータの上記入力タイミング又は継続時間データによつて
検知する時間間隔検知手段3と、 その時間間隔検知手段3によつて検知された時間間隔が
予め設定した所定時間より長いか短かいかを判別する判
別手段4と、 その判別手段4によつて上記時間間隔が所定時間より短
かいと判別された時には、その前後のコードデータのう
ち前の方のコードデータを無効にする無効化手段と、必
要に応じてその無効化したコードデータの入力又は読出
しタイミングで後の方のコードデータが入力又は読出さ
れたものとするタイミング補正手段とを含むデータ修正
手段5からなつている。
なお、第1図は、後述する第1実施例の概略構成を示
し、補正手段2をメモリ1に対するコードデータの入出
力ラインとは別に設け、入力ポートから入力する一連の
コードデータをリアルタイムで一旦メモリ1に格納し、
一曲終了後、メモリ1からその一連のコードデータを読
出して、補正手段2によつて補正処理を行なつたコード
データを再度メモリに格納し直すようにしたものであ
る。
この場合、メモリ1は入力コードデータをそのまま一旦
格納するメモリと、補正後のコードデータを格納するメ
モリとを別に設けてもよい。
第2図は、後述する第2実施例の概略構成を示し、補正
手段2をメモリ1の入力ライン側に設けたもので、入力
ポートから入力する一連のコードデータを補正手段2に
よつて補正処理してからメモリ1に格納するようにした
ものである。
さらに、第3図は、後述する第3実施例の概略構成を示
し、メモリ1の出力ライン側に補正手段2を設けたもの
で、入力ポートから入力する一連のコードデータをリア
ルタイムで一旦メモリ1に格納し、自動演奏等のために
その一連のコードデータをメモリ1から読出す際に、読
出されたコードデータを補正手段2によつて補正処理を
行なつて出力ポートから楽音形成回路等へ出力するよう
にしたものである。
いずれにおいても、補正手段2の時間間隔検知手段3と
データ修正手段5は、少くとも連続する前後2つのコー
ドデータを記憶するメモリをそれぞれ備えている。
この各和音進行記憶再生装置におけるコードデータの補
正処理について、第1図の構成の場合を例に第4図を参
照して説明する。
第4図(a)の上側に示すように、例えば初めにCメジヤ
コードを、次にFメジヤコードをそれぞれ2分音符相当
分ずつ演奏するつもりで、先ずG,E,Cの各鍵を同時
に押鍵し、次にF,A,Cの各鍵を同時に押鍵したつも
りが、実際には同図の下側に示すように、Cメジヤコー
ドの押鍵時に先ずG鍵が押された後約10mS遅れても
E鍵か押され、さらに約20mS遅れてC鍵が押され、
次のFメジヤコードの押鍵はF,A,Cの各鍵が正確に
同時に押鍵されたものとする。
この場合、コードデータ発生装置は、最初のG鍵の押鍵
情報によつてGメジヤのコードデータを発生し、次にG
鍵とE鍵の押鍵情報によつてEマイナのコードデータを
発生し、さらにG,E,C鍵の押鍵情報によつてCメジ
ヤのコードデータを発生する。その後間を置いてF,
A,C鍵の押鍵情報によつてFメジヤのコードデータを
発生する。
この一連のコードデータが入力してメモリ1に直接格納
されると、そのデータは第4図(b)に示すようになる。
ここで、上側の「G,Em,C,F」はコード名を示す
データで、下側の「0,1,3,48」は各コードデー
タの入力タイミングを最初のコードデータの入力タイミ
ングを基準「0」としてテンポクロツクのカウント数
(TCL)で示すタイミングデータである。
このコード名を示すデータとタイミングデータは、例え
ばメモリ1の各番地のデータエリアが16ビツトであると
すれば、その上位8ビツトと、下位8ビツトにそれぞれ
書き込まれる。
このようにして、一曲のコードデータをメモリ1の各番
地に順次に格納した後、この一連のコードデータをメモ
リ1からシステムクロツクにより高速で読出し、補正手
段2によつて補正処理して再びメモリ1に格納し直す。
その時、時間間隔検知手段3がメモリ1から読出される
1連のコードデータの連続する前後のコードデータの時
間間隔をコードデータと共に読出される上述のタイミン
グデータの差によつて検知し、判別手段4がその時間間
隔(前後のタイミングデータの差)を予め設定した所定
時間(例えば3TCL)と比較して、それにより長いか短
かいかを判別し、その判別結果をデータ修正手段5へ出
力する。
データ修正手段5は、この判別手段4の判別結果によ
り、時間間隔が所定時間より短かい時には、その前後の
コードデータのうち前方のコードデータを無効データ
(第4図では×印を付けて示している)にする。この場
合、無効を示す1ビツトのデータを付加するようにして
もよい。
したがって、この例では、コードデータ「G」と「E
m」間及び「Em」と「C」間の時間間隔が1TCLと2T
CLで、いずれも所定時間より短かいため、第4図(c)
に示すようにコードデータGを無効データ(×印)に
し、さらにコードデータEmも無効データにする。
次に、第4図(d)に示すように最初の有効なコードデ
ータ「C」を最初の無効データ「×G」の格納位置に入
れ換え、同図(e)に示すように、元のコードデータ
「C」を無効データ「×C」にして最初の3押鍵による
コードデータの補正処理を完了する。
このような補正処理を一曲分のコードデータについて全
て完了した後、メモリ1からその補正されて格納されて
いる一連のコードデータを読出して自動演奏すると、第
4図(f)に示すように、Cメジヤコード演奏時の最初
の1鍵目の押鍵に相当する時点から時間遅れなくCメジ
ヤコードが発音され、それが48TCL 間継続した後にF
メジヤコードに変わる。
このように、きれいに補正されたコードデータを出力す
ることができる。
しかしながら、このように無効化したコードデータの後
の所要のコードデータの格納位置の入れ換え、すなわち
タイミング補正を行なわなくても、上手な演奏者がコー
ドを入力する際の同時複数押鍵のバラツキは僅かな時間
差であるから、前のコードデータを無効化することによ
る後のコードデータの時間遅れは僅かであり、実用上そ
れ程問題にならない。
それは、従来の装置のように常に一定の待ち時間を設定
して、その間になされた押鍵は全て同時になされたもの
として最初の押鍵から一定時間後にコードの判別を行な
うのではなく、押鍵がある毎にコード名を検出し、その
検出される時間間隔が所定時間より短い時に前の方のコ
ードデータを無効にするので、最初の押鍵から所要のコ
ードが確定するまでの時間は一定ではなく、上手い演奏
者による程短かくなるからである。
次に、この発明による和音進行記憶再生装置を自動演奏
機能付き電子オルガンの演奏データ記憶装置に適用した
場合の具体的な実施例を、前述の第1〜第3実施例に対
応させて、図面の第5図以降を参照して詳細に説明す
る。
まず、この実施例における電子オルガンの概略構成を第
5図に示し、これを説明する。この図に示す電子オルガ
ンは、マイクロプロセツサ等の中央処理装置(以下、
「CPU」と略称する)を有するマイクロコンピユータ
10を用いて装置全体を集中制御するように構成したも
のである。
このマイクロコンピユータ10は、CPU11,プログ
ラムメモリ12,ワーキングメモリ14,バツフアメモ
リ14,テンポカウンタ15,テンポクロツク発生器1
6,入力ポート17,出力ポート18,及びこれらの各
部を接続するバス19(データ,アドレス,コントロー
ルの各バス)等によつて構成されている。なお、システ
ムクロツク発生器は図示を省略している。
プログラムメモリ12は、CPU11が使用する各種プ
ログラム及び各種コードデータが格納されたリードオン
メモリ(ROM)である。
ワーキングメモリ3は、CPU11がその動作過程にお
いて使用するワーキングエリア用のメモリであり、ラン
ダムアクセスメモリ(RAM)が使用される。この場
合、このワーキングメモリ13の一部の番地はCPU1
1の外部レジスタおよびポインタ等として使用される。
バツフアメモリ14は、後述する鍵盤回路21からの押
鍵情報に基づいてCPU11がコードを判別して発生す
るコードデータを、その発生タイミングデータと共に記
憶するためのランダムアクセスメモリ(RAM)であ
り、このバツフアメモリ17は未補正のコードデータを
格納するためのメモリと、この発明によつて補正された
コードデータを格納するためのメモリとを別に設けるよ
うにしてもよい。
テンポカウンタ15は、テンポ発振器が出力するテンポ
クロツク(このテンポクロツクの周期は演奏者が後述す
る操作子入力回路22のテンポボリユームの操作等によ
つて設定する)を計数するカウンタである。
次に、鍵盤回路21は、この電子オルガンの鍵盤の各鍵
に1対1に対応して設けられたキースイツチからなる回
路で、CPU11は入力ポート17を介してそのキース
イツチのオンによる押鍵情報を入力して、各鍵の操作状
態を検出することができる。
また、操作子入力回路22は、この電子オルガンのパネ
ル上にある音色選択スイツチ,リズム選択スイツチ,リ
ズムスタート・ストップスイツチ,テンポボリユーム,
自動演奏開始スイツチ等の各操作子の操作信号を出力す
る回路であり、CPU11はこれらの各操作子の接点が
開閉する時に発生する割り込み信号等に応じて、これら
の各操作子の操作状態を読み込み、ワーキングメモリ1
3におけるこれらの各操作子に対応したレジスタの内容
を書き換える。
これらレジスタとしては、上記音色選択スイツチによつ
て選択された音色データを記憶するレジスタ,リズム選
択スイツチによつて選択されたリズムのリズムパターン
情報を記憶するレジスタ,さらに、テンポボリユーム、
リズムスタート・ストツプスイツチ,自動演奏開始スイ
ツチ等の状態を記憶するレジスタがある。
楽音信号形成回路23は、CPU11が出力ポート18
を介して出力するデータに基づいて、対応する楽音信号
を発生してスピーカ20に供給し、それによつて発音を
発生させる回路である。
以上の構成において、演奏データの記憶を行なわない通
常のモードにおいては、CPU11は演奏開始に先立
ち、まずワーキングメモリ13のレジスタから音色コー
ド等の操作子情報を楽音信号形成回路23へ供給する。
次いで、演奏者が演奏を開始するとCUP11は、鍵盤
回路21からの押鍵情報から鍵操作状態を検出し、押鍵
時には押下鍵を示すキーデータ及びそれに基づいて判別
されるコードデータを楽音信号形成回路23へ供給す
る。
楽音信号形成回路19は、そのキーデータ及びコードデ
ータが示す鍵の音高に対応する音源信号を発生し、この
音源信号に音色データに応じた音色等を付与して楽音信
号を形成し、この楽音信号をスピーカ20へ供給する。
したがつて、この通常のモードにおいては、スピーカ2
0から押下鍵に対応する音高の楽音(メロデイ及びコー
ドを含む)が演奏順に順次発音される。
さらに、このマイクロコンピユータ10は、第1図乃至
第3図に示したこの発明による演奏データ処理装置のメ
モリ1,補正手段2の各部の機能も備えており、演奏デ
ータの記憶モード又は自動演奏モードにおいて前述のよ
うなコードデータの補正処理を主としてCPU11の機
能によつて行なう。
第1実施例 そこで、次に第1図に示した機能ブロツク図に相当する
動作をこのマイクロコンピユータ10によつて実現する
場合の実施例を、第6図及び第7図のフローチヤートと
第8図及び第9図の説明図を参照して説明する。
演奏者の押鍵操作に応じたコードデータは、CPU11
により判別されてプログラムメモリ12に格納されてい
る各種のコードデータ中から選択的に読出されて、その
タイミングデータと共にリアルタイムでバツフアメモリ
(RAM)14に順次格納される。
第8図に、第4図に示したのと同様なデータ格納例を示
す。なお、Pはポインタ,PRはポインタレジスタで、
ワーキングメモリ13の一部の番地を使用する。
そして、演奏者が一曲の演奏を終了して操作子入力回路
22中のリズムスタート・ストツプスイツチをストツプ
にすると、第6図の動作が開始される。これは、入力さ
れた一連のコードデータのうち不要なデータを無効にす
るフローである。
第6図のステツプ1でリズムストツプを判断し、YES
であればステツプ2でRAM14の最後のコードデータ
の次の番地にENDマークに相当する符号化データを書
き込む。そして、ステツプ3でポインタPをRAM14
の曲頭の番地(最初は“0”)にセツトする。
次に、ステツプ4でそのポインタPが示すデータがコー
ドデータか否かを判断し、コードデータでない時(EN
Dマークの時)は何もしないで第7図のフローへ進む。
コードデータであればステツプ5へ進んで、現在のポイ
ンタPの値をポインタレジスタPRに記憶させる。そし
て、ステツプ6でポインタの値を+1する(初めは
“0”から“1”にする)。
ステツプ7で新らたなポインタの示す位置のデータがコ
ードデータか否かを判定し、コードデータでなければ
(ENDデータ)そのまま第7図のフロー図へ進み、コ
ードデータであれば、ステツプ8へ進む。
ステツプ8では、現在のポインタPの位置のタイミング
データTnとポインタレジスタPRがさし示している位
置のタイミングデータTn-1との差が予め設定したしき
い値Tn未満(Tn−Tn-1<Tr)か否かを判断し、
YESであればポインタレジスタがさし示している位置
のコードデータを無効データにし、NOであれば何もせ
ずにステツプ5へ戻り、ENDマークが記憶されている
番地にポインタPの値がくるまでにこれを繰返す。
第8図の例では、最初はTn=1,Tn-1=0であるか
らTn−Tn-1=1でステツプ8はYESになり、ステ
ツプ9でポインタレジスタPRがさし示している0番地
のコードデータ「G」を無効データ「×G」にする。2
回目はTn=3,Tn-1=1であるから、Tn−Tn-1
2で、ステツプ8ではやはりYESになり、ステツプ9
で1番地のコードデータ「Em」を無効データ「×E
m」にする。3回目はTn=48,Tn-1=3であるか
らTn−Tn-1=45で、ステツプ8の判断がでNOに
なる。したがつて3番地のコードデータ「C」は無効に
しない。
このようにして不要なデータを無効データにし、RAM
14の記憶データを第8図の右側に示すようなデータに
修正する。これが第4図(c)の補正途中のデータに相
当する。
次に、第7図は無効データの後の最初の有効なコードデ
ータを連続する無効データの最初の番地に書き込み、元
の番地のコードデータを無効データにする(タイミング
データは元のまま)フローである。
まず、ステツプ10で第9図のポインタPをRAM14
の曲頭の番地“0”にセツトする。そして、ステツプ1
1でポインタPが示ずデータは何かを判定する。
ENDマークであれば何もせずにこのルーチンを終了
し、有効なコードデータであれば、ステツプ12へ進ん
でポインタPを+1する(“0”から“1”にする)。
また、無効データであればステツプ13へ進んで、現在
のポインタPの値をポインタレジスタPRに記憶させ
る。
第9図に示す例では、RAMの0番地は無効データ「×
G」であるので、現在のポインタPの値“0”をポイン
タレジスタPRに記憶させる。
その後ステツプ14でポインタPを進めて“1”にし、
その後ステツプ14でポインタPを1進めて“1”に
し、ステツプ15でポインタPが新たに示す位置のデー
タが何かを判定する。
ENDマークであればそのままこのルーチンを終了し、
無効データであればステツプ14へ戻つてポインタPを
さらに1進める。有効なコードデータであれば、ステツ
プ16へ進んでポインタレジスタPRが示す番地に現在
のポインタPが示すコードデータを書き込む。そして、
ステツプ17で現在のポインタPが示すコードデータを
無効データにしてステツプ11へ戻り、ENDマークが
くるまでこれを繰返す。
第9図の例では、最初はステツプ15でポインタPが示
す1番地のデータは無効データ「×Em」なので、ステ
ツプ14へ戻ってポインタを“2”にする。それによ
り、ステツプ15でポインタPが示す2番地のデータは
有効なコードデータ「C」であるので、これをポインタ
レジスタPRが示す0番地に書き込み、ステツプ17で
2番地のデータを無効データ「×C」にする。
このようにして、RAM14の記憶データが第9図の右
側に示すようなデータに修正される。これが第4図(e)
の補正完了後のデータ相当する。
次に、自動演奏時の動作を第10図のフローによつて説
明する。
自動演奏開始スイツチがオンになると、ステツプ18の
判断がYESになり、ステツプ19へ進んで初期セツト
する。すなわち、ポインタPの値を“0”にし、テンポ
カウンタ15(第5図)の値も“0”にする。
その後、ステツプ20でポインタPの示すデータがEN
Dマークか否かを判断し、YESであればこのルーチン
を終了するが、曲の終了まではNOなのでステツプ21
へ進み、ポインタが示すタイミングデータTnとテンポ
カウンタ15の値Tcが等しいか否かを判断する。
Tn=Tcでなければステツプ25へ進んでテンポクロ
ツクTCL の入力を待ち、テンポクロツクが入力すると
(実際には周波数の高いシステムクロツクをカウントし
てTCL のタイミングになると)ステツプ26へ進んでテ
ンポカウンタを+1してステツプ20へ戻る。
RAM14の格納データが第9図の右側に示すようにな
つていると、初めはポインタPが示す0番地のタイミン
グデータTnは「0」であり、テンポカウンタ15の値
Tcも「0」であるから、ステツプ21の判断はYES
になるので、ステツプ22に進んでポインタの示すデー
タが有効なコードデータか否かを判断する。
0番地のデータは有効なコードデータ「C」であるの
で、そのコードデータ「C」を第5図の楽音信号形成回
路23に出力してスピーカ24からCメジヤのコード音
を発音させた後ポインタを+1する。このコード音の発
音は、次に新らたなコード音の発音がなされるまで継続
する。
ポインタが“1”になると、1番地のタイミングデータ
Tnは「1」なので、テンポカウンタ15が「1」にな
るとステツプ21からステツプ22へ進むが、そのコー
ドデータは無効データ「×Em」なので、新らたなコー
ドの音の発音は行なわずにステツプ24でポインタを+
1する。
2番地のタイミングデータTnは「3」であるから、テ
ンポカウンタ15が「3」になるとステツプ22へ進む
が、そのコードデータはやはり無効データ「×C」なの
で、新らたなコード音の発音は行なわずにステツプ24
でポインタを+1する。
3番地のタイミングデータTnは「48」であるから、
テンポカウンタ15が「48」になるとステツプ22へ
進み、そのコードデータは有効なコードデータ「F」な
ので、ステツプ23でそのコードデータ「F」を出力
し、Fメジヤのコード音を発音させる。
したがつて、最初からCメジヤのコード音が正しく押さ
れたように発音され、48TCL 間短縮されることなく発
音された後、Fメジヤのコード音に変わる。
以後同様にして正しいコード音演奏がなされる。なお、
メロデイ音も同様に自動演奏されるが、その説明は省略
する。
また、この場合も前述したように、無効変したコードデ
ータの後の所要のコードデータに対してタイミング補正
を行なわなくても、上手な演奏者がコードを入力する場
合には実用上殆んど問題にならない。
したがって、このタイミング補正を省略して、所定時間
以内に前後して発生した少なくとも2つのコードデータ
について前の方のコードデータを無効にして、所要のコ
ードデータのみをメモリに格納する処理だけを行なうよ
うにしてもよい。
第2実施例 前述の第1実施例では、一曲分の押鍵タイミングどおり
の一連のコードデータをその入力タイミングデータと共
にRAM14に記録し、一曲終了後そのRAM14のデ
ータを補正処理するようにしたが、一連のコードデータ
をRAMに格納する入力時に同様な補正処理を行なうよ
うにしてもよい。
すなわち、第2図に示した機能ブロツク図に相当する動
作を第5図のマイクロコンピユータ10によつて実現す
る場合について、第11図を参照して説明する。
その場合、例えばワーキングメモリ13内の2段のシフ
トレジスタ31,32(第11図)を1時記録メモリと
して使用し、鍵盤回路21からの押鍵情報によりCPU
11が判別してプログラムメモリ12から読出す一連の
コードデータを、そのタイミングデータと共に前後2個
ずつ順次2段のシフトレジスタ31,32に一時記憶さ
せ、現在のコードデータのタイミングデータTnと1つ
前のコードデータのタイミングデータTn-1との差Tn
−Tn-1を予め設定した所定時間であるしきい値Trと
比較し、Tn−Tn-1<Trの時はこの1つ前のコードデ
ータは無効にし、Tn−Tn-1≧Trの時は1つ前のコ
ードデータをそのタイミングデータと共にRAM14に
書き込むようにする。
この場合、無効と判断されたコードデータの継続時間分
だけ次の有効なコードデータの継続時間が短かくなるの
で、小節毎あるいは2分音符相当毎の基準タイミングデ
ータ(例えば32分音符号相当,3TCL)以下の長さのコ
ードデータ(無効データ)のタイミングデータ(無効デ
ータが続いた場合はその最初のタイミングデータ)を、
その後の最近傍の有効なコードデータのタイミングデー
タとしてRAM14にとり込むようにすればよい。
自動演奏時の動作は、第1実施例の場合と同じなのでそ
の説明を省略する。
第3実施例 次に、第3図に示した機能ブロツク図に相当する動作を
第5図のマイクロコンピユータ10によつて実現する場
合について、第12図及び第13図のフローチヤートを
参照して説明する。
この実施例は、一曲分の押鍵タイミングどおりの一連の
コードデータをその入力タイミングデータと共にRAM
14(第3図ではメモリ1に格納し、自動演奏時にRA
M14からその記憶データを読出す際に前述と同様な補
正処理を行なうようにしたものである。
第12図は自動演奏(再生)時のメインルーチンのフロ
ーを示し、操作子入力回路22の自動演奏開始スイツチ
がオンになるとステツプ30の判断がYESになり、ス
テツプ31で初期セツトする。この初期セツトは、ポイ
ンタ及びテンポカウンタを“0”にすると共に、この実
施例で新らたに使用する無効コードを含むタイミングデ
ータをカウントするための無効コードカウンタ(以下
「×コードカウンタ」と称する)も“0”にする。
そして、ステツプ32でテンポクロツクTCLが入力し
たか(あるいはシステムクロツクのカウント値がテンポ
クロツクの周期になつたか)を判断し、テンポクロツク
のタイミングでステツプ33のサブルーチンに進む。
このサブルーチンを抜けるとステツプ34でENDマー
クか否かを判断し、YESであれば終了し、NOであれ
ばステツプ32へ戻つてテンポクロツクのタイミング毎
にステツプ33のサブルーチンの処理を実行する。
ステツプ33のサブルーチンでは、第13図のフローチ
ヤートに示す処理を行なう。
先ず、ステツプ35で×コードカウンタが“0”か否かを
判断し、“0”でなければステツプ44へ進んで×コー
ドカウンタの値を−1してメインルーチンへリターンす
るが、最初は“0”なのでステツプ36へ進んでポイン
タの値をポインタレジスタに記憶させる。
そして、ステツプ37でポインタの値を+1し、ステツ
プ38でその時のポインタの示す位置のデータがコード
データか否かを判断し、コードデータでなければ(EN
Dデータならば)何もせずにメインルーチンへリターン
するが、コードデータであればステツプ39へ進む。
ステツプ39では、ポインタの示す位置のタイミングデ
ータTnとポインタレジスタの示すタイミングデータT
n-1(1つ前のコードのタイミングデータ)の差Tn−
n-1をしきい値Trと比較して、Tn−Tn-1<Trで
なければステツプ42へ進んで、ポインタレジスタの示
すコードデータを楽音信号形成回路23(第5図)へ出
力して、そのコード音を発音させる。
そして、ステツプ43で×コードカウンタを“Tn−T
n-1”だけ進めてメインルーチンへリターンする。
しかし、Tn−Tn-1<Trであれば、ステツプ40へ
進んでポインタの値を再びポインタレジスタに記憶させ
て、ステツプ41で×コードカウンタの値を“Tn−T
n-1”だけ進めてステツプ37へ戻る。
連続する2つのコードデータ間の時間間隔が所定値Tr
より短かい間は、このステツプ37〜41を繰返し回つて、
その間の無効データのタイミングデータの差を×コード
カウンタに加算していく。
したがつて、RAM4に例えば第8図の左側に示したよ
うなコードデータとそのタイミングデータが格納されて
いてこれが図の上側のデータから順次読出されるとする
と、ステツプ37〜41の1回目の処理で×コードカウ
ンタが“1”(Tn−Tn-1=1−0=1)になり、2
回目の処理で×コードカウンタが“3”(Tn−Tn-1
=3−1=2)になる。
そして、3回目の処理時のステツプ39でTn−Tn-1
=48−3=45>Tr(Trは例えば「3」)になる
ので、ステツプ42へ進んで、その時のポインタレジス
タの示すコードデータ「C」を出力し、Cメジヤのコー
ド音を発生させ、ステツプ43で×コードカウンを“4
5”進めて“48”にする。
このステツプ37〜43を回るのは極めて周波数の高い
システムクロツクによるので、Cメジヤのコード音が発
音されるまでの時間遅れは極めて少なく、最初のコード
データ「G」が読出されたタイミングと殆んど変らな
い。
その後、第12図のメインルーチンに戻り、次のテンポ
クロツクのタイミングで再びこのサブルーチンに入つて
ステツプ44へ進んで×コードカウンタの値を−1し、
これを×コードカウンタが“0”になるまで繰返した
後、第13図のステツプ36以降へ進み、第8図のコー
ドデータ「F」と次のコードデータ(図示せず)のタイ
ミングデータの差がTr以上であれば、Fメジヤのコー
ド音を発音させ、次の有効なコードデータの出力タイミ
ングまで継続する。
順次このような補正処理を行なつてコード音を発生させ
ることにより、所定時間未満の短かいコードデータを無
効にした分の発音時間遅れや、有効なコード音の発音時
間が短縮されることを防いで、きれいに補正されたコー
ド音を所期の発音タイミングで発生させることができ
る。
なお、第12図のステツプ34でENDマークになると
処理を終了し、発音も停止させる。
変更又は応用例 上述の各実施例においては、コードデータと共にその入
力タイミングデータをメモリに格納して補正処理及び自
動演奏時の発音時間を決めるために使用したが、これに
代えて、各コードデータと共にその継続時間(押鍵時間
に相当する)データをメモリに格納するようにして、そ
れを用いてコードデータの補正処理及び自動演奏時の発
音時間の決定を行なうようにしてもよい。
また、フインガードコード(3本指)入力でコードデー
タを発生させる場合に限らず、シングルフインガコード
(1本指)入力でコードデータを発生させる場合にも、
例えばマイナコードの時には黒鍵をもう1つ同時に押鍵
するなど、2鍵以上を同時に押す必要がある場合があ
り、そのような場合も、その押鍵タイミングのずれによ
つて不要なコードデータが発生してしまうことがあるの
で、この発明を適用すると有効である。
さらに、この発明は自動演奏機能付電子楽器に限らず、
演奏データによつて楽譜を表示及び(又は)プリントす
る機能を有する電子楽器や、電子楽器とは別体の演奏デ
ータ処理あるいは自動演奏専用の装置等にも適用できる
ことは勿論である。
〔発明の効果〕
以上説明してきたように、第1の発明にコード演奏時の
押鍵の僅かなバラツキ等によつて誤まつて発生される不
要なコードデータを無効にして、所要のコードデータの
みをメモリに格納あるいはそれから読出して出力するこ
とができるので、それによつて演奏者が意図したとうり
の自動コード演奏が可能になる。
また、第2,第3の発明によれば、上記の効果に加え
て、その所要のコードデータのみを演奏者が意図した正
確なタイミングで順次出力することができ、入力演奏時
の押鍵のバラツキ状態に拘らずメロデイ音とのズレが発
生するようなことがなく、常に演奏者が意図した正確な
タイミングで進行するコード音を発音させることができ
る。
さらに、何れの発明による場合でも、メモリから順次読
出されるコードデータを楽譜に表示したりそれをプリン
トしたりすることもできる。
【図面の簡単な説明】
第1図はこの発明の第1実施例の概略構成を示す機能ブ
ロツク図、 第2図はこの発明の第2実施例の概略構成を示す機能ブ
ロツク図、 第3図はこの発明の第3実施例の概略構成を示す機能ブ
ロツク図、 第4図はこの発明によるコードデータ補正処理の説明に
供する説明図、 第5図はこの発明をマイクロコンピユータを用いた自動
演奏機能付電子オルガンに適用した実施例のブロツク構
成図、 第6図及び第7図は第5図のマイクロコンピユータによ
るこの発明の第1実施例に相当するコードデータ補正処
理のフロー図、 第8図及び第9図は同じくそのコードデータ補正処理例
を示す説明図、 第10図は同じくその自動演奏時のコードデータ再生処
理のフロー図、 第11図は第5図のマイクロコンピユータによるこの発
明の第2実施例に相当するコードデータ補正処理に用い
る2段のシフトレジスタの説明図、 第12図及び第13図は第5図のマイクロコンピユータ
による発明の第3実施例に相当する自動演奏時のコード
データ補正処理のフロー図、 1……メモリ、2……補正手段 3……時間間隔検知手段、4……判別手段 5……データ修正手段 11……中央処理装置(CPU) 12……プログラムメモリ(ROM) 13……ワーキングメモリ(RAM) 14……バツフアメモリ(RAM) 15……テンポカウンタ 16……テンポクロツク発生器

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】演奏者が所定の曲の進行に合わせて順次進
    行する和音を押鍵によって実演奏しながら指定可能な鍵
    盤と、 該鍵盤での押鍵状態からコード名を検出するコード名検
    出手段と、 該コード名検出手段で検出されたコード名に対応するコ
    ードデータを前記所定の曲の進行に合わせて順次格納す
    るメモリと、 該メモリへの1曲分のコードデータの格納終了後、自動
    演奏の再生に合わせて該メモリに格納されたコードデー
    タを順次読出す読出手段と、 前記メモリへの前記コードデータの格納時に該コードデ
    ータを補正する手段であって、所定時間以内に前後して
    発生した少なくとも2つのコードデータについて前の方
    のコードデータを無効にする無効化手段と を備えたことを特徴とする和音進行記憶再生装置。
  2. 【請求項2】演奏者が所定の曲の進行に合わせて順次進
    行する和音を押鍵によって実演奏しながら指定可能な鍵
    盤と、 該鍵盤での押鍵状態からコード名を検出するコード名検
    出手段と、 該コード名検出手段で所定時間以内に前後して少なくと
    も2つのコード名が検出された場合には前の方のコード
    名を無効にして後の方のコード名に対応するコードデー
    タを所要のコードデータとする無効化手段と、 該無効化手段で無効にされずに所要のコードデータとさ
    れたコードデータを無効にされた前の方のコード名が検
    出されたタイミングに対応させるタイミング補正手段
    と、 該タイミング補正手段で補正されたコードデータを前記
    所定の曲の進行に合わせて順次格納するメモリと、 該メモリへの1曲分のコードデータの格納終了後、自動
    演奏の再生に合わせて該メモリに格納されたコードデー
    タを順次読出す読出手段と を備えたことを特徴とする和音進行記憶再生装置。
  3. 【請求項3】演奏者が所定の曲の進行に合わせて順次進
    行する和音を押鍵によって実演奏しながら指定可能な鍵
    盤と、 該鍵盤での押鍵状態からコード名を検出するコード名検
    出手段と、 該コード名検出手段で検出されたコード名に対応するコ
    ードデータを前記所定の曲の進行に合わせて順次格納す
    るメモリと、 該メモリへの1曲分のコードデータの格納終了後、自動
    演奏の再生に合わせて該メモリに格納されたコードデー
    タを順次読出す読出手段と、 該読出手段による読出し時に前記コードデータを補正す
    る手段であって、所定時間以内に前後して少なくとも2
    つのコードデータが格納されている場合には前の方のコ
    ードデータを無効にして後の方のコードデータを繰り上
    げて読み出して所要のコードデータとして出力する無効
    化およびタイミング補正手段と を備えたことを特徴とする和音進行記憶再生装置。
JP60014378A 1985-01-30 1985-01-30 和音進行記憶再生装置 Expired - Fee Related JPH0640270B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60014378A JPH0640270B2 (ja) 1985-01-30 1985-01-30 和音進行記憶再生装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60014378A JPH0640270B2 (ja) 1985-01-30 1985-01-30 和音進行記憶再生装置

Publications (2)

Publication Number Publication Date
JPS61174599A JPS61174599A (ja) 1986-08-06
JPH0640270B2 true JPH0640270B2 (ja) 1994-05-25

Family

ID=11859381

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60014378A Expired - Fee Related JPH0640270B2 (ja) 1985-01-30 1985-01-30 和音進行記憶再生装置

Country Status (1)

Country Link
JP (1) JPH0640270B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2563807Y2 (ja) * 1986-11-21 1998-02-25 カシオ計算機株式会社 楽音情報記憶装置
JPH07104668B2 (ja) * 1987-05-29 1995-11-13 ヤマハ株式会社 電子楽器のシ−ケンサ
US4889026A (en) * 1987-05-29 1989-12-26 Yamaha Corporation Sequencer unit of electronic musical instrument
JP2500876Y2 (ja) * 1987-12-09 1996-06-12 カシオ計算機株式会社 コ―ド進行分析機
JPH04112597U (ja) * 1991-03-14 1992-09-30 横河電機株式会社 超音波送受波器
ITBO20020691A1 (it) * 2002-10-31 2004-05-01 Roland Europ Spa Metodo e dispositivo per il trattamento di un file
JP6496998B2 (ja) * 2014-08-29 2019-04-10 ヤマハ株式会社 演奏情報編集装置および演奏情報編集プログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57114193A (en) * 1980-12-31 1982-07-15 Nippon Musical Instruments Mfg Electronic musical instrument
JPS5891798U (ja) * 1981-12-15 1983-06-21 カシオ計算機株式会社 電子楽器

Also Published As

Publication number Publication date
JPS61174599A (ja) 1986-08-06

Similar Documents

Publication Publication Date Title
US4981066A (en) Electronic musical instrument capable of editing chord performance style
JPH0631978B2 (ja) 電子楽器の自動伴奏装置
US4953438A (en) Automatic performance apparatus storing and editing performance information
JPH0640270B2 (ja) 和音進行記憶再生装置
JP3239411B2 (ja) 自動演奏機能付電子楽器
JPH0259474B2 (ja)
JPS61256391A (ja) 自動演奏装置
GB2091470A (en) Electronic Musical Instrument
JP2625800B2 (ja) 自動演奏装置
JP2692539B2 (ja) 自動伴奏装置
JPS6344228B2 (ja)
JP2518340B2 (ja) 自動演奏装置
JP2625668B2 (ja) 自動演奏装置
JPH07121177A (ja) 自動伴奏装置
JP3120487B2 (ja) 自動伴奏機能付電子楽器
JP2713107B2 (ja) 自動演奏装置
JPH0314714Y2 (ja)
JP3241805B2 (ja) 自動演奏装置
JP2760398B2 (ja) 自動演奏装置
JP3208799B2 (ja) 自動伴奏装置
JPS6356559B2 (ja)
JPH0343638B2 (ja)
JPH06274170A (ja) 自動演奏装置
JP2530691Y2 (ja) 自動リズム演奏装置
JP2616752B2 (ja) 自動演奏装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees