JP5272435B2 - 電子音楽装置およびその制御方法を実現するプログラム - Google Patents

電子音楽装置およびその制御方法を実現するプログラム Download PDF

Info

Publication number
JP5272435B2
JP5272435B2 JP2008036183A JP2008036183A JP5272435B2 JP 5272435 B2 JP5272435 B2 JP 5272435B2 JP 2008036183 A JP2008036183 A JP 2008036183A JP 2008036183 A JP2008036183 A JP 2008036183A JP 5272435 B2 JP5272435 B2 JP 5272435B2
Authority
JP
Japan
Prior art keywords
performance data
display
data
displayed
midi
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
JP2008036183A
Other languages
English (en)
Other versions
JP2009193009A (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 JP2008036183A priority Critical patent/JP5272435B2/ja
Publication of JP2009193009A publication Critical patent/JP2009193009A/ja
Application granted granted Critical
Publication of JP5272435B2 publication Critical patent/JP5272435B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)
  • Auxiliary Devices For Music (AREA)

Description

本発明は、演奏データシーケンスを表示できる電子音楽装置およびその制御方法を実現するプログラムに関する。
演奏データシーケンスを表示できる電子音楽装置は、従来から知られている。
このような電子音楽装置として、自動演奏データを確認・編集するために、これをリスト形式で表示するようにしたものがある(たとえば、特許文献1参照)。
特開平10−124048号公報
ところで、同じ発生タイミングに同じ種類の演奏データが数多く重なっていたり、近接した発生タイミングに演奏データが数多く存在していたりするような演奏データシーケンスをそのまま自動演奏すると、自動演奏装置に負荷がかかり過ぎたり、また、かかる負荷に比べて、発音される楽音は聴覚上の効果を上げていなかったりということがある。そこでユーザは、上記従来の電子音楽装置に備わっている編集機能を用いて、時間的な密度の濃い演奏データを適宜編集する(たとえば、間引く)ようにしている。
しかし、上記従来の電子音楽装置では、演奏データシーケンスを構成する演奏データの時間的な密度が密であっても粗であっても、ある範囲の演奏データがそのままリスト形式で表示されるだけであるので、ユーザは、編集したい(たとえば、間引きたい)演奏データを一目で確認できず、編集作業の効率が上がらない。
本発明は、この点に着目してなされたものであり、時間的な密度の濃い演奏データを含む演奏データシーケンスを編集するときに、編集効率をより向上させることが可能となる電子音楽装置およびその制御方法を実現するプログラムを提供することを目的とする。
上記目的を達成するため、請求項1に記載の電子音楽装置は、演奏データシーケンスを記憶する記憶手段と、該記憶手段に記憶された演奏データシーケンスを構成する複数の演奏データのうちの少なくとも一部をその発生タイミング順に表示する表示手段と、該表示手段によって表示された演奏データのうち、その発生タイミングが完全に一致するものまたは所定の時間的近傍内にあるものが複数ある場合に、当該複数の演奏データの表示態様を他の演奏データの表示態様と異ならせて表示させるように前記表示手段を制御する制御手段とを有し、前記制御手段は、発生タイミングが完全に一致する複数の演奏データの表示態様と、発生タイミングが完全に一致しないものの、前記所定の時間的近傍内にある複数の演奏データの表示態様とをさらに異ならせて表示させることを特徴とする。
上記目的を達成するため、請求項に記載の電子音楽装置は、各演奏データが当該演奏データの種類を示す種類情報と当該演奏データのチャンネルを示すチャンネル情報を含む、複数の演奏データからなる演奏データシーケンスを記憶する記憶手段と、該記憶手段に記憶された前記複数の演奏データのうちの少なくとも一部をその発生タイミング順に表示する表示手段と、該表示手段によって表示された演奏データのうち、その発生タイミングが完全に一致または所定の時間的近傍内にあり、かつその種類情報および/またはチャンネル情報が一致するものが複数ある場合に、当該複数の演奏データの表示態様を他の演奏データの表示態様と異ならせて表示させるように前記表示手段を制御する制御手段とを有することを特徴とする。
上記目的を達成するため、請求項3および4に記載のプログラムはそれぞれ、請求項1および2と同様の技術的思想によって実現できる。
請求項1またはに記載の発明によれば、表示手段上に表示された演奏データのうち、その発生タイミングが完全に一致するものまたは所定の時間的近傍内にあるものが複数ある場合に、当該複数の演奏データの表示態様が他の演奏データの表示態様と異なって表示されるので、ユーザは、当該複数の演奏データ、つまり時間的な密度の濃い演奏データが存在する位置を一目で確認でき、これにより、時間的な密度の濃い演奏データを含む演奏データシーケンスを編集するときに、編集効率をより向上させることが可能となる。
以下、本発明の実施の形態を図面に基づいて詳細に説明する。
図1は、本発明の一実施の形態に係る電子音楽装置の概略構成を示すブロック図である。
同図に示すように、本実施の形態の電子音楽装置は、音高情報を含む演奏データを入力するための鍵盤を含む演奏操作子1と、各種情報を入力するための複数のスイッチやホイール、ジョイスティックを含むパネル操作子2と、演奏操作子1の操作状態を検出する検出回路3と、パネル操作子2の操作状態を検出する検出回路4と、装置全体の制御を司るCPU5と、該CPU5が実行する制御プログラムや、各種テーブルデータ等を記憶するROM6と、演奏データ、各種入力情報および演算結果等を一時的に記憶するRAM7と、タイマ割込み処理における割込み時間や各種時間を計時するタイマ8と、各種情報等を表示する、たとえば小型の液晶ディスプレイ(LCD)および発光ダイオード(LED)等を備えた表示器9と、前記制御プログラムを含む各種アプリケーションプログラムや各種楽曲データ、各種データ等を記憶する外部記憶装置10と、外部からのMIDI(musical instrument digital interface)メッセージを入力したり、MIDIメッセージを外部に出力したりするMIDIインターフェース(I/F)11と、通信ネットワーク101を介して、たとえばサーバコンピュータ(以下、「サーバ」と略して言う)102とデータの送受信を行う通信インターフェース(I/F)12と、演奏操作子1から入力された演奏データや、前記外部記憶装置10に記憶されたいずれかの楽曲データを再生して得られた演奏データ等を楽音信号に変換する音源回路13と、該音源回路13からの楽音信号に各種効果を付与するための効果回路14と、該効果回路14からの楽音信号を音響に変換する、たとえば、DAC(Digital-to-Analog Converter)やアンプ、スピーカ等のサウンドシステム15とにより構成されている。
上記構成要素3〜14は、バス16を介して相互に接続され、CPU5にはタイマ8が接続され、MIDII/F11には他のMIDI機器100が接続され、通信I/F12には通信ネットワーク101が接続され、音源回路13には効果回路14が接続され、効果回路14にはサウンドシステム15が接続されている。ここで、通信I/F12および通信ネットワーク101は、有線方式のものに限らず、無線方式のものであってもよい。また、両方式のものを備えていてもよい。
外部記憶装置10としては、たとえば、フレキシブルディスクドライブ(FDD)、ハードディスクドライブ(HDD)、CD−ROMドライブおよび光磁気ディスク(MO)ドライブ等を挙げることができる。そして、外部記憶装置10には、前述のように、CPU5が実行する制御プログラムも記憶でき、ROM6に制御プログラムが記憶されていない場合には、この外部記憶装置10に制御プログラムを記憶させておき、それをRAM7に読み込むことにより、ROM6に制御プログラムを記憶している場合と同様の動作をCPU5にさせることができる。このようにすると、制御プログラムの追加やバージョンアップ等が容易に行える。
MIDII/F11は、専用のものに限らず、RS−232CやUSB(ユニバーサル・シリアル・バス)、IEEE1394(アイトリプルイー1394)等の汎用のインターフェースによって構成してもよい。この場合、MIDIメッセージ以外のデータをも同時に送受信してもよい。
通信I/F12は、上述のように、たとえばLAN(local area network)やインターネット、電話回線等の通信ネットワーク101に接続されており、該通信ネットワーク101を介して、サーバ102に接続される。外部記憶装置10に上記各プログラムや各種パラメータが記憶されていない場合には、通信I/F12は、サーバ102からプログラムやパラメータをダウンロードするために用いられる。クライアントとなる電子音楽装置は、通信I/F12および通信ネットワーク101を介してサーバ102へとプログラムやパラメータのダウンロードを要求するコマンドを送信する。サーバ102は、このコマンドを受け、要求されたプログラムやパラメータを、通信ネットワーク101を介して電子音楽装置へと配信し、電子音楽装置が通信I/F12を介して、これらプログラムやパラメータを受信して外部記憶装置10に蓄積することにより、ダウンロードが完了する。
なお、本実施の形態では、電子音楽装置を電子鍵盤楽器上に構築するようにしたが、これに限らず、鍵盤を外部接続した汎用的なPC上に構築してもよい。また、ミキサなどの音響機器上に構築するようにしてもよい。その場合には、楽音信号をミキシングするための信号処理回路やAD/DA変換回路などは必須の構成要素であるが、音源回路は必須の構成要素ではない。
図2は、1つの楽曲データのデータフォーマットの一例を示す図である。なお、図示例では、SMF(standard MIDI file)のフォーマットが採用されているが、フォーマットは、これに限られない。
同図に示すように、楽曲データは、ヘッダチャンク21とトラックチャンク22によって構成されている。
ヘッダチャンク21には、図示しないが、フォーマット、トラック数およびタイムベースの各情報が記載されている。フォーマットとしては、SMFの3種類のフォーマットタイプ(フォーマット0〜2)からいずれかを選択して設定することができる。フォーマット0は、トラックチャンクを1つだけ持つタイプであり、フォーマット1および2は、トラックチャンクを複数持つことができるタイプである。トラック数は、当該楽曲データ内のトラックチャンクの数を示し、フォーマットとしてフォーマット0が設定されたときには、トラック数は必然的に“1”となり、フォーマット1または2が設定されたときには、“1”以上の任意の整数値を設定することができる。タイムベースは、4分音符長のティック(tick)数で表されている。なお、フォーマット1または2が設定されたときに、トラック数として“1”を設定すれば、フォーマット0が設定されたときと同様に、トラックチャンクの数を“1”とすることができるが、フォーマット1および2では、トラックチャンクに複数のチャンネルを含ませることができないと規定されている。図示例の楽曲データは、トラックチャンクを1つ持ち、そのトラックチャンク中には、後述のように、複数のチャンネルのMIDIイベントが含まれているので、フォーマット0の楽曲データであることが分かる。
トラックチャンク22は、ヘッダ部23とデータ部24によって構成されている。ヘッダ部23には、データ部24全体の長さ(容量)を示す数値が記載される。データ部24には、各種イベントデータとタイミングデータが記載される。各種イベントデータには、MIDIチャンネルメッセージを示すMIDIイベントデータ、システム・エクスクルーシブメッセージを示すシステム・エクスクルーシブ・イベントデータ、および、これら以外のメッセージを示すメタイベントデータが含まれている。タイミングデータは、その直後に位置するイベントデータの発生タイミング(デルタタイム)を規定するものであり、前記ティックを単位とする整数値で表現される。図示例のデータ部24には、先頭から拍子情報25、テンポ情報26(いずれも、メタイベントデータである)およびMIDIイベントデータ27が記載され、それに続いて、タイミングデータ28とMIDIイベントデータ29の組が記載されている。
MIDIイベントデータ27は、ステータスバイト30とデータバイト31によって構成されている(MIDIイベントデータ29も、図示しないが、MIDIイベントデータ27と同様に構成されている)。ステータスバイト30には、当該MIDIイベントの種類を示す種類データ32と、当該MIDIイベントのチャンネルを示すチャンネルデータ33が含まれている。なお、MIDIイベントデータ27のデータ長は可変長であるので、データバイト31は、必要に応じた個数だけ採り得る。つまり、図示例のMIDIイベントデータ27では、データバイト31が2個描かれているが、これは例示に過ぎない。
以上のように構成された電子音楽装置が実行する制御処理を、まず図3および図4を参照してその概要を説明し、次に図5および図6を参照して詳細に説明する。
図3は、ある楽曲データの演奏データシーケンスの一部をリスト表示したときの一例を示す図であり、同図(a)は、当該一部の演奏データシーケンスのうち、所定の表示条件に一致したMIDIイベントの表示に装飾を加えたものを示し、同図(b)は、同図(a)の表示条件と異なる表示条件を選択して設定したときの表示例を示している。ここで、演奏データシーケンスとは、当該楽曲データのトラックチャンク22のデータ部24に記載されている、各種イベントデータとタイミングデータの列のことである。
本実施の形態の電子音楽装置では、表示条件として、
(C1)MIDIイベントの種類およびチャンネルに拘わらず、時間的に近いものを別態様表示
(C2)MIDIイベントの種類に拘わらず、同じチャンネルで時間的に近いものを別態様表示
(C3)MIDIイベントのチャンネルに拘わらず、同じ種類で時間的に近いものを別態様表示
(C4)MIDIイベントの種類およびチャンネルの双方が同じで、時間的に近いものを別態様表示
のうちのいずれかを選択設定できるように構成されている。そして、時間的な近さとして、16分音符長に相当する時間内に存在するイベント数の最小値(閾値)も設定できるようになっている。つまり、16分音符長に相当する時間内に、設定された閾値以上の個数のMIDIイベントが存在するということは、ユーザにとって、その区間にMIDIイベントが密集している(時間的な密度の濃い状態で存在している)ことを意味している。なお、時間的な近さの設定方法としては、これに限らず、イベント間のティック数や、テンポ情報に基づいて算出されるイベント間の時間差(msec)などを用いて設定する方法を採用してもよい。
ユーザが、いずれか1つの楽曲データを選択し、たとえば、表示条件として前記(C1)を選択し、時間的な近さの閾値として“10”イベントを設定した後、そのリスト表示を指示すると、まず前記CPU5は、前記表示器9のLCD上にリスト表示可能なMIDIイベントを決定する(この決定されたMIDIイベントの集合を、以下「表示対象MIDIイベント」という)。表示器9のLCDは、前述のように小型のものを採用しているので、選択された楽曲データが短いとしても、その楽曲データに含まれるすべてのMIDIイベントを一度にLCD上に表示させることはできない。このため、表示対象MIDIイベントを決定するようにしている。次にCPU5は、表示対象MIDIイベントから、選択された表示条件に合致するMIDIイベントを検索し、検索されたMIDIイベントの個数を数える。そして、その個数が前記設定された閾値以上である場合には、CPU5は、当該MIDIイベントの表示態様を他のMIDIイベントの表示態様と異ならせてリスト表示する。図3(a)は、このような表示条件および閾値を採って、ある楽曲データをリスト表示したときの表示の一例を示しており、そのリスト表示中、「値2」欄が波線で囲まれたMIDIイベントが別態様表示されたものである。ここで、波線で囲まれた「値2」欄は、実際には、その背景色が他の欄の背景色と異なっていることを意味する。MIDIイベントの別態様表示として、このような波線で囲むことを採用したのは、モノクロ図面では、背景色の変更を表現できないからである。もちろん、別態様表示は、背景色を変更する態様に限られないので、図面通り、「値2」欄を波線で囲む態様を採用してもよいし、その他、「値2」欄に記載される数値のフォントのタイプや色、点灯/点滅、表示濃度、ネガポジ反転などを変更する態様を採用してもよい。さらに、表示態様を変更する欄も、「値2」欄に限られず、他の欄であってもよいし、複数欄に亘って表示態様を変更してもよい。
また、選択された表示条件に合致し、かつ同じ発生位置に存在するMIDIイベントについては、その個数が閾値に達しなくても、「値2」欄内にアスタリスク(“*”)を表示し、表示条件に合致したMIDIイベントが複数個、同じタイミングに存在することをユーザに一目で分からせるようにしている。このアスタリスク(“*”)も、別の記号を採用しても構わないし、さらに、背景色やフォント色を変更するなど、他の表示態様を採用してもよい。
一方、ユーザが別の表示条件、たとえば前記(C4)を選択して、そのリスト表示を指示すると、CPU5は、表示対象MIDIイベントから、選択された表示条件に合致するMIDIイベントを検索した後、検索されたMIDIイベントの個数を数え、その個数が前記設定された閾値以上である場合には、当該MIDIイベントの表示態様を他のMIDIイベントの表示態様と異ならせてリスト表示する。図3(b)は、このような表示条件および閾値を採って、ある楽曲データをリスト表示したときの表示の一例を示している。さらに、選択された表示条件に合致し、かつ同じ発生位置に存在するMIDIイベントについては、その個数が閾値に達しなくても、「値2」欄内にアスタリスク(“*”)を表示し、表示条件に合致したMIDIイベントが複数個、同じタイミングに存在することをユーザに一目で分からせるようにしている。
このように、本実施の形態では、演奏データシーケンスをリスト表示したときに、時間的に密度の濃い演奏データを別態様表示したので、ユーザは、時間的に密度の濃い演奏データを一目で確認することができる。したがって、時間的に密度の濃い演奏データを間引くなどの編集処理を行う際に、その編集効率をより向上させることができる。
図4は、リスト表示に代えて、縦軸をデータ値(値2)とし、横軸を発生位置(小節と拍)としたグラフ表示を採用したときの表示の一例を示す図であり、図3(a)に対応するものである。図4のグラフ中、黒丸および斜線の施された丸は、MIDIイベントを示し、アスタリスク(“*”)が付与された黒丸は、選択された表示条件に合致し、かつ同じ発生位置に存在するMIDIイベントが複数あることを示し、斜線の施された丸は、時間的な密度の濃いMIDIイベントがあることを示している。このように、本発明は、時間的な密度の濃い演奏データを別態様表示する点に特徴があり、その基礎となる表示(別態様表示を行う前の表示)は、リスト表示であっても、グラフ表示であっても、さらに他の表示であっても構わない。
次に、この制御処理を詳細に説明する。
図5は、本実施の形態の電子音楽装置、特にCPU5が実行するメインルーチンの手順を示すフローチャートであり、本メインルーチンは、ユーザによって前記パネル操作子2に含まれる電源スイッチ(図示せず)がオンされたときに、起動される。
本メインルーチンは、主として、
(1)初期設定処理(ステップS1)
(2)楽曲データロード処理(ステップS2)
(3)演奏データ入力処理(ステップS3)
(4)楽曲データ編集処理(ステップS4)
(5)楽曲データ再生/停止処理(ステップS5)
(6)表示条件設定処理(ステップS6)
(7)表示更新処理(ステップS7)
によって構成されている。本メインルーチンが起動されると、最初に上記(1)の初期設定処理が1回だけ実行され、その後、上記(2)〜(7)の処理が適宜繰り返し実行される。
前記(1)の初期設定処理では、CPU5は、前記RAM7をクリアしたり、各種パラメータの値をデフォルト値に設定したりする等の処理を行う(ステップS1)。
ユーザが、たとえば前記パネル操作子2を操作することで、所定の楽曲データのロードを指示すると、CPU5は、処理を前記(2)の楽曲データロード処理に進める。この(2)楽曲データロード処理では、CPU5は、指示された楽曲データを該楽曲データが記憶されている場所から読み出して、RAM7の所定位置に確保された楽曲データ格納領域(図示せず)にロードする(ステップS2)。ここで、ロードを指示された楽曲データは、本実施の形態の電子音楽装置の外にある場合もあり、その場合には、CPU5は、前記MIDII/F11や通信I/F12を介して、その楽曲データをそれが記憶されている場所から読み出して、前記楽曲データ格納領域にロードする。
また、ユーザがパネル操作子2を操作することで、演奏データ入力モードへの移行を指示すると、CPU5は、動作モードを演奏データ入力モードへ移行させるとともに、処理を前記(3)の演奏データ入力処理に進める(ステップS3)。この(3)演奏データ入力処理では、CPU5は、ユーザが前記演奏操作子1を用いて行った演奏に応じた演奏データを生成し、その演奏データをRAM7の所定位置に確保された演奏データ格納領域(図示せず)に記録する。そして、ユーザが演奏入力の終了を指示すると、演奏データ格納領域に格納された複数の演奏データを1つの楽曲データにまとめる。ここで、「1つの楽曲データにまとめる」とは、本実施の形態では、ヘッダチャンクやトラックチャンクのヘッダ部などを生成して、入力された演奏データに付加することにより、SMFのフォーマットに適合した楽曲データを生成することである。なお、演奏データの入力は、ユーザが演奏操作子1をリアルタイムに操作することによって入力する、いわゆるリアルタイム入力を用いて行ったが、これに限らず、ユーザが演奏データの基になる音高や音長、ベロシティなどを1つずつ指定して入力する、いわゆるステップ入力を用いて行ってもよい。また、リアルタイム入力またはステップ入力のいずれかを選択可能に構成し、ユーザが選択した方の入力方法を用いて、演奏データを入力するようにしてもよい。
本実施の形態の電子音楽装置は、楽曲データを編集する編集機能を備えている。この編集機能では、楽曲データを構成するデータのうち、トラックチャンク22のデータ部24に含まれるデータを編集、つまり変更、削除または追加することができる。これは、データ部24以外の場所、つまりヘッダチャンク21およびトラックチャンク22のヘッダ部23に含まれるデータには、ユーザによって自由に編集されると問題が生じる虞のあるものが多いからである。本実施の形態では、編集機能を使用するには、編集モードに移行させるようにしている。ユーザがパネル操作子2を操作することで、編集モードへの移行を指示すると、CPU5は、動作モードを編集モードに移行させるとともに、処理を前記(4)の楽曲データ編集処理に進める(ステップS4)。この(4)楽曲データ編集処理では、CPU5は、ユーザが編集対象として指定した楽曲データをそれが記憶されている場所から読み出して、RAM7の所定位置に確保された楽曲データ編集領域(図示せず)に格納し、その楽曲データのうち、表示可能な一部の演奏データシーケンスを前記表示器9のLCD上にリスト表示する(前記図3参照)。リスト表示された演奏データシーケンス中の各演奏データは、それぞれ個別に編集することができる。本発明は、各演奏データの表示の仕方に特徴があり、各演奏データの編集の仕方に特徴がある訳ではないので、編集方法としては、周知の方法を用いればよい。ここでは、ある1つの演奏データを削除する場合についてのみ、具体的に説明する。ある演奏データとして、たとえば、図3(a)に示すリスト表示された演奏データのうち、小節:0052;拍:02;ティック:599の位置にある、種類:コントロールチェンジ(Control);チャンネル:2;値1:エクスプレッション(Expression);値2:118の演奏データを削除したい場合には、ユーザはパネル操作子2に含まれるポインティングデバイス(たとえば、前記ジョイスティック)を用いて、その演奏データの位置(当該演奏データの「小節」、「拍」、「ティック」、「種類」、「チャンネル」、「値1」、「値2」、「値3」、「値4」のいずれの欄でもよい)にカーソル(図示せず)を合わせた後、所定のスイッチを押して、プルダウンメニューを表示させる。このプルダウンメニューには、「変更」、「削除」、「追加」などの編集方法が記載されているので、前記カーソルを用いて「削除」の項目を選択すると、CPU5は、その演奏データを楽曲データ編集領域から削除する。これにより、その演奏データはリスト表示中から削除される。
本実施の形態の電子音楽装置はさらに、楽曲データを再生したり、その再生を停止したりする再生/停止機能を備えている。ユーザがパネル操作子2を用いて、再生したい楽曲データを指定し、その再生を指示すると、CPU5は、処理を前記(5)の楽曲データ再生/停止処理に進め(ステップS5)、指示された楽曲データを再生する。具体的には、CPU5は、楽曲データのヘッダチャンク21から前記タイムベースを読み出すとともに、トラックチャンク22のデータ部24から前記テンポ情報26を読み出し、タイミングデータ28の時間単位である1ティック(=60×1000/テンポ/タイムベース(msec))を算出する。そしてCPU5は、1ティック毎にタイマ割込み信号が発生するように前記タイマ8を設定した後、タイマ割込みを許可する。これに応じてタイマ8は、1ティックを計時する度にタイマ割込み信号を発生するので、CPU5は、タイマ割込み信号が発生する度に、RAM7の所定位置に確保されたソフトウェアカウンタ(図示せず)のカウントを行う。そしてCPU5は、ソフトウェアカウンタのカウント値と現在再生対象となっているMIDIイベントデータ29に付随するタイミングデータ28の値とを比較し、両者が一致すると、当該MIDIイベントデータ29に記載された内容に応じた処理を行う。たとえば、図3(a)に示すリスト表示された演奏データのうち、小節:0052;拍:02;ティック:601の位置にある、種類:プログラムチェンジ(Program);チャンネル:1;値1:グランドピアノ(Grand Piano)の演奏データを再生する場合、前記ソフトウェアカウンタの値が小節“0052”の拍“02”の先頭から“601”になると、CPU5は、当該演奏データを読み出して、その指示通りの設定、つまり、チャンネル1の音色を「グランドピアノ」音色に変更する設定を前記音源回路13に対して行う。このようにして楽曲データが再生されているときに、ユーザがパネル操作子2を用いて、その再生の停止を指示すると、CPU5は、その再生処理を停止する。
ユーザがパネル操作子2を操作することで、表示条件設定モードへの移行を指示すると、CPU5は、動作モードを表示条件設定モードに移行させるとともに、処理を前記(6)の表示条件設定処理に進める(ステップS6)。この(6)表示条件設定処理では、まずCPU5は、前記LCD上に(C1)〜(C4)の表示条件を一覧表示する。ユーザがパネル操作子2を用いて、一覧表示された表示条件の中からいずれか1つの条件を選択すると、CPU5は、選択された表示条件を示す情報をRAM7のワークエリア(図示せず)内に一時記憶する。次にCPU5は、処理を前記(7)の表示更新処理に進める(ステップS7)。
図6は、この(7)表示更新処理の詳細な手順を示すフローチャートである。この(7)表示更新処理では、CPU5は、主として、
(11)準備処理(ステップS11)
(12)表示対象MIDIイベントのリスト表示処理(ステップS12〜S14)
(13)第1の装飾条件に一致したMIDIイベントを第1の装飾態様で装飾する第1の装飾処理(ステップS16)
(14)第2の装飾条件に一致したMIDIイベントを第2の装飾態様で装飾する第2の装飾処理(ステップS19)
の各処理を行う。そして、上記(12)〜(14)の処理は、表示対象MIDIイベントの終端に達するまで、あるいは、演奏データシーケンスの終端に達するまで、繰り返し実行される(ステップS20)。
前記(11)の準備処理では、CPU5は、表示対象MIDIイベントの範囲を決定する処理、つまり、表示すべき先頭のMIDIイベントの時間的位置(表示対象MIDIイベントの先頭のMIDIイベントの時間的位置に相当する)と表示行数(表示対象MIDIイベントに含まれるMIDIイベントの数に相当する)を決定する処理を行う(ステップS11)。
前記(12)の表示対象MIDIイベントのリスト表示処理では、まずCPU5は、演奏データシーケンス中、表示すべき先頭のMIDIイベント(前記(11)の準備処理で決定されたもの)から表示行数(これも、前記(11)の準備処理で決定されたもの)分のMIDIイベントを、当該演奏データシーケンスの末尾方向にたどって、表示対象MIDIイベントを決定する(ステップS12)。
次にCPU5は、表示対象MIDIイベントに属する各MIDIイベントに付随するタイミングデータの値(時間情報)に基づいて、当該各MIDIイベントが属する小節、拍およびティックを算出する(ステップS13)。タイミングデータには、前述のように、イベント間の時間を示すデルタタイムが記載されるので、演奏データシーケンス中、目的のMIDIイベントの時間的位置(当該演奏データシーケンスの先端からの経過時間)は、そのMIDIイベントに付随するタイミングデータのみによって算出することはできず、当該演奏データシーケンスの先頭のタイミングデータからそのMIDIイベントに付随するタイミングデータまでのすべてのタイミングデータの値を合算することによって算出する。このようにして、目的のMIDIイベントの時間的位置が算出されると、その算出値から、目的のMIDIイベントの属する小節および拍は、簡単に算出することができる。また、MIDIイベントのティック数は、各拍の先頭位置を“0”として算出するので、目的のMIDIイベントのティック数は、そのMIDIイベントの属する拍の先頭のタイミングデータからそのMIDIイベントに付随するタイミングデータまでのすべてのタイミングデータの値を加算することによって算出する。なお、タイミングデータは、前述のように、隣接するMIDIイベント間の時間間隔を示すので、いずれかのMIDIイベントが拍位置にない限り、拍の先頭のタイミングデータは拍位置からの経過時間を表さない。この場合には、拍の先頭のタイミングデータから目的のMIDIイベントに付随するタイミングデータまでのすべてのタイミングデータを加算したとしても、目的のMIDIイベントのティック数を算出することができない。しかし、拍位置のティック数は簡単に算出することができ、これにより、その拍位置からその拍の先頭のタイミングデータに対応するMIDIイベントまでのティック数は簡単に算出できるので、その拍の先頭のタイミングデータの値に代えて、この算出値を用いることで、目的のMIDIイベントのティック数を算出することができる。
さらにCPU5は、表示対象MIDIイベントを装飾なしでリスト表示する(ステップS14)。これにより、表示器9のLCD上には、図3(a),(b)に示すように、表示対象MIDIイベントがリスト表示される。ただし、図3(a),(b)は、前記(12)および(13)の第1および第2の装飾処理を施した後のリスト表示を示しているので、ステップS14の処理によるリスト表示とは、若干異なっている。
次にCPU5は、表示対象MIDIイベント中に、第1の装飾条件に一致するMIDIイベントがあるかどうかを判別する(ステップS15)。ここで、第1の装飾条件とは、同じタイミングで発生し、かつ前記選択された表示条件を満たすという条件である。ユーザが、前記(6)の表示条件設定処理によって、前記(C1)の表示条件を選択設定したときには、図3(a)のリスト表示中、小節:0052;拍:01;ティック:116に位置する5つのMIDIイベントがこの第1の装飾条件に一致する。また、ユーザが前記(C4)の表示条件を選択設定したときには、上記5つのMIDIイベントのうち、最初の2つのMIDIイベントがこの第1の装飾条件に一致する。前記ステップS15の判別で、第1の装飾条件に一致するMIDIイベントがあったときには、CPU5は、処理を前記(13)の第1の装飾処理に進め、当該MIDIイベントの表示を第1の装飾態様で装飾する。本実施の形態では、第1の装飾態様として、「値2」欄内にアスタリスク(“*”)付ける態様を採用している。したがって、前記(C1)の表示条件が選択設定されたときには、図3(a)に示すように、前記5つのMIDIイベントの「値2」欄内にアスタリスク(“*”)が付けられ、前記(C4)の表示条件が選択設定されたときには、図3(b)に示すように、前記5つのMIDIイベントのうち、最初の2つのMIDIイベントの「値2」欄内にアスタリスク(“*”)が付けられる。
次にCPU5は、表示対象MIDIイベント中に、第2の装飾条件に一致するMIDIイベントがあるかどうかを判別する(ステップS17,S18)。ここで、第2の装飾条件とは、同じ16分音符長内にあり、かつ前記選択された表示条件を満たすMIDIイベントの個数が所定の閾値(たとえば、10個)に達するという条件である。この第2の装飾条件に一致するMIDIイベントがあるかどうかを判別するために、まずCPU5は、表示対象MIDIイベントに属するすべてのMIDIイベントから、同じ16分音符長内にあり、かつ前記選択された表示条件を満たすMIDIイベントの個数を算出する(ステップS17)。そしてCPU5は、算出されたMIDIイベントの個数が所定の閾値に達したかどうかを判別する(ステップS18)。ユーザが、前記(6)の表示条件設定処理によって、前記(C1)の表示条件を選択設定したときには、図3(a)のリスト表示中、小節:0052;拍:02;ティック:597〜小節:0052;拍:02;ティック:609に位置する13個のMIDIイベントがこの第2の装飾条件に一致する。また、ユーザが前記(C4)の表示条件を選択設定したときには、上記13個のMIDIイベントのうち、中間の3つ(ティック:599〜ティック:601)を除いた10個のMIDIイベントがこの第2の装飾条件に一致する。前記ステップS17,S18の判別で、第2の装飾条件に一致するMIDIイベントがあったときには、CPU5は、処理を前記(14)の第2の装飾処理に進め、当該MIDIイベントの表示を第2の装飾態様で装飾する。本実施の形態では、第2の装飾態様として、「値2」欄の背景色を変更する態様を採用している。したがって、前記(C1)の表示条件が選択設定されたときには、図3(a)に示すように、前記13個のMIDIイベントの「値2」欄の背景色が変更されて表示され、前記(C4)の表示条件が選択設定されたときには、図3(b)に示すように、前記13個のMIDIイベントのうち、中間の3つを除く前記10個のMIDIイベントの「値2」欄の背景色が変更されて表示される。ただし、モノクロ図面では、欄の色を変更することができないので、図3では、色を変更する代わりに、当該MIDIイベントの「値2」欄を波線で囲むようにしている。
なお、本実施の形態では、第1の装飾態様も第2の装飾態様も、ユーザの選択の余地はなく、予め固定的に設定されていたが、これに限らず、ユーザが選択可能に構成してもよい。また、第1および第2の装飾態様はそれぞれ、ユーザが第1および第2の装飾条件を決定したことに応じて一意的に決定されるように構成してもよい。
なお、上述した実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムまたは装置に供給し、そのシステムまたは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
この場合、記憶媒体から読出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードおよび該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、たとえば、フレキシブルディスク、ハードディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、DVD+RW、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。また、通信ネットワークを介してサーバコンピュータからプログラムコードが供給されるようにしてもよい。
また、コンピュータが読出したプログラムコードを実行することにより、上述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOSなどが実際の処理の一部または全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
本発明の一実施の形態に係る電子音楽装置の概略構成を示すブロック図である。 1つの楽曲データのデータフォーマットの一例を示す図である。 ある楽曲データの演奏データシーケンスの一部をリスト表示したときの一例を示す図である。 図3のリスト表示に代えて、グラフ表示を採用したときの表示の一例を示す図である。 図1の電子音楽装置、特にCPUが実行するメインルーチンの手順を示すフローチャートである。 図5中の表示更新処理の詳細な手順を示すフローチャートである。
符号の説明
5…CPU(制御手段),7…RAM(記憶手段),9…表示器(表示手段)

