JPH11231869A - 再生装置 - Google Patents

再生装置

Info

Publication number
JPH11231869A
JPH11231869A JP10028490A JP2849098A JPH11231869A JP H11231869 A JPH11231869 A JP H11231869A JP 10028490 A JP10028490 A JP 10028490A JP 2849098 A JP2849098 A JP 2849098A JP H11231869 A JPH11231869 A JP H11231869A
Authority
JP
Japan
Prior art keywords
reproduction
unit
tap
note
beat
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.)
Withdrawn
Application number
JP10028490A
Other languages
English (en)
Inventor
Shuichi Otsu
秀一 大津
Junichi Nakamura
順一 中村
Michito Ishii
道人 石井
Kohei Kato
恒平 加藤
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP10028490A priority Critical patent/JPH11231869A/ja
Publication of JPH11231869A publication Critical patent/JPH11231869A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

(57)【要約】 【課題】 ユーザのタップ操作に応答して、SMFを所
定小節数単位や所定拍数単位で順次再生したり、或るパ
ートのメロディの1音ごとに順次再生することを、簡易
な処理により実現することのできる再生装置を提供す
る。 【解決手段】 タップ操作が行われるごとに、1拍に対
応するSMFのデータ区間を再生していくようにする。
この際、未だ前の1拍分のデータ区間を再生している間
に次のタップ操作が行われた場合には、この前の1拍分
のデータ区間の再生直後に次の1拍分のデータ区間の再
生を行うようにする。また、1拍分のデータ区間の再生
が終了して後において次のタップ操作が無い場合には、
この次のタップ操作が行われるまで、次の1拍分のデー
タ区間の再生開始を待機する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、例えばスタンダー
ドMIDI(Musical Instrument Digital Interface)フ
ァイルなどの楽曲演奏情報について再生処理を行うこと
のできる再生装置に関するものである。
【0002】
【従来の技術】従来より演奏データの規格としてMID
Iが広く普及しているが、このMIDI情報を利用して
作成した楽曲演奏データのフォーマットとして、異なる
機種のシーケンサ(ここでは、MIDI情報による演奏
データの記録、再生、編集等を行う装置のことである)
やシーケンスソフトに対応して汎用性を与えることを目
的として規定された、いわゆるスタンダードMIDIフ
ァイル(以降、単にSMF(Standard Midi File)とい
う)も普及してきている。
【0003】このSMFは、近年においては、通信カラ
オケシステムなどにおける楽曲演奏データとして採用さ
れている他、各種楽曲のSMFのデータが、CD−RO
Mやフロッピーディスクなどに記録されて市販されてい
る。或いは、インターネットなどを通じて、SMFのデ
ータのやりとりなども広く行われている。
【0004】このような、SMFを利用して一般のユー
ザが楽曲等の鑑賞を行うのには、例えば、ユーザはシー
ケンサや、シーケンスソフトがインストールされたパー
ソナルコンピュータ、及び音源等を所有すればよい。そ
して、何らかの形で入手したSMFをシーケンサ等によ
り再生することでMIDIイベントが発生され、このM
IDIイベントにより音源が駆動される。このようにし
て、SMFとしての楽曲データを楽音による演奏として
再生出力させることができる。
【0005】
【発明が解決しようとする課題】ところで、上記のよう
なシーケンサやシーケンスソフトでは、或る楽曲のSM
Fをその先頭からファイルの終わりまで連続して再生す
ることで、通常の楽曲として鑑賞したり、あるいは通常
のカラオケとして再生したりすることは当然可能である
が、ものによっては、ユーザの操作等に従って、SMF
のイベント情報のシーケンスに従って、1音づつ順次発
音させるようにして再生を行っていくことができるもの
が知られている。
【0006】但し、上記のようにして1音づつ順次発音
させる再生動作は、SMFのイベント情報のシーケンス
において、指定されたイベント情報に対応するノートを
単に発音させる処理となるので、例えばそのSMFによ
り演奏される楽曲の時間軸に従った進行とは無関係とな
ってしまう。逆に言えば、例えば、ユーザの1回のキー
操作に応答して、或る時間幅を持ちながら、SMFを所
定小節数単位、所定拍数単位、更には、或るパートのメ
ロディの1音ごとに順次再生していくといったことは行
われていないのが現状である。
【0007】
【課題を解決するための手段】そこで本発明は上記した
課題を考慮して、SMFなどの楽曲演奏情報を再生する
のにあたり、例えばユーザの操作ごとに応答して、SM
Fを所定小節数単位や所定拍数単位等の等間隔な時間長
で順次再生していったり、更には、或るパートのメロデ
ィの1音ごとに順次再生していくことのできる再生装置
を提供することを目的とする。そして、この際、できる
だけSMFを別のフォーマットの楽曲演奏データに展開
したりすることなく簡易な処理により実現することを目
的とする。
【0008】このため、特定のフォーマットに従って定
義された所定種類のイベント情報に対してそのイベント
情報に対応する時間情報を付加して形成されるデータ単
位のシーケンスにより形成される楽曲演奏情報につい
て、上記データ単位ごとに再生処理を行うことにより、
楽曲の演奏を行うための演奏制御情報をリアルタイムで
発生させることのできる再生装置において、楽曲演奏情
報について所定の再生区切り単位ごとに再生を開始させ
るための指示操作を行うことのできる指示操作手段と、
この指示操作手段に対する操作に応答して、所定の再生
区切り単位に対応する楽曲演奏情報のデータ単位より成
るデータ区間ごとに再生処理を行うようにされた再生手
段とを備えて構成することとした。
【0009】上記構成によれば、例えばユーザの指定操
作に応じて、設定された再生区切り単位に対応するデー
タ単位のシーケンスより成るデータ区間ごとに楽曲演奏
情報の再生が行われることになる。つまり、単に或るノ
ートについてのイベント情報のみを指定して再生する
(発音させる)のではなく、上記再生区切り単位に対応
する或る時間幅を持って再生が行われるものである。ま
た、この構成では、楽曲演奏情報について、上記再生区
切り単位に対応するデータ区間ごとに再生を行っていく
ことになり、特に元の楽曲演奏情報を別の形式のデータ
に展開、変換する必要もない。上記再生区切り単位に対
応するデータ区間は、例えば楽曲演奏情報の各イベント
情報に付加された時間情報等に基づいて特定することが
可能である。
【0010】
【発明の実施の形態】以下、本発明の実施の形態として
の再生装置について図1〜図10を参照して説明を行
う。本実施の形態の再生装置としては、SMFに対応し
て再生処理を行うことで、楽音による演奏として音声出
力することのできる構成を採るものとされる。なお、以
降の説明は次の順序で行うこととする。 1.SMFのフォーマット 2.再生装置 3.拍タップ再生 4.リズムタップ再生
【0011】1.SMFのフォーマット 先ず、本実施の形態の再生装置が対応するSMFのフォ
ーマットについて、図10のSMFのデータ構造を例に
とりながら概略的に説明する。
【0012】MIDIフォーマットでは演奏パートを最
大16のチャンネルで構成するのであるが、SMFのフ
ォーマット0では各チャンネルの演奏データを1つのト
ラックにまとめることが行われる。図10は、このよう
なSMFのフォーマット0に従った或る楽曲としてのデ
ータ構造例を示している。なお、図10では説明の簡単
のために、2小節により1つの楽曲が形成されているも
のとする。ここで、楽曲Bの1小節目はグランドピアノ
の音色でもって一拍目から音名Cによる1つのノートの
発音(付点二分音符としての音長)が行われ、2小節目
はアコースティックギターの音色でもって一拍目から音
名Cによる1つのノートの発音(付点二分音符としての
音長)が行われるものとされる。
【0013】図10に示すように、SMFフォーマット
としては、1つの楽曲のファイルとしての先頭に対して
ヘッダチャンクが設けられる。ヘッダチャンクは、その
ファイルについての基本的な情報を格納する領域とさ
れ、その先頭4バイトにはチャンクタイプとして、「4
Dh,54h,68h,64h」(hは16進数による
表記であることを示す)が格納される。これは、アスキ
ー文字によりチャンクタイプ「MThd」を示すものと
される。これに続いて4バイトによりデータ長が示され
る。ここでのデータ長はヘッダチャンクにおける以降の
データサイズを示すものとなる。現状のSMFのフォー
マットでは、ヘッダチャンクとしてのデータ長は固定と
されており、図のように「00h,00h,00h,0
6h」となる。
【0014】データ長の後ろには、フォーマット、トラ
ック数、及び単位時間がそれぞれ2バイトにより表現さ
れる。現在SMFとしては、フォーマット0,1,2の
3種類のフォーマットが規定されており、上記フォーマ
ットの領域は、そのファイルがフォーマット0,1,2
の何れであるのかを示す。図10では、「00h,00
h」が示されており、これによりファイルはフォーマッ
ト0であることを示すことになる。トラック数の領域
は、ヘッダチャンクに続くトラックチャンクの数を示す
ものとされる。フォーマット0の場合には、シングルト
ラックであることがフォーマットで規定されていること
から、図10においては、「00h,01h」が示され
ている。単位時間の領域では、トラックチャンクのデー
タセクションで使用されるデルタタイム(イベントごと
に対応する時間情報)の意義が指定される。SMFの時
間単位の種類(意義)としては、符割を基準としたもの
と、絶対時間のタイムコードによるものとの2種類が存
在するものとされている。図10においては、前者の時
間単位が採用されており、この場合には四分音符あたり
の分解能が示されることになる。ここでは、「01h,
E0h」により四分音符あたり480の分解能であるこ
とが示される。なお、時間単位として絶対時間のタイム
コードによるものについては、ここでは説明を省略す
る。
【0015】上記ヘッダチャンクに続いては、トラック
チャンクが設けられる。トラックチャンクは、先頭4バ
イトのチャンクタイプに続いて、4バイトのデータ長の
領域が設けられ、この後ろにデータセクションが設けら
れることで形成される。トラックチャンクのチャンクタ
イプとしては、「4Dh,54h,72h,6Bh」と
されて、アスキー文字によりチャンクタイプ「MTr
k」であることが示される。トラックチャンクにおける
データセクションは、そのデータ内容に応じて可変長と
なり、そのサイズはデータ長の領域により示されること
になる。この場合には、データ長として「00h,00
h,00h,2E」が格納され、データセクションは4
6バイトであることが示される。
【0016】データセクションに格納される各イベント
情報は、MTrkイベントといわれる。SMFでは、M
Trkイベントに格納されるイベントとしてMIDIイ
ベント、SysEx(システムエクスクルーシブ)イベ
ント、及びメタイベントの3種類が定義されている。M
IDIイベントは、MIDIチャンネルメッセージを格
納したイベントであり、演奏データとしての実体をなす
ものとされる。SMFのMIDIイベントの内容として
はMIDIフォーマットに従ったMIDIメッセージと
してのシーケンスとされていればよい。SysExイベ
ントは、主としてMIDI規格におけるシステムエクス
クルーシブメッセージを格納するためのイベントとされ
る。そして、メタイベントは、演奏データ自体には含ま
れない、例えば演奏全体に関連する情報やシーケンサ
ー、シーケンスソフトが利用する所要の情報が格納され
る。そして、上記各イベントに対して時間情報を示すデ
ルタタイムの情報を付加したものがMTrkイベントと
される。即ち、MTrkイベントは、 [ デルタタイム][MIDIイベント] [ デルタタイム][SysExイベント] [ デルタタイム][メタイベント] の何れかの形式を採ることになる。
【0017】デルタタイムとは、直前のMTrkイベン
トからの相対時間(時間差情報)をいわゆる可変長数値
で表現した時間情報とされる。このデルタタイムとして
の値はヘッダチャンクの単位時間によって指定された値
に依存する。例えば、上述のように四分音符あたりの分
解能が480であったとして、デルタタイムが240で
あれば、この値は八分音符の間隔に相当することにな
る。また、直前のMTrkイベントと同じタイミングの
MTrkイベントがある場合には、このMTrkイベン
トに付加されるデルタタイムは「00h」となる。な
お、SMFにて規定される可変長数値表現規則について
の詳しい説明はここでは省略するが、必要最小限のバイ
ト列によって数値を表現するようにしたもので、SMF
フォーマットにおいては、最小で1バイト、最大で4バ
イトによりデルタタイムを表現するようにしている。
【0018】図10に示すデータセクションとしては、
9つのMTrkイベント(1〜9)のシーケンスにより
形成されている。MTrkイベント1としては、デルタ
タイム「00h」が付加される「拍子」のメタイベント
が配置される。
【0019】メタイベントにおいては、先頭のステータ
スバイトとしてメタイベントであることを示す「FF
h」が使用される。続く第2バイトにメタイベントの種
類を示すイベントタイプの情報が格納される。この「拍
子」としてのメタイベントの場合にはイベントタイプと
して「58h」が設定されている。続く第3バイトで
は、メタイベントとしてのデータ長が示される。ここで
は、「04h」が設定されていることで、以降メタイベ
ントとして4バイト(第4〜第7バイト)のデータ長が
設けられることを示している。
【0020】「拍子」のメタイベントでは、第4バイト
は拍子記号の分子の値、第5バイトは拍子記号の分母を
負のべき乗により示す値が格納され、第6バイトはメト
ロノームの間隔をMIDIクロック数(4分音符=24
MIDIクロック)により表現した値が格納される。第
7バイトは4分音符あたりの32分音符の数が格納され
る。図10では、第4バイトは「04h」、第5バイト
が「02h」とされていることで、4/4拍子であるこ
とが示される。また、第6バイトが「60h」(=9
6)とされていることでメトロノームが16分音符間隔
で打たれることを示している。また、4分音符あたりの
32分音符の数は8つであるので、第7バイトには「0
8h」が示されている。
【0021】続くMTrkイベント2には、MTrkイ
ベント1と同時タイミング(デルタタイム=「00
h」)によるメタイベントとして、セットテンポのイベ
ントがは配置されている。このセットテンポのメタイベ
ントにおいても、先頭のステータスバイトとしては「F
Fh」が使用されることでメタイベントであることを示
し、続く第2バイトにおいて「51h」を使用すること
で、メタイベントの種類がセットテンポであることを示
す。また、第3バイトはデータ長としてここでは「03
h」が格納されている。セットテンポのメタイベントで
は、第4〜第6バイトのデータにより、4分音符あたり
の速度を「μ秒」単位により示すようにしている。ここ
では、第4〜第6バイトが「01h,E8h,48h」
(=84040)とされていることで、4分音符あたり
の速度が84040μ秒であることが示される。
【0022】MTrkイベント3としては、デルタタイ
ム=「00h」(MTrkイベント2と同時タイミング
となる)が付加されたプログラムチェンジメッセージの
MIDIイベントが格納される。ここでは、プログラム
チェンジメッセージとして「C0h,00h」が格納さ
れている。この内容によるプログラムチェンジメッセー
ジでは、先頭のステータスバイト「C0h」のうち上位
4ビット「Ch」によりプログラムチェンジメッセージ
のステータスであることが示され、下位4ビット「0
h」により、メッセージを送信すべきチャンネルが示さ
れる。そして、ステータスバイトに続くデータバイト
「00h」によりプログラムナンバが示される。このよ
うな内容を有するMTrkイベント3により、例えばG
M(General Midi)の規格に対応して設定された音源とし
ては、ステータスバイトの下位4ビット「0h」により
指定されるチャンネルに対してグランドピアノの音色が
設定されるものである。
【0023】続くMTrkイベント4には、MTrkイ
ベント3と同時タイミング(デルタタイム=「00
h」)によるノートオンメッセージのMIDIイベント
が格納されており、これにより上記グランドピアノの音
色に対するノートオン指定が行われる。なお、ノートオ
ンメッセージのMIDIイベントとしては、先頭のステ
ータスバイト「90h」(上位4ビット「9h」:ノー
トオンのステータス/下位4ビット「0h」:メッセー
ジ送信チャンネル)により、上記グランドピアノの音色
に対するノートオンメッセージであることが示され、続
く1バイト目のデータバイトにより発音すべきノートナ
ンバ「3Ch」が示され、2バイト目のデータバイトに
よりベロシティ「40h」が示される。ここでは、ノー
トオフメッセージとして、ノートオンステータスのベロ
シティ「00h」を使用するものとしている。
【0024】MTrkイベント5には、デルタタイム
「87h,40h」が付加されたノートオフメッセージ
「90h,3Ch,00h」のMIDIイベントが格納
され、これにより、先にノートオンされたグランドピア
ノの音色のノートオフ指定が行われることになる。
【0025】MTrkイベント6には、デルタタイム
「83h,60h」が付加されたプログラムチェンジメ
ッセージ「C0h、18h」のMIDIイベントが格納
されている。これにより、先にグランドピアノの音色が
設定されていたチャンネルに対して、次にノートオンす
べき音色としてアコースティックギターに切り替わるよ
うに指定が行われたことになる。
【0026】MTrkイベント7には、デルタタイム
「83h,60h」が付加されたノートオンメッセージ
「90h,3Ch,40h」のMIDIイベントが格納
され、これにより、上記MTrkイベント6により指定
されたアコースティックギターの音色に対するノートオ
ン指定が行われる。
【0027】MTrkイベント8には、デルタタイム
「8Bh,20h」が付加されたノートオフメッセージ
「90h,3Ch,00h」のMIDIイベントが格納
され、これにより、上記MTrkイベント7によりノー
トオンされたアコースティックギターの音色に対するノ
ートオフ指定が行われることになる。
【0028】MTrkイベント9には、デルタタイム
「A1h,60h」が付加されたエンドオブトラック
(エンドオブファイル)としてのメタイベントが格納さ
れている。このメタイベントによりトラックの終了(フ
ォーマット0であればファイルの終了)が示されること
になる。エンドオブトラックとしてのメタイベントは
「FFh,2Fh,00h」としてSMFフォーマット
において規定されている。
【0029】このようなSMFの構造からわかるよう
に、あるMIDIメッセージを発生する際の時刻情報と
しては、直前のイベントデータに対する相対時間差情報
がデルタタイム与えられていることになる。そして、S
MFの再生により出力されるMIDIメッセージは、そ
の制御を必要とするときにリアルタイムで発生されるこ
とから、ある時点でのMIDI機器(音源)の発音制御
はそれより過去のMIDIメッセージに依存することに
なる。これについては、SMFに基づいてMIDIメッ
セージを発生して音源を駆動した場合にも同様のことが
いえるものである。
【0030】2.再生装置 続いて、SMFについて再生を行う本実施の形態の再生
装置の構成について、図1及び図2を参照して説明す
る。
【0031】この図に示す再生装置0は、主としてシス
テムコントロール部1、データストレージ部2、音声処
理部3、音声出力部4、操作部6、表示部7、及びこれ
らの各機能回路部間のデータ伝送経路となるメインデー
タバス5を備えて構成される。
【0032】システムコントロール部1は、CPU(Cen
tral Processing Unit) 11、プログラムメモリ12、
ワーキングメモリ13を備えて構成され、主として後述
する楽曲メモリ21に格納されたSMFについて再生処
理を行うことで、楽曲再生のためのMIDIメッセージ
を発生するための機能回路部位とされる。
【0033】特に本実施の形態のシステムコントロール
部1としては、通常にSMFを順方向のシーケンスに従
って再生する通常再生の他、後述する「タップ再生」時
には、タップ再生モード(拍タップ再生モード、リズム
タップ再生モード)に対応した制御処理を実行するよう
にもされている。
【0034】CPU11は、例えばマイクロコンピュー
タ等を備えて構成され、当該再生装置0の動作全般に関
して所要の制御処理を実行する。この制御処理として
は、上記したMIDIメッセージの発生処理等が含まれ
る。プログラムメモリ12は、CPU11が実行すべき
制御処理を実現するためのプログラム等が格納されるR
OMとされる。ワーキングメモリ13はRAM等により
構成され、CPU11が所要の制御処理を実行する際の
各種処理データや演算結果などを一時格納する作業領域
とされる。
【0035】データストレージ部2は楽曲メモリ21を
備えて形成される。楽曲メモリ21には、ユーザが入手
した楽曲単位によるSMFのデータが多数格納されてい
る。
【0036】なお、楽曲メモリ21に格納されるSMF
の入手形態としては、各種考えられるが、例えば、図示
しないデータインターフェイス等を介して、外部記憶装
置やインターネットなどのネットワーク、或いは専用回
線等からSMFデータを入力して取り込むようにすれば
よい。
【0037】また、楽曲メモリ21においてSMFを記
憶するための記録媒体の種類としては特に限定されるも
のではなく、実用に充分とされるだけの曲数に対応する
だけのSMFが格納可能な容量を有するものであればよ
い。ここでは、例えば大容量のメモリ素子や、ハードデ
ィスク等をはじめとする各種ディスク状記録媒体等を楽
曲メモリ21として採用することが考えられる。また、
楽曲メモリ21としての記録媒体がドライバから挿脱可
能なものであれば、記録媒体として本実施の形態のSM
Fを保存したライブラリを作成することも可能である。
【0038】操作部6には、当該再生装置0によるSM
Fに基づいた各種再生動作を実行させるための所要のキ
ー群が備えられているものとされる。この操作部6に対
して行われた操作により発生された操作情報は、CPU
11に対して伝送される。CPU11では、入力された
操作情報に応答して所要の制御処理を実行することにな
る。
【0039】例えば、ユーザの操作部6に対する操作に
より、ある楽曲(SMF)を通常再生するための操作情
報が入力されたとすると、CPU11は、楽曲メモリ2
1に格納されているSMFのうちから、ユーザの操作に
より選択されたとされるSMFについて読み出しを行
う。そして、このSMFの記述内容に従ったMIDIメ
ッセージを発生させて、逐次、メインデータバス5を介
して音声処理部3に伝送する。
【0040】ここで、本実施の形態の操作部6として
は、後述する「タップ再生」として、「拍タップ再生」
と、「リズムタップ再生」を行うための複数の操作子を
備えたタップ操作部6Aが設けられているものとされ
る。このタップ操作部6Aとしては、例えば図2に示す
ように、拍タップモードキー6A−1、リズムタップモ
ードキー6A−2、タップキー6A−3、単位拍設定キ
ー6A−4、ガイドチャンネル指定キー6A−5、和音
認識幅設定キー6A−6が設けられる。
【0041】拍タップモードキー6A−1は、「拍タッ
プ再生モード」を設定するためのキーであり、リズムタ
ップモードキー6A−2は、「リズムタップ再生モー
ド」を設定するためのキーである。タップキー6A−3
は、上記各タップ再生モード時において、所定のデータ
区間ごとの再生開始を指示するための「タップ操作」を
行うためのキーとされる。ここでいう「タップ操作」と
は、タップキー6A−3を1回押圧操作することであ
り、この「タップ操作」によってSMFにおける所要の
データ区間ごとの再生(タップ再生)が順次開始される
ことになる。
【0042】単位拍設定キー6A−4は、「拍タップ再
生モード」時において、1回のタップ再生により再生す
べき楽曲の拍数の単位(単位拍)を変更設定するための
キーとされる。例えばその操作方式としては、単位拍設
定キー6A−4を1回押圧操作するごとに、16分音符
→8分音符→1拍(4分音符)→2拍(2分音符)→3
拍(3拍子であれば1小節)→4拍(4拍子であれば1
小節)→・・・のように変更設定させるようにすること
が考えられるれるものである。
【0043】ガイドチャンネル指定キー6A−5は、
「リズムタップ再生モード」時において、タップ操作の
対象となるSMFのチャンネルを指定するためのキーと
される。和音認識幅設定キー6A−6は、「リズムタッ
プ再生モード」時における「和音認識幅」の時間長を可
変設定するためのキーとされる。「リズムタップ再生モ
ード」時においては、演奏時間的に上記和音認識幅の範
囲内にあるとされる複数の楽音は1つの和音として見な
され、1回のタップ操作に対応して発音されるべき楽音
として、和音により再生出力するようにされる。なお、
リズムタップ再生モード時の和音認識幅に基づく和音の
再生については後述する。
【0044】なお、上記図2に示した各キーの種類や配
置形態などはあくまでも一例であり、タップ操作部6A
として設けられる実際のキーの種類や操作方式は他にも
各種考えられるものである。例えば、タップ操作部6A
において、何らかの項目を設定するためのキーを省略
し、代わりに表示部7に設定項目を表示させた上で、カ
ーソル移動キーやエンターキーなどを利用して、表示部
7に対して操作を行うようにすることも考えられる。
【0045】音声処理部3は、システムコントローラに
て発生されたMIDIメッセージに従って、実際に楽音
の発音制御を行う回路部位とされ、ワーキングメモリ3
1、波形メモリ32、DSP(Dijital Signal Processo
r)33、及び音声処理部3内においてデータを伝送する
ためのローカルデータバス34により構成される。波形
メモリ32には、各種音色の基本的な波形データが格納
されているものとされ、各音色は、例えば少なくともG
M(General Midi)の規定に従って、各プログラムナンバ
に対して所定の音色が割与えられているものとされる。
DSP33は、システムコントロール部1から伝送され
てくるMIDIメッセージに従って、波形メモリ32か
ら選択した音色の波形データに対して所要の信号処理を
施すことで、楽曲としての音声データを生成する。この
音声データは音声出力部4に対して供給される。ワーキ
ングメモリ31は、例えばDSP33が音色波形データ
に対して信号処理を行う際の作業領域として利用され
る。
【0046】音声出力部4では、上記DSP33から供
給された音声データをD/Aコンバータ41によりアナ
ログ音声信号に変換して、アンプ42を介して出力す
る。アンプ42の出力は、例えば実際には、図示しない
スピーカ等に対して供給される。これにより、SMFに
基づいて再生された楽曲の音声が出力されることにな
る。
【0047】表示部7は、当該再生装置0の動作に応じ
て所要の内容の表示を行うために設けられる。例えばこ
の場合には、SMFの再生状況を示す表示や、ユーザの
操作部6に対する操作に利用するようなユーザインター
フェイスとしての操作画面などを表示させることが考え
られる。
【0048】3.拍タップ再生 上記のようにして構成される本実施の形態の再生装置0
では、特殊再生動作として、SMFの楽曲を成立させる
要素に基づいて得られる、所定の定義による再生区切り
単位ごとに「タップ再生」を行うことができるものとさ
れる。また、「タップ再生」としては、「拍タップ再
生」と「リズムタップ再生」との2つのモードが設けら
れている。そこで、先ず「拍タップ再生」について、図
3及び図4を参照して説明する。
【0049】「拍タップ再生」とは、図2に示したタッ
プキー6A−3が1回操作されるごとに、これに応答し
て、「単位拍」に対応するSMFのデータ区間をSMF
のシーケンスに従って順次再生していくものである。こ
こで、再生区切り単位としての「単位拍」とは、音楽的
概念の下で、楽曲において反復性を有する等間隔な単位
時間をいうものとされる。即ち、例えば1拍分(四分音
符)、2拍分(二分音符)・・、更には1小節分、2小
節分・・など、或る拍数や小節数により決まる単位時間
である。また、更にこの単位時間を細分化すれば8分音
符、16分音符による音長に相当する単位時間も単位拍
として定義される。
【0050】図3には、本実施の形態としての拍タップ
再生動作の一例が示されている。ここでは、或るSMF
により演奏される楽曲としては図3(a)の楽譜により
示すものであるとする。ここでは楽曲の先頭から2小節
分を示している。そして、この楽曲のSMFについて通
常に再生処理を行えば、図3(b)に示すようにして実
際の楽音の発音が行われることになる。
【0051】なお、図3(b)においては、黒色の塗り
つぶしにより記されたバーが、図3(a)に示す各音符
に対応するノートの発音期間(ノートオンからノートオ
フまでの期間)を示している。これについては、以降説
明する図3(b)〜(e)についても同様で、黒色の塗
りつぶしにより記されたバーは、図3(a)の各音符に
対応して発音されるノート(以降、「発音ノート」とも
いう)を示すものである。
【0052】拍タップ再生を行うには、例えばユーザが
拍タップモードキー6A−1を操作するようにされる。
これにより、再生装置は「拍タップ再生モード」とな
る。「拍タップ再生モード」では、タップキー6A−3
の操作(タップ操作)に応答して、上述した「単位拍」
ごとに再生を行っていくようにされる。ここでは、「単
位拍」としてその楽曲の1拍分を設定しているものとす
る。
【0053】そして、上記のようにして「拍タップ再生
モード」とした後に、ユーザが最初のタップ操作を行っ
たとすると、再生装置0側ではこれに応答して、最初の
タップ割り込み処理を行う。タップ操作(タップ割り込
み処理)のタイミングは、図3においては、下向きの黒
色矢印により示されている。この最初のタップ操作に応
答するタップ割り込み処理としては、楽曲の1小節目の
1拍目分の単位拍に相当するデータ区間の再生を行うこ
とになる。図3においては、単位拍再生区間(この場合
には1拍分の時間長に対応する)を横向きの白抜きの矢
印で示している。従ってこの場合には、例えば図3
(c)に示すように、結果的に楽曲の1小節目の1拍目
にある音名Cの四分音符が発音ノートとして発音される
ことになる。
【0054】ここで、上記最初のタップ操作の後におい
て、ほぼ1小節目の1拍目分が終了するのと一致したタ
イミングで次のタップ操作を行ったとすると、これに応
じたタップ割り込み処理として、1小節目の2拍目分の
単位時間に対応するデータ区間の再生を行うことで、図
3(c)に示すように、1小節目の1拍目に続けて2拍
目が再生される。つまり、1小節目の2拍目にある音名
Eの四分音符が発音ノートとして発音される。
【0055】以降、同様にして、先のタップ操作に対応
して再生された単位拍が終了するのとほぼ一致するよう
なタイミングで、うまく順次タップ操作をユーザが行っ
たとすれば、各タップ操作に応じた単位拍の再生タイミ
ングは、図3(c)に示すようになる。つまり、図3
(b)に示した通常のSMFの連続再生と、ほぼ同一の
タイミングでSMFの楽曲が再生されていく結果が得ら
れることになる。
【0056】但し、実際においては、必ずしも図3
(b)に対応する場合のように、ユーザが1拍ごとにほ
ぼ正確なテンポをキープしながらタップ操作を行うとは
限らず、タップ操作がテンポに対して速くなったり遅く
なったりすることは当然起こり得る。
【0057】図3(d)には、一例としてタップ操作の
タイミングが楽曲のテンポよりも全般的に速い場合が示
されている。この図3(d)における1小節目の2拍目
に対応するタップ操作を例に取ると、このタップ操作は
明らかに楽曲のテンポよりも速く、1小節目の1拍目分
のデータ再生が終了しないうちに行われている。このよ
うな場合、1小節目の2拍目に対応するタップ操作に応
答したタップ割り込み処理としては、タップ操作の行わ
れたタイミングで1小節目の2拍目分のデータ再生を開
始するのではなく、1小節目の1拍目分のデータ再生の
終了に続けて、再生を開始するようにする。そして、図
3(d)における1小節目の3拍目以降においても、タ
ップ操作がテンポに対して速かった場合には、上記と同
様のタップ割り込み処理を行うものとする。これによ
り、タップ操作のタイミングが楽曲のテンポよりも速く
行われたとしても、そのときの再生タイミングとして
は、ジャストテンポでタップ操作を行った場合と同様の
演奏結果が得られる。従って、図3(d)のように、タ
ップ操作がテンポに対して全般的に速いような場合であ
れば、結果的に、図3(b)又は図3(c)と同様の演
奏結果が得られる。
【0058】これに対して、図3(e)には、タップ操
作がジャストテンポに対して速い場合と遅い場合とが混
在する状態が示されている。ここで、例えば1小節目の
3拍目、4拍目、及び2小節目の2拍目、3拍目、4拍
目のようにして、タップ操作がジャストテンポに対して
速い場合には上記図3(d)により説明したタップ割り
込み処理とすればよい。一方、例えば1小節目の2拍目
に対応する場合のように、タップ操作がジャストテンポ
に対して遅い場合には、このときのタップ割り込み処理
として、1小節目の1拍目分のデータ再生が終了した後
においては、次のタップ操作が行われるまで次の単位拍
のデータ再生を待機する。そして、この待機状態のもと
でタップ操作が行われたら、1小節目の2拍目分に対応
する単位拍のデータ再生を開始するように動作する。こ
のようなタップ割り込み処理は、2小節目の1拍目に対
応するタップ操作時においても同様である。
【0059】このようにして、タップ操作がジャストテ
ンポに対して遅い場合には、そのタップ操作が行われる
まで、これに応答した応答した単位拍のデータ再生の開
始を待機するようにしたことで、例えばユーザが、通常
の演奏状態を模すつもりでタップ再生を行っているとき
にタップ操作のテンポが遅れたときには、演奏される音
声が途切れるような聞こえ方をするため、これを補正す
るようにタイミングを調整しながらタップ操作を行って
いくことで、リズムのトレーニングにもなる。また、逆
にタップ操作がジャストテンポに対して遅い場合のタッ
プ割り込み処理を利用して、単位拍ごとに発音される楽
音をじっくり確認していくような使い方をすることも可
能である。このような使い方は、例えばユーザ自身が作
成したSMFによる演奏結果を確認する際などに特に有
効となる。
【0060】なお、上記図3においては、単位拍は1拍
分として設定しているが、これは単位拍設定キー6A−
4の操作により可変可能とされる。ここで、例えばユー
ザが単位拍設定キー6A−4を操作して単位拍を2拍に
変更設定したとすれば、1回のタップ操作ごとに応じ
て、1小節における1拍目と2拍目の2拍分の再生と、
3拍目と4拍目の2拍分の再生とが順次行われ、この単
位拍による再生が楽曲の進行に応じた小節ごとに行われ
ていくものである。
【0061】図4は、上記図3(c)〜(d)により説
明した「拍タップ再生」の動作を実現するためのフロー
チャートである。この図に示す処理は、タップ操作部6
Aに配された、「拍タップ再生」に関連する所要のキー
に対する操作に応じて、CPU11が実行するものとさ
れる。
【0062】ここで、例えばユーザが拍タップモードキ
ー6A−1を操作したとすると、CPU11は拍タップ
再生モードを設定し、図4に示すステップS101に移
行する。なお、ここまでの段階においては、楽曲メモリ
21に格納されているSMFのうちから拍タップ再生モ
ードにより再生すべきSMFが指定されているものとさ
れる。
【0063】ステップS101においては、再生指定さ
れたSMFのデータシーケンスにおいて、最初に発音さ
せるべきノートオンのMIDIイベントの直前のイベン
トまでのデータ処理を行う。先に図10にて示したよう
に、一般にSMFのシーケンスにおいては、先頭のヘッ
ダチャンクに続いてトラックチャンクが続き、このトラ
ックチャンクにおいては、先頭のチャンクタイプに続く
MTrkイベントとして、各ノートの発音制御に関する
MIDIイベントに先立って、例えば楽曲全体の再生制
御に関するよう所要のメタイベントが配列される。例え
ば図10であれば、「拍子」、「セットテンポ」のメタ
イベント(MTrkイベント1,2)がトラックチャン
クのチャンクタイプに続いて配列されている。
【0064】ここで、上記ステップS101の処理を図
10に示したSMFに対応させると、最初の発音ノート
のノートオンのMIDIイベントがMtrkイベント4
であることから、ステップS101の処理としては、先
頭のヘッダチャンクからMtrkイベント3までについ
ての処理を実行することになる。
【0065】ここまでのデータを読み込んで処理するこ
とで、CPU11としてはヘッダチャンクの「単位時
間」の値と、「セットテンポ」のメタイベント(MTr
kイベント2)の内容を参照することが可能となるが、
CPU11は、続くステップS102により、この「単
位時間」と「セットテンポ」の値に基づいて、以降の処
理を実行するための処理タイミングクロック周期を設定
する。前述のように、「単位時間」は4分音符あたりの
分解能を示し、「セットテンポ」の値は、4分音符あた
りの速度を「μ秒」単位により示していることから、処
理タイミングクロック周期は、例えば[セットテンポ/
単位時間]の演算により求めることができる。
【0066】なお、上記ステップS101及びS102
の処理の終了した段階では、上記処理タイミングクロッ
ク周期が設定されていると共に、実際に読み込んだデー
タに基づいた設定処理が行われているものとされる。例
えば図10に示すSMFに対応させた場合には、ヘッダ
チャンクの情報に基づいて、フォーマット0に対応する
ための対応設定、テンポ、拍子の設定などが行われる。
更に、図10の場合では、例えばステップS101にお
いてMTrkイベント3までが処理されるため、MTr
kイベント3である、プログラムチェンジのMIDIイ
ベント処理により、グランドピアノの音色を指定するプ
ログラムチェンジのMIDIメッセージをDSP33に
対して送信する処理も実行させておいてよい。これによ
り、音声処理部3では波形メモリ32に格納されている
音色の波形データのうちから、グランドピアノの音色を
使用するための準備が行われている状態が得られている
ことになる。
【0067】そして、続くステップS103において、
後述するタップ再生フラグTPLYと、連続フラグCO
NTについて、それぞれTPLY=0,連続フラグCO
NT=0と設定し、更に、単位拍を予め規定された初期
値(例えば単位拍=1拍)に設定する。ここで、タップ
再生フラグTPLY及び連続フラグCONTとして、そ
の値が‘0’であればタップ再生の停止を指示し、
‘1’であればタップ再生の開始又は連続を指示するこ
とを意味する。
【0068】上記ステップS103までの処理が終了す
ると、ステップS104においてタップ割り込み許可を
設定する。これにより、以降、タップキー6A−3を利
用したタップ操作を受け付けるようにされる。
【0069】ステップS105では、単位拍設定キー6
A−4の操作による単位拍の変更設定操作の有無を判別
する。単位拍の変更設定操作があったと判別すればステ
ップS106において、その操作に応じて単位拍の変更
設定を行ってからステップS107に進むが、単位拍の
変更設定操作が無かったのであればそのままステップS
107に進む。
【0070】ステップS107においては、現在タップ
再生フラグTPLYについて、TPLY=1とされてい
るか否かについて判別を行い、TPLY=0であればス
テップS107に戻るようにされる。ここで、例えば未
だ最初のタップ操作が行われていないとすれば、処理経
過としてはステップS107からステップS105にも
どることになり、単位拍の再生は行われないことにな
る。
【0071】そして、ステップS103によりタップ割
り込み許可が与えられて以降においてタップ操作が行わ
れたとすると、CPU11は、図5に示すタップ割り込
み処理を実行するようにされる。この図に示すタップ割
り込み処理としては、先ずステップS201において。
現在のTPLYについてTPLY=0とされているか否
かについて判別を行うようにされ、TPLY=0である
と判別されればステップS202に進んでTPLY=1
に設定し、TPLY=1であると判別されればステップ
S203に進んでCONT=1に設定する。
【0072】以降の説明は、便宜上、最初のタップ操作
の場合に対応させて記述していく。ステップS103に
よりタップ割り込み許可が与えられて以降において、最
初のタップ操作があったとされると、初期的にTPLY
=0と設定されていることから、図5に示す処理により
TPLY=1を設定して図4に示す処理に戻ることにな
る。そして、この段階ではステップS107においてT
PLY=1であるという肯定結果が得られるので、CP
U11はステップS108に進み、楽曲の先頭の単位拍
の再生を実行することになる。
【0073】ステップS108における単位拍ごとの再
生にあたっては、SMFのデータにおいて、CPU11
がノートの発音制御に関するMIDIイベントに付加さ
れたデルタタイムを参照することにより、単位拍に対応
するMTrkイベントのシーケンスより成るデータ区間
を特定するようにすればよい。例えば、四分音符の分解
能が480(10進法)であるとすれば、単位拍再生の
ために最初に処理すべきMIDIイベントをデルタタイ
ム‘0’として、ここから‘479’までのデルタタイ
ムの積算値が得られるMIDIイベントを処理して再生
すればよいことになる。
【0074】そして、ステップS108において単位拍
の再生が終了するとステップS109において、TPL
Y=0にリセットしてステップS110に進む。
【0075】ステップS110では再生すべきファイル
が終了したか否かが判別される。この判別は次に処理す
べきMTrkイベントがエンドオブファイルのメタイベ
ントであるか否かを判別するようにすればよい。従っ
て、このステップでファイルが終了していると判別され
ないうちは、ステップS111に進むことになる。
【0076】ステップS111では、CONT=1であ
るか否かが判別される。ここで、最初のタップ操作に対
応する上記ステップS108による1単位拍の再生処理
中において次のタップ操作が行われなかった場合につい
て考えてみると、ステップS111においては、否定結
果が得られることになるので、CPU11はステップS
105に戻るようにされる。このことから、例えば以
降、ジャストテンポよりも遅いタイミングでタップ操作
が行われた場合には、ステップS105〜S107の処
理により待機期間(図3(e)参照)が生じることにな
る。また、ジャストテンポでタップ操作が行われた(ス
テップS108の処理終了直後にタップ操作が行われ
た)と仮定すれば、ステップS105〜S107の処理
による待機期間はほとんどなく、図3(c)に示したタ
イミングによる単位拍再生が行われることになる。
【0077】また、図3(d)に対応する場合として、
ステップS108の処理期間中において、次のタップ操
作が行われた場合について考えてみると、このときのタ
ップ操作の場合には、図5のタップ割り込み処理とし
て、ステップS201においてTPLY=1である(単
位拍の再生中である)ことが判別されるので、ステップ
S203によりCONT=1と設定することになる。
【0078】そして、ステップS108の処理が終了し
て、ステップS110→S111に移行した段階では、
CONT=1とされているので、この場合にはステップ
S111からステップS112に進み、TPLY=1,
CONT=0に設定した後にステップS105に戻るよ
うにされる。
【0079】ステップS112を経てステップS105
に戻った場合、この後のステップS107においては、
TPLY=1であることが判別されるため、ステップS
108に進むようにされる。これにより、図3(d)に
て説明した、タップ操作がジャストテンポよりも速い場
合に対応した単位拍の再生動作が実現されることにな
る。
【0080】ステップS110において、ファイルの終
了が判別された場合にはステップS113に進んでタッ
プ割り込み処理を禁止して、拍タップ再生モードを終了
するようにされる。なお、この図には示していないが、
所定のキー操作によって拍タップ再生モードをキャンセ
ルするための操作が行われた場合には、ファイルの終了
を待たずして拍タップ再生モードを終了する。
【0081】ここで、例えば図9の楽譜に示すように、
頭にアウフタクトのある楽曲が少なからず存在する。図
9では、8分音符のアウフタクトに続いて1小節目が開
始される楽曲の例が示されている。例えば、この楽譜に
示す楽曲について1小節を4等分した四分音符単位を単
位拍としてタップ再生を行いたい場合、単にこの楽曲の
最初から四分音符単位を単位拍としてタップ再生してい
くと、この8分音符のアウフタクトを基点に、以降四分
音符単位の長さでタップ再生が行われるので、実際の楽
譜上での小節の区切りに対して実際に発音される単位拍
が8分音符先にずれることになる。
【0082】このようなことを回避したい場合には、例
えばユーザは、最初のタップ操作の前に、一旦単位拍設
定キー6A−4を操作して、単位拍を8分音符に設定し
てから最初のタップ操作を行うようにする。これによ
り、先ずアウフタクトの8分音符の音長に対応するデー
タ区間のみが再生される。この後、再度単位拍設定キー
6A−4を操作して単位拍を4分音符に設定し直し、こ
の後、タップ操作を続けていけばよい。あるいは、ステ
ップS105及びステップS106の処理として、アウ
フタクトに対応する単位拍と以降の通常の単位拍とを同
時段階で設定できるようにして、以降のタップ操作に従
って、自動的に設定された単位拍を変更するようにCP
U11が処理を行うように構成することも考えられる。
【0083】4.リズムタップ再生 続いて、本実施の形態のタップ再生として、「リズムタ
ップ再生」について説明する。「リズムタップ再生」と
は、原則として、図2に示したタップキー6A−3を1
回操作するごとに、予め指定されたチャンネルのノート
ごとに順次再生していくものである。この再生動作につ
いて、図6を参照して説明する。なお、図6において示
される各種矢印やバーなど、図3と同一に表記されたも
のについては、図3にて説明したのと同一の意義を有す
るものとされる。
【0084】例えば、図6(a)に示す2段の楽譜は、
或るSMFの1chと2chのパートにより発音される
楽音を示したものであるが、この楽譜に示す1chと2
chのパートを通常に再生すれば、それぞれ図6(b)
(c)に示すようにして各チャンネルのノートが発音さ
れていくことになる。
【0085】ここで、例えばユーザがリズムタップモー
ドキー6A−2を操作すると、再生装置は「リズムタッ
プ再生モード」となる。この後、例えばユーザは、ガイ
ドチャンネル指定キー6A−5を操作して、「ガイドチ
ャンネル」を指定する操作を行う。「ガイドチャンネ
ル」とは、リズムタップ再生において、タップ操作の対
象となるメロディ、リズムパターンを有するチャンネル
をいうものである。ここでは、ユーザは1chのパート
をガイドチャンネルとして指定したこととする。
【0086】上記した設定操作の後、ユーザが最初のタ
ップ操作を行ったとすると、先ず、図6(d)に示すよ
うに、この楽曲の1chの最初のノートである音名Cの
4分音符(図6(a)上段参照)に対応するデータ区間
が再生されることになる。但し、実際のデータの再生処
理としては、1chにおいて次に発音されるべきノート
のノートオンイベントの直前のMTrkイベントまでの
処理が行われるものとされる。図6では、これを横向き
の白抜き矢印により「単位リズム再生区間」として示し
ている。また、上記のようにして、ガイドチャンネルに
対する単位リズム再生区間にわたる再生が行われる際、
特にチャンネルミュートなどが行われていない限り、1
ch以外の全てのチャンネルについても、上記1chの
単位リズム再生区間に対応したデータ区間にあるMTr
kイベントのシーケンスの再生処理が同時に行われる。
例えば2chであれば、1小節目の1拍目にある、2つ
の16分音符(図6(b)下段参照)も、図6(c)に
示すようにして、発音ノートとして発音されるものであ
る。
【0087】そして、例えば以降、ユーザがテンポに合
わせて、ジャストタイミングで図6(a)の上段に示す
1ch(ガイドチャンネル)のパートの符割り通りにタ
ップ操作を行ったとした場合には、図6(d)(e)に
示すようにして、通常再生時(図6(b)(c))とほ
ぼ同一の演奏結果が得られることになる。
【0088】これに対して、図6(f)に示すようにし
て、ユーザのタップ操作が1chのパートの符割りのタ
イミングに対して、速いタイミングで行われた場合に
は、先のタップ操作に応答した単位リズム再生区間の再
生が終了してから、次のタップ操作に応答した単位リズ
ム再生区間の再生を開始するようにする。つまり、この
場合の動作としては、先の「拍タップ再生」時において
ユーザのタップ操作が楽曲のテンポよりも速く行われた
ときのタップ割り込み処理に準ずるものである。これに
より、図6(f)(g)に示すように、ユーザのタップ
操作が1chのパートの符割りのタイミングより速く行
われたとしても、ジャストタイミングでタップ操作を行
ったときに対応する図6(d)(e)と同様の演奏結果
が得られる。
【0089】また、ユーザのタップ操作が1chのパー
トの符割りのタイミングよりも遅いタイミングで行われ
た場合にも、「拍タップ再生」時のタップ割り込み処理
に準ずる動作を行うものとする。つまり、図6(h)に
おいて、1chの1小節目の2拍目に対応する場合のよ
うに、タップ操作がジャストタイミングに対して遅い場
合には、このときのタップ割り込み処理として、1小節
目の1拍目分の単位リズム再生区間のデータ再生が終了
した後においては、次のタップ操作が行われるまで次の
単位リズム再生区間のデータ再生を待機するものであ
る。
【0090】但し、リズムタップ再生に際して、上記の
ようにタップ割り込み処理を行う場合には、次のような
状況が起こり得る。例えば、図6(h)において、1c
hでの1小節目4拍目の最後の16分音符に対応するタ
ップ操作に応答した単位リズム再生区間を再生する場
合、2chの1小節目4拍目の最後の16分音符は、2
小節目最初の8分音符に対してシンコペートンするため
にタイでつながっており(図6(a)において破線で括
ってノートAとして示す)、従って、2chの1小節目
4拍目の最後の16分音符のノートオフは、図6(b)
(c)を比較しても分かるように、1chでの2小節目
の1拍目最初の16分音符の発音期間におこなわれる。
【0091】このような楽曲のデータ構造のもとで、1
chでの2小節目の1拍目最初の16分音符に対応する
タップ操作が遅れた場合、先のタップ操作に応答して発
音されたノートAには、ノートオフメッセージが与えら
れないので、実際には、1chでの2小節目の1拍目最
初の16分音符に対応するタップ操作が行われるまでの
待機期間は、ノートAの発音が継続されることになる。
そこで、本実施の形態においては、図6(i)に示すよ
うにして、このノートAの発音を待機期間においてもそ
のまま継続させてしまう、或いは、待機期間に限って
は、ノートAの発音をミュートするようにすることとす
る。このうち何れの方式を採用するかは実際の使用条件
等に応じて考慮すればよいし、或る所定操作によってユ
ーザが選択できるように構成することも考えられる。
【0092】また、リズムタップ再生に際しては次のよ
うな状況も起こり得る。図6により説明したように、リ
ズムタップ再生としての原則的なタップ割り込み処理で
は、結果的にタップ操作に応答してガイドチャンネルの
楽音を順次再生していくことになる。これは、SMFの
データ的な観点からいえば、MIDIイベントに付加さ
れたデルタタイムに従ってノートオンイベントの再生処
理を、タップ操作ごとに行っていくものとみることがで
きる。
【0093】このような原則的なタップ割り込み処理を
踏まえて、図7(a)の楽譜に示す楽曲のSMFをリズ
ムタップ再生する場合について考えてみる。
【0094】図7(a)の楽譜は2段とされており、上
段の1chのパートにおいては1小節目の3拍目と4拍
目、及び2小節目の1拍目にそれぞれ3声の和音による
演奏が表記されている。図では、上記3つの和音をそれ
ぞれ破線で括り、和音1、和音2、和音3として示して
いる。なお、下段の2chのパートにはシングルノート
による演奏のみが表記されている。
【0095】上記図7(a)の楽譜に示す音符を、その
発音タイミングにより展開すると、1chと2chのパ
ートでそれぞれ図7(b)(c)に示すものとなる。こ
こで留意すべきなのは、図7(b)から分かるように、
和音1、和音2、和音3をそれぞれ形成する3声は、そ
れぞれ微妙に異なるノートオンタイミングが指定されて
いる。これは各声部のノートオンイベントに付加された
デルタタイムがそれぞれ異なる時間を示していることに
なる。
【0096】このように、譜面上では和音として表記さ
れる複数のノートについて、SMF上では異なるノート
オンタイミングが設定されていることはめずらしいこと
ではない。つまり、ピアノ等においても、演奏に表情を
与えるために和音の発音タイミングを意図的にずらすこ
とはよく行われるし、ギターなどの弦楽器で和音を演奏
する際にも、その奏法によっては各弦の発音タイミング
が必然的にずれることになる。このような演奏を反映さ
せた場合、SMF上では和音を形成するノートのノート
オンイベントのデルタタイムは、当然異なってくるもの
である。
【0097】ここで、図6にて説明したリズムタップ再
生としての原則的なタップ割り込み処理を例えば和音1
に対して行ったとすれば、1回のタップ操作により先ず
和音1を形成する音名Cのノートが発音され、続いてタ
ップ操作を行うごとに、音名Eのノートと音名Gのノー
トの発音が行われることになる。つまり、ノートオンイ
ベントのデルタタイムにより示される時間の早いものか
ら順に、1声部づつ発音が行われることになる。これに
ついては、和音2、和音3についても同様に行われるこ
とになる。
【0098】実際のリズムタップ再生としての使い勝手
を考慮した場合、1回のタップ操作ごとにデルタタイム
の異なる和音の各声部が順次発音されるよりは、1回の
タップ操作に応答して、これらデルタタイムの異なる各
声部のノートが和音として発音されることが好ましい。
【0099】そこで本実施の形態では、次のようにし
て、各声部のノートのデルタタイムが異なる時間を示す
場合でも、これら各声部のノートが1回のタップ操作に
応答して和音として発音されるように構成する。
【0100】このためには、リズムタップ再生モード時
において和音認識幅WCHを設定する。そして、デルタ
タイムが異なるノートオンイベントのデルタタイムによ
り示されるノートオンタイミングが、この和音認識幅W
CH内にある場合には、これらノートオンのMIDIイ
ベントによりノートオンされる複数のノートを和音とし
て見なすようにする。そして、1回のタップ操作に応答
して、和音として見なされたこれら複数のノートを発音
させるようにする。
【0101】具体的に、和音1に対応してタップ操作が
行われた場合であれば、和音1において最も発音タイミ
ングの早い音名Cのノートのノートオンタイミングを基
点として、所定の和音認識幅WCHを設定する。ここで
は、図7(b)に示すように、和音認識幅WCHは32
分音符に対応する時間幅が設定されている。この場合、
和音認識幅WCH内には上記音名Cのノートに続き、音
名Eのノートのノートオンタイミングが存在し、更にこ
の後において、音名Gのノートオンタイミングが存在す
る。従って、このときには音名C、音名E、及び音名G
のノートを和音として見なす。そして、このときのタッ
プ操作に応答したタップ割り込み処理としては、図7
(d)に示すようにして、単位リズム再生区間を設定す
ることになる。つまり、和音1を形成するノートについ
てのノートオン及びノートオフまでの処理を含めて、和
音2を形成する最先のノート(音名Cのノート)のノー
トオンイベント直前のMTrkイベントまでの処理を実
行する。そして、和音2及び和音3に対応するタップ操
作が行われた場合にも上記したタップ割り込み処理に従
った動作を行うようにされる。
【0102】このような和音認識に対応したタップ割り
込み処理によりタップ再生が行われた場合の結果例を、
図7(d)(e)に示す。この図から分かるように、和
音1,2,3のいずれにおいても、各声部のノートオン
タイミングが和音認識幅WCH内にある(図7(b)参
照)ことで和音として認識され、図7(d)に示すよう
にして、1回のタップ操作に応答して、和音1,2,3
がそれぞれ発音された状態が得られている。なお、和音
認識に対応したタップ割り込み処理が行われる場合も、
タップ操作が、ガイドチャンネルのパートの符割りのタ
イミングに対して、速かったり遅かったりした場合のタ
ップ割り込み処理は、図6により説明したとおりであ
り、図7(d)(e)においても、このようなタイミン
グがずれたタップ操作に応答したタップ割り込み処理に
よる演奏結果が示されている。
【0103】和音認識幅WCHの設定は、例えば次のよ
うにして行う。ここで、和音認識幅WCHとしては16
分音符未満に対応する時間幅のノートオンタイミングの
ばらつきは1和音として認識するように設定する場合を
考えることとする。そしてヘッダチャンクにより示され
る「単位時間」は48ティック(四分音符あたり48の
分解能)、セットテンポのメタイベントにより示される
テンポが600000μsecとすると、16分音符あ
たりの時間は、 600000/(48/4)=150000μsec となる。そして、1ティックあたりに対応する時間は、 600000/48=12500μsec となる。16分音符未満に対応する和音認識幅WCHは
0ティック〜11ティックに対応するので、時間的には
0μsec〜137500μsec(137500μs
ec=150000μsec−12500μsec)の
範囲として設定すればよいことになる。
【0104】なお、和音認識幅WCHは、予め固定によ
る値が設定されていても構わないのであるが、例えば、
図2に示した和音認識幅設定キー6A−6を設け、ユー
ザによる和音認識幅設定キー6A−6の操作により、和
音認識幅WCHを可変設定できるようにすることが可能
である。和音認識幅WCHを可変設定できるようにすれ
ば、それだけリズムタップ再生としての自由度が与えら
れることになる。この場合には、例えば和音認識幅設定
キー6A−6の操作に応じて、1ティック分に対応する
ステップで和音認識幅WCHを可変させていくことなど
が考えられる。こうすれば、和音認識幅WCHの可変ス
テップが四分音符の分解能に基づいたものになるため、
ユーザも和音認識幅WCHを音符長として感覚的に捉え
ることができる。
【0105】上記和音認識に対応した処理を含む、リズ
ムタップ再生動作を実現するためのCPU11の処理動
作について、図8のフローチャートを参照して説明す
る。
【0106】例えばユーザがリズムタップモードキー6
A−2を操作したとすると、CPU11はリズムタップ
再生モードを設定し、図8に示すステップS301に移
行する。この場合にも、拍タップ再生モード時と同様、
ここまでの段階においては、楽曲メモリ21に格納され
ているSMFのうちからリズムタップ再生モードにより
再生すべきSMFが指定されているものとされる。
【0107】ステップS301においては、ガイドチャ
ンネル指定キー6A−5に対して行われた操作に基づい
て、再生すべきSMFにおけるチャンネルのうちからガ
イドチャンネルの設定を行う。なお、ここで、ドラムや
パーカッションなどの打楽器系に対応する10chをガ
イドチャンネルとして設定した場合には、ノートナンバ
(打楽器の音色)まで設定するようにされる。この設定
も、詳しい説明は省略するが、ユーザのノートナンバ指
定のための所定操作に従って設定を行うようにすればよ
い。
【0108】続くステップS302においては、再生指
定されたSMFのデータシーケンスにおいて、最初に発
音させるべきノートオンのMIDIイベントの直前のイ
ベントまでのデータ処理を行う。そして、ステップS3
02により処理されたイベントの所要のデータ内容に基
づき、拍タップ再生モード時と同様に、ステップS30
3において、処理タイミングクロック周期を設定する。
【0109】そして、続くステップS304において、
タップ再生フラグTPLYと、連続フラグCONTにつ
いて、それぞれTPLY=0,連続フラグCONT=0
と設定する。ここまでは拍タップ再生モード時と同様な
のであるが、ここでは更に、単位拍を初期値に設定する
代わりに、和音認識幅WCHについて予め規定されてい
る初期値に設定することが行われる。そしてこの後、ス
テップS305においてタップ割り込み許可を設定す
る。これにより、以降、タップキー6A−3を利用した
タップ操作を受け付けることになる。。
【0110】次のステップS306では、和音認識幅設
定キー6A−6の操作による和音認識幅WCHの変更設
定操作の有無を判別する。和音認識幅WCHの変更設定
操作があったと判別すればステップS307において、
その操作に応じて単位拍の変更設定を行ってからステッ
プS308に進むが、単位拍の変更設定操作が無かった
のであればそのままステップS308に進む。
【0111】ステップS308では、現在タップ再生フ
ラグTPLYについて、TPLY=1とされているか否
かについて判別を行い、TPLY=0であればステップ
S306に戻るようにされる。この場合にも、例えば最
初のタップ操作が行われていないとすれば、ステップS
308からステップS306に戻るように処理が実行さ
れるので、タップ再生は行われないことになる。
【0112】そして、ステップS305によりタップ割
り込み許可が与えられて以降においてタップ操作が行わ
れたとすると、CPU11は、図5に示すタップ割り込
み処理を実行する。なお、図5の処理は拍タップ再生処
理として先に説明した通りである。
【0113】また、図8に示すステップS308〜ステ
ップS314に示す処理は、先に拍タップ再生時の処理
動作として図4にて説明したステップS107〜S11
3の処理と同様となる。これにより、ガイドチャンネル
のパートの符割りのタイミングに対してタップ操作が速
かったり遅かったりした場合に対応するための単位リズ
ム再生区間の再生開始タイミング(図6(f)(g),
(h)(i)参照)が制御される。但しこの場合、図4
における拍単位再生のためのステップS108としての
処理が、図8ではステップS309の処理に代わる点が
異なる。
【0114】ステップS309では、ガイドチャンネル
の次のノートオン直前のMTrkイベントまで再生処理
を実行することが行われる。つまり、図6及び図7に示
した1つの単位リズム再生区間の再生を行うようにされ
る。この際、ステップS309においては、常に最初に
ノートオンすべきノートを基点に、和音認識幅WCH内
に他のノートのノートオンタイミングが存在するか否か
を判別するようにしており、ここで和音認識幅WCH内
に他のノートのノートオンタイミングがあれば、最初に
ノートオンすべきノートのノートオンイベントと共に、
これら他のノートのノートオンイベントについても処理
を行うようにされる。
【0115】なお、和音認識幅WCH内に他のノートの
ノートオンタイミングが存在するか否かを判別するため
には、各ノートオンイベントに付加されたデルタタイム
に基づいて行えばよい。つまり、単位リズム再生区間に
おいて最初にノートオンすべきノートのノートオンイベ
ントを基点として、以降続く他のノートのノートオンイ
ベントのデルタタイムを読み出す。そして、読み出した
デルタタイムに基づいて、最初のノートのノートオン時
点に対する上記他のノートのノートオン時点の時間的距
離を求め、この時間的距離が和音認識幅WCHとしての
時間長の範囲内にあるか否かを判別するようにすればよ
い。
【0116】また、上記実施の形態においては、タップ
再生として楽曲の進行に従った順方向に再生を行う場合
についてのみ説明したが、本発明としては、楽曲の進行
に対して逆方向に向かって、1データ再生区間(単位拍
再生区間、単位リズム再生区間)ごとにタップ再生を行
うよう構成することも可能である。また、本発明は上記
した構成に限定されるものではなく各種変更が可能であ
り、例えば、本発明の再生装置としての構成を、パーソ
ナルコンピュータ等にインストールされるシーケンスソ
フトウェアの機能として与えることも可能である。更
に、上記実施の形態においては、SMFに対応した再生
動作として説明したが、本発明は他のフォーマットに基
づく楽曲演奏情報についても適用が可能とされる。
【0117】
【発明の効果】以上説明したように本発明は、ユーザの
タップ操作に応じて、例えば小節単位、拍数単位などの
楽曲において反復性を有する等間隔の単位時間ごと、或
いは楽音のメロディを形成する1音ごとなどのノート
(楽音)の発音タイミング(発音の開始から終了まで)
ごとなどの、或る時間幅を有させながら楽曲演奏情報を
再生していく「タップ再生」を行うことができる。これ
により、例えばユーザは、楽曲のテンポや楽曲のメロデ
ィーなどに合わせてタップ操作を行うことでSMFを小
節や拍数単位で順次演奏させていくといった擬似的な演
奏体験ができることになり、SMFを利用した娯楽とし
てこれまでにはない形態を提供できることになる。ま
た、例えばユーザの演奏に基づいてSMFを作成したよ
うな場合にも、楽曲の演奏の進行に沿って自身が演奏し
た結果を確認するといった、これまでにはない楽器の練
習方法のようなものも提案できることになる。
【0118】また、本発明では上記のようなタップ再生
を実現するのにあたり、楽曲演奏情報について再生区切
り単位に対応するデータ区間を、例えばSMFであれば
各イベント情報に付加されているデルタタイムなどの情
報から特定し、この特定されたデータ区間ごとに再生を
行っていくだけでよいことになるので、特に元の楽曲演
奏情報を別の形式のデータに展開、変換する必要もな
い。
【0119】また、本発明の構成では、先のタップ操作
に応答したデータ区間の再生処理が終了してから次のタ
ップ操作がなければ、この次のタップ操作が行われるま
で次に再生すべきデータ区間の再生開始を待機すること
になるが、これに対して、先のタップ操作に応答した楽
曲演奏情報の再生処理を実行しているときに、早くも次
のタップ操作が行われた場合には、この次のタップ操作
に応答する楽曲演奏情報の再生処理は、先のタップ操作
に応答した楽曲演奏情報の再生処理が完了してから行う
ようにもされる。これにより、ユーザのタップキーの操
作タイミングが早めにずれたような場合でも、楽曲演奏
情報を再生して得られる演奏としては、適正なものとな
るようにすることが可能となる。この場合、ユーザは、
タップ操作を行う際の集中力をさほど要しなくても済む
ことになり、それだけ娯楽性を維持した上でタップ操作
に関する操作性も向上されることになる。
【0120】更には、楽曲のメロディーなどに合わせて
タップ操作を行う場合、つまり、或るパートの楽音の発
音タイミングに対応するデータ区間ごとにSMFを再生
するような場合において、和音認識期間内において発音
開始すべきノートが複数存在する場合には、1回のタッ
プ操作に応答してこれら複数のノートを和音として発音
させるように再生することによっても、楽曲の進行に沿
ったタップ再生として好ましい演奏態様が得られるよう
にして、ユーザにとっても演奏音の違和感が無いように
配慮しているものである。
【図面の簡単な説明】
【図1】本発明の実施の形態としての再生装置の構成例
を示すである。
【図2】本実施の形態の再生装置において、タップ操作
部に設けられる操作キーの配置例を示す説明図である。
【図3】本実施の形態の拍タップ再生動作を示す説明図
である。
【図4】拍タップ再生を実現するための処理動作を示す
フローチャートである。
【図5】タップ操作に応答するタップ割り込み処理を示
すフローチャートである。
【図6】本実施の形態のリズムタップ再生動作を示す説
明図である。
【図7】リズムタップ再生における和音認識動作を示す
説明図である。
【図8】リズムタップ再生を実現するための処理動作を
示すフローチャートである。
【図9】アウフタクトのある楽曲例を楽譜により示す説
明図である。
【図10】SMFのデータ構造例を示す説明図である。
【符号の説明】
0 再生装置、1 システムコントロール部、2 デー
タストレージ部、3音声処理部、3 和音、4 音声出
力部、5 メインデータバス、6 操作部、6A タッ
プ操作部、6A−1 拍タップモードキー、6A−2
リズムタップモードキー、6A−3 タップキー、6A
−4 単位拍設定キー、6A−4 再度単位拍設定キ
ー、6A−4 単位拍設定キー、6A−5 ガイドチャ
ンネル指定キー、6A−6 和音認識幅設定キー、7
表示部、11 CPU、12 プログラムメモリ、13
ワーキングメモリ、21 楽曲メモリ、31 ワーキ
ングメモリ、32 波形メモリ、33 DSP、34
ローカルデータバス、41D/Aコンバータ、42 ア
ンプ、WCH 和音認識幅
───────────────────────────────────────────────────── フロントページの続き (72)発明者 加藤 恒平 東京都品川区北品川6丁目7番35号 ソニ ー株式会社内

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 特定のフォーマットに従って定義された
    所定種類のイベント情報に対してそのイベント情報に対
    応する時間情報を付加して形成されるデータ単位のシー
    ケンスにより形成される楽曲演奏情報について、上記デ
    ータ単位ごとに再生処理を行うことにより、楽曲の演奏
    を行うための演奏制御情報をリアルタイムで発生させる
    ことのできる再生装置において、 上記楽曲演奏情報について所定の再生区切り単位ごとに
    再生を開始させるための指示操作を行うことのできる指
    示操作手段と、 上記指示操作手段に対する操作に応答して、上記所定の
    再生区切り単位に対応する楽曲演奏情報のデータ単位よ
    り成るデータ区間ごとに再生処理を行うようにされた再
    生手段と、 を備えていることを特徴とする再生装置。
  2. 【請求項2】 上記再生手段は、 或る上記データ区間の再生処理の実行期間中において、
    上記或るデータ区間に対応する再生区切り単位に続くと
    される、次の再生区切り単位の再生を開始させるための
    上記指示操作が行われた場合には、 上記或るデータ区間の再生処理が終了した後に、上記次
    の再生区切り単位に対応するデータ区間の再生処理を開
    始するように構成されていることを特徴とする請求項1
    に記載の再生装置。
  3. 【請求項3】 上記再生区切り単位は、上記演奏制御情
    報に基づいて演奏される楽曲において反復性を有する所
    定の等間隔による単位時間が設定され、 上記再生手段は、上記単位時間による上記再生区切り単
    位に対応させて、上記データ区間を設定することを特徴
    とする請求項1に記載の再生装置。
  4. 【請求項4】 上記再生区切り単位は、上記演奏制御情
    報に基づいて演奏される楽曲の所定パートにおける楽音
    の発音タイミングに基づいて設定され、 上記再生手段は、上記所定パートの楽音の発音タイミン
    グに基づいて設定された再生区切り単位に対応させて、
    上記データ区間を設定することを特徴とする請求項1に
    記載の再生装置。
  5. 【請求項5】 上記再生手段は、 上記指定操作に応答して再生処理を行うのにあたり、最
    初の楽音の発音開始時点から或る時間長の和音認識期間
    が経過するまでにおいて、発音されるべき他の楽音が存
    在する場合には、上記最初の楽音と共に上記他の楽音に
    ついて再生処理が行われるように上記データ区間を設定
    するようにされていることを特徴とする請求項4に記載
    の再生装置。
  6. 【請求項6】 上記和音認識期間の時間長を可変するた
    めの操作を行うことのできる可変操作手段と、 上記可変操作手段により可変された和音認識期間を、上
    記再生手段が上記指定操作に応答して再生処理を行う際
    に利用すべき上記和音認識期間として設定する和音認識
    期間設定手段と、 が設けられることを特徴とする請求項5に記載の再生装
    置。
