(57)【要約】【課題】簡単な構成で速く読み出しを開始することができる波形再生装置を提供する。【解決手段】オーディオバッファ４ａの読出アドレスＲｄＰｏｓの振幅値ＡｕｄｉｏＢｕｆ［ＲｄＰｏｓ］を読み出す（Ｓ２１）。次に、読出アドレスＲｄＰｏｓを１進め（Ｓ２２）。読出アドレスＲｄＰｏｓが１２８より小さくない場合は（Ｓ２３：Ｎｏ）、読出アドレスＲｄＰｏｓを０とし（Ｓ２４）、Ｌｅｖｅｌの値を乗算器の係数とする（Ｓ２５）。乗算器は、Ｓ２１の処理で読み出した振幅値に係数を乗算するもので、本発明において、オーディオバッファ４ａに記憶された波形の振幅値は、Ｓ２１の処理により、常時読み出されるが、乗算器により係数が０．０に設定されて乗算されることにより、出力されるレベルがミュートされ、再生が開始された場合は、係数が１．０に設定されて乗算され、振幅値が再生される。【選択図】図５
2007114637.tif 000002
【特許請求の範囲】
【請求項１】
楽音の波形を記憶する波形記憶手段と、その波形記憶手段に記憶されている波形を読み出す波形読み出し手段とを備えた波形再生装置において、
前記波形記憶手段に記憶された波形の先頭部分を記憶する先頭波形記憶手段と、
その先頭波形記憶手段に記憶された波形を先頭アドレスから繰り返し読み出す先頭波形読み出し手段と、
楽音の発生の開始を指示する発音開始指示手段と、
前記発音開始指示手段により楽音の発生の開始が指示された場合、前記先頭波形読み出し手段により前記先頭波形記憶手段の先頭アドレスから読み出しを開始するまで、前記先頭波形読み出し手段により読み出された波形のレベルをミュートし、前記先頭波形読み出し手段により前記先頭波形記憶手段の先頭アドレスから読み出しを開始すると前記先頭波形読み出し手段により読み出された波形のレベルを所定値に設定するレベル調整手段とを備え、
前記波形読み出し手段は、前記先頭波形記憶手段に記憶された波形の読み出しが終了した場合は、前記波形記憶手段に記憶された先頭波形に続く波形を読み出すことを特徴とする波形再生装置。
【請求項２】
前記先頭波形記憶手段に、前記波形読み出し手段が読み出した先頭波形を転送する転送手段を備えていることを特徴とする請求項１記載の波形再生装置。
【請求項３】
前記波形記憶手段は、複数の波形を記憶するものであって、
前記波形記憶手段が記憶する複数の波形のいずれかを選択する選択手段と、
その選択手段により前記波形記憶手段が記憶する複数の波形のいずれかが選択された場合は、選択された波形の先頭波形を前記先頭波形記憶手段に転送する転送手段とを備えていることを特徴とする請求項１記載の波形再生装置。
【請求項４】
前記転送手段は、前記先頭波形記憶手段に記憶された波形の読み出しが終了した領域に、前記波形読み出し手段が先に読み出した波形に続く波形を転送し、前記先頭波形読み出し手段は、前記先頭波形記憶手段に記憶された先頭波形の読み出しを終了した後、前記転送手段により前記先頭波形記憶手段に転送された波形を読み出すことを特徴とする請求項２または３記載の波形再生装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、波形再生装置に関し、簡単な構成で速く読み出しを開始することができる波形再生装置に関する。
【背景技術】
【０００２】
楽音波形をメモリに記憶し、その楽音波形を読み出して楽音を再生する波形再生装置では、記憶容量が大きいハードディスクなどに多数の波形を記憶し、使用者により選択された波形を再生する。しかしながら、ハードディスクなどは、記憶容量が大きい反面、ヘッドが記憶位置まで移動するシークなどに時間が掛かり、アクセスタイムが遅いという欠点がある。
【０００３】
そこで、特許２７９８０７７号公報（特許文献１）に開示された発明では、波形の先頭部分を高速にアクセスすることができる半導体メモリに記憶し、再生開始の指示があった場合は、半導体メモリに記憶した先頭部分の先頭から読み出しを開始し、読み出しを終了した領域には、先頭部分に続く波形を記憶容量の大きい記憶装置から転送して繰り返し読み出しを行うように構成されている。
【特許文献１】特許２７９８０７７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載されている装置では、読み出しの開始指示に応じて波形の先頭部分を記憶する波形メモリから読み出しを開始しなければならず、回路構成が複雑になり、コストが高くなるという問題点があった。
【０００５】
本発明は、上記問題点を解決するためになされたものであり、簡単な構成で速く読み出しを開始することができる波形再生装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
この目的を達成するために、請求項１記載の波形再生装置は、楽音の波形を記憶する波形記憶手段と、その波形記憶手段に記憶されている波形を読み出す波形読み出し手段とを備えたものであって、前記波形記憶手段に記憶された波形の先頭部分を記憶する先頭波形記憶手段と、その先頭波形記憶手段に記憶された波形を先頭アドレスから繰り返し読み出す先頭波形読み出し手段と、楽音の発生の開始を指示する発音開始指示手段と、前記発音開始指示手段により楽音の発生の開始が指示された場合、前記先頭波形読み出し手段により前記先頭波形記憶手段の先頭アドレスから読み出しを開始するまで、前記先頭波形読み出し手段により読み出された波形のレベルをミュートし、前記先頭波形読み出し手段により前記先頭波形記憶手段の先頭アドレスから読み出しを開始すると前記先頭波形読み出し手段により読み出された波形のレベルを所定値に設定するレベル調整手段とを備え、前記波形読み出し手段は、前記先頭波形記憶手段に記憶された波形の読み出しが終了した場合は、前記波形記憶手段に記憶された先頭波形に続く波形を読み出すものである。
【０００７】
請求項２記載の波形再生装置は、請求項１記載の波形再生装置において、前記先頭波形記憶手段に、前記波形読み出し手段が読み出した先頭波形を転送する転送手段を備えている。
【０００８】
請求項３記載の波形再生装置は、請求項１記載の波形再生装置において、前記波形記憶手段は、複数の波形を記憶するものであって、前記波形記憶手段が記憶する複数の波形のいずれかを選択する選択手段と、その選択手段により前記波形記憶手段が記憶する複数の波形のいずれかが選択された場合は、選択された波形の先頭波形を前記先頭波形記憶手段に転送する転送手段とを備えている。
【０００９】
請求項４記載の波形再生装置は、請求項２または３記載の波形再生装置において、前記転送手段は、前記先頭波形記憶手段に記憶された波形の読み出しが終了した領域に、前記波形読み出し手段が先に読み出した波形に続く波形を転送し、前記先頭波形読み出し手段は、前記先頭波形記憶手段に記憶された先頭波形の読み出しを終了した後、前記転送手段により前記先頭波形記憶手段に転送された波形を読み出すものである。
【発明の効果】
【００１０】
請求項１記載の波形再生装置によれば、波形記憶手段に記憶された波形の先頭部分を記憶する先頭波形記憶手段と、その先頭波形記憶手段に記憶された波形を先頭アドレスから繰り返し読み出す先頭波形読み出し手段と、楽音の発生の開始を指示する発音開始指示手段と、発音開始指示手段により楽音の発生の開始が指示された場合、先頭波形読み出し手段により先頭波形記憶手段の先頭アドレスから読み出しを開始するまで、先頭波形読み出し手段により読み出された波形のレベルをミュートし、先頭波形読み出し手段により先頭波形記憶手段の先頭アドレスから読み出しを開始すると先頭波形読み出し手段により読み出された波形のレベルを所定値に設定するレベル調整手段とを備え、波形読み出し手段は、先頭波形記憶手段に記憶された波形の読み出しが終了した場合は、波形記憶手段に記憶された先頭波形に続く波形を読み出すものであるので、楽音の発生の開始の指示に応じて先頭波形記憶手段の先頭アドレスから読み出しを開始する構成が不要となり、簡単な構成で速く読み出しを開始することができるという効果がある。
【００１１】
請求項２記載の波形再生装置によれば、請求項１記載の波形再生装置の奏する効果に加え、先頭波形記憶手段に、波形読み出し手段が読み出した先頭波形を転送する転送手段を備えているので、先頭波形記憶手段を電源が遮断された場合に記憶内容を消失するメモリで構成することができるという効果がある。なお、転送手段は、電源投入時やユーザによる操作が行われた場合に、波形記憶手段から先頭波形を転送することができる。
【００１２】
請求項３記載の波形再生装置によれば、請求項１記載の波形再生装置の奏する効果に加え、波形記憶手段は、複数の波形を記憶するものであって、波形記憶手段が記憶する複数の波形のいずれかを選択する選択手段と、その選択手段により波形記憶手段が記憶する複数の波形のいずれかが選択された場合は、選択された波形の先頭波形を先頭波形記憶手段に転送する転送手段とを備えているので、選択された波形を速く読み出すことができるという効果がある。
【００１３】
請求項４記載の波形再生装置によれば、請求項２または３記載の波形再生装置の奏する効果に加え、転送手段は、先頭波形記憶手段に記憶された波形の読み出しが終了した領域に、波形読み出し手段が先に読み出した波形に続く波形を転送し、先頭波形読み出し手段は、先頭波形記憶手段に記憶された先頭波形の読み出しを終了した後、転送手段により先頭波形記憶手段に転送された波形を読み出すものであるので、先頭波形を読み出した後、波形記憶手段から先頭波形記憶手段に転送する時間に余裕が生じ、波形記憶手段から波形を読み出すのに時間を要しても、波形の出力が一時的に途切れることを防止することができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の好ましい実施形態について、添付図面を参照して説明する。図１は、本発明の一実施形態である波形再生装置１の電気的構成を示したブロック図である。波形再生装置１は、ＣＰＵ２と、ＲＯＭ３と、ＲＡＭ４と、操作部５と、ハードディスク６と、制御チップ７と、Ｄ／Ａ変換器８と、アンプ９と、スピーカ１０と、インターフェース（Ｉ／Ｆ）１１とにより構成されている。
【００１５】
ＣＰＵ２は演算装置であり、ＲＯＭ３は、ＣＰＵ２により実行される各種の制御プログラムやその制御プログラムを実行する際に参照される固定値データが記憶されている。制御プログラムの一つが波形再生プログラムであり、図４、図５および図６にその処理のフローチャートを示す。
【００１６】
ＲＡＭ４は、ＣＰＵ２が、ＲＯＭ３に記憶されている制御プログラムの実行に当たって各種のデータ等を一時的に記憶するワーキングエリアと、再生を行う波形の先頭部分を記憶する先頭波形メモリ（以下、オーディオバッファと称す）４ａとを有する書き換え可能なメモリである。この実施形態では、オーディオバッファ４ａは、１２８の振幅値を記憶するものとし、各振幅値は、オーディオバッファ４ａの各アドレスに対応して順次記憶されるものとする。ワーキングエリアには、後述する読出アドレスＲｄＰｏｓや書込アドレスＷｒＰｏｓなどの変数が記憶される。
【００１７】
操作部５は、図２を参照して後述するようにＬＣＤにより構成される表示器５ａと複数の操作子５ｂ〜５ｆにより構成される。ハードディスク６は、記憶容量が大きい書き換え可能で不揮発なメモリであり、複数の波形を記憶する波形メモリ６ａを有する。ハードディスク６は、磁気ディスクに磁気変化によりデータをトラック毎に記憶し、そのデータを読み出す場合には、読出ヘッドが記憶されているトラックまで移動する必要があるので、半導体メモリなどに比べ読み出しを開始するまでに時間を要する。
【００１８】
制御チップ７は、ハードディスク６に記憶された波形の振幅値をＲＡＭ４のオーディオバッファ４ａへ転送したり、オーディオバッファ４ａに記憶されている波形の振幅値を順次読み出してＤ／Ａ変換器８へ出力するなどの処理を行う専用チップである。なお、本実施形態では、説明を簡単にするために、制御チップ７が行う処理を、ＣＰＵ２が行うものとして説明する。
【００１９】
Ｄ／Ａ変換器８は、制御チップ７が出力したデジタル値をアナログ信号に変換するものであり、変換されたアナログ信号は、アンプ９により増幅されてスピーカ１０に供給され、スピーカ１０により波形が楽音として放音される。インターフェース１１は、インターネットなどのネットワークのインターフェースであって、このインターフェースを介して、各種、波形（楽曲）がダウンロードされる。
【００２０】
次に、図２を参照して、操作部５について説明する。図２は、波形再生装置１の操作部を示すパネル図である。操作部５は、表示器５ａと、選曲ボタン５ｂと、カーソルボタン５ｃ，５ｄと、ＯＫボタン５ｅと、スタート／ストップボタン５ｆとを備えている。
【００２１】
表示器５ａは、再生を行う波形を選択する場合には、ハードディスク６の波形メモリ６ａが記憶している複数の波形の名称（図２では、各波形は、楽曲である場合を示している）を表示する。使用者がその複数の波形の名称のいずれかにカーソルボタン５ｃまたは５ｄを操作してカーソルを合わせ、ＯＫボタン５ｅを押下することにより選曲が行われる。
【００２２】
選曲が行われて、再生が開始された場合には、図示しないが、再生されている波形の名称や、再生の状況、例えば、全体の再生時間に対して、現在の再生位置または割合などが表示される。
【００２３】
選曲ボタン５ｂは、波形の選択を行うためのボタンであり、この選曲ボタン５ｂが押下されると、表示器５ａに、波形メモリ６ａが記憶している複数の波形の名称が表示される。カーソルボタン５ｃおよび５ｄは、波形を選択する際に、表示器５ａに表示された複数の波形を示す名称にカーソルが表示され（図示なし）、カーソルボタン５ｃは、カーソルを上方へ移動するように指示し、カーソルボタン５ｄは、カーソルを下方へ移動するように指示するものである。カーソルが、表示器５ａの上限に位置する際に、カーソルボタン５ｃが操作されると、表示画面は、下方にスクロールし、カーソルが表示器５ａの下限に位置する際に、カーソルボタン５ｄが操作されると、表示画面は、上方にスクロールする。
【００２４】
ＯＫボタン５ｅは、カーソルが位置する波形の名称の選択を確定する際に操作するボタンであり、このＯＫボタン５ｅを操作することにより、波形の選択が完了する。スタート／ストップボタン５ｆは、選択されている波形の再生を開始または停止させるボタンであり、再生が停止している際に、このスタート／ストップボタン５ｆが操作されると、波形の先頭から再生が開始され、波形の再生中にこのスタート／ストップボタン５ｆが操作されると再生が直ちに停止される。なお、図示しないが、音量や音質を制御する操作子を備え、その操作により音量や音質を制御するようにしてもよい。
【００２５】
次に、図３を参照して、波形メモリ６ａに記憶される波形に関する定数や、波形再生処理において用いられる変数について説明する。図３（ａ）は、ハードディスク６に記憶される複数の波形のそれぞれについて、波形の名称、ハードディスク６内の波形の先頭のアドレス（ＳｏｎｇＴｏｐ）および波形の長さ（Ｓｏｎｇｌｅｎ）を示す。例えば、波形の名称が「曲１」の波形は、ハードディスク６のアドレス０から記憶され、波形の長さは、５０００アドレスである（波形の振幅値が一つのアドレスに対応して記憶されているものとする）。これらのデータは、ハードディスク６の所定の領域に記憶されているものとする。
【００２６】
図３（ｂ）は、次に説明する波形再生処理において用いられる変数を示すテーブルである。変数ＡｕｄｉｏＢｕｆ［ｘ］は、オーディオバッファ４ａのアドレスｘに記憶されている波形の振幅値であり、０．０〜１．０の範囲の値をとる。
【００２７】
変数ＲｄＰｏｓは、再生処理において出力する振幅値をオーディオバッファ４ａから読み出す読出アドレスであり、０〜１２７の値をとる。変数ＷｒＰｏｓは、ハードディスク６からオーディオバッファ４ａへ、振幅値を転送する際の、オーディオバッファ４ａの書込アドレスであり、０〜１２７の値をとる。
【００２８】
変数Ｌｅｖｅｌは、再生処理において振幅値に乗算する係数であり、０．０または１．０の値をとる。正確には、変数Ｌｅｖｅｌの値が、０．０から１．０の値に変更された後、オーディオバッファ４ａの先頭アドレスから読み出しを開始した際に、乗算器の係数が１．０に設定される。
【００２９】
ＣｕｒＡｄｒｓは、ハードディスク６からオーディオバッファ４ａへ振幅値が転送される際の、ハードディスク６の現在の読出アドレスである。ＥｎｄＡｄｒｓは、ハードディスク６の現在選択されている波形の最後のアドレスであり、ＴｏｐＡｄｒｓは、ハードディスク６の現在選択されている波形の先頭のアドレスであり、Ｗａｖｅｌｅｎは、ハードディスク６の現在選択されている波形の長さである。
【００３０】
次に、図４、図５および図６を参照して波形再生装置１での波形再生処理について説明する。図４は、波形再生処理のメイン処理を示すフローチャートである。このメイン処理は、波形再生装置１の電源が投入されると起動され、電源が遮断されるまで繰り返し行われる処理である。まず、初期設定を行う（Ｓ１）。この初期設定としては、前回電源が遮断された時に指定されていた波形の種類をハードディスク６に記憶しておき、その波形の先頭の１２８個の振幅値を、ＲＡＭ４のオーディオバッファ４ａに記憶する。
【００３１】
また、その波形が記憶されているハードディスク６の先頭アドレスを、変数ＴｏｐＡｄｒｓとし、その波形の最終アドレスをＥｎｄＡｄｒｓとする。また、変数ＲｄＡｄｒｓおよびＷｒＡｄｒｓを０、変数Ｌｅｖｅｌを０．０として、図５に示す再生処理および図６に示す転送処理を開始する。
【００３２】
次に、スタート／ストップボタン５ｆが操作されたか否かを判断する（Ｓ２）。スタート／ストップボタン５ｆが操作されない場合は（Ｓ２：Ｎｏ）、波形選択が行われたか否かを判断する（Ｓ３）。この波形選択が行われた場合は、上述の通り、表示器５において、選曲ボタン５ｂが操作され、表示器５に表示された複数の波形の名称のいずれかにカーソルが合わせられて、ＯＫボタン５ｅが操作された場合である。
【００３３】
波形選択が行われた場合は（Ｓ３：Ｙｅｓ）、変数ｎに選択された波形を示す番号を代入する（Ｓ４）。さらに、選択された波形のハードディクス６に記憶されている先頭アドレスＳｏｎｇＴｏｐ［ｎ］を、先頭アドレスを示す変数ＴｏｐＡｄｒｓに代入し（Ｓ５）、選択された波形の長さ（アドレス数）Ｓｏｎｇｌｅｎ［ｎ］を波形の長さを示す変数Ｗａｖｅｌｅｎに代入する（Ｓ６）。Ｓ６の処理の後、選択された波形の先頭の１２８の振幅値をオーディオバッファ４ａに転送する。この処理は、ＷｒＰｏｓを０に設定しＲｄＰｏｓを１２７に設定して、図６に示す転送処理を起動することにより行われる。
【００３４】
Ｓ６の処理を終了した場合およびＳ３の判断処理において、波形選択が行われなかった場合（Ｓ３：Ｎｏ）は、Ｓ２の処理に戻る。
【００３５】
一方、Ｓ２の判断処理で、スタート／ストップボタン５ｆが操作された場合は（Ｓ２：Ｙｅｓ）、再生中であるか否かを判断する（Ｓ１１）。再生中の場合は、再生レベルを示す変数Ｌｅｖｅｌが１．０に設定され、再生中ではない停止中の場合には、変数Ｌｅｖｅｌが０．０に設定されるので、変数Ｌｅｖｅｌに設定されている値により、再生中か否かを判断することができる。
【００３６】
再生中である場合は（Ｓ１１：Ｙｅｓ）、ハードディスク６の現在読出アドレスを示す変数ＣｕｒＡｄｒｓに、ＴｏｐＡｄｒｓを代入し、最終アドレスを示す変数ＥｎｄＡｄｒｓに、ＴｏｐＡｄｒｓに１２８を加算したアドレスを代入し（Ｓ１３）、変数Ｌｅｖｅｌに０．０を設定してＳ２の処理に戻る。この処理により、オーディオバッファ４ａから読み出された振幅値は、ミュートされ振幅値が出力されない停止状態になる。
【００３７】
Ｓ１１の判断処理において、再生中ではない場合は（Ｓ１１：Ｎｏ）、ＥｎｄＡｄｒｓに、ＴｏｐＡｄｒｓにＷａｖｅｌｅｎを加算した値を代入し（Ｓ１５）、変数Ｌｅｖｅｌを１．０に設定して（Ｓ１６）Ｓ２の処理に戻る。この処理により、オーディオバッファ４ａから読み出された振幅値は、そのまま出力されることになる。詳細は、図５を参照して次に説明する。
【００３８】
次に、図５を参照して、再生処理について説明する。図５は、再生処理を示すフローチャートである。この再生処理は、サンプリング周期で起動されるルーチンである。まず、オーディオバッファ４ａの読出アドレスＲｄＰｏｓの振幅値ＡｕｄｉｏＢｕｆ［ＲｄＰｏｓ］を読み出す（Ｓ２１）。次に、読出アドレスＲｄＰｏｓを１進め（Ｓ２２）、読出アドレスＲｄＰｏｓが１２８より小さいか否かを判断する（Ｓ２３）。
【００３９】
読出アドレスＲｄＰｏｓが１２８より小さくない場合は（Ｓ２３：Ｎｏ）、読出アドレスＲｄＰｏｓを０とし（Ｓ２４）、Ｌｅｖｅｌの値を乗算器の係数とする（Ｓ２５）。乗算器は、Ｓ２１の処理で読み出した振幅値に係数を乗算するもので、本発明において、オーディオバッファ４ａに記憶された波形の振幅値は、Ｓ２１の処理により、常時読み出されるが、乗算器により係数が０．０に設定されて乗算されることにより、出力されるレベルがミュートされ、再生が開始された場合は、係数が１．０に設定されて乗算され、振幅値が再生される。
【００４０】
その際、Ｌｅｖｅｌの値は、スタート／ストップボタン５ｆの操作に応じて０．０または、１．０に設定されるが、その値が実際に振幅値に乗算されるのは、読出アドレスＲｄＰｏｓが、オーディオバッファ４ａの先頭アドレスに設定された時以降である。このことにより、選択された波形の先頭アドレスの読み出しの開始に同期して、再生が開始されることになる。
【００４１】
Ｓ２３の判断処理で、読出アドレスＲｄＰｏｓが１２８より小さい場合（Ｓ２３：Ｙｅｓ）またはＳ２５の処理を終了した場合は、乗算器に設定された係数と、Ｓ２１の処理で読み出された振幅値とを乗算し（Ｓ２６）、その乗算した値をＤ／Ａ変換器８に出力する。
【００４２】
以上、再生処理について説明したように、オーディオバッファ４ａからは、常時振幅値が順次読み出され、再生の開始が指示されると、オーディオバッファ４ａの先頭アドレスからの読み出しに同期してレベルが変更される。したがって、再生の開始の指示があった場合は、選択された波形の先頭アドレスから再生が開始される。
【００４３】
一方、再生の停止の指示があった場合は、オーディオバッファ４ａの先頭アドレスからの読み出しに同期してレベルがミュートされる。
【００４４】
次に、図６を参照して、ハードディスク６からオーディオバッファ４ａへ、選択されている波形の振幅値を順次転送する転送処理について説明する。図６は、転送処理を示すフローチャートである。この転送処理は、オーディオバッファ４ａの読み出しが終了した領域へ、ハードディスク６から振幅値を転送する処理である。したがって、この処理は、オーディオバッファ４ａの振幅値を全て読み出す周期より短い周期で起動する必要がある。
【００４５】
オーディオバッファ４ａのアドレス数が、１２８で、サンプリング周波数を４４．１ＫＨｚとすると、オーディオバッファ４ａに記憶される全振幅値を読み出すには、約２．９ｍｓｅｃを要するので、例えば、この時間の約半分の１．５ｍｓｅｃ毎に起動する。
【００４６】
まず、ハードディスク６の現在の読出アドレスＣｕｒＡｄｒｓが、現在選択されている波形の最終アドレスＥｎｄＡｄｒｓより小さいか否かを判断する（Ｓ３１）。
【００４７】
現在の読出アドレスＣｕｒＡｄｒｓがＥｎｄＡｄｒｓより小さい場合は（Ｓ３１：Ｙｅｓ）、現在の読出アドレスＣｕｒＡｄｒｓが、ＥｎｄＡｄｒｓには、まだ至っていないので、次に、オーディオバッファ４ａの読出アドレスＲｄＰｏｓと、書込アドレスＷｒＰｏｓとが等しいか否かを判断する（Ｓ３２）。
【００４８】
オーディオバッファ４ａの読出アドレスＲｄＰｏｓと、書込アドレスＷｒＰｏｓとが等しくない場合は（Ｓ３２：Ｎｏ）、ハードディスク６の読出アドレスＣｕｒＡｄｒｓの振幅値を読み出し、オーディオバッファ４ａの書込アドレスＷｒＰｏｓにその振幅値を書き込む（Ｓ３３）。そして、ハードディスク６の読出アドレスＣｕｒＡｄｒｓを１進め（Ｓ３４）、オーディオバッファ４ａの書込アドレスＷｒＰｏｓを１進める（Ｓ３５）。オーディオバッファ４ａの書込アドレスＷｒＰｏｓが、１２８より小さくない場合は（Ｓ３６：Ｎｏ）、書込アドレスＷｒＰｏｓを０に設定し、書込アドレスＷｒＰｏｓが１２８より小さい場合は、Ｓ３１の処理に戻る（Ｓ３６：Ｙｅｓ）。
【００４９】
一方、Ｓ３１の判断処理で、ハードディスク６の現在の読出アドレスＣｕｒＡｄｒｓが、現在選択されている波形の最終アドレスＥｎｄＡｄｒｓに至った場合は、変数Ｌｅｖｅｌの値を０．０に設定し、オーディオバッファ４ａのＷｒＰｏｓから最終アドレスまでの振幅値を０．０としてこの転送処理を終了する。また、Ｓ３２の判断処理において、
オーディオバッファ４ａの読出アドレスＲｄＰｏｓと、書込アドレスＷｒＰｏｓとが等しい場合は（Ｓ３２：Ｙｅｓ）、オーディオバッファ４ａのすでに読み出した領域へのハードディスク６からの転送が完了したことになるので、この転送処理を終了する。
【００５０】
以上説明したように、本実施形態の波形再生装置１によれば、ＲＡＭ４にオーディオバッファ４ａを備え、波形の先頭波形を記憶するとともに、この先頭波形メモリの波形は、常時、順に読み出される。再生開始の指示が行われていない場合は、読み出された振幅値には、０が乗算され、波形の振幅値は出力されない。再生開始の指示が行われると、オーディオバッファ４ａの先頭アドレスからの読み出しに同期して乗算器の係数が所定値に設定され、振幅値の出力が開始される。したがって、再生の指示に同期して先頭アドレスから読み出しの開始を指示する必要がなく、回路構成を簡単なものにすることができる。
【００５１】
なお、請求項１記載の先頭波形読み出し手段は、図５に記載のフローチャートのＳ２１の処理が該当し、請求項１記載のレベル調整手段は、図５に記載のフローチャートのＳ２６の処理が該当し、波形読み出し手段は、図６に記載のフローチャートのＳ３３の処理が該当する。また、請求項２および３記載の転送手段は、図６に記載のフローチャートの処理が該当する。
【００５２】
以上、実施形態に基づき本発明を説明したが、本発明は上記実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変形が可能であることは容易に推察できるものである。
【００５３】
例えば、上記実施形態では、先頭波形はＲＡＭ４に記憶されるものとしたが、予めＲＯＭ３に記憶するようにしてもよい。すなわち、ＲＯＭ３に、曲１、曲２等の各波形の先頭の１２８の振幅値を予め記憶し、波形が選択されると、ＲＯＭ３に記憶された先頭波形を繰り返し読み出し、再生の開始の指示があった場合は、ＲＯＭ３に記憶された先頭波形の先頭アドレスからの読み出しに同期して、乗算器の係数を所定の値とする。ＲＯＭ３に記憶された先頭波形の読み出しを終了した後は、ハードディスク６から直接振幅値を読み出して出力するようにしてもよいし、ＲＡＭ４にバッファを設けて一時ＲＡＭ４に転送し、ＲＡＭ４から読み出して出力するようにしてもよい。
【００５４】
また、上記実施形態では、ＲＡＭ４に記憶した先頭波形を読み出した後、ハードディスク６から先頭波形に続く波形を順次ＲＡＭ４に転送し、そのＲＡＭ４に転送された波形を順位読み出して出力するものとしたが、先頭波形を読み出したあと、その先頭波形に続く波形を直接ハードディスク６から読み出して出力するようにしてもよい。
【００５５】
また、上記実施形態では、再生の開始または停止を指示する操作子であるスタート／ストップボタン５ｆを備え、その操作子が操作された場合に再生の開始または停止を行うものとしたが、インターフェース１１を介して、再生の開始または停止の指示を入力し、その指示に応じて再生の開始または停止を行うようにしてもよい。
【００５６】
また、上記実施形態では、波形を選択するカーソルボタン５ｃ、５ｄを備え、これらのい操作子が操作された場合に波形を選択するものとしたが、インターフェース１１を介して、ＭＩＤＩ規格に規定されるプログラムチェンジを入力し、その入力されたプログラムチェンジに応じて波形を選択するようにしてもよい。
【図面の簡単な説明】
【００５７】
【図１】本発明の実施形態における波形再生装置の電気的構成を示すブロック図である。
【図２】波形再生装置の操作パネル図である。
【図３】（ａ）は、波形メモリに記憶されている波形に関する定数を示し、（ｂ）は、波形再生処理において用いられる変数を示すテーブルである
【図４】波形再生装置におけるメイン処理を示すフローチャートである。
【図５】波形再生処理を示すフローチャートである。
【図６】転送処理を示すフローチャートである。
【符号の説明】
【００５８】
１                  波形再生装置
２                  ＣＰＵ
４                  ＲＡＭ
４ａ                先頭波形メモリ（先頭波形記憶手段）
５                  操作部
５ａ                表示器
５ｃ、５ｄ          カーソルボタン（選択手段）
５ｆ                スタート／ストップボタン（発音開始指示手段）
６                  ハードディスク
６ａ                波形メモリ（波形記憶手段）
【図１】
2007114637.tif 000003
【図２】
2007114637.tif 000004
【図３】
2007114637.tif 000005
【図４】
2007114637.tif 000006
【図５】
2007114637.tif 000007
【図６】
2007114637.tif 000008