Claims (4)

  1. 演奏データシーケンスを記憶する記憶手段と、
    該記憶手段に記憶された演奏データシーケンスを構成する複数の演奏データのうちの少なくとも一部をその発生タイミング順に表示する表示手段と、
    該表示手段によって表示された演奏データのうち、その発生タイミングが完全に一致するものまたは所定の時間的近傍内にあるものが複数ある場合に、当該複数の演奏データの表示態様を他の演奏データの表示態様と異ならせて表示させるように前記表示手段を制御する制御手段と
    を有し、
    前記制御手段は、発生タイミングが完全に一致する複数の演奏データの表示態様と、発生タイミングが完全に一致しないものの、前記所定の時間的近傍内にある複数の演奏データの表示態様とをさらに異ならせて表示させることを特徴とする電子音楽装置。
  2. 各演奏データが当該演奏データの種類を示す種類情報と当該演奏データのチャンネルを示すチャンネル情報を含む、複数の演奏データからなる演奏データシーケンスを記憶する記憶手段と、
    該記憶手段に記憶された前記複数の演奏データのうちの少なくとも一部をその発生タイミング順に表示する表示手段と、
    該表示手段によって表示された演奏データのうち、その発生タイミングが完全に一致または所定の時間的近傍内にあり、かつその種類情報および/またはチャンネル情報が一致するものが複数ある場合に、当該複数の演奏データの表示態様を他の演奏データの表示態様と異ならせて表示させるように前記表示手段を制御する制御手段と
    を有することを特徴とする電子音楽装置。
  3. 記憶手段に記憶された演奏データシーケンスを構成する複数の演奏データのうちの少なくとも一部をその発生タイミング順に表示手段上に表示させる表示手順と、
    前記表示手段上に表示された演奏データのうち、その発生タイミングが完全に一致するものまたは所定の時間的近傍内にあるものが複数ある場合に、当該複数の演奏データの表示態様を他の演奏データの表示態様と異ならせて表示させるように前記表示手段を制御する制御手順と
    をコンピュータに実行させるプログラムであって、
    前記制御手順では、発生タイミングが完全に一致する複数の演奏データの表示態様と、発生タイミングが完全に一致しないものの、前記所定の時間的近傍内にある複数の演奏データの表示態様とをさらに異ならせて表示させることを特徴とするプログラム。
  4. 各演奏データが当該演奏データの種類を示す種類情報と当該演奏データのチャンネルを示すチャンネル情報を含む、複数の演奏データからなる演奏データシーケンスを記憶する記憶手段に記憶された前記複数の演奏データのうちの少なくとも一部をその発生タイミング順に表示手段上に表示させる表示手順と、
    前記表示手段上に表示された演奏データのうち、その発生タイミングが完全に一致または所定の時間的近傍内にあり、かつその種類情報および/またはチャンネル情報が一致するものが複数ある場合に、当該複数の演奏データの表示態様を他の演奏データの表示態様と異ならせて表示させるように前記表示手段を制御する制御手順と
    をコンピュータに実行させるプログラム。
JP2008036183A 2008-02-18 2008-02-18 電子音楽装置およびその制御方法を実現するプログラム Expired - Fee Related JP5272435B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008036183A JP5272435B2 (ja) 2008-02-18 2008-02-18 電子音楽装置およびその制御方法を実現するプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008036183A JP5272435B2 (ja) 2008-02-18 2008-02-18 電子音楽装置およびその制御方法を実現するプログラム

Publications (2)

Publication Number Publication Date
JP2009193009A JP2009193009A (ja) 2009-08-27
JP5272435B2 true JP5272435B2 (ja) 2013-08-28

Family

ID=41075029

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008036183A Expired - Fee Related JP5272435B2 (ja) 2008-02-18 2008-02-18 電子音楽装置およびその制御方法を実現するプログラム

Country Status (1)

Country Link
JP (1) JP5272435B2 (ja)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000338965A (ja) * 1999-05-25 2000-12-08 Dainippon Printing Co Ltd Midiデータの表示方法および表示装置ならびにmidiデータを表示した楽譜
JP4096851B2 (ja) * 2003-09-18 2008-06-04 ヤマハ株式会社 楽譜表示装置及びプログラム
JP4221757B2 (ja) * 2003-06-27 2009-02-12 ヤマハ株式会社 楽譜表示装置および楽譜表示方法を実現するためのプログラム
JP4501417B2 (ja) * 2003-11-18 2010-07-14 ヤマハ株式会社 楽譜表示装置および楽譜表示方法を実現するためのプログラム
JP2006267254A (ja) * 2005-03-22 2006-10-05 Yamaha Corp 楽曲データ作成装置
JP4655878B2 (ja) * 2005-10-24 2011-03-23 ヤマハ株式会社 音楽コンテンツ作成装置、方法及びプログラム

