JP3804536B2 - 楽音再生記録装置、記録装置及び記録方法 - Google Patents
楽音再生記録装置、記録装置及び記録方法 Download PDFInfo
- Publication number
- JP3804536B2 JP3804536B2 JP2002007872A JP2002007872A JP3804536B2 JP 3804536 B2 JP3804536 B2 JP 3804536B2 JP 2002007872 A JP2002007872 A JP 2002007872A JP 2002007872 A JP2002007872 A JP 2002007872A JP 3804536 B2 JP3804536 B2 JP 3804536B2
- Authority
- JP
- Japan
- Prior art keywords
- time
- event
- data
- recording
- music
- 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
Links
Images
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
- Management Or Editing Of Information On Record Carriers (AREA)
- Electrophonic Musical Instruments (AREA)
Description
【発明の属する技術分野】
本発明は、CD(Compact Disc)等の記憶媒体に記憶された楽曲の再生に同期して記録を行う楽音再生記録装置、記録装置及び記録方法に関する。
【0002】
【従来の技術】
近年、ピアノ演奏等の楽器演奏を嗜好するユーザ達の間では、演奏の臨場感を得るべく、CD等の記憶媒体に格納された楽曲データである時系列オーディオデータ(例えば、オーケストラ演奏等)を再生し、再生音を聞きながらピアノ等を演奏するといったことが行われている。かかるユーザ達の間では、該アンサンブル演奏を記録し、再生することで該アンサンブル演奏の妙を楽しみたい要望がある。
【0003】
図13は、かかる要望に応える楽音再生記録装置100の構成を示す図である。
楽音再生記録装置100は、装着されたCDに格納された楽曲データである時系列オーディオデータ(オーケストラ演奏等)を再生するCD駆動装置200と、ピアノ等の楽器300の操作状態(例えば、押鍵、離鍵等)を検出し、該操作状態に応じて楽曲データの一種であるMIDI(Musical Instrument Digital Interface)データを生成するMIDI生成装置400と、記録装置500とを具備している。
【0004】
記録装置500のLチャネル及びRチャネルには、それぞれケーブルを介してCD駆動装置200及びMIDI生成装置400が接続されている。かかる楽音再生記録装置100を利用してアンサンブル演奏を記録する場合、記録装置500は、CD駆動装置200からLチャネルデータとしてオーケストラ演奏等に対応した時系列オーディオデータを取得する一方、MIDI生成装置400からRチャネルデータとしてユーザによる楽器演奏等に対応したMIDIデータを取得し、これらを1つの記憶媒体に記録(CD等)に記録していた。
【0005】
【発明が解決しようとする課題】
このように、楽音再生記録装置100を利用してアンサンブル演奏を記録する場合には、CD駆動装置200によって再生されるオーケストラ演奏等に対応した時系列オーディオデータ及びユーザによる楽器演奏等に対応したMIDIデータの両データが1つの記憶媒体に記録される。このため、CD駆動装置200は、再生すべき時系列オーディオデータがステレオ録音されたオーディオデータである場合には、該オーディオデータをモノラルに変換して出力する必要があり、音の拡がりが得られない等の問題が生じていた。
また、このように時系列オーディオデータ及びMIDIデータの両データが1つの記憶媒体に記録されるため、例えばユーザによる楽器演奏等に対応したMIDIデータのみを再生してアンサンブル演奏時における自己の楽器演奏音を聞き返すことができない等の問題も生じていた。
【0006】
本発明は、以上説明した事情を鑑みてなされたものであり、CD等の記憶媒体に記憶された楽曲データである時系列オーディオデータの再生に同期して記録する際、オーディオデータの出力を変えずに記録することができる楽音再生記録装置、記録装置及び記録方法を提供することを目的とする。
【0007】
【課題を解決するための手段】
この発明は、楽曲を表すオーディオデータに楽曲の開始からの経過時間を表す一連のタイムコードを離散的に挿入してなる第1の楽曲データを第1の記憶媒体から読み出して再生する再生装置と、当該再生装置による前記第1の楽曲データの再生に同期して記録を行う記録装置とを具備する楽音再生記録装置であって、前記記録装置は、楽器の操作状態を検出する検出手段から該操作状態を取得し、取得した該操作状態に応じて楽曲の演奏制御を指示するイベントを生成するイベント生成手段と、クロックをカウントすることにより計時を行う計時手段と、前記イベント生成手段によって前記イベントが生成された場合、前記計時手段による計時結果に対応した時刻に基づいてイベントの実行タイミングを指定するタイミングデータを生成するタイミングデータ生成手段と、前記再生装置によって読み出された前記第1の楽曲データ中のタイムコードを取得し、取得したタイムコードに対応した時刻と、前記計時手段による計時結果に対応した時刻との時間差に基づいて、前記タイミングデータを調整するタイミングデータ調整手段と、前記イベント生成手段によって生成されたイベントと前記タイミングデータ調整手段によって調整されたタイミングデータとを含む第2の楽曲データを第2の記憶媒体に記録する記録手段とを具備することを特徴とする。
【0008】
かかる構成によれば、第2の記憶媒体に記録される演奏制御を指示するイベントの実行タイミングを指定するタイミングデータが、第1の記憶媒体から読み出されたタイムコードに対応した時刻と計時手段の計時結果に対応した時刻との時間差に基づいて調整される。この調整により、第1の楽曲データの読み出しによる楽曲の再生と楽器の操作状態に応じて生成される楽曲の演奏制御を指示するイベントの記録の同期が保たれる。
【0009】
ここで、前記記録装置は、前記再生装置から前記第1の楽曲データを識別するための識別IDを取得するID取得手段をさらに具備し、前記記録手段は、前記イベント生成手段によって生成されたイベントと前記タイミングデータ調整手段によって調整されたタイミングデータとを含む第2の楽曲データと、前記ID取得手段によって取得された前記第1の楽曲データを識別するための識別IDとを対応付けて前記第2の記憶媒体に記録する態様が望ましい。
【0010】
また、本発明は、楽曲を表すオーディオデータに楽曲の開始からの経過時間を表す一連のタイムコードを離散的に挿入してなる第1の楽曲データを第1の記憶媒体から読み出して再生する再生装置と、当該再生装置による前記第1の楽曲データの再生に同期して記録を行う記録装置とを具備する楽音再生記録装置であって、前記記録装置は、楽器の操作状態を検出する検出手段から該操作状態を取得し、取得した該操作状態に応じて楽曲の演奏制御を指示するイベントを生成するイベント生成手段と、クロックをカウントすることにより計時を行う計時手段と、前記再生装置によって読み出された前記第1の楽曲データ中のタイムコードを取得し、取得したタイムコードに対応した時刻と前記計時手段による計時結果に対応した時刻との時間差に基づいて、前記計時結果に対応した時刻を調整する計時時刻調整手段と、前記イベント生成手段によって前記イベントが生成された場合、前記計時時刻調整手段によって調整された時刻に基づいてイベントの実行タイミングを指定するタイミングデータを生成するタイミングデータ生成手段と、前記イベント生成手段によって生成されたイベントと前記タイミングデータ生成手段によって生成されたタイミングデータとを含む第2の楽曲データを第2の記憶媒体に記録する記録手段とを具備することを特徴とする。
【0011】
かかる構成によれば、第2の記憶媒体に記録される演奏制御を指示するイベントの実行タイミングを指定するタイミングデータが、第1の記憶媒体から読み出されたタイムコードに対応した時刻と計時手段の計時結果に対応した時刻との時間差に基づいて調整される。この調整により、第1の楽曲データの読み出しによる楽曲の再生と楽器の操作状態に応じて生成される楽曲の演奏制御を指示するイベントの記録の同期が保たれる。
【0012】
ここで、前記記録装置は、前記再生装置から前記第1の楽曲データを識別するための識別IDを取得するID取得手段をさらに具備し、前記記録手段は、前記イベント生成手段によって生成されたイベントと前記タイミングデータ生成手段によって生成されたタイミングデータとを含む第2の楽曲データと、前記ID取得手段によって取得された前記第1の楽曲データを識別するための識別IDとを対応付けて前記第2の記憶媒体に記録する態様が望ましい。
【0013】
【発明の実施の形態】
A.第1実施形態
図1はこの発明の第1実施形態である楽音再生記録装置600の構成を示すブロック図である。図1において、CD駆動装置1は、コントローラ4からの指令に従い、装着されたCDから記録データを読み出して出力する装置である。CD駆動装置1には、様々なCDが装着され得る。これらのCDのうち本発明と最も関連性の強いのは楽曲データである時系列オーディオデータを主要な記録データとするCDである。図2に示すように、楽曲データは、ある楽曲のオーケストラ演奏や歌唱に伴って発生したオーディオ信号の符号化データ列(オーディオデータ)を含んでいる。また、この楽曲データにはタイムコードが離散的に挿入されている。これらのタイムコードは、楽曲の開始からの経過時間を示すコードである。このようなデータとは種類の異なったデータが記録されたCDもCD駆動装置1に装着され得る。例えば、Lチャネルデータとして時系列オーディオデータが記録され、Rチャネルデータとして自動演奏制御のためのMIDIデータが記録されたCDがCD駆動装置1に装着され得る。また、逆にRチャネルデータとして時系列オーディオデータが記録され、Lチャネルデータとして自動演奏制御のためのMIDIデータが記録されたCDがCD駆動装置1に装着されることもある。
【0014】
DSP2は、CD駆動装置1から読み出された楽曲データに含まれるタイムコードを250msecだけ遅延させ、コントローラ3に送るとともに、同様に250msecだけ遅延させて楽曲データ中のオーディオデータからアナログオーディオ信号を生成してミキサ5に送る。このように、楽曲データを250msecだけ遅延させて該アナログオーディオ信号をミキサ5に送るのは、CD駆動装置1に装着されたCDが正常なCDであるかどうかの判断及びCDから再生されるデータの種類の判断等のために要する時間を考慮したためである。すなわち、かかる判断を行うことなく、直ちにオーディオデータからアナログオーディオ信号を生成してミキサ5に送った場合には、異常な楽音が発生されるおそれがある。かかる事情を鑑み、本発明に係るDSP2は、CD駆動装置1に装着されたCDが正常なCDであるかどうか等を判断し、正常なCDであると判断した場合にのみ、生成したアナログオーディオ信号をミキサ5に送る一方、CDから再生されるデータの種類(例えば、CDから再生されるデータが時系列オーディオデータであり、MIDIデータを含まないデータ等)をコントローラ3へ通知する。
【0015】
また、DSP2は、CD駆動装置1に装着された複数のCDの中から、ユーザが操作部4を操作して選択したCDを識別するための識別情報(以下、適宜、C−IDという)及び該CDに格納されている複数の楽曲データの中から選択した楽曲データを識別するための識別情報(以下、適宜、M−IDという)等をCD駆動装置1から取得し、これらをコントローラ3へ送出する。なお、本実施形態では、DSP2がCD駆動装置1からユーザによって選択されたCDを識別するための識別情報及び楽曲データを識別するための識別情報を取得する場合を例に説明するが、いずれか一方の識別情報(例えば、CDを識別するための識別情報等)のみを取得するようにしても良い。
【0016】
コントローラ3は、操作部4を介して与えられる指示に従って、この楽曲再生装置全体の制御を行う。コントローラ3によって行われる各種の制御のうち本発明と最も関連が深いのは、CDを再生して同期記録を行う場合の記録制御である。なお、本発明における「同期記録」とは、CDの再生音及びユーザによる電子ピアノ10の演奏音の両楽音を記録するのではなく、CDの再生に併せてユーザが電子ピアノ10を演奏したときの演奏音のみを記録することをいう。この同期記録の指示が操作部4から与えられた場合、コントローラ3は、この指示に従って、楽曲データの再生指示をCD駆動装置1に送る。また、コントローラ3は、DSP2からタイムコードを受け取る度に、そのタイムコードをFD記録装置8に送ると共に、MIDIイベント生成回路14から順次供給されるMIDIイベント等(後述)をFD記録装置8に送る。なお、これらの手段については後述する。
【0017】
電子ピアノ10は、ユーザによる鍵操作に応じて打弦により機械的なピアノ音を発生する楽音発生機構を備えるほか、ユーザによる鍵操作を検出し、検出結果に応じて電子的なピアノ音を発生する楽音発生機構も備えている。かかる電子ピアノ10は、ピアノ11と、キーセンサ12と、ペダルセンサ13と、MIDIイベント生成回路14と、ピアノ音源15とを有している。
キーセンサ12及びペダルセンサ13は、それぞれピアノ11に配設された複数の鍵及び複数のペダル(ソステヌートペダル等)の各々に対応して設けられ、鍵及びペダルを押したときの強さ、深さなどを検出し、検出した鍵若しくはペダルを特定するキー番号若しくはペダル番号、ベロシティー情報(押鍵強度等に対応したデータ)等を含む検出結果をMIDIイベント生成回路14に供給する。
【0018】
MIDIイベント生成回路14は、コントローラ3による制御の下、キーセンサ12及びペダルセンサ13から供給される検出結果に基づいてMIDIイベントを生成する。ここで、MIDIイベントは、図3に示すように、発音又は消音すべき旨を示すノートオン・ノートオフ情報と、発音すべき音の高さを示すノートナンバ情報と、発音の強弱を示すベロシティ情報等によって構成されている。MIDIイベント生成回路14は、上記検出結果に基づいて、例えば「ドの音(ノートナンバ)を強さ10(ベロシティ)で発音(ノートオン)せよ」といった演奏制御を指示するイベントの一種であるMIDIイベントを生成し、かかるMIDIイベントをコントローラ3及びピアノ音源15に供給する。
【0019】
ピアノ音源15は、MIDIイベント生成回路14から供給されるイベントにより指示されたピアノ音のアナログオーディオ信号を電子的に生成する装置である。このピアノ音源15により生成されたアナログオーディオ信号は、ミキサ5へ出力される。
ミキサ5は、DSP2、ピアノ音源15から出力される各アナログ信号を混合して出力する装置である。このミキサ5の出力信号は、アンプ6によって増幅され、スピーカ7から音として出力される。
【0020】
FD記録装置8は、CDの再生に併せてユーザが電子ピアノ10を演奏したときの演奏音、すなわちユーザによる電子ピアノ10の演奏音をFD(Floppy Disk)に記録する装置であり、コントローラ3による制御の下、当該コントローラ3から供給されるCDを識別するための識別情報(C−ID)、楽曲データを識別するための識別情報(M−ID)、MIDIイベント等を含むSMF(Standard MIDI File)を作成する機能を有している。ここで、SMFは、図4に示すように、ヘッダチャンクHTとトラックチャンクTTによって構成されている。ヘッダチャンクHTには、SMFの基本的な情報(チャンクタイプ等)が格納されるほか、C−ID、M−IDなどの同期記録の際に再生されるCD、楽曲データを識別するための識別情報が格納される。トラックチャンクTTには、MIDIデータが格納される。MIDIデータは、同図に示すように、演奏制御等を指示するイベントと、先行するイベントと後発のイベントとの発生時間間隔を示すデルタタイムからなる時系列の楽曲データである。ここで、MIDIデータを構成するイベントは、MIDIイベント生成回路14において生成されるMIDIイベントや、コントローラ3において生成されるSysExイベント、メタイベントによって構成されている。
【0021】
かかるSMFの作成・記録を行うFD記録装置8は、コントローラ3から同期記録の開始指令を受け取ると、計時手段(後述)を用いて時刻の計時を開始する。そして、FD記録装置8は、コントローラ3からイベントを受け取る毎に、計時手段によって計時される時刻等を参照してデルタタイムを求め、イベントとデルタタイムからなるMIDIデータを順次作成する(図4参照)。ここで、本発明に係るFD記録装置8は、コントローラ3による制御の下、MIDIデータ中において曲のはじめから250msec経過した時点に対応する位置に再生開始イベント(CDに格納された楽曲データの再生開始を指示するイベント)を挿入する機能を備えている。また、FD記録装置8は、CD駆動装置1による時系列オーディオデータの再生に同期して電子ピアノ10の演奏音を記録すべく、上記計時手段によって計時された時刻とコントローラ3から供給されるタイムコードに示される時刻との間に生じたずれに応じて、先行するイベントと後発のイベントとの発生時間間隔を示すデルタタイムの値を適宜調整する機能を備えている。以下、かかる種々の機能を備えたFD記録装置8の構成について、図5等を参照しながら説明する。
【0022】
図5は、FD記録装置8に設けられた制御回路の構成を説明するためのブロック図である。この図5に示された制御回路は、上述したSMFを作成し、これをFDに記録する機能と、計時手段220によって計時された時刻とコントローラ3から供給されるタイムコードに示される時刻との間に生じたずれを補正する機能とを営むものである。
クロック生成手段210は、コントローラ3内に設けられ、水晶振動子とアンプとにより構成された発振回路(いずれも図示略)を備えている。このコントローラ3内に設けられたクロック生成手段210は、発振回路から得られる発振信号を適宜分周してタイミング制御用の各種のクロックを発生する。これら各種のクロックのうち本発明に関連の深いものとしてテンポクロックCTがある。
【0023】
計時手段220は、加算器221及び経過時間レジスタ222によって構成され、この加算器221及び経過時間レジスタ222によりテンポクロックCTが与えられるたびに「+1」の加算を行う累算器が構成される。加算器221は、経過時間レジスタ222の格納データと固定値「+1」とを加算して出力する。経過時間レジスタ222には、同期記録が開始されたとき初期値「0」が書き込まれ、以後、当該経過時間レジスタ222にテンポクロックCTが与えられる度に、加算器221の出力データ、すなわち当該時点における経過時間レジスタ222の格納データと「+1」との加算結果が書き込まれる。この経過時間レジスタ222の出力データNは、同期記録開始以後の経過時間を表す経過時間データとして利用される。
【0024】
SMF作成・書き込み制御手段250は、コントローラ3による制御の下、SMFの作成及び作成したSMFをFD記録装置8に装着されたFDに書き込むための制御等を行う。詳述すると、SMF作成・書き込み制御手段250は、まず、同期記録の際にコントローラ3から再生されるCD、楽曲データを識別するための識別情報(C−ID、M−ID等)を受け取ると、受け取った識別情報をヘッダチャンクHT(図4参照)に格納する。その後、SMF作成・書き込み制御手段250は、MIDIイベント生成回路14等によって生成された種々のイベント(MIDIイベント等)をコントローラ3から受け取ると、デルタタイム生成手段240にデルタタイムを生成すべき指令を送る。
【0025】
デルタタイム生成手段240は、かかる指令を受け取ると、デルタタイムを生成し(詳細は後述)、これをSMF作成・書き込み制御手段250に返す。SMF作成・書き込み制御手段250は、デルタタイム生成手段240から受け取ったデルタタイムとコントローラ3から受け取ったイベントによって構成されたMIDIデータをトラックチャンクTT(図4参照)に格納してSMFを作成し、これをFD記録装置8に装着されたFDに書き込む。SMF作成・書き込み制御手段250は、以上説明した処理のほか、計時手段220による計時時刻等を参照してMIDIデータ中において曲のはじめから250msが経過した時点に対応する位置に再生開始イベント(CDに格納された楽曲データの再生開始を指示するイベント)を挿入する処理をも実行する。
【0026】
デルタタイム生成手段240は、前回経過時間レジスタ241と、補正値レジスタ242とを備え、SMF作成・書き込み制御手段250からの指令に基づき、デルタタイムを生成する。
前回経過時間レジスタ241には、前回、SMF作成・書き込み制御手段250からデルタタイムを生成すべき指令を受け取ったときに計時手段220から取得した経過時間データ(便宜上、Nfと記す)が保持される。この前回経過時間レジスタ241には、同期記録が開始されたとき、初期値「0」が書き込まれる。
【0027】
補正値レジスタ242には、デルタタイム調整手段230において生成されるデルタタイムの補正値Rが保持される。詳しくは後述するが、この補正値レジスタ242に補正値Rを適宜設定することで、計時手段220によって計時された時刻とコントローラ3から供給されるタイムコードに示される時刻との間に生じたずれを補正する。この補正値レジスタ242には、同期記録が開始されたとき、初期値「0」が書き込まれる。
【0028】
デルタタイム生成手段240は、SMF作成・書き込み制御手段250からデルタタイムを生成すべき指示を受け取ると、計時手段220から経過時間レジスタ222に格納されている現時点における経過時間データNを取得した後、前回経過時間レジスタ241に保持されている経過時間データNf(前回、SMF作成・書き込み制御手段250からデルタタイムを生成すべき指示を受け取ったときに計時手段220から取得した経過時間)を読み出し、経過時間データNから経過時間データNfを減算する。そして、デルタタイム生成手段240は、補正値レジスタ242に保持されているデルタタイムの補正値Rを読み出し、この補正値Rと上記減算結果N−Nfとを加算し、加算結果N−Nf+Rを調整後のデルタタイムとして、SMF作成・書き込み制御手段250に返す。そして、デルタタイム生成手段240は、前回経過時間レジスタ241に格納されている経過時間データを、今回新たに計時手段220から取得した経過時間データへ更新する。
【0029】
デルタタイム調整手段230は、CDの再生と同期して記録を行うべく、計時手段220によって計時された時刻とコントローラ3から供給されるタイムコードに示される時刻との間に生じたずれに応じて、先行するイベントと後発のイベントとの発生時間間隔を示すデルタタイムの値を適宜調整する。
【0030】
図6は、デルタタイム調整手段230によって実行されるデルタタイム調整処理を示すフローチャートである。デルタタイム調整手段230は、ステップS1において、コントローラ3から「0」より大きなタイムコードが与えられると、これを第1の記録時間データTCDとし、ステップS2に進む。デルタタイム調整手段230は、ステップS2に進むと、計時手段220から当該時点における経過時間データNを取得し、取得した経過時間データNにテンポクロックCTの周期τを乗算し、第2の記録時間データTFD(=N*τ)を求める。この第2の記録時間データTFDは、同期記録を開始してから現在に至るまでの経過時間を表している。次に、デルタタイム調整手段230は、第1の記録時間データTCDと第2の記録時間データTFDの差分の絶対値|TCD−TFD|が予め設定された所定の許容範囲Δに収まっているか否かを判断する(ステップS3)。デルタタイム調整手段230は、第1の記録時間データTCDと第2の記録時間データTFDとの差分の絶対値が所定の許容範囲Δに収まっていると判断すると(ステップS3;YES)、デルタタイムの補正値Rとして補正値レジスタ242に「0」を書き込み(ステップS4)、デルタタイム調整処理を終了する。
【0031】
一方、デルタタイム調整手段230は、第1の記録時間データTCDと第2の記録時間データTFDの差分の絶対値|TCD−TFD|が所定の許容範囲Δを越えていると判断すると、第1の記録時間データTCDが第2の記録時間データTFDよりも大きいかどうかを判断する(ステップS5)。第1の記録時間データTCDが第2の記録時間データTFDよりも大きい場合、計時手段220によって計時されている時刻は、コントローラ3から供給されるタイムコードに示される時刻よりも遅れているといえる。デルタタイム調整手段230は、第1の記録時間データTCDが第2の記録時間データTFDよりも大きいと判断すると(ステップS5;YES)、かかる時刻ずれをデルタタイムを減少させることで補正すべく、第2の記録時間データTFDと第1の記録時間データTCDの差分を求め、求めた差分TFD−TCD(<0)をテンポクロックCTの周期τによって除算し、この除算結果(TFD−TCD)/τを、デルタタイムの補正値Rとして図5に示す補正値レジスタ242に書き込み(ステップS6)、デルタタイム調整処理を終了する。なお、この場合、補正値レジスタ242に書き込まれるデルタタイムの補正値Rは負の値となる。
【0032】
一方、第1の記録時間データTCDが第2の記録時間データTFDよりも小さい場合、計時手段220によって計時されている時刻は、コントローラ3から供給されるタイムコードに示される時刻よりも進んでいるといえる。デルタタイム調整手段230は、第1の記録時間データTCDが第2の記録時間データTFDよりも小さいと判断すると(ステップS5;NO)、かかる時刻ずれをデルタタイムを増加させることで補正すべく、第2の記録時間データTFDと第1の記録時間データTCDとの差分を求め、求めた差分TFD−TCD(>0)をテンポクロックCTの周期τによって除算し、この除算結果(TFD−TCD)/τを、デルタタイムの補正値Rとして図5に示す補正値レジスタ242に書き込み(ステップS7)、デルタタイム調整処理を終了する。なお、この場合、補正値レジスタ242に書き込まれるデルタタイムの補正値Rは正の値となる。
以上が本実施形態に係る楽音再生記録装置600の詳細である。以下、図7を参照しながら、楽音再生記録装置600の動作について詳細に説明する。
【0033】
図7は本実施形態に係る楽曲再生装置の動作を示すタイムチャートである。さらに詳述すると、図7には、ある楽曲の先頭からCDの再生に同期して記録を行う場合を例に、CDから読み出されるタイムコード、CDから読み出されるオーディオデータ、DSP2から読み出されるオーディオデータ、FD記録装置8の計時手段220による計時時刻、及びMIDIイベント生成回路14において生成されるMIDIイベントME−n(n=1、2、〜)が時系列的に示されている。この図7において、a[k](k=0、0.25、0.5、〜)は、楽曲の開始時刻を0秒とした場合に、k秒からk+1秒の区間内の部分のオーディオデータである。また、r[k](k=0、0.25、0.5、〜)は、楽曲の開始時刻を0秒とした場合に、k秒経過した時点における計時手段による計時時刻である。また、図7に示す例では、250msec毎にタイムコードがCDから再生される。
【0034】
ユーザは、まず操作部4を操作してCD駆動装置1に装着された複数のCDの中から再生すべきCD及び楽曲データを選択する。コントローラ3は、操作部4を介して再生すべきCD及び楽曲データの指示を受け取ると、CD駆動装置1に対して該CD及び楽曲データを識別するための識別情報の読み出し指令を送出する。CD駆動装置1は、かかる指令に従って該CD及び楽曲データを識別するための識別情報(C−ID、M−ID)を読み出し、DSP2を介してコントローラ3に送る。該識別情報は、コントローラ3からFD記録装置8へ転送され、当該FD記録装置8によってSMFのヘッダチャンクHTに格納される(図4参照)。
【0035】
その後、ユーザが操作部4を操作することにより当該操作部4からコントローラ3へ同期記録を開始すべき指示が与えられると、コントローラ3は、CD駆動装置1に楽曲データの再生指示を送る。CD駆動装置1は、コントローラ3から再生指示を受け取ると、直ちに楽曲の先頭部分のオーディオデータa[0]とタイムコード「0」をCDから読み出し、DSP2に送る。そしてさらに250msecが経過すると、このオーディオデータa[0]及びタイムコード「0」がDSP2からそれぞれミキサ5及びコントローラ3に出力される。DSP2は、このオーディオデータa[0]を遅延させている250msecの時間を利用して、CDから再生されているデータの種類及び該CDが正常であるか否か等を判別し、この判別結果をコントローラ3へ通知する。この場合、コントローラ3は、CDから再生されている楽曲データが時系列オーディオデータであり、MIDIデータを含まない旨及び該CDは正常である旨の通知を受け取ることになる。
【0036】
コントローラ3は、DSP2から該通知及びタイムコード「0」を受け取ると、タイムコード「0」と共に同期記録の開始指示をFD記録装置8に送る。FD記録装置8は、コントローラ3から同期記録の開始指示を受け取ると、直ちに計時手段220を利用して時刻の計時を開始する。しかし、FD記録装置8内のデルタタイム調整手段230では、このタイムコード「0」を利用したデルタタイムの調整は行われない。
その後、さらに250msecが経過すると、DSP2からタイムコード「0.25」が出力される。このとき、デルタタイム調整手段230では、「0」より大きなタイムコードが供給されたことから、上述したデルタタイムの調整が行われる。
【0037】
従って、CD駆動装置1に楽曲データの再生指示が送られてから250msec経過したとき、当該楽曲データの再生と、FD記録装置8による演奏音の記録が同時に開始される。そして、さらに250msec経過すると、デルタタイム調整手段230は、計時手段220によって計時された時刻とコントローラ3から供給されるタイムコードに示される時刻との間に生じたずれに応じてデルタタイムの値を適宜調整するデルタタイム調整処理を開始する。そして、以後は、タイムコードがDSP2から供給される度に、デルタタイム調整手段230は上述したデルタタイムの調整を行う。その後、例えば図7に示すように計時手段220による計時時刻r[1.0]、r[1.5]、r[2.0]においてMIDIイベントME−1、−2、−3が生成され、各MIDIイベントに対応するデルタタイムが生成されると、これらがSMF作成・書き込み制御手段250に供給される。
【0038】
SMF作成・書き込み制御手段250は、MIDIイベントME−1、−2、−3及び各MIDIイベントに対応するデルタタイムを受け取ると、各MIDIイベント及び各デルタタイムを含むMIDIデータをSMFのトラックチャンクTTに格納する。そして、SMF作成・書き込み制御手段250は、前述したヘッダチャンクHT及びトラックチャンクTTによって構成されたSMFをFD記録装置8に装着されたFDに書き込み、処理を終了する。以上の説明から明らかなように、本発明の特徴は、CD等の記憶媒体から読み出されるタイムコードに基づいて同期記録の時間管理を行う点にある。なお、FDに記録されたMIDIデータと、対応するCDに格納されている楽曲データとを同期して再生する楽曲再生装置の構成、動作等については、第2の実施形態において詳細を明らかにする。
【0039】
以上説明したように、本実施形態に係る楽音再生記録装置600によれば、CDの再生に同期して記録を行う際、CDの再生音及びユーザによる電子ピアノ10の演奏音の両方をFDに記録するのではなく、CDの再生に併せてユーザが電子ピアノ10を演奏したときの演奏音のみをFDに記録する。従って、CDに格納されているオーディオデータがステレオ録音されたオーディオデータであっても、モノラル変換等する必要がなく、音の拡がりが得られない等の問題(従来技術の項参照)を解消することができる。また、このように、ユーザが電子ピアノ10を演奏したときの演奏音のみがFDに記録されるため、ユーザはFDに記録された楽曲データを再生することで、自己の楽器演奏音のみを聞き返すことができる。
【0040】
また、FDに記録されるSMFのヘッダチャンクHTには、記録時に再生されたCD等を識別するための識別情報が格納される。このため、複数の演奏データ(例えば、C−ID−1によって特定されるCDの再生に併せて演奏したときの演奏データ1と、C−ID−2によって特定されるCDの再生に併せて演奏したときの演奏データ2等)を同一FDに格納しても、FDに記録された各SMFのヘッダチャンクHTを参照することで、再生すべきCDを容易に特定することが可能となる。
【0041】
なお、上述した第1の実施形態では、電子ピアノ10を例に説明したが、例えば弦振動を検出する検出機構を備えた電子バイオリン、操作子(ピストン等)の操作状態等を検出する検出機構を備えた電子トランペット等のあらゆる電子楽器に適用可能である。また、電子楽器のみならず、自然楽器(例えば、バイオリン)であっても、かかる自然楽器の操作状態を検出する機構(例えば、弦振動を検出する検出機構等)を設けることで、上記電子楽器と同様に本発明を適用することができる。また、これら電子楽器等のほか、音楽製作ソフト等がインストールされているPC(Personal Computer)など、ユーザの操作状態を検出し、検出結果に応じてMIDIイベントの生成を指示することができる様々な電子機器に適用可能である。すなわち、特許請求の範囲に記載の「楽器」とは、ユーザの操作状態を検出し、検出結果に応じてMIDIイベントの生成を指示することができる様々な機器をいう。
【0042】
また、上述した第1の実施形態では、時系列オーディオデータを記憶する記憶媒体としてCDを例に説明したが、例えばFD、MO(Magneto Optical disk)、メモリースティック等あらゆる記憶媒体に適用可能である。また、MIDIデータ(を記録する記憶媒体についても同様、MO等あらゆる記憶媒体に適用可能である。
【0043】
ここで、本発明は、例えばCD駆動装置、FD記録装置、コントローラなど、図1に示す全ての構成要素を含んだ電子ピアノを製造し販売するという態様でも実施され得る。このような電子ピアノによれば、ユーザは、CDに記録されたオーディオデータの再生に同期して演奏データ(例えば、ユーザがピアノ11を演奏することにより得られる演奏データ等)をFDに記録することができる。
【0044】
<変形例1>
上述した第1の実施形態では、CDから読み出されるタイムコードに基づいてデルタタイムを調整することで、計時手段220によって計時された時刻とコントローラ3から供給されるタイムコードに示される時刻との間に生じたずれを抑制した。これに対し、変形例1では、CDから読み出されるタイムコードに基づいて経過時間レジスタ222内の経過時間データNを調整することで、計時手段220によって計時された時刻とコントローラ3から供給されるタイムコードに示される時刻との間に生じたずれを抑制する。
【0045】
図8は、変形例1に係るFD記録装置8に設けられた制御回路の構成を説明するためのブロック図であり、図9は、経過時間調整手段230’によって実行される経過時間調整処理を示すフローチャートである。なお、図8に示す制御回路は、デルタタイム調整手段230の代わりに経過時間調整手段230’が設けられている点及び補正値レジスタ242が除かれている点を除けば、図5に示す制御回路と同様であるため、対応する部分には同一符号を付し、説明を省略する。また、図9に示す経過時間調整処理は、ステップS4が除かれている点及びステップS6、ステップS7の代わりにそれぞれステップS6’、ステップS7’が設けられている点を除けば、図6に示すデルタタイム調整処理と同様であるため、対応するステップには同一符号を付し、説明を省略する。
【0046】
経過時間調整手段230’は、計時手段220によって計時された時刻とコントローラ3から供給されるタイムコードに示される時刻との間に生じたずれに応じて経過時間レジスタ222内の経過時間データNを調整する処理(経過時間調整処理)を実行する手段である。
経過時間調整手段230’は、コントローラ3から「0」より大きなタイムコードが与えられ、ステップS1→ステップS2→ステップS3と進むと(図9参照)、第1の記録時間データTCDと第2の記録時間データTFDの差分の絶対値|TCD−TFD|が予め設定された所定の許容範囲Δに収まっているか否かを判断する(ステップS3)。経過時間調整手段230’は、第1の記録時間データTCDと第2の記録時間データTFDとの差分の絶対値が所定の許容範囲Δに収まっていると判断すると(ステップS3;YES)、経過時間レジスタ222内の経過時間データNを調整することなく、経過時間調整処理を終了する。
【0047】
一方、経過時間調整手段230’は、第1の記録時間データTCDと第2の記録時間データTFDの差分の絶対値|TCD−TFD|が所定の許容範囲Δを越えていると判断すると、第1の記録時間データTCDが第2の記録時間データTFDよりも大きいかどうかを判断する(ステップS5)。第1の記録時間データTCDが第2の記録時間データTFDよりも大きい場合、計時手段220によって計時されている時刻は、コントローラ3から供給されるタイムコードに示される時刻よりも遅れているといえる。経過時間調整手段230’は、第1の記録時間データTCDが第2の記録時間データTFDよりも大きいと判断すると(ステップS5;YES)、計時手段220によって計時されている時刻とタイムコードに示される時刻の差分の絶対値|TCD−TFD|(>0)をテンポクロックCTの周期τによって除算し、この除算結果|TCD−TFD|/τを、経過時間レジスタ222内の経過時間データNに加算し、加算後の経過時間データNを経過時間レジスタ222に書き込み(ステップS6’)、経過時間調整処理を終了する。
【0048】
一方、第1の記録時間データTCDが第2の記録時間データよりも小さい場合、計時手段220によって計時されている時刻は、コントローラ3から供給されるタイムコードに示される時刻よりも進んでいるといえる。デルタタイム調整手段230は、第1の記録時間データTCDが第2の記録時間データTFDよりも小さいと判断すると(ステップS5;NO)、計時手段220によって計時されている時刻とタイムコードに示される時刻の差分の絶対値|TCD−TFD|(>0)をテンポクロックCTの周期τによって除算し、この除算結果|TCD−TFD|/τを、経過時間レジスタ222内の経過時間データNから減算し、減算後の経過時間データNを経過時間レジスタ222に書き込み(ステップS7’)、経過時間調整処理を終了する。
以上説明した本変形例においても上記第1の実施形態と同様の効果が得られる。
【0049】
B.第2の実施形態
図10は、第2の実施形態に係る楽音再生記録装置700の構成を示す図である。本実施形態に係る楽音再生記録装置700は、CDの再生に同期してMIDIデータを記録する機能を備えるほか、記録されたMIDIデータと対応するCDに格納されている楽曲データを同期して再生する機能を備えている。なお、図10に示す楽音再生記録装置700は、FD再生装置8aが設けられている点及び電子ピアノ10の代わりに自動ピアノ20が設けられている点を除けば、図1に示す楽音再生記録装置600とほぼ同様である。従って、対応する部分には同一符号を付し、上記第1の実施形態と重複する部分については説明を割愛する。
【0050】
コントローラ3は、第1の実施形態において説明した機能を具備するほか、CDとFDの同期再生のための制御を行う機能を備えている。この同期再生の指示が操作部4から与えられた場合、コントローラ3は、この指示に従って、MIDIデータの再生指示をFD再生装置8aに送る。コントローラ3は、FD再生装置8aから供給されるイベントを自動演奏を行うための手段に送る。なお、これらの手段については後述する。また、コントローラ3は、FD再生装置8aによってCDの再生開始を指示するイベントが読み出されたとき、再生指示をCD駆動装置1に送る。また、コントローラ3は、CD駆動装置1によってタイムコードが読み出される都度、そのタイムコードをFD再生装置8aに送る。
【0051】
自動ピアノ20は、第1の実施形態において説明した電子ピアノ10としての機能を備えるほか、FDからコントローラ3によって読み出されるMIDIデータに従って自動演奏を行う機能を備えている。かかる自動ピアノ20は、電子ピアノ10の各構成要素(ピアノ11等)を備えるほか、アンサンブル音源18と、ピアノ電子回路16と、駆動ソレノイド群17とを備えている。
アンサンブル音源18により自動演奏を行う場合、コントローラ3は、FD再生装置8aから受け取ったイベントをアンサンブル音源18に送る。また、ピアノ音源15またはピアノ11により自動演奏を行う場合、コントローラ3は、FD再生装置8aから受け取ったイベントをピアノ電子回路16に送る。いずれの手段により自動演奏を行うかは、操作部4からの指示に従って決定される。
【0052】
アンサンブル音源18は、コントローラ3からイベントを受け取り、そのイベントに従ってデジタル楽音信号を生成する装置である。このアンサンブル音源18により生成されたデジタル楽音信号はコントローラ3によってアナログ楽音信号に変換され、ミキサ5に送られる。なお、本実施形態に係るミキサ5は、アナログ信号を受け取るアナログ入力ポートとデジタル信号を受け取るデジタル入力ポートの両方を有しており、これらのポートを介して入力される全ての信号をミキシングして出力することができる。従って、アンサンブル音源18から出力されるデジタル楽音信号をコントローラ3を経由することなくミキサ5に直接供給してもよい。
【0053】
ピアノ電子回路16は、コントローラ3からイベントを受け取り、自動演奏のための制御を行う回路である。このピアノ電子回路16は、2通りの方法のうちいずれかにより自動演奏の制御を行う。まず、第1の方法では、コントローラ3から受け取ったイベントをピアノ音源15に送る。前述したように、ピアノ音源15は、イベントにより指示されたピアノ音のアナログオーディオ信号を電子的に生成する装置である。第2の方法では、ピアノ電子回路16は、コントローラ3から受け取ったイベントに従って駆動ソレノイド群17に対する通電制御を行う。この駆動ソレノイド群17は、ピアノ11に設けられた複数の鍵に各々対応した複数のソレノイドと、複数のペダルに各々対応した複数のソレノイドとからなる。ピアノ電子回路16は、ある鍵の押下を指示するイベントをコントローラ3から受け取った場合、その鍵に対応したソレノイドに駆動電流を流し、鍵を押下させるのに必要な磁力をソレノイドにより発生する。離鍵を指示するイベントを受け取った場合も同様である。第1の方法、第2の方法のいずれによりイベントを取り扱うかの指示は、操作部4からコントローラ3に与えられ、コントローラ3はこの指示をピアノ電子回路16に送る。ピアノ電子回路16は、受け取った指示に従う。
【0054】
コントローラ3によってイベントが出力されてから自動演奏音が発生されるまでには遅延があり、その遅延時間はいずれの手段により自動演奏を行うかによって異なる。自動ピアノにより自動演奏を行う場合、コントローラ3がイベントを出力してから自動演奏音が発生するまでに、例えば500msecの時間を要する。そこで、本実施形態では、同期再生の指示が操作部4から与えられ、かつ、自動演奏のための手段として自動ピアノが選択されている場合には、次のようにしてCDおよびFDの同期再生を行う。まず、MIDIデータの再生指示がコントローラ3からFD再生装置8aに送られる。そして、上述したことから明らかなように、この時点から250msecだけ経過したときに、CDの再生開示を指示するイベントがFDから読み出される。そして、コントローラ3は、このイベントを受け取ることにより、再生指示をCD駆動装置1に送るのである。このようにFDとCDの再生開始のタイミングに250msecの時間差をもたせることにより、FD内のMIDIデータによる曲の再生と、CD内のオーディオデータによる曲の再生とが同時に開始される。
【0055】
FD再生装置8aは、コントローラ3からの指令に従い、FDから記録されているMIDIデータを順次読み出してコントローラ3に供給する。このMIDIデータは、例えばFD記録装置8によりCDの再生に同期して記録されたMIDIデータである(図4参照)。FD再生装置8aは、あるイベントをFDから読み出してコントローラ3に送った後は、そのイベントの後のデルタタイムによって示される時間だけ待機し、後続のイベントの読み出しを行う、という処理を繰り返す。これがFD再生装置8aの基本的な動作である。前述したように、FD記録装置8によりCDの再生に同期して記録された1曲分のMIDIデータの中には、演奏制御用のイベントの他、CD再生開始を指示するイベントが含まれている。このイベントは、MIDIデータ中において曲の初めから250msが経過した時点に対応する位置に挿入されている。FD再生装置8aは、以上説明したMIDIデータをFDから読み出す機能(すなわち、シーケンサとしての機能)の他に、この読み出し動作をCD駆動装置1による時系列オーディオデータの再生に同期させるタイミング調整機能を有している。以下、かかる種々の機能を備えたFD再生装置8aの構成について、図11を参照しながら説明する。
【0056】
図11は、FD再生装置8aに設けられた制御回路の構成を説明するためのブロック図である。この図11に示された制御回路は、シーケンサとしての機能とタイミング調整機能とを営むものである。
【0057】
イベントバッファ302は、FDから読み出されたイベントを格納するバッファである。ここで、1つのデルタタイムの後に2以上の連続したイベントが続くことがあり得る。そのような場合、連続した全てのイベントがFDから読み出され、イベントバッファ302に格納される。デルタタイムレジスタ303は、FDから読み出されたデルタタイムを格納するレジスタである。既に説明したように、このデルタタイムは、相前後した2つのイベント間の経過時間を指定するものである。
【0058】
加算器311およびレジスタ312は、累算器を構成している。この累算器は、FDから順次読み出されてレジスタ303に格納される一連のデルタタイムの累算値を求めるものである。さらに詳述すると、現時点におけるデルタタイムの累算値は、レジスタ312によって保持されるようになっている。また、加算器311は、このレジスタ312に格納された累算値とレジスタ303に格納されているデルタタイムとを加算して、加算結果Mを出力する。このMは、イベントバッファ302に格納された1または複数のイベントをコントローラ3に転送する目標時刻に相当する数値である。従って、以下ではこのMを目標時刻データと呼ぶ。この目標時刻データMにより指定された時刻になると、イベント転送制御手段330からレジスタ303および312に書き込みクロックが供給される。この結果、加算器311の出力データ、すなわち、それまでレジスタ312に格納されていた累算値とレジスタ303に格納されていたデルタタイムとを加えた値が新たな累算値としてレジスタ312に格納される。また、このときFDから読み出された新たなデルタタイムがレジスタ303に格納されるのである。なお、イベント転送制御手段330については後述する。
【0059】
加算器321およびレジスタ322は、クロック生成手段210からテンポクロックCT’が与えられる度に「+1」の累算を行う累算器を構成している。加算器321は、レジスタ322の格納データと固定値「+1」とを加算して出力する。レジスタ322は、FDからのMIDIデータの再生が開始されるとき、初期値「0」が書き込まれる。以後、レジスタ322には、テンポクロックCT’が与えられる度に、加算器321の出力データ、すなわち、その時点におけるレジスタ322の格納データと「+1」との加算結果が書き込まれる。このレジスタ322の出力データN’は、MIDIデータの再生開始以後の経過時間を表す経過時間データとして利用される。
【0060】
イベント転送制御手段330は、経過時間データN’が目標時刻データMに到達したとき、イベントバッファ302内の1または複数のイベントを読み出して取り込むべき旨の転送指示をコントローラ3に送る。また、このときイベント転送制御手段330は、上述したように書き込みクロックをレジスタ303および312に供給する。
【0061】
タイミング調整手段341は、MIDIデータのイベントのコントローラ3への出力動作をCDからの時系列オーディオデータの再生に同期化させるためのタイミング調整を行う回路である。さらに詳述すると、タイミング調整手段341は、コントローラ3から「0」より大きなタイムコードが与えられると、当該タイムコードを第1の再生時間データTCD’とし、さらにその時点における経過時間データN’にテンポクロックCTの周期τを乗算し、その乗算結果から500msecを差し引き、第2の再生時間データTFD’=N*τ−500msecを求める。この第2の再生時間データTFD’は、自動ピアノが楽曲の演奏を開始してから現在に至るまでの経過時間、すなわち、現在の演奏箇所が楽曲の先頭から何秒後の箇所であるかを表している。
【0062】
そして、タイミング調整手段341は、これらの再生時間データTCD’及びTFD’を比較し、比較結果に基づいて次の処理を行う。
a.TCD’とTFD’との差が所定の許容範囲内に収まっている場合
この場合、タイミング調整手段341は、何もしない。
【0063】
b.TCD’>TFD’であり、両者の差が許容範囲を越えている場合
この場合、FDから読み出されたイベントによって現在演奏されている楽曲中の箇所は、CDからの再生により歌唱または演奏されている箇所よりも時間差TCD’−TFD’だけ遅れた箇所であるといえる。そこで、タイミング調整手段341は、時間差TCD’−TFD’をテンポクロックCT’の周期τ’によって除算し、この除算結果(TCD’−TFD’)/τ’をレジスタ303内のデルタタイムから減算し、減算後のデルタタイムをレジスタ303に書き込む。
なお、この減算後のデルタタイムは、常に正の値をとるように制御される。すなわち、除算結果(TCD−TFD)/τが大きい場合、レジスタ303内のデルタタイムから除算結果(TCD−TFD)/τをそのまま減算したのでは、減算後のデルタタイムは負の値になってしまう。そこで、レジスタ303内のデルタタイムから該除算結果(TCD−TFD)/τを減算した結果(すなわち、減算後のデルタタイム)が負の値をとる場合には、該デルタタイムが正の値をとり得るよう、例えば除算結果(TCD−TFD)/τを2分割し、分割した一方の除算結果(TCD−TFD)/(τ*2)を当該時点においてレジスタ303に格納されているデルタタイムから減算し、さらに、残りの除算結果(TCD−TFD)/(τ*2)をその後にレジスタ303に格納される後続のデルタタイムから減算するように制御する。かかる処理を実行することで、デルタタイムの値は常に正の値となる。このように、除算結果(TCD−TFD)/τが大きく、レジスタ303内のデルタタイムから除算結果(TCD−TFD)/τをそのまま減算したのでは、減算後のデルタタイムは負の値になってしまう場合には、複数回に分けて(すなわち、連続する複数のデルタタイムの値を適宜変更することで)生じたずれを吸収するようにすれば良い。これにより以後暫くの間、FDからのイベント読み出しによる自動演奏とCDからのデータ読み出しによる歌唱または演奏とが同期状態を保つこととなる。
【0064】
c.TCD’<TFD’であり、両者の差が許容範囲を越えている場合
この場合、FDから読み出されたイベントによって現在演奏されている楽曲中の箇所は、CDからの再生により歌唱または演奏されている箇所よりも時間差TFD’−TCD’だけ進んだ箇所であるといえる。そこで、タイミング調整手段341は、時間差TFD’−TCD’をテンポクロックCT’の周期τ’によって除算し、この除算結果(TFD’−TCD’)/τ’をレジスタ303内のデルタタイムに加算し、加算後のデルタタイムをレジスタ303に書き込む。
以上が本実施形態に係る楽音再生記録装置700の詳細である。以下、図12を参照しながら、楽音再生記録装置700の動作について詳細に説明する。
【0065】
図12は本実施形態に係る楽音再生記録装置の動作を示すタイムチャートである。さらに詳述すると、図12には、ある楽曲の先頭からCDおよびFDの同期再生を行う場合を例に、CDから読み出されるタイムコード、CDから読み出されるオーディオデータ、DSP2から出力されるオーディオデータ、FDから読み出されるMIDIデータおよびピアノ11から発生される音が時系列的に示されている。この図12において、a[k](k=0、0.25、0.5、〜)は、楽曲の開始時刻を0秒とした場合に、k秒からk+1秒の区間内の部分のオーディオデータである。また、m[k](k=0、0.25、0.5、〜)は、楽曲の開始時刻を0秒とした場合に、k秒からk+1秒の区間内の部分の演奏制御に用いられるMIDIデータである。また、図12に示す例では、250msec毎にタイムコードがCDから再生される。なお、以下の説明は、MIDIデータm[1.0]、m[1.5]、m[2.0]が、それぞれ計時手段220による計時時刻r[1.0]、r[1.5]、r[2.0]において生成されたMIDIイベント(図7参照)を含むMIDIデータである場合を想定する。
【0066】
駆動ソレノイド群17およびピアノ11を利用して自動演奏を行う場合、コントローラ3は、FD再生装置8aにMIDIデータの再生指示を送る。
FD再生装置8aは、コントローラ3から再生指示を受け取ると、直ちにFDからMIDIデータを読み出す動作を開始する。この結果、MIDIデータm[0]、m[1.0]、〜がFDから順次読み出され、MIDIデータ中のイベントがコントローラ3に転送される。この動作においては、MIDIデータ中のデルタタイムに基づいて、MIDIデータ中のイベントの転送タイミングの制御が行われる。なお、このデルタタイムに基づく転送タイミングの制御は既に説明した通りである。
【0067】
ここで、MIDIデータの再生が開始された当初は、CDからのオーディオデータの再生が開始されていないので、タイムコードがFD再生装置8aに供給されない。従って、FD再生装置8aでは、タイミング調整手段341によるレジスタ303内のデルタタイムの調整は行われない。
【0068】
MIDIデータの再生開始後、250msecが経過すると、CDの再生開始を指示するイベントがFDから読み出される。コントローラ3は、このイベントに応答し、再生指示をCD駆動装置1に送る。この結果、楽曲の先頭部分のオーディオデータa[0]とタイムコード「0」がCDから読み出される。そして、さらに250msecが経過すると、このオーディオデータa[0]およびタイムコード「0」がDSP2からコントローラ3に出力される。DSP2は、このオーディオデータa[0]を遅延させている250msecの時間を利用して、CDから再生されているデータの種類及び該CDが正常であるか否か等を判別し、この判別結果をコントローラ3へ通知する。この場合、コントローラ3は、CDから再生されている楽曲データが時系列オーディオデータであり、MIDIデータを含まない旨及び該CDは正常である旨の通知を受け取ることになる。
【0069】
DSP2からオーディオデータa[0]とともに出力されたタイムコード「0」は、コントローラ3を介してFD再生装置8aに送られる。しかし、FD再生装置8a内のタイミング調整手段341では、このタイムコード「0」を利用したデルタタイムの調整は行われない。
その後、さらに250msecが経過すると、DSP2からタイムコード「0.25」が出力される。このときタイミング調整手段341では、「0」より大きなタイムコードが供給されたことから、上述したデルタタイムの調整が行われる。そして、以後は、タイムコードがDSP2から供給される度に、上述したデルタタイムの調整が行われる。
【0070】
CDの再生指示が発生してから250msecが経過したとき、オーディオデータに対応した歌唱または演奏と、MIDIデータに対応した自動演奏とが同時に開始される。そして、さらに250msecが経過すると、タイミング調整手段341によるタイミング調整が開始される。従って、オーディオデータa[k]およびMIDIデータm[k]のうち同期を保った状態で音として再生されるのは、楽曲の先頭から250msecだけ経過した時点以降のもの、すなわち、a[0.25]以降のオーディオデータとm[0.25]以降のMIDIデータである。この結果、上述した計時手段220による計時時刻r[1.0]、r[1.5]、r[2.0]において生成されたMIDIイベントを含むMIDIデータm[1.0]、m[1.5]、m[2.0]と、対応するオーディオデータa[1.0]、a[1.5]、a[2.0]は同期を保った状態で音として再生される。
【0071】
以上の説明から明らかなように、本実施形態に係る楽音再生記録装置700によれば、CDの再生に同期してMIDIデータを記録するほか、記録されたMIDIデータと対応するCDに格納されている楽曲データを同期して再生することができる。
【0072】
ここで、本発明は、例えばCD記録装置、FD記録装置、FD再生装置、コントローラなど、図10に示す全ての構成要素を含んだ自動ピアノを製造し販売するという態様でも実施され得る。このような自動ピアノによれば、ユーザは、CDに記録されたオーディオデータの再生に同期して演奏データ(例えば、ユーザがピアノ11を演奏することにより得られる演奏データ等)をFDに記録することができると共に、FDに記録された該演奏データに基づく自動演奏に同期させてCDに記録されたオーディオデータの再生を行わせることができる。なお、前述した第1の実施形態に係る楽音再生記録装置600に、本実施形態において説明した自動ピアノ20を適用すること(すなわち、電子ピアノ10の代わりに自動ピアノ20を用いること)ができるのは、勿論である。
【0073】
【発明の効果】
以上説明したように本発明によれば、CD等の記憶媒体に記憶された楽曲データである時系列オーディオデータの再生に同期して記録することができる。
【図面の簡単な説明】
【図1】 第1の実施形態における楽音再生記録装置の構成を示すブロック図である。
【図2】 同実施形態に係るCDから読み出される楽曲データを示す図である。
【図3】 同実施形態に係るMIDIイベントを示す図である。
【図4】 同実施形態に係るSMFを示す図である。
【図5】 同実施形態に係るFD記録装置の制御回路の構成を示すブロック図である。
【図6】 同実施形態に係るデルタタイム調整処理を示すフローチャートである。
【図7】 同実施形態に係る楽音再生記録装置の動作を示すタイムチャートである。
【図8】 変形例1に係るFD記録装置の制御回路の構成を示すブロック図である。
【図9】 同変形例に係る経過時間調整処理を示すフローチャートである。
【図10】 第2の実施形態における楽音再生記録装置の構成を示すブロック図である。
【図11】同実施形態に係るFD再生装置の制御回路の構成を示すブロック図である。
【図12】 同実施形態に係る楽音再生記録装置の動作を示すタイムチャートである。
【図13】 従来の楽音再生記録装置の構成を示す図である。
【符号の説明】
1・・・CD駆動装置、2・・・DSP、3・・・コントローラ、4・・・操作部、5・・・ミキサ、6・・・アンプ、7・・・スピーカ、8・・・FD記録装置、8a・・・FD再生装置、10・・・電子ピアノ、11・・・ピアノ、12・・・キーセンサ、13・・・ペダルセンサ、14・・・MIDIイベント生成回路、15・・・ピアノ音源、16・・・ピアノ電子回路、17・・・駆動ソレノイド群、18・・・アンサンブル音源、20・・・自動ピアノ、210、310・・・クロック生成手段、220・・・計時手段、230・・・デルタタイム調整手段、230’・・・経過時間調整手段、240・・・デルタタイム生成手段、250・・・SMF作成・書き込み制御手段、330・・・イベント転送制御手段、341・・・タイミング調整手段。
Claims (8)
- 楽曲を表すオーディオデータに楽曲の開始からの経過時間を表す一連のタイムコードを離散的に挿入してなる第1の楽曲データを第1の記憶媒体から読み出して再生する再生装置と、当該再生装置による前記第1の楽曲データの再生に同期して記録を行う記録装置とを具備する楽音再生記録装置であって、
前記記録装置は、
楽器の操作状態を検出する検出手段から該操作状態を取得し、取得した該操作状態に応じて楽曲の演奏制御を指示するイベントを生成するイベント生成手段と、
クロックをカウントすることにより計時を行う計時手段と、
前記イベント生成手段によって前記イベントが生成された場合、前記計時手段による計時結果に対応した時刻に基づいて当該イベントの実行タイミングを指定するタイミングデータを生成するタイミングデータ生成手段と、
前記再生装置によって読み出された前記第1の楽曲データ中のタイムコードを取得し、取得したタイムコードに対応した時刻と、前記計時手段による計時結果に対応した時刻との時間差に基づいて、前記タイミングデータを調整するタイミングデータ調整手段と、
前記イベント生成手段によって生成されたイベントと前記タイミングデータ調整手段によって調整されたタイミングデータとを含む第2の楽曲データを第2の記憶媒体に記録する記録手段と
を具備することを特徴とする楽音再生記録装置。 - 前記記録装置は、前記再生装置から前記第1の楽曲データを識別するための識別IDを取得するID取得手段をさらに具備し、
前記記録手段は、前記イベント生成手段によって生成されたイベントと前記タイミングデータ調整手段によって調整されたタイミングデータとを含む第2の楽曲データと、前記ID取得手段によって取得された前記第1の楽曲データを識別するための識別IDとを対応付けて前記第2の記憶媒体に記録することを特徴とする請求項1に記載の楽音再生記録装置。 - 楽曲を表すオーディオデータに楽曲の開始からの経過時間を表す一連のタイムコードを離散的に挿入してなる第1の楽曲データを第1の記憶媒体から読み出して再生する再生装置と、当該再生装置による前記第1の楽曲データの再生に同期して記録を行う記録装置とを具備する楽音再生記録装置であって、
前記記録装置は、
楽器の操作状態を検出する検出手段から該操作状態を取得し、取得した該操作状態に応じて楽曲の演奏制御を指示するイベントを生成するイベント生成手段と、
クロックをカウントすることにより計時を行う計時手段と、
前記再生装置によって読み出された前記第1の楽曲データ中のタイムコードを取得し、取得したタイムコードに対応した時刻と前記計時手段による計時結果に対応した時刻との時間差に基づいて、前記計時結果に対応した時刻を調整する計時時刻調整手段と、
前記イベント生成手段によって前記イベントが生成された場合、前記計時時刻調整手段によって調整された時刻に基づいて当該イベントの実行タイミングを指定するタイミングデータを生成するタイミングデータ生成手段と、
前記イベント生成手段によって生成されたイベントと前記タイミングデータ生成手段によって生成されたタイミングデータとを含む第2の楽曲データを第2の記憶媒体に記録する記録手段と
を具備することを特徴とする楽音再生記録装置。 - 前記記録装置は、前記再生装置から前記第1の楽曲データを識別するための識別IDを取得するID取得手段をさらに具備し、
前記記録手段は、前記イベント生成手段によって生成されたイベントと前記タイミングデータ生成手段によって生成されたタイミングデータとを含む第2の楽曲データと、前記ID取得手段によって取得された前記第1の楽曲データを識別するための識別IDとを対応付けて前記第2の記憶媒体に記録することを特徴とする請求項3に記載の楽音再生記録装置。 - 楽曲を表すオーディオデータに楽曲の開始からの経過時間を表す一連のタイムコードを離散的に挿入してなる第1の楽曲データの再生に同期して記録を行う記録装置であって、
楽器の操作状態を検出する検出手段から該操作状態を取得し、取得した該操作状態に応じて楽曲の演奏制御を指示するイベントを生成し、出力するイベント生成手段と、
クロックをカウントすることにより計時を行う計時手段と、
前記イベント生成手段によって前記イベントが生成された場合、前記計時手段による計時結果に対応した時刻に基づいて当該イベントの実行タイミングを指定するタイミングデータを生成するタイミングデータ生成手段と、
再生される前記第1の楽曲データ中のタイムコードを取得し、取得したタイムコードに対応した時刻と前記計時手段による計時結果に対応した時刻との時間差に基づいて、前記タイミングデータ生成手段から供給されるタイミングデータを調整するタイミングデータ調整手段と、
前記イベント生成手段によって生成されたイベントと前記タイミングデータ調整手段によって調整されたタイミングデータとを含む第2の楽曲データを記憶媒体に記録する記録手段と
を具備することを特徴とする記録装置。 - 楽曲を表すオーディオデータに楽曲の開始からの経過時間を表す一連のタイムコードを離散的に挿入してなる第1の楽曲データの再生に同期して記録を行う記録装置であって、
楽器の操作状態を検出する検出手段から該操作状態を取得し、取得した該操作状態に応じて楽曲の演奏制御を指示するイベントを生成するイベント生成手段と、
クロックをカウントすることにより計時を行う計時手段と、
再生される前記第1の楽曲データ中のタイムコードを取得し、取得したタイムコードに対応した時刻と前記計時手段による計時結果に対応した時刻との時間差に基づいて、前記計時結果に対応した時刻を調整する計時時刻調整手段と、
前記イベント生成手段によって前記イベントが生成された場合、前記計時時刻調整手段によって調整された時刻に基づいて当該イベントの実行タイミングを指定するタイミングデータを生成するタイミングデータ生成手段と、
前記イベント生成手段によって生成されたイベントと前記タイミングデータ生成手段によって生成されたタイミングデータとを含む第2の楽曲データを記憶媒体に記録する記録手段と
を具備することを特徴とする記録装置。 - 楽曲を表すオーディオデータに楽曲の開始からの経過時間を表す一連のタイムコードを離散的に挿入してなる第1の楽曲データの再生に同期して記録を行う記録方法であって、
楽器の操作状態を検出する検出手段から該操作状態を取得し、取得した該操作状態に応じて楽曲の演奏制御を指示するイベントを生成するイベント生成過程と、
前記イベント生成過程においてイベントが生成された場合、クロックをカウントすることにより計時を行う計時手段による計時結果に対応した時刻に基づいて当該イベントの実行タイミングを指定するタイミングデータを生成するタイミングデータ生成過程と、
再生される前記第1の楽曲データ中のタイムコードを取得し、取得したタイムコードに対応した時刻と前記計時手段による計時結果に対応した時刻との時間差に基づいて、前記タイミングデータを調整するタイミングデータ調整過程と、
前記イベント生成過程において生成されたイベントと前記タイミングデータ調整過程において調整された前記タイミングデータとを含む第2の楽曲データを記憶媒体に記録する記録過程と
を具備することを特徴とする記録方法。 - 楽曲を表すオーディオデータに楽曲の開始からの経過時間を表す一連のタイムコードを離散的に挿入してなる第1の楽曲データの再生に同期して記録を行う記録方法であって、
楽器の操作状態を検出する検出手段から該操作状態を取得し、取得した該操作状態に応じて楽曲の演奏制御を指示するイベントを生成するイベント生成過程と、
再生される前記第1の楽曲データ中のタイムコードを取得し、取得したタイムコードに対応した時刻とクロックをカウントすることにより計時を行う計時手段による計時結果に対応した時刻との時間差に基づいて、前記計時結果に対応した時刻を調整する計時時刻調整過程と、
前記イベント生成過程においてイベントが生成された場合、前記計時時刻調整過程において調整された時刻に基づいて当該イベントの実行タイミングを指定するタイミングデータを生成するタイミングデータ生成過程と、
前記イベント生成過程において生成された前記イベントと前記タイミングデータ生成過程において生成されたタイミングデータとを含む第2の楽曲データを記憶媒体に記録する記録過程と
を具備することを特徴とする記録方法。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002007872A JP3804536B2 (ja) | 2002-01-16 | 2002-01-16 | 楽音再生記録装置、記録装置及び記録方法 |
US10/304,034 US6737571B2 (en) | 2001-11-30 | 2002-11-25 | Music recorder and music player for ensemble on the basis of different sorts of music data |
EP02026592A EP1324311B1 (en) | 2001-11-30 | 2002-11-28 | Music recorder and music player for ensemble on the basis of different sorts of music data |
DE60220876T DE60220876T2 (de) | 2001-11-30 | 2002-11-28 | Musikaufnahmegerät und Musikwiedergabegerät auf Basis von verschiedenen Musikdatensorten |
CN2005100649501A CN1670818B (zh) | 2001-11-30 | 2002-11-30 | 基于不同种类音乐数据的合奏的音乐记录器 |
CNB02139959XA CN1249663C (zh) | 2001-11-30 | 2002-11-30 | 基于不同种类音乐数据的合奏的音乐播放器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002007872A JP3804536B2 (ja) | 2002-01-16 | 2002-01-16 | 楽音再生記録装置、記録装置及び記録方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003208166A JP2003208166A (ja) | 2003-07-25 |
JP3804536B2 true JP3804536B2 (ja) | 2006-08-02 |
Family
ID=27646278
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002007872A Expired - Fee Related JP3804536B2 (ja) | 2001-11-30 | 2002-01-16 | 楽音再生記録装置、記録装置及び記録方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3804536B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7863513B2 (en) | 2002-08-22 | 2011-01-04 | Yamaha Corporation | Synchronous playback system for reproducing music in good ensemble and recorder and player for the ensemble |
JP5119932B2 (ja) * | 2008-01-11 | 2013-01-16 | ヤマハ株式会社 | 鍵盤楽器、ピアノおよび自動演奏ピアノ |
JP6105779B2 (ja) * | 2016-03-10 | 2017-03-29 | パイオニア株式会社 | 記録装置、記録方法、及び記録制御用のコンピュータプログラム |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02201497A (ja) * | 1989-01-31 | 1990-08-09 | Victor Co Of Japan Ltd | デジタル信号記録再生装置 |
JPH06314483A (ja) * | 1993-04-30 | 1994-11-08 | Toshiba Corp | ディスク再生装置 |
JP3196715B2 (ja) * | 1997-10-22 | 2001-08-06 | ヤマハ株式会社 | 楽音情報の通信装置、通信方法、制御装置、制御方法及びプログラムを記録した媒体 |
JP4174940B2 (ja) * | 2000-02-04 | 2008-11-05 | ヤマハ株式会社 | カラオケ装置 |
-
2002
- 2002-01-16 JP JP2002007872A patent/JP3804536B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003208166A (ja) | 2003-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4403658B2 (ja) | 楽曲データ出力装置及び楽曲データ出力方法 | |
JP3835324B2 (ja) | 楽曲再生装置 | |
JP5733321B2 (ja) | 自動演奏装置 | |
JP5103980B2 (ja) | 処理システム、音声再生装置及びプログラム | |
JP3885587B2 (ja) | 演奏制御装置及び演奏制御用プログラム、並びに記録媒体 | |
JP3823855B2 (ja) | 記録装置、再生装置、記録方法、再生方法及び同期再生システム | |
US20080060503A1 (en) | Performance control system, performance control apparatus, performance control method, program for implementing the method, and storage medium storing the program | |
JP2009168911A (ja) | 鍵盤楽器、ピアノおよび自動演奏ピアノ | |
JP3867580B2 (ja) | 楽曲再生装置 | |
JP4539594B2 (ja) | 再生録音装置 | |
JP3804536B2 (ja) | 楽音再生記録装置、記録装置及び記録方法 | |
JP7367835B2 (ja) | 録音再生装置、録音再生装置の制御方法及び制御プログラム並びに電子楽器 | |
JP3915517B2 (ja) | マルチメディアシステム、再生装置及び再生記録装置 | |
JP3750533B2 (ja) | 波形データ録音装置および録音波形データ再生装置 | |
JPH1031495A (ja) | カラオケ装置 | |
JP2005274851A (ja) | 電子音楽装置および同装置に適用されるコンピュータプログラム | |
JP3925349B2 (ja) | 音声データと演奏データの同期再生を行うための装置および方法 | |
JP4107212B2 (ja) | 楽曲再生装置 | |
JP3867579B2 (ja) | マルチメディアシステム及び再生装置 | |
JP5338312B2 (ja) | 自動演奏同期装置、自動演奏鍵盤楽器およびプログラム | |
JP3969249B2 (ja) | 音声データと演奏データの同期再生を行うための装置および方法 | |
JP4063048B2 (ja) | 音声データと演奏データの同期再生を行うための装置および方法 | |
JP4158443B2 (ja) | 再生制御装置とプログラム | |
EP1073055A2 (en) | Apparatus and method for reproducing audio information | |
JP4048917B2 (ja) | 音声データと演奏データの同期再生を行うための装置および方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040805 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060410 |
|
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: 20060418 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060501 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 3804536 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100519 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110519 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130519 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140519 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |