(57)【特許請求の範囲】
【請求項１】
各種の機器に着脱可能な記憶装置であって、
前記機器により書き込まれた楽曲ファイルを記憶する記憶手段と、
前記記憶手段に記憶された楽曲ファイルを読み出し、該楽曲ファイルにしたがって楽音生成指示を出力する再生手段と、
前記楽音生成指示に応じて楽音波形データを生成し、該生成した楽音波形データを前記機器に出力する音源手段と
を備えたことを特徴とする音源付き記憶装置。
【請求項２】
請求項１に記載の音源付き記憶装置において、
前記音源手段は、前記生成した楽音波形データを波形データファイルとして前記記憶手段に記憶させ、前記機器が該波形データファイルを読み出すことにより楽音波形データが出力されるものであることを特徴とする音源付き記憶装置。
【請求項３】
内部に記憶手段を備え、各種の機器に着脱可能な記憶装置であって、
前記機器が所定のファイル名であるコントロールファイルに楽曲演奏制御情報を書き込んだとき、前記コントロールファイルを読み出す手段と、
前記コントロールファイルに楽曲ファイルの再生指示が書き込まれていたとき、前記記憶手段に記憶された楽曲ファイルから指定された楽曲ファイルを読み出し、該楽曲ファイルにしたがって楽音生成指示を出力するシーケンサ手段と、
前記楽音生成指示に応じて楽音波形データを生成し、該生成した楽音波形データを前記機器に出力する音源手段と
を備えたことを特徴とする音源付き記憶装置。
【請求項４】
請求項３に記載の音源付き記憶装置において、
前記シーケンサ手段は、前記コントロールファイルに楽曲ファイルの頭出し、早送り、早戻し、一時停止、および停止の指示が書き込まれていたとき、その指示に応じた制御を行うものであることを特徴とする音源付き記憶装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、各種のメモリカードの内部にＭＩＤＩシーケンサおよび音源装置を備えた音源付き記憶装置に関する。
【０００２】
【従来の技術】
従来より、コンピュータ、オーディオプレイヤ、および携帯型電話機などの各種の機器で、記憶媒体として各種のメモリカードを使用できるものが知られている。メモリカードには、例えばＳＤ（Secure Digital）メモリカード（（株）東芝、松下電器産業（株）、および米国ＳＡＮＤＩＳＫ社の共同開発によるメディアカードの名称）あるいはメモリスティック（ソニー（株）の商品名）などと呼ばれるものがある。メモリカードには、当該メモリカードに適正に記憶した情報を適正な機器で使用する場合以外の不正な使用を防止するため、いわゆる著作権保護機構を備えたものがある。
【０００３】
一方、コンピュータまたはその応用機器でＭＩＤＩ演奏データの演奏再生を行うには、ＭＩＤＩシーケンサ（シーケンスソフト）と音源装置が必要である。上述したメモリカードだけでは、情報を記憶できるのみであり、ＭＩＤＩ演奏機能は実現されていない。
【０００４】
【発明が解決しようとする課題】
上述したように記憶媒体として用いられる各種メモリカードは、各種の機器に記憶媒体として使用可能であるが、ＭＩＤＩ演奏機能を実現するためにはさらにＭＩＤＩシーケンサや音源装置などの機構が接続機器の側に必要であった。
【０００５】
この発明は、メモリカード対応機器に接続するだけでＭＩＤＩ演奏機能を付加実現できるメモリカードなどの記憶装置を提供することを目的とする。
【０００６】
【課題を解決するための手段】
上記目的を達成するため、請求項１に係る発明は、各種の機器に着脱可能な記憶装置であって、前記機器により書き込まれた楽曲ファイルを記憶する記憶手段と、前記記憶手段に記憶された楽曲ファイルを読み出し、該楽曲ファイルにしたがって楽音生成指示を出力する再生手段と、前記楽音生成指示に応じて楽音波形データを生成し、該生成した楽音波形データを前記機器に出力する音源手段とを備えたことを特徴とする。楽曲ファイルは、例えばＭＩＤＩデータである。
請求項２に係る発明は、請求項１に記載の音源付き記憶装置において、前記音源手段は、前記生成した楽音波形データを波形データファイルとして前記記憶手段に記憶させ、前記機器が該波形データファイルを読み出すことにより楽音波形データが出力されるものであることを特徴とする。
【０００７】
請求項３に係る発明は、内部に記憶手段を備え、各種の機器に着脱可能な記憶装置であって、前記機器が所定のファイル名であるコントロールファイルに楽曲演奏制御情報を書き込んだとき、前記コントロールファイルを読み出す手段と、前記コントロールファイルに楽曲ファイルの再生指示が書き込まれていたとき、前記記憶手段に記憶された楽曲ファイルから指定された楽曲ファイルを読み出し、該楽曲ファイルにしたがって楽音生成指示を出力するシーケンサ手段と、前記楽音生成指示に応じて楽音波形データを生成し、該生成した楽音波形データを前記機器に出力する音源手段とを備えたことを特徴とする。
【０００８】
請求項４に係る発明は、請求項３において、前記シーケンサ手段は、前記コントロールファイルに楽曲ファイルの頭出し、早送り、早戻し、一時停止、および停止の指示が書き込まれていたとき、その指示に応じた制御を行うものであることを特徴とする。
【０００９】
【発明の実施の形態】
以下、図面を用いてこの発明の実施の形態を説明する。
【００１０】
図１は、本発明の実施の形態に係るメモリカード音源（音源付き記憶装置）のブロック構成を示す。このメモリカード音源は、コネクタ１０１、インタフェースドライバ１０２、データコントローラ１０３、メモリコア１０４、およびファンクションチップ１０５を備えている。コネクタ１０１は、このメモリカードを各種の機器に接続するための接続端子部分である。インタフェースドライバ１０２は、コネクタ１０１を介して外部から入力されるコマンドおよび外部機器との間で入出力されるデータをデータコントローラ１０３に受け渡すインタフェース部である。なお、このメモリカードは、いわゆるブロック転送で外部機器とのデータのやり取りを行うものである。すなわち、ファイル名を指定してリード／ライトの指示を与えることにより、当該ファイルの読み出し／書き込みがブロック単位で行われるものである。データコントローラ１０３は、メモリコア１０４に対する読み書きの制御およびファンクションチップ１０５との間のデータや制御信号のやりとりの制御などを行う。
【００１１】
このメモリカードに対するファイル書き込みコマンドには、著作権保護付き書き込みと保護なし書き込みとの２種類がある。データコントローラ１０３は、著作権保護付き書き込みに対しては、保護が必要な各種ファイルに対して後述する暗号鍵に基づく所定の暗号化処理を施してメモリコア１０４に記憶する。ファイルの読み出し時には、データコントローラ１０３は、読み出しファイルが暗号化されたものである場合、機器側と相互に認証を取り、復号化して支障がないことが確認されたら、指定されたファイルを復号化して機器に受け渡す。暗号化されていない一般のファイルの読み出しの際は、そのままファイルを読み出して機器に受け渡す。なお、メモリカードにおける著作権保護の方法は既に知られている種々の方法によればよい。
【００１２】
メモリコア１０４は、各種の情報を記憶する記憶部である。メモリコア１０４は、ユーザデータ領域１１０と保護領域１３０とに分かれている。
【００１３】
保護領域１３０は、通常、ユーザの操作によっては参照アクセスできない領域で、ここにはメモリカードの種類、方式、データ形式などの識別に用いるカード識別情報（ＣＩＳ：card infomation structure）１３１や、データの暗号化に用いる暗号鍵情報（ＥＮＣＫＥＹ）１３２などが記憶されている。システムは、このカード識別情報１３１を参照して正規のカードかどうかを判別したり、暗号鍵情報１３２を用いてカード内のデータの保護を図る。
【００１４】
ユーザデータ領域１１０は、近年のパソコンなどのコンピュータシステムでは常識的に用いられているＦＡＴ（ファイルアロケーションテーブル）ファイルシステムで管理されている。すなわち、ユーザデータ領域１１０は所定バイト数（例えば、５１２バイト）毎のセクタ（クラスタ）に分割されており、ディレクトリ領域１１９には、ファイル名と対応するＦＡＴの参照先（ファイルの先頭クラスタ番号が入っているＦＡＴの位置を示す）のリストが記憶されている。したがって、あるファイルを読み出すには、ディレクトリの中の該当ファイルに対応する部分からＦＡＴの参照先を見て、そこからＦＡＴを辿ってファイルの終わりまで、順次クラスタを読み出す。書き込みも同様にして、ＦＡＴを辿って、順次クラスタ単位で書き込んでいく。
【００１５】
ユーザデータ領域１１０には、ＭＩＤＩファイル群１１１、ＷＡＶＥデータ群１１２、およびオーディオデータ群１１３などが格納される。ＭＩＤＩファイル群１１１は、幾つかのＭＩＤＩファイルからなり、１つのＭＩＤＩファイルはＭＩＤＩイベント（ＭＩＤＩメッセージ）を並べた演奏データのファイルである。ＷＡＶＥデータ群１１２は、幾つかのＷＡＶＥデータファイルからなり、各ＷＡＶＥデータは、後述する音源部１５２が楽音生成する際に読み込む種々の音色の波形サンプルデータからなる。
【００１６】
ユーザデータ領域１１０には、ＷＡＶＥバッファ０（１１４）、およびＷＡＶＥバッファ１（１１５）が確保されている。これら２つのＷＡＶＥバッファは、後述するファンクションチップ１０５が楽音生成する際、生成した楽音データを記憶するバッファ領域であり、外部機器との間で生成した楽音データを受け渡すためのバッファである。また、ユーザデータ領域１１０には、セットアップファイル（ＳＥＴＵＰ  ＦＩＬＥ）１１６、コントロールファイル（ＣＯＮＴＲＯＬＦＩＬＥ）１１７、および出力コントロールファイル（ＯＵＴＣＯＮＴ  ＦＩＬＥ）１１８が格納される。セットアップファイル１１６は、演奏条件（音量、テンポ、調）や演奏曲（ファイル名）を指定するファイルであり、ユーザの設定／選択操作に応じて内容が書き替えられる。コントロールファイル１１７は、演奏の開始、停止、早送り、早戻しなど演奏そのものを制御するためのファイルであり、やはりユーザからの指示操作に対応して書き替えられる。出力コントロールファイル１１８は、演奏中の楽曲の波形データの読み出し制御に用いるファイルであり、外部機器側がこのファイルの内容を見て、本メモリカードから演奏曲の波形データを読み取って、再生（ディジタルアナログ変換）を図るものである。
【００１７】
ファンクションチップ１０５は、ＭＩＤＩシーケンスプロセッサ１５１（以下、ＭＩＤＩシーケンサと呼ぶ）およびトーンジェネレーティングプロセッサ（以下、音源部と呼ぶ）１５２を備えている。ファンクションチップ１０５は、本メモリカード内に一体的にパッケージングされているものである。ＭＩＤＩシーケンサ１５１は、データコントローラ１０３を介して、セットアップファイル１１６、コントロールファイル１１７の内容、および指定されたＭＩＤＩファイル１１１やＷＡＶＥデータ１１２を読み取り、音源部１５２を制御する。音源部１５２は、ＭＩＤＩシーケンサ１５１からの演奏処理開始と演奏イベントを受けて、楽音波形サンプルを生成し、ＷＡＶＥバッファ０または１に楽音波形ファイルとして書き出す。外部機器の側では、この楽音波形ファイルを出力コントロールファイル１１８の内容にしたがって順次読み出し、読み出したデータをディジタルアナログ変換などして発音する。
【００１８】
本実施形態では、メモリコア１０４のユーザデータ領域１１０のＷＡＶＥバッファ０（ＷＡＶＥＢＵＦ０）およびＷＡＶＥバッファ１（ＷＡＶＥＢＵＦ１）の２つの音楽波形ファイルを音源部１５２が交互に更新生成する、いわばダブルバッファ方式で楽音波形の出力を行っている。すなわち、音源部１５２がＷＡＶＥバッファ０に楽音波形を作り込んでいるときは、外部機器はＷＡＶＥバッファ１から楽音波形を読み出しており、逆に、音源部１５２がＷＡＶＥバッファ１に楽音波形を作り込んでいるときは、外部機器はＷＡＶＥバッファ０から楽音波形を読み出している。これを繰り返して連続的な楽音波形の出力を実現している。なお、３つ以上のバッファを持つ方式でもよいし、システムの処理速度が十分ならシングルバッファとしてもよい。
【００１９】
図２（ａ）は、コントロールファイル１１７の構成を示す。コントロールファイル１１７は、ＰＬＡＹフラグ、ＰＡＵＳＥフラグ、ＳＴＯＰフラグ、ＦＦフラグ、およびＲＥＷフラグなどのフラグ格納領域を有する。各フラグは「１」でオン、「０」でオフを意味するものとする。外部機器は、これらのフラグを所望の通りにセットし、コントロールファイル１１７として本メモリカードに書き込む。これにより、例えばＰＬＡＹフラグがオンされたときは再生の指示、ＰＡＵＳＥフラグがオンされたときは一時停止の指示、ＳＴＯＰフラグがオンされたときは停止の指示、ＦＦフラグがオンされたときは早送りの指示、ＲＥＷフラグがオンされたときは早戻しの指示を、それぞれ外部機器から本メモリカードに与えたことになる。なお、コントロールファイル１１７は、あらかじめ定められた規定のファイル名で読み書きする。
【００２０】
図２（ｂ）は、出力コントロールファイル１１８の構成を示す。出力コントロールファイル１１８は、レディフラグＲＥＡＤＹＦＬＧおよびＷＡＶＥバッファ名指示領域ＷＡＶＥＦＩＬＥを備える。外部機器は、本メモリカードから楽音波形データを読み出すとき、この出力コントロールファイル１１８（規定のファイル名称であるとする）を参照する。そして、この出力コントロールファイルを読み出したときレディフラグがオン（ＲＥＡＤＹＦＬＧ＝１）されていたら、そのときＷＡＶＥバッファ名指示領域ＷＡＶＥＦＩＬＥで指示されたＷＡＶＥバッファから楽音波形ファイルを読み出してよいことを示している。
【００２１】
図２（ｃ）は、セットアップファイル１１６の構成を示す。セットアップファイル１１６は、ＭＩＤＩファイル群１１１のファイル名の並びおよびこれらのＭＩＤＩファイル名のＭＩＤＩファイルを再生するときの音量やテンポや調などの情報を格納するファイルである。
【００２２】
図３は、メモリコア１０４におけるディレクトリ情報やＦＡＴ領域およびデータ領域の格納例を示す。図３（ａ）は、ディレクトリ情報の内容例である。このディレクトリ情報にはＷＡＶＥバッファ０（ファイル名はＷＡＶＥＢＵＦ０）が登録されており、その先頭のクラスタ番号が「２」に設定されている。したがって、図３（ｄ）に示すように、データ領域のクラスタ番号が「２」の位置にＷＡＶＥＢＵＦ０の第１クラスタがあることが分かる。また図３（ｃ）のＦＡＴ領域のエントリ番号が「２」のところを参照すると「３」が設定されているので、その次のクラスタがクラスタ番号「３」のクラスタであることが分かる。以下、順次図３（ｃ）のＦＡＴ領域を辿ることにより、当該ファイルのクラスタを順番に取得できる。ＦＡＴ領域にＥＯＦ（エンドオブファイル）が出現したら、当該ファイルの終わりとなる。また、ＦＡＴ領域に「０」が設定されているクラスタは空き領域であることを示す。ＷＡＶＥＢＵＦ１も同様である。
【００２３】
図３（ｂ）は、２つのＷＡＶＥバッファのファイル名を同じとし、拡張子を変えて表現した例である。図３（ｅ）は、それに対応するデータ領域を示す。
【００２４】
図４は、データコントローラ１０３の処理手順を示すフローチャートである。データコントローラ１０３は、ステップ４０１で外部機器からのコマンドを受信し、ステップ４０２でファイル書き込みコマンドであるか否か判別する。ファイル書き込みコマンドであるときは、ステップ４０３で著作権保護が必要な書き込みコマンドであるか否か判別する。著作権保護が必要なときは、ステップ４０４で、暗号鍵情報（ENCKEY）１３２を用いて書き込みデータを暗号化しメモリコア１０４のユーザデータ領域１１０に書き込む。ステップ４０３で著作権保護が不要な場合は、ステップ４０５でそのままファイルを書き込む。なお書き込みの際、ＦＡＴがファイルの書き込みに応じて編集され、メモリコア１０４内にどのようなファイルがどのように記憶されているかはＦＡＴで管理されている。ステップ４０４，４０５の後、処理終了する。
【００２５】
ステップ４０２でファイル書き込みコマンドでないときは、ステップ４０６でファイル読み出しコマンドであるか否か判別する。ファイル読み出しコマンドであるときは、ステップ４０７で著作権保護ファイルの読み出しであるか否か判別する。著作権保護ファイルの読み出しであるときは、ステップ４０８で外部の接続機器との間で認証処理を行い、ステップ４０９で相互認証が取れたか否か判別する。認証が取れたときは、ステップ４１０で復号化を行い、ステップ４１１でデータブロックを外部の接続機器に向けて送信する。ステップ４０９で相互認証が取れないときは、そのまま処理を終了する。なお、ステップ４１０の復号化は行わずに、相互認証が取れたらファイルは暗号化されたままで鍵を渡す方式でもよい。この場合、復号化は読み出した先の接続機器のシステム側で行えばよい。ステップ４０７で、著作権保護ファイルの読み出しでないときは、ステップ４１２で当該ファイルをブロック読み出しし、ステップ４１３でそのデータブロックを外部の接続機器に送信する。
【００２６】
ステップ４０６でファイル読み出しコマンドでないときは、ステップ４１４で、その他当該コマンドに応じたデータ削除などの処理を行った後終了する。
【００２７】
図５は、ＭＩＤＩシーケンサ１５１の処理手順を示すフローチャートである。本処理は、ＭＩＤＩシーケンサ１５１が動作開始すると、所定時間間隔で繰り返し実行される。
【００２８】
まずステップ５０１で、コントロールファイル１１７を読み出す。ステップ５０２でコントロールファイルのＰＬＡＹフラグがオンされているか否か判別する。オンされているときはステップ５０３へ進み、オンされていないときはステップ５１３に進む。ステップ５０３では、ＦＦフラグがオフされているか否か判別する。オフのときはステップ５０４に、オンのときはステップ５１２に進む。ステップ５０４では、ＲＥＷフラグがオフされているか否か判別する。オフのときはステップ５０５に進み、オンのときはステップ５１１に進む。ステップ５０５では、ＰＡＵＳＥフラグがオフであるか否か判別する。オフのときはステップ５０６に進み、オンのときはステップ５１０に進む。ステップ５０６では、ＳＴＯＰフラグがオフであるか否か判別する。オフのときはステップ５０７に進み、オンのときはステップ５０８に進む。
【００２９】
ステップ５０７では、再生が指示されて、早送り、早戻し、一時停止、および停止が指示されていないということであるから、セットアップファイル１１６に基づきＭＩＤＩ演奏処理を行う。ここでセットアップファイルにしたがって読み出したＭＩＤＩファイルのＭＩＤＩイベントを音源部１５２に送る。ステップ５０７の後、リターンする。
【００３０】
ステップ５０２でＰＬＡＹフラグがオフであるときは、ステップ５１３でＦＦフラグがオフされているか否か判別する。ＦＦフラグがオンされていたときは、再生されていない状態で早送りが指定されたということであるから、ステップ５１８で演奏曲位置を先送りし、リターンする。ステップ５１３でＦＦフラグがオフであるときは、ステップ５１４でＲＥＷフラグがオフであるか否か判別する。ＲＥＷフラグがオンであるときは、再生されていない状態で早戻しが指定されたということであるから、ステップ５１９で演奏曲位置を戻す処理を行い、リターンする。ステップ５１４でＲＥＷフラグがオフであるときは、ステップ５１５でＳＴＯＰフラグがオンされているか否か判別する。ＳＴＯＰフラグがオフのときはそのままリターンする。ＳＴＯＰフラグがオンのときは、再生されていない状態で再び停止の指示が来たということであるから、ステップ５１６で演奏位置更新停止（すなわち演奏曲位置を初期化する頭出し処理）を行う。次にステップ５１７で、ＳＴＯＰフラグをオフにして、リターンする。
【００３１】
ステップ５０３でＦＦフラグがオンされていたときは、再生状態で早送りが指定されたということであるから、ステップ５１２で演奏曲位置を先送りする処理（テンポアップ）を行い、リターンする。ステップ５０４でＲＥＷフラグがオンされていたときは、再生状態で早戻しが指定されたということであるから、ステップ５１１で演奏曲位置を戻す処理を行い、リターンする。ステップ５０５でＰＡＵＳＥフラグがオンされていたときは、再生状態で一時停止が指示されたということであるから、ステップ５１０でＭＩＤＩ演奏を途中で停止する処理を行い、リターンする。ステップ５０６でＳＴＯＰフラグがオンされていたときは、再生状態で停止が指定されたということであるから、ステップ５０８でＭＩＤＩ演奏を停止する処理を行い、ステップ５０９で各フラグを全てオフにした後、リターンする。
【００３２】
図６は、音源部１５２の処理手順を示すフローチャートである。音源部１５２では、まずステップ６０１でＭＩＤＩシーケンサ１５１から演奏スタートの指示がきたか否か判別する。演奏スタートの指示が来ていないときはそのチェックを繰り返す。演奏スタートの指示が来たときは、ステップ６０２でＷＡＶＥバッファ０および１を初期化する。ステップ６０３で、ＷＡＶＥバッファ１を出力コントロールファイル１１８のＷＡＶＥバッファ名指示領域ＷＡＶＥＦＩＬＥに登録する。ステップ６０４で出力コントロールファイル１１８のレディフラグを１とし、ステップ６０５で変数ｊに０を、変数ｋに１をセットする。
【００３３】
次にステップ６０６で、ＭＩＤＩシーケンサ１５１からの演奏イベントに基づき楽音波形サンプルを合成する。ステップ６０７では、合成した楽音波形サンプルをＷＡＶＥバッファｊに順次書き込む。ステップ６０８で、外部接続機器によるＷＡＶＥバッファｋの読み出しが完了したか否か判別する。完了していたときは、ステップ６０９でレディフラグを０とし、ステップ６１０に進む。ＷＡＶＥバッファｋの読み出しが完了していないときは、そのままステップ６１０に進む。
【００３４】
ステップ６１０では、ＷＡＶＥバッファｊの書き込みが完了したか否か、すなわちＷＡＶＥバッファｊが合成した楽音波形サンプルでいっぱいになったか否か判別する。書き込みが完了していないときは、ステップ６０６に戻る。書き込みが完了していたときは、ステップ６１１で、レディフラグが０か否か判別する。０であるときは外部機器によるＷＡＶＥバッファｋの読み出しが完了しているということであるから、ステップ６１２でＷＡＶＥバッファｊを新たにＷＡＶＥＦＩＬＥとして出力コントロールファイル１１８に登録し、ステップ６１３でレディフラグに１をセットし、ステップ６１４でｊとｋの値を入れ替えて、ステップ６０６に戻る。
【００３５】
ステップ６１１でレディフラグが０でないときは、ＷＡＶＥバッファｋの読み出しがまだ完了していないということであるから、ステップ６１５で読み出しタイムアウトチェックを行い、ステップ６１６でタイムアウトになったか否か判別する。タイムアウトになっていないときは、ステップ６１８でＷＡＶＥバッファｋの読み出しが完了したか否か判別し、完了していないときは再びステップ６１１に戻る。ＷＡＶＥバッファｋの読み出しが完了していたときは、ステップ６１９でレディフラグを０とし、ステップ６１１に戻る。ステップ６１６で読み出しのタイムアウトになった場合は、ステップ６１７で演奏終了処理を行い、ステップ６０１に戻る。
【００３６】
なお、図５のＭＩＤＩシーケンサ１５１の処理のステップ５０８でＭＩＤＩ演奏停止が指示されたときは、音源部１５２では、演奏終了処理を行った後、ステップ６０１に戻るようになっている。
【００３７】
図７は、本実施形態のＭＩＤＩ演奏機能付きメモリカード７０１を使用する各種機器の例を示す。ＭＩＤＩ演奏機能付きメモリカード７０１は、コネクタ接続により、パーソナルコンピュータ７１１、ノートパソコン７１２、携帯型電話７１３、テレビ７１４、あるいは各種カードオーディオプレイヤ７１５などに接続することができる。
【００３８】
本実施の形態のメモリカード７０１は、内部にＭＩＤＩシーケンサと音源部を備えているので、各種接続機器７１１〜７１５は、音源やＭＩＤＩシーケンサ（ソフトウェア）が備えられていなくても、一般的なオーディオファイルが再生できる機器であれば（すなわち、メモリカードから出力されるディジタル楽音信号をディジタルアナログ変換した後、音響信号を出力することができる機器であれば）、ＭＩＤＩ演奏機能が可能となる。また、メモリカード７０１に対するＭＩＤＩの再生、早送り、早戻し、一時停止、および停止などの指示は、コントロールファイルへの書き込みで行うことができ、そのための特殊なコマンドなどは必要がない。
【００３９】
なお、上記実施の形態において、メモリカードの記憶媒体の形状、方式、あるいは仕様などは任意である。メモリカードの記憶媒体部分（メモリコア）にはフラッシュメモリなどの読み書き（消去）可能な不揮発メモリを使用しているが、演奏曲などのデータを固定して格納する場合はそのデータ記憶部分はＲＯＭ（リードオンリメモリ）にすればよい。ユーザデータが揮発してよい場合はＲＡＭ（ランダムアクセスメモリ）でもよい。また、フラッシュメモリを使用した場合は、その寿命があることから、ＷＡＶＥバッファやコントロールファイルなどの頻繁に読み書きされると思われるファイルを格納する領域は寿命を考えなくてもよいＲＡＭを使用するとよい。
【００４０】
上記実施の形態では、出力コントロールファイル１１８のＷＡＶＥＦＩＬＥにＷＡＶＥバッファのファイル名（ＷＡＶＥＢＵＦ０またはＷＡＶＥＢＵＦ１）を交互に書き込み、機器側はここに書かれているバッファを読みにいくようにしているが、ファイルシステムがＦＡＴ管理による場合は、音源部側でＷＡＶＥＢＵＦ０とＷＡＶＥＢＵＦ１の各ファイルを定義するディレクトリ領域（図３（ａ））でファイル名を入れ替えてもよい。あるいは図３のディレクトリ情報で、２つのバッファの先頭クラスタの情報（図３（ａ）では「２」と「５」）を入れ替えることにより、使用するバッファの入れ替えを実現してもよい。さらに、別の実施の形態として、２つのＷＡＶＥバッファを拡張子で区別している場合は、その拡張子情報を入れ替えてもよい（図３（ｂ））。さらに、機器側からは常に同じ名前のファイルを読み出せばよいようにし、メモリカード側で、そのファイル名でアクセスすべきバッファを上述したようにディレクトリ領域の書き替えで入れ替えるようにしてもよい。
【００４１】
なお、本明細書におけるＭＩＤＩデータとは楽曲演奏データであり、基本的にはＭＭＡ（MIDI Manufacturer Association）や、日本の社団法人音楽電子事業協会（ＡＭＥＩ：Association of Musical Electronics Industry）などの組織で制定管理されているＭＩＤＩ（Musical Instrument Digital Interface）規格に基く形式の演奏データを意味するが、本発明の実施においては楽曲演奏データが特にＭＩＤＩ規格に沿ったフォーマットでなければならないということはない。シーケンサが対応可能なフォーマットの演奏データであればよい。本明細書では、楽曲演奏データ一般を、便宜上、ＭＩＤＩデータと表記した。
【００４２】
また上記実施の形態では、音楽波形データのバッファリングをダブルバッファ方式とし、ＷＡＶＥＢＵＦ０，ＷＡＶＥＢＵＦ１という名称のファイルを交互に更新出力する方式を例示した。他に、バッファ用のファイル領域は２つ（あるいは複数）確保しておき、ファイル名はデータの更新の度にＷＡＶＥＢＵＦ０，ＷＡＶＥＢＵＦ１，ＷＡＶＥＢＵＦ２，ＷＡＶＥＢＵＦ３…などと順次、時系列関係が認識できるようなファイル名を付けて、外部機器側はこのファイル名から読み出すべきファイルを認識して音楽波形データを読み出すようにしてもよい。
【００４３】
また、上記実施の形態では、外部機器側に対し、読み出すべき音楽波形データあるいはＷＡＶＥファイルがある場合はＲＥＡＤＹフラグを立てるようにしたが、ファイル領域に音楽波形データを書き込み中（音楽波形データ生成中）はその領域に対応するファイル名を変えるあるいは仮想的に削除状態にし、外部機器からは読むべきファイルがないように見える状態にして、書き込みが終了したら、本来のファイル名をセットするような方法にしてもよい。この方法によれば、ファイルあるいはファイル名の確定を検知して音楽波形データを読み出せばよいので、ＲＥＡＤＹフラグは特に設けなくてもよい。
【００４４】
また、演奏の開始ＰＬＡＹ、終了ＳＴＯＰなどの演奏制御は、コントロールファイルによる他、メモリカードに別途設けたコマンド入力を介して制御を行うようにしてもよい。
【００４５】
ＷＡＶＥバッファに書き出す音楽波形データは非圧縮のリニアフォーマットでもよいし、ＤＰＣＭ、ＡＤＰＣＭ、あるいはＭＰＥＧ系など各種のデータ圧縮方式によるフォーマットにしてもよい。さらに、データには暗号化処理を加えて、認証された外部機器以外では利用（再生、複写など）できないようにしてもよい。
【００４６】
データコントローラ、ＭＩＤＩシーケンサ、音源部はそれぞれ独立したＬＳＩチップ構成としてもよいし、マイクロプロセッサなどで各機能をまとめて実現してもよい。昨今、高度に進歩しつつある集積化技術によれば、メモリも含めて全機能を１チップに収めることも可能であろう。
【００４７】
音源部において、音源方式は何でもよい。ＦＭ方式、サンプリング波形メモリ（ＰＣＭ）方式、物理モデル方式など適宜、仕様に応じて選定すればよい。
【００４８】
また、音源部をマイクロプロセッサやＤＳＰ（ディジタル信号プロセッサ）で構成し、対応の音源処理プログラムは外部からメモリに供給し実行させるというシステムにしてもよい。ＭＩＤＩシーケンサも同様のシステム構成にしてよい。
【００４９】
さらに、本発明に係る記憶装置の外形、外観はカード状のものに限らず、箱（パック）状、棒状、円盤状など、何でもよい。
【００５０】
【発明の効果】
以上説明したように、この発明によれば、音源部とシーケンス機能をメモリカードなどの記憶装置に内蔵することで、該記憶装置を差し込むだけでＭＩＤＩなどの再生が手軽にできるようになるという効果がある。また、該記憶装置への例えばＭＩＤＩ制御は、所定のファイル名のコントロールファイルへの書き込みで実行できるので、各種記憶装置の規格などに特殊なコマンドを付けることなどは不要であり、規格や方式を変更する必要がない。
【図面の簡単な説明】
【図１】本発明の実施の形態に係るメモリカード音源のブロック構成図
【図２】コントロールファイル、出力コントロールファイル、およびセットアップファイルの構成を示す図
【図３】メモリコアにおけるディレクトリ情報やＦＡＴ領域およびデータ領域の格納例を示す図
【図４】データコントローラの処理手順を示すフローチャート図
【図５】ＭＩＤＩシーケンサの処理手順を示すフローチャート図
【図６】音源部の処理手順を示すフローチャート図
【図７】ＭＩＤＩ演奏機能付きメモリカードを使用する各種機器の例を示す図
【符号の説明】
１０１…コネクタ、１０２…インタフェースドライバ、１０３…データコントローラ、１０４…メモリコア、１０５…ファンクションチップ。
【図１】
0003687090.tif 000002
【図２】
0003687090.tif 000003
【図３】
0003687090.tif 000004
【図４】
0003687090.tif 000005
【図５】
0003687090.tif 000006
【図６】
0003687090.tif 000007
【図７】
0003687090.tif 000008