Also Published As

Publication number Publication date
JP2009193009A (ja) 2009-08-27

Similar Documents

Publication Publication Date Title
US20080184142A1 (en) Content reproduction apparatus, recording medium, content reproduction method and content reproduction program
JP2001265332A (ja) リミックス装置、スライス装置および記憶媒体
JP2006308655A (ja) 電子楽器
JP4816177B2 (ja) 電子楽器およびプログラム
JP5272435B2 (ja) 電子音楽装置およびその制御方法を実現するプログラム
JP4345697B2 (ja) 自動演奏データ処理装置および自動演奏データ処理方法を実現するためのプログラム
JP4501590B2 (ja) 音楽情報表示装置および音楽情報表示方法を実現するためのプログラム
JP2005189761A (ja) 電子音楽装置およびその制御方法を実現するためのプログラム
JP6558014B2 (ja) 電子音楽装置
JP3591227B2 (ja) カラオケ装置
JP4740583B2 (ja) 音楽データ処理装置及びプログラム
JP3918849B2 (ja) リミックス装置、スライス処理装置および記憶媒体
JP4380720B2 (ja) 曲編集装置およびプログラム
JP3799360B2 (ja) 楽音再生装置、楽音再生方法、楽音再生プログラム及び記録媒体
US6355870B1 (en) Apparatus and method for reproduction of tune data
JP2011197664A (ja) 音楽ファイル再生装置及びシステム
JP2013105085A (ja) 情報処理プログラム、情報処理装置、情報処理システム及び情報処理方法
JP3873782B2 (ja) 自動演奏装置、自動演奏プログラムおよび自動演奏データのデータ構造
JP3460562B2 (ja) 入力・編集装置および記憶媒体
JP4419392B2 (ja) 演奏データ処理装置および演奏データ処理方法を実現するためのプログラム
JP4386136B2 (ja) 電子音楽装置およびその制御方法を実現するためのプログラム
JP4186853B2 (ja) 伴奏情報設定装置およびその制御方法を実現するためのプログラム
JP4502021B2 (ja) 電子音楽装置およびその制御方法を実現するためのプログラム
JP2014149488A (ja) 音楽データ編集方法、当該音楽データ編集方法を実現するためのプログラムおよび音楽データ編集装置
JP2008152279A (ja) 電子音楽装置およびその制御方法を実現するためのプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101220

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120717

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120821

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121010

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130416

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130429

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5272435

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees