(57)【要約】   【課題】  ＯＬＡ方式を用いて簡易な構成で実現でき、かつ、フレーム接合点での不連続性などに伴う音質劣化を解決する。  【解決手段】  入力フレームデータ生成部２６は、入力バッファ２５のデータに基づき、第１のフレームサイズおよびオーバーラップ比にしたがった第１のホップサイズを有する所定数のサブフレームからなる、入力フレーム２７を生成する。フレーム間演算部３０は、入力フレーム２７に窓関数を施した上で、第２のホップサイズだけずらして重ねあわせて、出力フレーム２９に格納する。出力バッファデータ生成部２８は、出力フレーム２９から、第２のホップサイズを有する所定数のサブフレームからなる出力バッファ３１にデータを格納する。ＣＰＵ１１は、再生速度比が「１」より小さい場合であるスロー再生と、「１」より大きい場合であるファスト再生のそれぞれで、異なる第１のフレームサイズおよびオーバーラップ比を決定する。【選択図】  図２
2011043654.tif 000002
【特許請求の範囲】
【請求項１】
入力データを複数のフレームに分割し、かつ、その分割されたフレームを部分的に重ね合わせることで、出力データを生成するデータ変換装置であって、
所定の第１のフレームサイズの入力データを格納する入力バッファと、
前記入力データに対する前記出力データの再生速度の比を示す再生速度比にしたがった所定の第２のフレームサイズの出力データを格納する出力バッファと、
前記入力バッファの入力データに基づき、前記第２のフレームサイズの出力データを生成するデータ変換手段であって、
前記入力バッファの入力データから、それぞれが、前記第１のフレームサイズおよびオーバーラップ比にしたがった第１のホップサイズを有する、前記オーバーラップ比に相当する所定数のサブフレームからなる、第１のフレームサイズを有する入力フレームを生成する入力フレームデータ生成手段、
前記入力フレームに窓関数を施す窓関数適用手段、
前記窓関数の施された入力フレームを、前記第１のホップサイズおよび前記再生速度比に基づく第２のホップサイズだけずらして重ねあわせ、かつ、その重ねあわされたデータを、前記第２のホップサイズのサブフレームを有する出力フレームに格納するフレーム間演算手段、並びに、
前記出力フレームに格納されたデータを、それぞれが、前記第２のホップサイズを有する前記所定数のサブフレームからなる前記出力バッファに格納する出力バッファデータ生成手段、を有するデータ変換手段と、
再生速度比を受け入れ、前記第１のフレームサイズおよびオーバーラップ比を決定する制御手段とを備え、
前記制御手段が、再生速度比が、「１」より小さい場合であるスロー再生と、「１」より大きい場合であるファスト再生のそれぞれにおいて、異なる第１のフレームサイズおよびオーバーラップ比を決定するように構成されたことを特徴とするデータ変換装置。
【請求項２】
前記制御手段が、前記スロー再生のときのオーバーラップ比が、前記ファスト再生のときのオーバーラップ比より大きいように、前記オーバーラップ比を決定することを特徴とする請求項１に記載のデータ変換装置。
【請求項３】
前記制御手段が、前記スロー再生のときのオーバーラップ比を「３」または「４」、前記ファスト再生のときのオーバーラップ比を「２」と決定することを特徴とする請求項２に記載のデータ変換装置。
【請求項４】
前記制御手段が、前記第１のフレームサイズを、前記サンプリング周波数および再生速度比に基づいて、前記スロー再生のときのフレームサイズが、前記ファスト再生のときのフレームサイズより小さくなるように、決定することを特徴とする請求項１ないし３の何れか一項に記載のデータ変換装置。
【請求項５】
前記制御手段が、前記第１のフレームサイズを、スロー再生のときに、入力データのサンプリング周波数の１／１０に相当する数所定範囲に属する数、ファスト再生のときに、入力データのサンプリング周波数の１／５に相当する数所定範囲に属する数に決定することを特徴とする請求項４に記載のデータ変換装置。
【請求項６】
入力データを複数のフレームに分割し、かつ、その分割されたフレームを部分的に重ね合わせることで、出力データを生成するデータプログラムであって、
所定の第１のフレームサイズの入力データを格納する入力バッファと、前記入力データに対する前記出力データの再生速度の比を示す再生速度比にしたがった所定の第２のフレームサイズの出力データを格納する出力バッファとを備えたコンピュータに、
前記入力バッファの入力データに基づき、前記第２のフレームサイズの出力データを生成するデータ変換ステップであって、
前記入力バッファの入力データから、それぞれが、前記第１のフレームサイズおよびオーバーラップ比にしたがった第１のホップサイズを有する、前記オーバーラップ比に相当する所定数のサブフレームからなる、第１のフレームサイズを有する入力フレームを生成する入力フレームデータ生成ステップ、
前記入力フレームに窓関数を施す窓関数適用ステップ、
前記窓関数の施された入力フレームを、前記第１のホップサイズおよび前記再生速度比に基づく第２のホップサイズだけずらして重ねあわせ、かつ、その重ねあわされたデータを、前記第２のホップサイズのサブフレームを有する出力フレームに格納するフレーム間演算ステップ、並びに、
前記出力フレームに格納されたデータを、それぞれが、前記第２のホップサイズを有する前記所定数のサブフレームからなる前記出力バッファに格納する出力バッファデータ生成ステップ、を有するデータ変換ステップと、
再生速度比を受け入れ、前記第１のフレームサイズおよびオーバーラップ比を決定する制御ステップと、を実行させ、
前記制御ステップが、再生速度比が、「１」より小さい場合であるスロー再生と、「１」より大きい場合であるファスト再生のそれぞれにおいて、異なる第１のフレームサイズおよびオーバーラップ比を決定するステップを有することを特徴とするデータ変換プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力した音声信号の速度を変換して出力するデータ変換装置およびデータ変換プログラムに関する。
【背景技術】
【０００２】
音声信号の音高を変化させず、その時間長を変化させて再生する技術が実用化され、カラオケにおける音声効果の付与や、ＣＤ、ビデオ、ＤＶＤなどの再生時の早送り再生・スロー再生に適用されている。この技術には、時間軸上の操作に基づくものと、周波数軸上での操作に基づくものとに大別できる。前者の代表例として、ＯＬＡ（ＯｖｅｒＬａｐ  ａｎｄ  Ａｄｄ）方式、および、その発展形であるＰＳＯＬＡ（Ｐｉｔｃｈ  Ｓｙｎｃｈｒｏｎｏｕｓ  ＯＬＡ）方式が知られている。また、後者の代表例として、フェーズ・ヴォコーダーが知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２６６５７１号公報
【特許文献２】特開平１０−１２４０８２号公報
【特許文献３】特開２００５−２０８６２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＯＬＡ方式はたとえば特許文献１に記載されている。ＯＬＡ方式においては、音声データをフレーム単位に分割し、フレームに窓関数を施した後、それぞれのフレームの一部が相互に重なり合うように順次配置し、重なり合う部分のデータ値を加算して出力する。この重なり合う幅を変化させることにより、音声データを伸長・短縮する。ＯＬＡ方式は、その処理が単純であり、簡易な構成で実現することができる。その一方、フレームの重なり合う部分の周辺を含むフレーム接合点での不連続性が生じ、ノイズが発生する場合がある。
【０００５】
ＰＳＯＬＡ方式はたとえば特許文献２に記載されている。ＰＳＯＬＡ方式は、ＯＬＡ方式で生じるフレーム接合点でのノイズを軽減するために、音声データのピッチを抽出し、フレームサイズを抽出されたピッチに基づくサイズに設定する。ＰＳＯＬＡ方式では、抽出可能なピッチを有する音声データ、つまり、単音の楽器などの音声データにしか適用できないという問題点があった。
【０００６】
周波数軸上の操作を伴う技術が、たとえば特許文献３に記載されている。フェーズ・ヴォコーダーなど、周波数軸上の操作を伴う技術においては、音声データをフーリエ変換して、周波数軸上で位相を操作して、逆フーリエ変換を施し、再度時間軸上のデータに戻すことにより、音声データの伸長・短縮を実現している。この方式は、ＯＬＡやＰＳＯＬＡのような単に時間軸上の操作に較べて良好な変換結果を得ることができる。しかしながら、フーリエ変換や複素数の演算を伴うため、処理が非常に複雑化するという問題点がある。
【０００７】
本発明は、ＯＬＡ方式を用いて簡易な構成で実現でき、かつ、フレーム接合点での不連続性などに伴う音質劣化を解決したデータ変換装置およびデータ変換プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の目的は、入力データを複数のフレームに分割し、かつ、その分割されたフレームを部分的に重ね合わせることで、出力データを生成するデータ変換装置であって、
所定の第１のフレームサイズの入力データを格納する入力バッファと、
前記入力データに対する前記出力データの再生速度の比を示す再生速度比にしたがった所定の第２のフレームサイズの出力データを格納する出力バッファと、
前記入力バッファの入力データに基づき、前記第２のフレームサイズの出力データを生成するデータ変換手段であって、
前記入力バッファの入力データから、それぞれが、前記第１のフレームサイズおよびオーバーラップ比にしたがった第１のホップサイズを有する、前記オーバーラップ比に相当する所定数のサブフレームからなる、第１のフレームサイズを有する入力フレームを生成する入力フレームデータ生成手段、
前記入力フレームに窓関数を施す窓関数適用手段、
前記窓関数の施された入力フレームを、前記第１のホップサイズおよび前記再生速度比に基づく第２のホップサイズだけずらして重ねあわせ、かつ、その重ねあわされたデータを、前記第２のホップサイズのサブフレームを有する出力フレームに格納するフレーム間演算手段、並びに、
前記出力フレームに格納されたデータから、それぞれが、前記第２のホップサイズを有する前記所定数のサブフレームからなる前記出力バッファに格納する出力バッファデータ生成手段、を有するデータ変換手段と、
再生速度比を受け入れ、前記第１のフレームサイズおよびオーバーラップ比を決定する制御手段とを備え、
前記制御手段が、再生速度比が、「１」より小さい場合であるスロー再生と、「１」より大きい場合であるファスト再生のそれぞれにおいて、異なる第１のフレームサイズおよびオーバーラップ比を決定するように構成されたことを特徴とするデータ変換装置により達成される。
【０００９】
好ましい実施態様においては、前記制御手段が、前記スロー再生のときのオーバーラップ比が、前記ファスト再生のときのオーバーラップ比より大きいように、前記オーバーラップ比を決定する。
【００１０】
より好ましい実施態様においては、前記制御手段が、前記スロー再生のときのオーバーラップ比を「３」または「４」、前記ファスト再生のときのオーバーラップ比を「２」と決定する。
【００１１】
別の好ましい実施態様においては、前記制御手段が、前記第１のフレームサイズを、前記サンプリング周波数および再生速度比に基づいて、前記スロー再生のときのフレームサイズが、前記ファスト再生のときのフレームサイズより小さくなるように、決定する。
【００１２】
より好ましい実施態様においては、前記制御手段が、前記第１のフレームサイズを、スロー再生のときに、入力データのサンプリング周波数の１／１０に相当する数所定範囲に属する数、ファスト再生のときに、入力データのサンプリング周波数の１／５に相当する数所定範囲に属する数に決定する。
【００１３】
また、本発明の目的は、入力データを複数のフレームに分割し、かつ、その分割されたフレームを部分的に重ね合わせることで、出力データを生成するデータプログラムであって、
所定の第１のフレームサイズの入力データを格納する入力バッファと、前記入力データに対する前記出力データの再生速度の比を示す再生速度比にしたがった所定の第２のフレームサイズの出力データを格納する出力バッファとを備えたコンピュータに、
前記入力バッファの入力データに基づき、前記第２のフレームサイズの出力データを生成するデータ変換ステップであって、
前記入力バッファの入力データから、それぞれが、前記第１のフレームサイズおよびオーバーラップ比にしたがった第１のホップサイズを有する、前記オーバーラップ比に相当する所定数のサブフレームからなる、第１のフレームサイズを有する入力フレームを生成する入力フレームデータ生成ステップ、
前記入力フレームに窓関数を施す窓関数適用ステップ、
前記窓関数の施された入力フレームを、前記第１のホップサイズおよび前記再生速度比に基づく第２のホップサイズだけずらして重ねあわせ、かつ、その重ねあわされたデータを、前記第２のホップサイズのサブフレームを有する出力フレームに格納するフレーム間演算ステップ、並びに、
前記出力フレームに格納されたデータを、それぞれが、前記第２のホップサイズを有する前記所定数のサブフレームからなる前記出力バッファに格納する出力バッファデータ生成ステップ、を有するデータ変換ステップと、
再生速度比を受け入れ、前記第１のフレームサイズおよびオーバーラップ比を決定する制御ステップと、を実行させ、
前記制御ステップが、再生速度比が、「１」より小さい場合であるスロー再生と、「１」より大きい場合であるファスト再生のそれぞれにおいて、異なる第１のフレームサイズおよびオーバーラップ比を決定するステップを有することを特徴とするデータ変換プログラムにより達成される。
【発明の効果】
【００１４】
本発明によれば、ＯＬＡ方式を用いて簡易な構成で実現でき、かつ、フレーム接合点での不連続性などに伴う音質劣化を解決したデータ変換装置およびデータ変換プログラムを提供することが可能となる。
【図面の簡単な説明】
【００１５】
【図１】図１は、本発明の実施の形態にかかるデータ変換装置の概略を示す図である。
【図２】図２は、本実施の形態にかかる信号変換部および使用する記憶部の構成を示すブロックダイヤグラムである。
【図３】図３は、本実施の形態にかかるデータ変換装置において実行されるメインフローの例を示すフローチャートである。
【図４】図４は、本実施の形態にかかるスイッチ処理の例を示すフローチャートである。
【図５】図５は、ＯＬＡ方式におけるフレーム加算の概略を示す図である。
【図６】図６は、スロー再生の際のフレーム加算の概略を示す図である。
【図７】図７は、スロー再生の際のフレーム加算の概略を示す図である。
【図８】図８は、本実施の形態にかかる入力バッファ、入力フレーム、出力フレームおよび出力バッファの例を示す図である。
【図９】図９は、本実施の形態にかかる入力バッファ、入力フレーム、出力フレームおよび出力バッファの他の例を示す図である。
【図１０】図１０は、本実施の形態にかかるデータ変換処理の例を示すフローチャートである。
【図１１】図１１（ａ）は、ｉ＝１のとき、図１１（ｂ）は、ｉ＝２のときのステップ１００３における、入力フレームのサブフレームへのデータ配置を説明する図、図１１（ｃ）は、処理を繰り返すことにより得られる入力フレームの例を示す図である。
【図１２】図１２（ａ）〜（ｃ）は、ステップ１００５〜１００８により生成される入力フレーム、出力フレームの例を示す図である。
【発明を実施するための形態】
【００１６】
以下、添付図面を参照して、本発明の実施の形態について説明する。図１は、本発明の実施の形態にかかるデータ変換装置の概略を示す図である。図１に示すように、本実施の形態にかかるデータ変換装置１０は、ＣＰＵ１１、入力部１２、表示部１３、ＲＡＭ１４、ＲＯＭ１５、大規模記憶装置１６、入力インタフェース（Ｉ／Ｆ）１７、信号変換部１８、オーディオ回路１９を有する。
【００１７】
入力部１２は、再生速度設定スイッチ、テンキーなどキー、スイッチを有する。表示部１３は、たとえば、液晶表示装置を含む。ＣＰＵ１１は、入力部１２のスイッチ操作の検出、スイッチ操作に基づく再生速度比の決定、スイッチ操作に基づく変換処理の起動、変換処理に用いるパラメータの算出、パラメータの信号変換部１８への伝達、入力Ｉ／Ｆ１７の制御など種々の処理を実行する。
【００１８】
ＲＯＭ１４は、ＣＰＵ１１により実行される種々の処理、たとえば、入力部１２のスイッチ操作の検出、スイッチ操作に基づく再生速度比の決定、スイッチ操作に基づく変換処理の起動、変換処理に用いるパラメータの算出、パラメータの信号変換部１８への伝達、入力Ｉ／Ｆ１７の制御などの処理プログラムを格納する。ＲＡＭ１５は、入力Ｉ／Ｆ１７により取得された入力データを格納する入力バッファ、オーディオ回路１９により読み出される出力バッファ、処理中のデータを一時的に記憶する入力フレームおよび出力フレームなどのためのデータ記憶領域を提供する。また、ＲＡＭ１５には処理で用いられる各種のパラメータが格納される。大規模記憶装置１６は、ハードディスク装置やカード型の記憶装置を含み、入力Ｉ／Ｆ１７を介して入力されたデータや、信号変換部１８により変換されたデータを記憶することができる。
【００１９】
入力Ｉ／Ｆ１７は、マイク２０と接続され、また、入力端子２１を有する。マイク２０から入力された音声信号は、ＣＰＵ１１の指示に従って、入力Ｉ／Ｆ１７においてディジタル変換され、ディジタルの入力データとしてＲＡＭ１４や大規模記憶装置１６に格納される。また、本実施の形態においては、入力端子２１を介して、オーディオ機器からの音声信号を入力して、ディジタルの入力データをＲＡＭ１４や大規模記憶装置１６に格納することもできる。
【００２０】
信号変換部１８は、入力データに基づいて、時間伸長処理或いは時間短縮処理を実行して、その再生速度が変換された出力データを生成する。信号変換部１８の構成および信号変換部１８において実行される処理については後述する。オーディオ回路１９は、Ｄ／Ａ変換器および増幅回路（ともに図示せず）を有し、出力データを、アナログの音声信号に変換して増幅し、スピーカ３２から音響信号を出力する。
【００２１】
図２は、本実施の形態にかかる信号変換部および使用する記憶部の構成を示すブロックダイヤグラムである。図２に示すように、本実施の形態にかかる信号変換部１８は、入力フレームデータ生成部２６と、フレーム間演算部３０と、出力バッファデータ生成部２８と、を有する。入力フレームデータ生成部２６は、入力バッファ２５に格納された入力データを読み出して、読み出された入力データを、入力フレーム２７中の所定の位置に格納する。また、出力バッファデータ生成部２８は、出力フレーム２９から所定のデータを取り出して、出力バッファ３１中に格納する。出力バッファ３１に格納された出力データは、オーディオ回路１９によりアナログの音声信号に変換され、スピーカ３２から出力される。
【００２２】
フレーム間演算部３０は、入力フレーム２７や出力フレーム２９におけるデータシフトなどのデータ操作、入力フレーム２７に窓関数を施すこと、入力フレームのデータ値を、対応する出力フレーム２９のデータ値に加算することなど、フレームに関する処理、および、フレーム間に関する種々の処理を実行する。
【００２３】
図３は、本実施の形態にかかるデータ変換装置において実行されるメインフローの例を示すフローチャートである。図３に示すように、電源の投入とともに、メインフローは起動し、ＣＰＵ１１は、ＲＡＭ１４中の入力バッファ２５のクリア、入力フレーム２７のクリア、出力フレーム２９のクリア、出力バッファ３１のクリア、各種パラメータのクリアを含むイニシャライズ処理を実行する（ステップ３０１）
イニシャライズ処理が終了すると、ステップ３０２以降の処理が繰り返し実行される。ステップ３０２のスイッチ処理において、入力部１２を構成するスイッチの操作があったかが判断され、スイッチ操作があった場合には、操作にしたがった処理が実行される。図４は、本実施の形態にかかるスイッチ処理の例を示すフローチャートである。図４に示すように、ＣＰＵ１１は、スイッチ１２を構成するスイッチのうち、再生速度設定スイッチがオンされたかを判断する（ステップ４０１）。ステップ４０１でＹｅｓと判断された場合には、ＣＰＵ１１は、テンキーの操作或いは「＋（プラス）」キー或いは「−（マイナス）」キーの操作に基づいて、入力された再生速度比を取得する（ステップ４０２）。
【００２４】
再生速度比とは、入力データの速度を「１」としたときの、変換された出力データの再生速度を示す。再生速度比が「２」であるとは、出力データが、入力データの２倍の速度で再生されることを示す。また、再生速度比が「０．５」であることは、出力でデータが、入力データの半分の速度で再生されることを示す。また、後述するデータ変換処理における、「伸縮比」は、再生速度比の逆数、つまり、「１／再生速度比」と等価である。
【００２５】
次いで、ＣＰＵ１１は、再生速度比に基づいて、入力バッファ２５および入力フレーム２７のサイズ、オーバーラップ比、出力フレーム２９のサイズおよび出力バッファ３１のサイズを決定する（ステップ４０３）。本実施の形態においては、再生速度比が０．５〜２の範囲で、入力データを指定された再生速度比で変換し、変換により得られた出力データを出力している。また、本実施の形態においては、ＯＬＡ方式を採用し、複雑な演算を経ることなく、入力データを変換して出力データを取得する。
【００２６】
ＯＬＡ方式においては、入力データを、まず、所定サイズの入力フレームに分割する。また、各フレームは部分的に重なり合うように抽出され、かつ、出力データにおいても、各フレームが部分的に重なったようなデータ値となっている。上記フレームの重なり具合を示すパラメータとしてオーバーラップ比が用いられる。オーバーラップ比は、フレームが、フレームサイズ全体に対して、どのくらいずらされるかを示す。たとえば、オーバーラップ比が「４」であれば、フレームは、フレームサイズの１／４だけずらされることを意味する。また、このときの、フレームのずれの量をホップサイズと称する。
【００２７】
フレームを重ね合わせて加算する際には、フレームに窓関数を施して、窓関数が施されたデータが加算される。たとえば、窓関数としてハニング窓を使用することができる。入力データに関するホップサイズと、出力データに関するホップサイズとが等しければ、重ねあわされた分だけ振幅は増加するが、もとの波形の形状が維持される。また、出力データに関するホップサイズが、入力データに関するホップサイズより大きければ、時間伸長処理が施されることになり、その結果、再生速度が遅くなるいわゆるスロー再生となる。その一方、出力データに関するホップサイズが、入力データに関するホップサイズより小さければ、時間短縮処理が実行されることになり、その結果、再生速度が速くなるいわゆるファスト再生となる。
【００２８】
図５は、ＯＬＡ方式におけるフレーム加算の概略を示す図、また、図６は、スロー再生の際における、フレーム加算の概略を示す図である。図６において、入力データに関するホップサイズ（図６において「ＨＯＰＳＩＺＥ」と示す）より、出力データに関するホップサイズ（図６において、「ＨＯＰＳＩＺＥ’」と示す）が大きいため、出力フレームのサイズも入力フレームより大きくなる。また、重ね合わせの際に、出力データに関するホップサイズ「ＨＯＰＳＩＺＥ’」にしたがって、矢印方向に重ねあわせるべきフレームが移動する。
【００２９】
フレームの重ね合わせの際に、フレームサイズとオーバーラップ比を適切に設定しないと、スロー再生、ファスト再生の何れにおいても音質が劣化する。たとえば、図７に示すように、オーバーラップ比を最小値である「２」として、時間伸長処理を行なった上でスロー再生を行なうと、フレーム加算によってデータ値のレベルを一定に保持することができず、振幅が揺らいでしまうという問題点がある（図７の破線参照）。また、オーバーラップ比が小さいことは、接合点における不連続性、つまり、複数の波形が重ねあわされている部分のデータの不連続性を、オーバーラップにより解決することができないという問題点があった。
【００３０】
その一方、オーバーラップ比を大きくすることにより、上記接合点における不連続性は軽減されるが、以下に述べるような別の問題が生じる。オーバーラップ比を大きくすることにしたがって、重なり合うフレーム数が増大する。したがって、くし型フィルタの効果が多重にかかり、その結果、音質が大きく変化してしまう。フレームサイズを大きくした場合にも、重なり合う部分が大きくなるため、同様にくし型フィルタの効果が過剰となる。
【００３１】
本出願人は、ＯＬＡ方式によるスロー再生、ファスト再生の双方において、オーバーラップ比は「２」以上であり、かつ、できるだけ小さい値が望ましいことを知見した。また、オーバーラップ比を「２」とすると、時間伸長処理によるスロー再生においては、振幅が揺らぐ問題や不連続性の問題が生じるが、時間短縮処理によるファスト再生である限り、オーバーラップ比が、最小値である「２」であっても問題がないこと知見した。
【００３２】
スロー再生においては、上述したように不連続性の問題が生じないように、オーバーラップ比は「２」より大きいのが望ましい。また、くし形フィルタ効果の影響を考慮すると、オーバーラップ比は、「３」または「４」が望ましいことが見出されている。なお、処理のしやすさを考慮して、本実施の形態においては、スロー再生におけるオーバーラップ比は「４」としている。
【００３３】
また、フレームサイズも、くし型フィルタ効果の影響を考慮して決定されるのが望ましい。本出願人は、オーバーラップ比が「２」であるときには、サンプリング周波数に相当するサンプル数の１／５程度、オーバーラップ比が「４」であるときには、サンプリング周波数に相当するサンプル数の１／１０程度が適切であることを知見した。図８は、本実施の形態にかかる入力バッファ、入力フレーム、出力フレームおよび出力バッファの例を示す図である。図８に示す例は、再生速度比Ｒが「１」より小さいスロー再生のときの例を示す。
【００３４】
本実施の形態においては、サンプリング周波数が４４．１ＫＨｚ（４４，１００Ｈｚ）であり、入力バッファ８０１と入力フレーム８０２のサイズ（フレームサイズ）は、ともに「４０９６」である。また、オーバーラップ比は「４」であり、フレーサイズをオーバーラップ比で割った値に相当するサブフレームのサイズは「１０２４」である（符号８１１参照）。なお、フレームサイズは、サンプリング周波数の１／１０と厳密には相違するが、処理の簡便さから２のべき乗のうち、サンプリング周波数の１／１０である「４４１０」に最も近い値を採用した。
【００３５】
また、本実施の形態にかかる出力フレーム８０３は、その先頭に、入力バッファ８０１および入力フレーム８０２のサブフレームのサイズを再生速度比で割ったサイズ（１０２４／Ｒ）のサブフレーム８３１を有する。また、先頭のサブフレーム８３１の後ろには、入力バッファ８０１や入力フレーム８０２のサブフレームと、同様のサイズの４つのサブフレーム（たとえば、符号８３２参照）が配置される。
【００３６】
本実施の形態にかかる出力バッファ８０４は、そのサイズが出力フレームの先頭のサブフレーム８３１と同一（つまり、１０２４／Ｒ）の、４つのサブフレーム（たとえば符号８４１参照）から構成される。
【００３７】
図９は、本実施の形態にかかる入力バッファ、入力フレーム、出力フレームおよび出力バッファの他の例を示す図である。図９に示す例は、再生速度比Ｒが「１」より大きいファスト再生のときの例を示す。ファスト再生のときの入力バッファ９０１および入力フレーム９０２のサイズは、そもに「８１９２」である。また、オーバーラップ比は「２」であり、サブフレームのサイズは「４０９６」である。
【００３８】
出力フレーム９０３の先頭のサブフレーム９３１のサイズは、入力バッファ９０１および入力フレーム９０２のサブフレームのサイズを再生速度比で割ったサイズ（４０９６／Ｒ）である。また、先頭のサブフレーム９３１の後ろには、入力バッファ９０１や入力フレーム９０２のサブフレームと、同様のサイズの２つのサブフレーム（たとえば、符号９３２参照）が配置される。また、本実施の形態にかかる出力バッファ９０４は、そのサイズが出力フレームの先頭のサブフレーム９３１と同一（つまり、４０９６／Ｒ）の、２つのサブフレーム（たとえば符号９４１参照）から構成される。
【００３９】
本実施の形態においては、再生速度比が「１」より大きい場合の入力バッファおよび入力フレームのサイズ、並びに、オーバーラップ比の組と、再生速度比が「１」より小さい場合の、入力バッファおよび入力フレームのサイズ、並びに、オーバーラップ比の組とがＲＡＭ１４に格納されている。したがって、スイッチ処理のステップ４０２において、再生速度比が取得され、また、ステップ４０３において、再生速度比に応じた、入力バッファおよび入力フレームのサイズ、並びに、オーバーラップ比の組が取得される。
【００４０】
再生速度比が「１」より小さい場合、つまり、スロー再生の場合には、図８に示すようなサイズの入力バッファ、入力フレーム、出力フレームおよび出力バッファのためのデータ領域がＲＡＭ１４中に確保される（ステップ４０４）。たとえば、再生速度比が「０．８」であれば、出力フレーム８０３の先頭のサブフレーム（符号８３１参照）や、出力バッファ８０４のサブフレーム（符号８４１参照）のサイズは「１２８０」となり、出力バッファ８０４のフレームサイズは「５１２０」となる。その一方、再生速度比が「１」より大きい場合、つまり、ファスト再生の場合には、図９に示すようなサイズの入力バッファ、入力フレーム、出力フレームおよび出力バッファのためのデータ領域をＲＡＭ１４中に確保される（ステップ４０４）。ステップ４０４の後、他のスイッチ処理が実行される（ステップ４０５）。
【００４１】
スイッチ処理の後、ＣＰＵ１１および入力Ｉ／Ｆ２１は、データ入力処理を実行する（ステップ３０３）。データ入力処理においては、ＣＰＵ１１は、タイマ（図示せず）を参照して、データの入力タイミングとなっているかを判断し、入力タイミングが到来している場合には、ＣＰＵ１１は、入力Ｉ／Ｆ１７に対して、入力されたデータを入力データバッファ２５に格納するように指示する。入力Ｉ／Ｆ１７は、入力されたデータを順次入力データバッファに格納していく。入力Ｉ／Ｆ１７に一時的に記憶されていたデータが全て入力データバッファに格納されると、データ入力処理は終了する。
【００４２】
データ入力処理の後、ＣＰＵ１１の指示により信号変換部１８が、データ変換処理を実行する（ステップ３０４）。図１０は、本実施の形態にかかるデータ変換処理の例を示すフローチャートである。図１０に示すように、信号変換部１８は、サブフレームを特定するパラメータｉを初期化する（ステップ１００１）。
【００４３】
次いで、信号変換部１８は、パラメータｉがオーバーラップ比より大きいかを判断する（ステップ１００２）。ステップ１００２でＮｏと判断された場合には、信号変換部１８（入力フレームデータ生成部２６）は、入力バッファの第ｉ番のサブフレームを、入力フレームの最後尾のサブフレームにコピーする（ステップ１００３）。図１１（ａ）は、ｉ＝１のとき、図１１（ｂ）は、ｉ＝２のときのステップ１００３における、入力フレームのサブフレームへのデータ配置を説明する図である。入力フレーム１１００に、先頭のサブフレームからＩｎ（Ｔ）、Ｉｎ（Ｔ＋１）、Ｉｎ（Ｔ＋２）およびＩｎ（Ｔ＋３）というデータが格納されていた場合に、図１１（ａ）、（ｂ）に示すように、第１番、第２番のサブフレームのデータが、入力フレーム１１１０の末尾のサブフレームに格納される。
【００４４】
後述するように、ステップ１００７で入力フレームのサブフレームがそれぞれシフトされる。したがって、ステップ１００２を繰り返すことにより、入力フレームにおいて、先頭からサブフレームＩｎ（ｔ−３）、Ｉｎ（ｔ−２）、Ｉｎ（ｔ−１）、Ｉｎ（ｔ）が格納されることになる。
【００４５】
次いで、信号変換部１８（出力バッファデータ生成部２８）は、出力フレームの先頭のサブフレームを、出力バッファの第ｉ番のサブフレームにコピーする（ステップ１００４）。後述するようにステップ１００８において、出力フレームのサブフレームがそれぞれシフトされるため、ステップ１００４において、先頭のサブフレームには、第ｉ番の出力バッファのサブフレームに相当するデータが配置されている。
【００４６】
ステップ１００４の後、信号変換部１８（フレーム間演算部３０）は、入力フレームにハニング窓を施す（ステップ１００５）。次いで、信号処理部１８は、ハニング窓が施された入力フレームのデータ値と、出力フレームの第２番のサブフレーム以降の対応するデータ値とを加算する（ステップ１００６）。図１２（ａ）に示すように、ステップ１００５においては、入力フレーム１２００にハニング窓１２０２に施され、ハニング窓が施されたデータ値が格納された入力フレーム１２０３が得られる。また、図１２（ｂ）に示すように、ステップ１００６においては、ハニング窓が施されたデータ値が格納された入力フレーム１２０３の第ｋ番サブフレーム（ｋ＝１〜４）と、出力フレーム１２０４の第（ｋ＋１）番サブフレームとが重なるように、対応するデータ値が加算される。
【００４７】
ステップ１００６の後、信号変換部１８（入力フレームデータ生成部２６）は、入力フレームのデータ値を、サブフレーム１つ分だけ左側（先頭側）にシフトする（ステップ１００７）。これにより、ステップ１００６における第ｋ番サブフレーム（ｋ＝２〜４）は、それぞれ、ステップ１００７の後に第（ｋ−１）番のサブフレームとなる。ステップ１００６における第１番サブフレームは破棄される。また、入力フレームの第４番サブフレームには、次回のステップ１００３において、入力バッファのサブフレームがコピーされるが、ステップ１００６では、たとえば、データ値「０」を格納しておけば良い。
【００４８】
また、信号変換部１８（出力データバッファデータ生成部２８）は、出力フレームのデータ値を、出力フレームの第１番サブフレーム分だけ左側（先頭側）にシフトする（ステップ１００８）。図１２（ｃ）に示すように、ステップ１００８の処理後の出力フレーム１２０５においては、その先頭から、ステップ１００８の処理前における出力フレーム１２０４の第２番サブフレーム〜第４番サブフレームが順次格納される。また、ステップ１００８において、信号変換部１８は、末尾の所定量のデータ値（出力フレームの第１番サブフレームのサイズに相当するデータ値：符号１２０６参照）に「０」を格納する。
【００４９】
ステップ１００９の後、信号変換部１８は、パラメータｉをインクリメントして（ステップ１００９）、ステップ１００２に戻る。
【００５０】
図１０に示すデータ変換処理により、複数のサブフレーム（スロー再生では４つのサブフレーム）を含む出力バッファが生成される。出力バッファに格納されたデータにおいては、入力フレームのデータ値がサブフレームの数（オーバーラップ比：スロー再生では「４」）に基づいて重ねあわされている。また、再生速度比を「０．８」とすると、出力バッファのホップサイズは、入力フレームのホップサイズより、１／０．８＝１．２倍となっており、再生速度が０．８倍となった時間伸長処理が実現される。
【００５１】
なお、図１１、図１２を参照して、データ変換処理において、スロー再生のため、時間伸長処理による出力バッファのデータを生成する例を説明しているが、ファスト再生のための時間短縮処理による場合も、オーバーラップ比、入力バッファのサイズ、入力フレームのサイズ、出力フレームのサイズ、出力バッファのサイズ、および、それぞれのサブフレームのサイズが異なることを除けば、同様に実現できることは言うまでも無い。
【００５２】
データ変換処理（図３のステップ３０４）の後、ＣＰＵ１１は、データ出力処理を実行する（ステップ３０５）。データ出力処理においては、ＣＰＵ１１は、タイマ（図示せず）を参照して、データの出力タイミングとなっているかを判断し、出力タイミングが到来している場合には、ＣＰＵ１１は、ＲＡＭ１４の出力データバッファから所定のデータを読み出して、オーディオ回路１９に出力する。オーディオ回路１９は、受け入れたデータをアナログ信号に変換して、増幅し、スピーカ２２に出力する。
【００５３】
本実施の形態によれば、時間伸長処理を実行すべき場合、つまり、スロー再生の場合と、時間短縮処理を実行すべき場合、つまり、ファスト再生の場合とで、フレームサイズ、ホップサイズ、オーバーラップ比を含むパラメータを切替えて、それぞれに最適なパラメータを用いてデータ変換処理を実行している。これにより、処理の簡易さを確保しつつ、音質の劣化を抑制したファスト再生、および、スロー生成を実現することができる。
【００５４】
本実施の形態において、ＣＰＵ１１は、スロー再生のときのオーバーラップ比が、ファスト再生のときのオーバーラップ比より大きいように、前記オーバーラップ比を決定している。これは、スロー再生のときには、フレームの接合点における不連続性の問題が生じやすいためであり、オーバーラップ比をより大きくすることにより、不連続性から生じるノイズを防止することが可能となる。
【００５５】
特に、ＣＰＵ１１は、スロー再生のときのオーバーラップ比を「３」または「４」、特に処理の容易さから「４」と決定し、ファスト再生のときのオーバーラップ比を「２」と決定する。ファスト再生におけるオーバーラップ比「２」は、整数としてのオーバーラップ比の最小値であるが、ファスト再生であれば、最小値を適用しても、それほど音質の劣化が生じない。また、これにより、ファスト再生の際には、重ね合わせの数を最小化することで、より処理を簡易にすることが可能となる。
【００５６】
また、ＣＰＵ１１は、入力バッファおよび入力フレームのフレームサイズを、サンプリング周波数および再生速度比に基づいて、スロー再生のときのフレームサイズが、前記ファスト再生のときのフレームサイズより小さくなるように、決定する。これも、スロー再生のときには、より大きなフレームサイズであっても、それほど音質の劣化が生じないためである。
【００５７】
特に、ＣＰＵ１１は、入力バッファおよび入力フレームのフレームサイズを、スロー再生のときに、入力データのサンプリング周波数の１／１０に相当する数所定範囲に属する数、ファスト再生のときに、入力データのサンプリング周波数の１／５に相当する数所定範囲に属する数に決定する。たとえば、サンプリング周波数が、４４．１ＫＨｚ（４４１００Ｈｚ）のときに、スロー再生のときに、フレームサイズを「４０９６」、ファスト再生のときに、フレームサイズを「８１９２」と適切化している。
【００５８】
本発明は、以上の実施の形態に限定されることなく、特許請求の範囲に記載された発明の範囲内で、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【符号の説明】
【００５９】
１０        データ変換装置
１１        ＣＰＵ
１２        入力部
１３        表示部
１４        ＲＡＭ
１５        ＲＯＭ
１６        大規模記憶装置
１７        入力Ｉ／Ｆ
１８        信号変換部
１９        オーディオ回路
２５        入力バッファ
２６        入力フレームデータ生成部
２７        入力フレーム
２８        出力バッファデータ生成部
２９        出力フレーム
３０        フレーム間演算部
３１        出力バッファ
【図１】
2011043654.tif 000003
【図２】
2011043654.tif 000004
【図３】
2011043654.tif 000005
【図４】
2011043654.tif 000006
【図５】
2011043654.tif 000007
【図６】
2011043654.tif 000008
【図７】
2011043654.tif 000009
【図８】
2011043654.tif 000010
【図９】
2011043654.tif 000011
【図１０】
2011043654.tif 000012
【図１１】
2011043654.tif 000013
【図１２】
2011043654.tif 000014