JP10028490A 1998-02-10 1998-02-10 再生装置 Withdrawn JPH11231869A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10028490A JPH11231869A (ja) 1998-02-10 1998-02-10 再生装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10028490A JPH11231869A (ja) 1998-02-10 1998-02-10 再生装置

Publications (1)

Publication Number Publication Date
JPH11231869A true JPH11231869A (ja) 1999-08-27

Family

ID=12250117

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10028490A Withdrawn JPH11231869A (ja) 1998-02-10 1998-02-10 再生装置

Country Status (1)

Country Link
JP (1) JPH11231869A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003015647A (ja) * 2001-06-29 2003-01-17 Kawai Musical Instr Mfg Co Ltd 自動演奏装置及び電子楽器

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003015647A (ja) * 2001-06-29 2003-01-17 Kawai Musical Instr Mfg Co Ltd 自動演奏装置及び電子楽器

Similar Documents

Publication Publication Date Title
JP2003099032A (ja) コード提示装置およびコード提示用コンピュータプログラム
JP2000099012A (ja) 演奏情報編集方法および演奏情報編集プログラムを記録した記録媒体
JP3915807B2 (ja) 奏法自動判定装置及びプログラム
JP3541686B2 (ja) 演奏練習装置と記録媒体
JPH10214083A (ja) 楽音生成方法および記憶媒体
JP2001013962A (ja) 楽曲自動再生装置および連続楽曲情報作成再生プログラムを記録した記録媒体
JP4407473B2 (ja) 奏法決定装置及びプログラム
JPH06332449A (ja) 電子楽器の歌声再生装置
JPH11231869A (ja) 再生装置
JP4802947B2 (ja) 奏法決定装置及びプログラム
JP2940449B2 (ja) 自動演奏装置
JP6790362B2 (ja) 電子音響装置
JP3654227B2 (ja) 楽曲データ編集装置及びプログラム
JP3379414B2 (ja) パンチイン装置、パンチイン方法及びプログラムを記録した媒体
JP2000003175A (ja) 楽音生成方法、楽音デ―タ作成方法、楽音波形デ―タ作成方法、楽音デ―タ生成方法、および記憶媒体
JP3407563B2 (ja) 自動演奏装置及び自動演奏方法
JPH11288282A (ja) 演奏情報変換装置
JP3006136B2 (ja) 電子楽器
JP3637782B2 (ja) データ生成装置と記録媒体
JPH058638Y2 (ja)
JP2003114680A (ja) 楽曲情報編集装置及び楽曲情報編集プログラム
JP4186855B2 (ja) 楽音制御装置及びプログラム
JPH10254467A (ja) 歌詞表示装置、歌詞表示制御プログラムを記録した記録媒体及び歌詞表示方法
JPH10254448A (ja) 自動伴奏装置及び自動伴奏制御プログラムを記録した媒体
JP3837994B2 (ja) 楽譜データ変換装置、及び記録媒体

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20050510