(57)【要約】【課題】  ループ部分を含む音声データの再生時における音質を向上させる。【解決手段】  音声データエンコード装置は、連続する複数のブロックを組としてエンコードを行なう。音声スタート位置がループスタート位置の場合は、音声スタート位置前のサンプルとして、音声スタート位置の音声データと楽曲上つながりのある音声データ（例えば、ループエンドの直前の音声データ）のサンプルを用いてエンコードを行う。音声エンド位置がループエンド位置の場合は、音声エンド位置後のサンプルとして、音声エンド位置の音声データと楽曲上つながりのある音声データ（例えば、ループスタートの直後の音声データ）のサンプル用いてエンコードを行う。【選択図】  図１
2006153908.tif 000002
【特許請求の範囲】
【請求項１】
音声データをエンコードする音声データエンコード装置であって、
音声データをブロックに分割するブロック分割手段と、
連続する複数のブロックを組としてエンコードを行なうエンコード手段とを有し、
前記エンコード手段は、
ループスタート位置とループエンド位置とが指定され、前記ループスタート位置が音声スタート位置である音声データの場合、
音声スタート位置前の音声データのサンプルとして、ループエンド位置直前の音声データのサンプルを用いてエンコードを行う
ことを特徴とする音声データエンコード装置。
【請求項２】
音声データをエンコードする音声データエンコード装置であって、
音声データをブロックに分割するブロック分割手段と、
連続する複数のブロックを組としてエンコードを行なうエンコード手段とを有し、
前記エンコード手段は、
ループスタート位置とループエンド位置とが指定され、前記ループエンド位置が音声エンド位置である音声データの場合、
音声エンド位置後の音声データのサンプルとして、ループスタート位置直後の音声データのサンプルを用いてエンコードを行う
ことを特徴とする音声データエンコード装置。
【請求項３】
音声データをエンコードする音声データエンコード装置であって、
音声データをブロックに分割するブロック分割手段と、
連続する複数のブロックを組としてエンコードを行なうエンコード手段とを有し、
前記エンコード手段は、
音声スタート位置と音声エンド位置との間でループ部分が構成される音声データの場合、
音声スタート位置前の音声データのサンプルとして、音声エンド位置直前の音声データのサンプルを用いてエンコードを行い、
音声エンド位置後の音声データのサンプルとして、音声スタート位置直後の音声データのサンプルを用いてエンコードを行う
ことを特徴とする音声データエンコード装置。
【請求項４】
請求項１〜３のいずれか一項に記載の音声データエンコード装置によりエンコードされたエンコード音声データを順次読み込み、連続する複数のブロックを組としてデコードを行なうことを特徴とする音声データデコード装置。
【請求項５】
音声データをエンコードする音声データエンコード装置としてコンピュータを機能させるためのプログラムであって、
音声データをブロックに分割するブロック分割手段と、
連続する複数のブロックを組としてエンコードを行なうエンコード手段として情報処理装置を機能させ、
ループスタート位置とループエンド位置とが指定され、前記ループスタート位置が音声スタート位置である音声データの場合、
音声スタート位置前の音声データのサンプルとして、ループエンド位置直前の音声データのサンプルを用いてエンコードを行う
ことを特徴とするプログラム。
【請求項６】
音声データをエンコードする音声データエンコード装置としてコンピュータを機能させるためのプログラムであって、
音声データをブロックに分割するブロック分割手段と、
連続する複数のブロックを組としてエンコードを行なうエンコード手段として情報処理装置を機能させ、
前記エンコード手段は、
ループスタート位置とループエンド位置とが指定され、前記ループエンド位置が音声エンド位置である音声データの場合、
音声エンド位置後の音声データのサンプルとして、ループスタート位置直後の音声データのサンプルを用いてエンコードを行う
ことを特徴とするプログラム。
【請求項７】
音声データをエンコードする音声データエンコード装置としてコンピュータを機能させるためのプログラムであって、
音声データをブロックに分割するブロック分割手段と、
連続する複数のブロックを組としてエンコードを行なうエンコード手段として情報処理装置を機能させ、
前記エンコード手段は、
音声スタート位置と音声エンド位置との間でループ部分が構成される音声データの場合、
音声スタート位置前の音声データのサンプルとして、音声エンド位置直前の音声データのサンプルを用いてエンコードを行い、
音声エンド位置後の音声データのサンプルとして、音声スタート位置直後の音声データのサンプルを用いてエンコードを行う
ことを特徴とするプログラム。
【請求項８】
請求項１〜３のいずれか一項に記載の音声データエンコード装置によりエンコードされたエンコード音声データを順次読み込み、連続する複数のブロックを組としてデコードを行なう音声データデコード装置としてコンピュータを機能させることを特徴とするプログラム。
【請求項９】
請求項５〜８のいずれか一項に記載のプログラムを記録した情報処理装置読み取り可能な記録媒体。
【請求項１０】
音声データをエンコードする音声データエンコード装置の音声データエンコード方法であって、
音声データをブロックに分割するブロック分割ステップと、
連続する複数のブロックを組としてエンコードを行なうエンコードステップとを有し、
前記エンコードステップは、
ループスタート位置とループエンド位置とが指定され、前記ループスタート位置が音声スタート位置である音声データの場合、
音声スタート位置前の音声データのサンプルとして、ループエンド位置直前の音声データのサンプルを用いてエンコードを行う
ことを特徴とする音声データエンコード方法。
【請求項１１】
音声データをエンコードする音声データエンコード装置の音声データエンコード方法であって、
音声データをブロックに分割するブロック分割ステップと、
連続する複数のブロックを組としてエンコードを行なうエンコードステップとを有し、
前記エンコードステップは、
ループスタート位置とループエンド位置とが指定され、前記ループエンド位置が音声エンド位置である音声データの場合、
音声エンド位置後の音声データのサンプルとして、ループスタート位置直後の音声データのサンプルを用いてエンコードを行う
ことを特徴とする音声データエンコード方法。
【請求項１２】
音声データをエンコードする音声データエンコード装置の音声データエンコード方法であって、
音声データをブロックに分割するブロック分割ステップと、
連続する複数のブロックを組としてエンコードを行なうエンコードステップ段とを有し、
前記エンコードステップは、
音声スタート位置と音声エンド位置との間でループ部分が構成される音声データの場合、
音声スタート位置前の音声データのサンプルとして、音声エンド位置直前の音声データのサンプルを用いてエンコードを行い、
音声エンド位置後の音声データのサンプルとして、音声スタート位置直後の音声データのサンプルを用いてエンコードを行う
ことを特徴とする音声データエンコード方法。
【請求項１３】
請求項１０〜１２のいずれか一項に記載の音声データエンコード方法によりエンコードされたエンコード音声データを順次読み込み、連続する複数のブロックを組としてデコードを行なうことを特徴とする音声データデコード方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声データの記録および再生に係り、特に、ループ部分を含む音声データの再生時の処理負荷を軽減する記録および再生技術に関する。
【背景技術】
【０００２】
パーソナルコンピュータ、ゲーム機、音楽再生装置等のデジタル音声データ再生機能を備えた情報処理装置では、符号化された音声データを再生時にアナログ音声データに変換して音声出力を行なうことが行なわれている。
【０００３】
符号化された音声データは、音楽用ＣＤのように非圧縮のものもあるが、多くは、圧縮された状態で読み出され、再生時に伸長して音声出力される。
【０００４】
音声圧縮方式としては、種々の方式が提案され実用化されているが、時系列に並んだサンプルデータを複数のブロックに分割し、直交変換、例えば、ＤＣＴ（Discrete Cosine Transform）、ＭＤＣＴ（Modified Discrete Cosine Transform）を施して圧縮を行なう方式が広く知られている。このとき、音声波形の連続性を高めるため、隣り合う複数のブロックを組みにして、ブロックをオーバラップさせながら順次圧縮することが行なわれている。このような圧縮方式の代表的なものとして、いわゆるミニディスク（ＭＤ）等で採用されているＡＴＲＡＣ（Adaptive TRans form Acoustic Coding）が挙げられる（特許文献１参照）。
【０００５】
図３は、ブロック単位で音声データの圧縮を行なう様子を示す図である。本図では、時系列に並んだサンプルデータが所定個数毎に区切られてブロック（オリジナルブロック）「Ａ」「Ｂ」「Ｃ」「Ｄ」「Ｅ」…が生成されている。
【０００６】
そして、連続する２つのブロックを組として、ブロックをオーバラップさせながら圧縮処理を行ない、エンコードブロックが生成される。なお、音声データのスタート位置（DS）の前には音声データがなく、ブロック「Ａ」と組となるブロックがない。そこで、ブロック「Ａ」と組を作るために、無音データ等のダミーデータで構成されるブロック「Ａ０」が付加される。同様に、音声データのエンド位置（不図示）の後ろには音声データがなく、最後のブロックと組となるブロックがない。そこで、最後のブロックと組を作るために、音声データの最後尾に無音データ等のダミーデータで構成されるブロックが付加される。
【０００７】
そして、ここでは、オリジナルブロック「Ａ０」「Ａ」からエンコードブロック「Ｘ１」が生成され、オリジナルブロック「Ａ」「Ｂ」からエンコードブロック「Ｘ２」が生成される。
【０００８】
音声データの再生時には、エンコードブロック「Ｘ１」「Ｘ２」からデコードブロック「ａ」が生成される。そして、デコードブロック「ａ」のサンプルをＤ／Ａ変換して音声を再生することができる。以下同様にして、デコードブロック「ｂ」「ｃ」…を得ることができるため、音声が連続的に再生される。なお、図３の（ｄ）は、エンコード時およびデコード時にオーディオコーデックディレイが発生する場合のデコードブロックの様子を示している。図示するように、オーディオコーデックディレイ分、デコードされたデータの出力位置がずれている。
【０００９】
【特許文献１】特開平８−２８７６１２号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
ところで、音声データにループ部分（リピート部分）が含まれている場合がある。例えば、図３の（ａ）に示すように、サンプルデータの所定の位置（ＬＳ）から所定の位置（ＬＥ）までの音声を、ある条件が満たされるまで繰り返すような場合である。ここでは、ループのスタート位置であるＬＳがオリジナルブロック「Ａ」に含まれ、ループのエンド位置であるＬＥがオリジナルブロック「Ｄ」に含まれているものとする。
【００１１】
この場合、再生時には、図４に示すように、デコードブロック「ｄ」のＬＥに対応する位置まで再生を行なうと、続けて、デコードブロック「ａ」のＬＳに対応する位置から再生を行なうことになる。なお、図４は、エンコード時およびデコード時にオーディオコーデックディレイが発生する場合のデコードブロックの様子を示している。図示するように、オーディオコーデックディレイ分、データの出力が後方にずれている。
【００１２】
従来、以上のようにして、ループ部分を含む音声データを再生していたが、このような方法では、ループ部分において音声が乱れることがあった。
【００１３】
そこで、本発明は、ループ部分を含む音声データの再生時における音質向上を目的とする。
【課題を解決するための手段】
【００１４】
上記課題を解決すべく、本発明の第１の態様によれば、
音声データをエンコードする音声データエンコード装置であって、
音声データをブロックに分割するブロック分割手段と、
連続する複数のブロックを組としてエンコードを行なうエンコード手段とを有し、
前記エンコード手段は、
ループスタート位置とループエンド位置とが指定され、前記ループスタート位置が音声スタート位置である音声データの場合、
音声スタート位置前の音声データのサンプルとして、ループエンド位置直前の音声データのサンプルを用いてエンコードを行う
ことを特徴とする音声データエンコード装置が提供される。
【００１５】
また、本発明の第２の態様によれば、
音声データをエンコードする音声データエンコード装置であって、
音声データをブロックに分割するブロック分割手段と、
連続する複数のブロックを組としてエンコードを行なうエンコード手段とを有し、
前記エンコード手段は、
ループスタート位置とループエンド位置とが指定され、前記ループエンド位置が音声エンド位置である音声データの場合、
音声エンド位置後の音声データのサンプルとして、ループスタート位置直後の音声データのサンプルを用いてエンコードを行うことを特徴とする音声データエンコード装置が提供される。
【００１６】
また、本発明の第３の態様によれば、
音声データをエンコードする音声データエンコード装置であって、
音声データをブロックに分割するブロック分割手段と、
連続する複数のブロックを組としてエンコードを行なうエンコード手段とを有し、
前記エンコード手段は、
音声スタート位置と音声エンド位置との間でループ部分が構成される音声データの場合、
音声スタート位置前の音声データのサンプルとして、音声エンド位置直前の音声データのサンプルを用いてエンコードを行い、
音声エンド位置後の音声データのサンプルとして、音声スタート位置直後の音声データのサンプルを用いてエンコードを行う
ことを特徴とする音声データエンコード装置が提供される。
【００１７】
また、本発明の第４の態様によれば、前記音声データエンコード装置によりエンコードされたエンコード音声データを順次読み込み、連続する複数のブロックを組としてデコードを行なうことを特徴とする音声データデコード装置が提供される。
【００１８】
また、前記音声データデコード装置は、デコードされたデータを出力する際、ループスタート位置を含むブロックにおいて、ルーブスタート位置より前のデータの出力をカットしたり、ループエンド位置を含むブロックにおいてループエンド位置より後ろのデータの出力をカットしなくてもよい。
【００１９】
また、前記音声データデコード装置は、ループスタート位置と音声スタート位置が一致する場合には、ループスタート位置を含むブロックのデコードを行った際、ループスタート位置の前に、ループエンド位置以前のデータに対応するデータを出力することがある。
【００２０】
また、ループエンド位置と音声エンド位置が一致する場合には、ループエンド位置を含むブロックのデコードを行った際、ループエンド位置の後に、ループスタート位置以降のデータに対応するデータを出力することがある。したがって、ループ再生時には、これらのデータを、ルーブスタート以降のデータ、ルーブエンド以前のデータとして出力することも可能である。例えば、ループエンド位置を含むブロックのデコードを行った際に、ルーブエンド位置の後に続くループスタート位置以降のデータに対応するデータを出力することができる。そうすることにより、ループエンド位置を含むブロックでの出力サンプル数が増え、次のブロックのデコードの出力が必要になるまでの時間を増やすことが可能になる。
【発明を実施するための最良の形態】
【００２１】
本発明の実施の形態について図面を参照して説明する。図１は、本発明の実施形態の構成の概要を示す図である。本図に示すように、本実施形態は、音声データエンコード装置１００がエンコードした音声データを、音声データ再生装置２００がデコードして再生する処理を行なう。
【００２２】
具体的には、音声データエンコード装置１００は、記録対象の音声データ１１を読み込み、エンコード処理部１１０を用いて圧縮等の処理を施して、エンコードデータ２０に変換する。ここで、音声データ１１は、あらかじめ所定のレートでサンプリングされているものとする。もちろん、アナログ音声データとして音声データエンコード装置１００に入力し、音声データエンコード装置１００においてＡ／Ｄ変換するようにしてもよい。
【００２３】
本実施形態において、音声データ１１は、ループ部分を含んでおり、あらかじめループスタート位置とループエンド位置が指定されている。ループスタート位置とループエンド位置とは、例えば、音声データ１１におけるアドレスあるいはサンプル番号等で示されており、ループ情報１２として音声データ１１とともに読み込まれる。なお、ループ情報１２は、音声データ１１のヘッダ部分等に付加するようにしてもよいし、音声データ１１とは別個に存在するようにしてもよい。
【００２４】
ループ部分は、音声データ再生装置２００での音声データ１１の再生時において、ある条件にしたがってループの有無が判断される。
【００２５】
ループ有無の判断の結果、ループを行なうと判断された場合には、ループ情報１２にしたがってループを行なう。すなわち、ループエンド位置まで再生するとループスタート位置まで戻って再生を続ける。一方、ループを行なわないと判断された場合には、ループ情報１２に関わらず、ループは行なわない。すなわち、ループエンド位置まで再生すると、それ以降の音声データ１１の再生を続ける。
【００２６】
音声データ１１のどの範囲についてループ部分とするかは、音声データ１１の内容に基づいて、開発者が任意に定めることができる。
【００２７】
音声データエンコード装置１００のエンコード処理部１１０は、音声データ１１を複数のブロックに分割して、連続する所定数のブロックを一単位として、ＭＤＣＴ（Modified Discrete Cosine Transform）を用いたエンコードを行ない、ブロックをオーバラップさせ、順次エンコードデータを生成する。なお、エンコード処理部１１０の具体的な処理については、後述する。
【００２８】
エンコードデータ２０は、音声データ１１のループ処理を制御する制御用プログラム３０とともにＣＤ−ＲＯＭ等の記録媒体３００に記録される。記録媒体３００への記録処理は、音声データエンコード装置１００で行なうようにしてもよいし、他の装置で行なうようにしてもよい。
【００２９】
なお、エンコードデータ２０と制御用プログラム３０とは、別々の記録媒体３００に記録するようにしてもよい。また、記録媒体３００は、ＣＤ−ＲＯＭに限られず、ＤＶＤ−ＲＯＭ等の光ディスク、磁気ディスク、半導体記録装置等であってもよい。あるいは、インターネット等の通信回線を介して音声データエンコード装置１００から音声データ再生装置２００にエンコードデータ２０を出力するようにしてもよい。
【００３０】
制御用プログラム３０は、音声データ再生装置２００で実行されるプログラムである。音声データ再生装置２００は、制御用プログラム３０に基づいて、例えば、ユーザからの操作に応じて、エンコードデータ２０の再生方法を決定する。具体的な例としては、ユーザからキー入力等の所定の操作を受け付けるまで、ループ部分を繰り返し再生し、所定の操作を受け付けると、ループ再生を終了し、ループ部分以降のデータを再生することが挙げられる。
【００３１】
音声データ再生装置２００は、制御用プログラム３０等を実行するプログラム実行部２１０と、エンコードデータ２０のデコードを行なうデコード処理部２２０と、デコードされた音声データをスピーカを通じて音声出力する再生処理部２３０とを備えている。これにより、音声データ再生装置２００は、エンコードデータ２０をほぼリアルタイムでデコードし、再生することができる。デコード処理部２２０の具体的な処理については後述する。
【００３２】
なお、音声データエンコード装置１００は、音声処理機能を備えたパーソナルコンピュータ、ワークステーション、その他の一般的な情報処理装置を用いて構成することができる。もちろん、音声データ記録に特化した専用のシステムを用いて構成するようにしてもよい。
【００３３】
音声データ再生装置２００も、音声処理機能を備えたパーソナルコンピュータ、ワークステーション、その他の一般的な情報処理装置を用いて構成することができる。もちろん、音声データ再生に特化した専用のシステムを用いて構成するようにしてもよい。
【００３４】
なお、本発明は、音声データ再生装置２００として、ＰＤＡ（Personal Digital Assistant）、携帯型ゲーム機、ポータブル音楽再生装置のように携帯性が重視され、処理速度に制約のある情報処理装置を用いた場合に特に効果的に適用することができる。
【００３５】
情報処理装置は、音声データ記録用あるいは音声データ再生用に開発されたアプリケーションプログラムを中央処理装置（ＣＰＵ）が実行することにより、音声データエンコード装置１００あるいは音声データ再生装置２００として機能することができる。これらのアプリケーションプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録させることで市場に流通させることができる。また、インターネット等のコンピュータネットワークを介して流通させることもできる。
【００３６】
つぎに、音声データエンコード装置１００における音声データのエンコード処理について図２のフロー図を参照して説明する。
【００３７】
まず、音声データエンコード装置１００は、オリジナルデータとして、音声データ１１とループ情報１２とを読み込む（Ｓ１０１）。ここで、音声データ１１は、図３（ａ）に示すように、サンプルデータが時系列に並んだものであり、ループ情報１２によりループスタート（ＬＳ）位置と、ループエンド（ＬＥ）位置とが指定されている。
【００３８】
つぎに、エンコード処理部１１０は、音声データ１１をブロックに分割する（Ｓ１０２）。
【００３９】
従来、図３の（ｂ）に示すように、音声データスタート位置（ＤＳ）から、順番に音声データ１１をブロックに分割していた。そのため、図４に示すように、デコードデータのループエンド位置を含むブロック「ｄ」において、ループエンド位置がブロックの最終部分（例えば、最後）にくるとは限らなかった。
【００４０】
これに対して、本実施形態では、図５の（ｂ）に示すように、音声データの先頭に入力遅延用ダミーデータを付加して分割する。そして、図７に示すように、デコードデータのループエンド位置を含むブロック「ｄ」において、ループエンド位置がブロックの最終部分（例えば最後）にくるようにする。
【００４１】
具体的には、エンコード処理部１１０は、図３（ｂ）に示すように、従来通り、音声データ１１を、先頭から所定のサンプル数毎に仮に分割する。このように分割された音声データ１１が、エンコードされ、さらにデコードされると、図４に示すようなデコードデータのブロックとなる。ここで、エンコード処理部１１０は、ループエンド位置を含むブロック「ｄ」について、ループエンド位置からブロックの最後までのサンプル数を求める。そして、このサンプル数を、入力遅延用ダミーデータサンプル数とする。
【００４２】
次に、図５（ｂ）に示すように、求めた入力遅延用ダミーデータサンプル数のダミーデータ（例えば、無音データ）を音声データ１１の先頭に付加する。
【００４３】
ここで、１ブロックのサンプル数がＬである場合について説明する。オリジナルの音声データを、先頭から分割した場合、ループエンド位置がＸ（１≦Ｘ≦Ｌ）番目であったとする。かかる場合、デコードデータのブロックにおいて、ループエンド位置を、Ｌ番目（ブロックの最後）にするために、付加すべき入力遅延用ダミーデータのサンプル数は、
Ｌ−Ｘ  である。
【００４４】
ただし、オーディオコーデックディレイが発生する場合、エンコードディレイ分のサンプル数をＥＤ、デコードディレイ分のサンプル数をＤＤとすると、付加すべき入力遅延用ダミーデータのサンプル数は、
Ｌ−１−（Ｘ−１＋ＥＤ＋ＤＤ）％Ｌ（％は剰余算を表す。）である。
【００４５】
なお、オーディオコーデックディレイ（ＥＤ及びＤＤ）のサンプル数は、音声データエンコード装置１００の記憶装置に予め記憶されている。
【００４６】
つぎに、エンコード処理部１１０は、音声データ１１の先頭に、エンコード時に、ブロック「Ａ」と組を作るためのブロック「Ａ０」を付加する。ブロック「Ａ０」は、１ブロック分のダミーデータ（以下、「先頭ブロック用ダミーデータ」という）で構成されている。この先頭ブロック用ダミーデータは、無音データ等である。
【００４７】
図５（ｂ）では、音声データ１１に、入力遅延用ダミーデータ及び先頭ブロック用ダミーデータが付加された後、ブロック（オリジナルブロック）に分割された様子を示している。ここでは、音声データ１１のスタート位置（ＤＳ）はオリジナルブロック「Ａ」に含まれている。ループスタート位置はオリジナルブロック「Ｂ」に含まれている。ループエンド位置はオリジナルブロック「Ｄ」に含まれている。
【００４８】
なお、ここでは、各ブロックのサンプル数は一定とするが、所定の規則にしたがって可変とするようにしてもよい。
【００４９】
つぎに、エンコード処理部１１０は、連続するオリジナルブロックを単位として音声圧縮（エンコード）を行なう（Ｓ１０３）。ここでは、ループ情報の有無にかかわらず、時系列に並ぶオリジナルブロックそれぞれについてエンコード処理を行なう。
【００５０】
エンコード処理では、連続する２つのオリジナルブロックから１つのエンコードブロックを生成するものとする。ただし、それぞれのオリジナルブロックはオーバラップされ、前後のエンコードブロック生成に用いられる。
【００５１】
すなわち、図５（ｃ）に示すように、連続するオリジナルブロック「Ａ０」「Ａ」とからエンコードブロック「Ｘ１」を生成し、オリジナルブロック「Ａ」「Ｂ」とからエンコードブロック「Ｘ２」を生成する。以下同様にして、エンコードブロック「Ｘ３」「Ｘ４」「Ｘ５」…を生成する。
【００５２】
このような圧縮方式としては、ＡＴＲＡＣ（Adaptive TRans form Acoustic Coding）が代表的であるが、本発明は、これに限られない。また、連続する３以上のオリジナルブロックから１つのエンコードブロックを生成するようにしてもよい。
【００５３】
次に、音声データエンコード装置１００は、時系列に並んだエンコードブロックをエンコードデータ２０として出力する（Ｓ１０５）。このとき、エンコードデータ２０の付加情報として、ループ情報も生成し、あわせて出力する。
【００５４】
ループ情報には、エンコードデータをデコードして出力されるデコードデータにおける、音声データスタート位置、音声データエンド位置、ループスタート位置及びループエンド位置が特定可能な情報がふくまれている。
【００５５】
ループ情報としては、例えば、エンコードデータをデコードして出力されるデコードデータにおける、音声データスタート位置、音声データエンド位置、ループスタート位置及びループエンド位置そのものの情報が含まれていてもよい。
【００５６】
また、ループ情報は、オリジナルの音声データにおける、音声データスタート位置、音声データエンド位置、ループスタート位置、ループエンド位置の情報を含んでいてもよい。かかる場合、デコードデータにおけるこれらの位置が特定できるように、さらに、入力遅延用ダミーデータのサンプル数、エンコードディレイ分のサンプル数、デコードディレイ分のサンプル数を含んでいる。なお、入力遅延用ダミーデータのサンプル数と、エンコードディレイ分のサンプル数と、デコードディレイ分のサンプル数とが、別個に含まれていてもよいし、これらのサンプル数を足し合わせたサンプル数が含まれていてもよい。また、エンコードディレイ分のサンプル数が音声データ再生装置２００に記憶されている場合は、ループ情報に含めなくてもよい。また、デコードディレイ分のサンプル数が音声データ再生装置２００に記憶されている場合は、ループ情報に含めなくてもよい。
【００５７】
上述のように、音声データエンコード装置１００が出力したエンコードデータ２０は、制御用プログラム３０とともに記録媒体３００に記録され、市場に流通される。
【００５８】
つぎに、音声データ再生装置２００における再生処理について、図６フロー図を参照して説明する。
【００５９】
なお、音声データ再生装置２００は、ループ情報に基づいて、デコードデータにおける音声データスタート位置、音声データエンド位置、ループスタート位置、ループエンド位置を特定するが、この特定の方法は以下の通りである。
【００６０】
例えば、ループ情報に、デコードデータにおける、音声データスタート位置、音声データエンド位置、ループスタート位置及びループエンド位置そのものの情報が含まれている場合は、これらの情報からそれぞれの位置が特定できる。
【００６１】
また、ループ情報に、オリジナルの音声データにおける音声データスタート位置、音声データエンド位置、ループスタート位置、ループエンド位置の情報が含まれている場合、ループ情報には、さらに、入力遅延用ダミーデータサンプル数、エンコードディレイ分のサンプル数、デコードディレイ分のサンプル数が含まれている。あるいは、エンコードディレイ分及び／又はデコードディレイ分のサンプル数が音声データ再生装置２００に記憶されている場合もある。かかる場合、デコードデータにおける音声データスタート位置、音声データエンド位置、ループスタート位置、ループエンド位置は、オリジナルの音声データのそれぞれ位置より、入力遅延用ダミーデータサンプル数とエンコードディレイ分のサンプル数とデコードディレイ分のサンプル数がとの合計分、後方に位置にあると特定できる。
【００６２】
図６のフローについて説明する。このフローは、ユーザの操作等に基づいて記録媒体３００に記録された音声データの再生要求を受け付けたときに開始される（Ｓ２０１）。
【００６３】
まず、デコード処理部２２０は、エンコードデータ２０の先頭のエンコードブロックおよびループ情報を読み込む（Ｓ２０２）。
【００６４】
まず、ループを行なわない場合の再生について説明する。ループを行なわない場合とは、再生対象のブロック（デコード後のブロック：デコードブロック）にループエンド位置が含まれていない場合（Ｓ２０３：Ｎ）、あるいは、ループエンド位置が含まれていても（Ｓ２０３：Ｙ）、ループを行なわない状態の場合（Ｓ２０８：Ｎ）である。なお、ループを行なうかどうかは、上述のように、制御用プログラム３０にしたがって、プログラム実行部２１０が判断する。また、デコード後のブロックにループエンド位置が含まれているかどうかは、再生済のブロック数とブロックに含まれるサンプル数とループ情報とから判断することができる。
【００６５】
ループを行なわない場合には、従来どおり、デコード処理部２２０は、つぎのエンコードブロックを読み込み（Ｓ２０４）、連続するエンコードブロックを用いてデコードを行ない、デコードブロックを生成する（Ｓ２０５）。
【００６６】
すなわち、図５（ｄ）に示すように、エンコードブロック「Ｘ１」「Ｘ２」からデコードブロック「ａ」を生成し、エンコードブロック「Ｘ２」「Ｘ３」からデコードブロック「ｂ」を生成していく。なお、デコードブロック「ａ」「ｂ」…は、オリジナルブロック「Ａ」「Ｂ」…に対応する音声データである。ただし、オーディオコーデックディレイが発生する場合は、そのサンプル数分ずれが生じている。
【００６７】
再生処理部２３０は、デコードブロックを順次Ｄ／Ａ変換し、音声出力することで音声データを再生する（Ｓ２０６）。なお、再生処理部２３０は、音声データのスタート位置を含むデコードブロックを生成して再生する際、音声データ１１の先頭に付加された入力遅延用ダミーデータおよびオーディオコーデックディレイのサンプルの部分はカットして、音声データのスタート位置から再生するようにする。また、再生処理部２３０は、音声データのエンド位置を含むデコードブロックを再生する際、エンド位置までのサンプルを再生し、エンド位置以降のサンプルはカットして再生しない。以上の処理は、エンコードブロックが終了するまで続けられる（Ｓ２０７、Ｓ２１５）。
【００６８】
つぎに、ループを行なう場合の再生について説明する。ループを行なう場合とは、再生対象のデコードブロックにループエンド位置が含まれており（Ｓ２０３：Ｙ）、かつ、ループを行なう状態の場合（Ｓ２０８：Ｙ）である。
【００６９】
この場合、デコード処理部２２０は、次のエンコードブロックを読み込む。図７を用いて説明する。ここでは、再生対象がデコードブロック「ｄ」の場合にリピートが発生する。デコードブロック「ｃ」の処理の際には、すでにエンコードブロック「Ｘ４」を読み込んでいるため、ここでは、エンコードブロック「Ｘ５」を読み込むことになる（Ｓ２０９）。
【００７０】
次に、デコード処理部２２０は、「Ｘ４」と「Ｘ５」とからデコードブロック「ｄ」を生成する（Ｓ２１０）。再生処理部２３０は、「ｄ」の再生を開始する（Ｓ２１１）。
【００７１】
ここで、再生処理部２３０は、ループエンド位置のサンプルまでを再生し、それ以降のサンプルはカットして再生しない。なお、図７の例では、ループエンド位置はブロック「ｄ」の最後なので、再生処理部２３０は、ブロック「ｄ」に含まれるサンプルの全てを再生することになる。
【００７２】
デコード処理部２２０は、デコードブロック「ｄ」を生成すると、直ちに、ループスタート位置を含むデコードブロック「ｂ」を得るためにエンコードブロック「Ｘ２」及び「Ｘ３」を読み込む（Ｓ２１２）。そして、「Ｘ２」と「Ｘ３」とからデコードブロック「ｂ」を生成する（Ｓ２１３）。なお、図４では、ループスタート位置は、ブロック「ａ」に含まれていたが、図５では、エンコード時に音声データに入力遅延用ダミーデータを付加したために、ループスタート位置は、ブロック「ｂ」に含まれることとなっている。
【００７３】
再生処理部２３０は、デコードブロック「ｂ」を再生する。ただし、デコードブロック「ｂ」のうち、再生すべきデータはループスタート位置以降のサンプルデータである。したがって、再生処理部２３０は、ループスタート位置までのサンプルをカットして、ループスタート位置のサンプルデータから再生する（Ｓ２１４）。なお、再生処理部２３０は、ループスタート位置について、上述のように、ループ情報を参照し判断する。
【００７４】
以上、本発明の一実施形態について説明した。上記実施形態によれば、デコードデータのブロックにおいて、ループエンド位置がブロックの最後になる。したがって、ループエンド位置のブロックには、再生すべきデータ（音声出力可能サンプル）が十分に含まれている。すなわち、音声データ再生装置２００は、ループ再生される場合でも、ループスタート位置のデコードデータを生成する時間を十分とることができる。したがって、ループの際の処理負荷は、軽減される。
【００７５】
また、上記実施形態によれば、ループに関係するブロックを減少させ、処理負担が軽減することがある。例えば、図３（ｂ）に示すように音声データを分割した場合、図３（ｄ）に示すように、ループ部分のデコードブロックは、「ａ」「ｂ」「ｃ」「ｄ」の４つである。これらのデコードブロックを得るためには、「Ｘ１」「Ｘ２」「Ｘ３」「Ｘ４」「Ｘ５」の５つのエンコードブロックを処理しなければならない。一方、上記実施形態では、図５（ｂ）に示すように入力遅延用ダミーデータを付加して音声データを分割した。これにより、図５（ｄ）に示すように、ループ部分のデコードブロックは、「ｂ」「ｃ」「ｄ」の３つとなった。すなわち、これらのデコードブロックを得るためには、「Ｘ２」「Ｘ３」「Ｘ４」「Ｘ５」の４つのエンコードブロックを処理すればよいこととなる。
【００７６】
上記実施形態は、様々な変形が可能である。
【００７７】
例えば、上記実施形態では、音声データのブロック分割の際、ループエンド位置が、ブロックの最後になるように分割している。しかし、音声データの分割の仕方は、これに限られない。ループエンド位置が、ブロックの最後でなくてもよい。少なくとも、デコードデータのブロックにおいて、ループエンド位置が、ブロックの後方向に移動するように分割されればよい。音声データ再生装置２００におけるループ時の処理において、ループスタート位置のブロックをデコード処理するための時間が、十分とれるようにすればよい。すなわち、ループエンド位置を含むブロックに、再生すべきデータ（音声出力可能サンプル）が十分に含まれていればよい。ループエンド位置のブロック中の、ループの際に再生されるべきサンプル数（ループエンドサンプル条件数）は、音声データ再生装置２００の処理能力によって適宜選択できる。
【００７８】
音声データエンコード装置１００は、音声データ再生装置２００の処理能力を考慮したループエンドサンプル条件数を自身の記憶装置に記憶しておくようにする。
【００７９】
具体的には、エンコード処理部１１０は、図３（ｂ）に示すように、音声データ１１を、先頭から所定のサンプル数毎に仮に分割する。
【００８０】
このように分割された音声データ１１が、エンコードされ、さらにデコードされると図８に示すようなデコードデータのブロックとなる。ここで、エンコード処理部１１０は、ループエンド位置を含むブロックについて、ループエンド位置までのサンプル数（出力可能サンプル数）が、ループエンドサンプル条件数以上か否か判定する。出力可能サンプル数が、ループエンドサンプル条件数以上である場合、入力遅延用ダミーデータを付加することなく、音声データ１１を分割してエンコードする。
【００８１】
一方、ループエンド位置までのサンプル数（音声出力可能サンプル数）が、ループエンドサンプル条件数未満である場合、ループエンドサンプル条件数と音声出力可能サンプル数の差分を求める。そして、求めた差分を入力遅延用ダミーデータサンプル数とする。
【００８２】
次に、図９（ｂ）に示すように、求めた入力遅延用ダミーデータサンプル数のダミーデータを音声データ１１の先頭に付加する。
【００８３】
ここで、１ブロックのサンプリング数がＬである場合で、オリジナルの音声データの先頭から分割した場合、ループエンド位置がＸ（１≦Ｘ≦Ｌ）番目のサンプルになる場合について考える。なお、ループエンドサンプル条件数をＮとする。Ｘ≧Ｎの場合、ブロックの分割をし直す必要はない。一方、Ｘ＜Ｎの場合、先頭に入力遅延用ダミーデータを付加する。付加する入力遅延用ダミーデータのサンプル数は、
Ｎ−Ｘ  である。
【００８４】
ただし、オーディオコーデックディレイ（エンコードディレイ及びデコードディレイ）が発生する場合、音声データの先頭に付加する入力遅延用ダミーデータのサンプル数は、
Ｎ−１−（Ｘ−１＋ＥＤ＋ＤＤ）％Ｌ（％は剰余算を表す。）である。なお、この式により求めたダミーデータサンプル数が０以下になる場合は、入力遅延用ダミーデータを付加することなく、音声データ１１を分割してエンコードする。
【００８５】
つぎに、エンコード処理部１１０は、音声データ１１の先頭に、エンコード時に、ブロック「Ａ」と組を作るためのブロック「Ａ０」を付加する。ブロック「Ａ０」は、１ブロック分のダミーデータ（以下、「先頭ブロック用ダミーデータ」という）で構成されている。この先頭ブロック用ダミーデータは、無音データ等である。
【００８６】
こうして分割された音声データは、上述したように、エンコードされ、エンコードデータとなる。
【００８７】
このようなエンコードデータによるループ時の再生の様子を図１０に示した。図示するように、ループエンド位置ＬＥは、デコードブロック「ｄ」の最後ではない。しかし、デコードブロック「ｄ」は、出力可能サンプル数を十分含んでいる。したがって、ループ時の処理負担が軽減される。
【００８８】
上記の例では、先頭ブロック用ダミーデータとして、無音データを用いたが、本実施形態は、これに限らない。先頭ブロック用ダミーデータとして、組となるブロックと相関性のあるデータを用いるようにしてもよい。また、音声データの先頭と同様に、終了部に付加されるダミーデータ（終了ブロック用ダミーデータ）として、組となるブロックと相関性のあるデータを用いるようにしてもよい。こうすれば、音声データのスタート及びエンド位置での音質の向上が図られる。
【００８９】
また、音声データのスタート位置とループスタート位置とが重なる場合、先頭用ブロックダミーデータとして、ループスタート位置の音声データとある程度連続性のあるデータを用いてもよい。
【００９０】
具体的には、先頭用ブロックダミーデータとして、ループエンド位置の直前の音声データを用いる。通常、ループエンドからループスタートへは、楽曲が滑らかに繋がるように構成されている。したがって、ループエンド位置とループスタート位置の音声データは、ある程度連続性がある場合が多い。
【００９１】
かかる場合を、図１１を用いて説明する。図１１の音声データは、そのスタート位置とループスタート位置とが一致している。
【００９２】
かかる場合、エンコード処理部１１０は、音声データを次のように分割した後、エンコードする。
【００９３】
まず、上記で説明したように、必要な入力遅延用ダミーデータのサンプル数を求める。つぎに、入力遅延用ダミーデータのサンプル数と、先頭ブロック用ダミーデータのサンプル数（１ブロック分のサンプル数）の和を求める。次に、そのサンプル数分の音声データを、ループエンド位置の前から抽出する。そして、抽出したデータを音声データの先頭に付加した後、先頭からブロックに分割する（図１１（ｂ）参照）。
【００９４】
また、音声データのエンド位置とループエンド位置とが重なる場合、終了ブロック用ダミーデータとして、ループエンド位置の音声データとある程度連続性のあるデータを用いてもよい。
【００９５】
具体的には、終了ブロック用ダミーデータとして、ループスタート位置の直後の音声データを用いる。かかる場合を、図１２を用いて説明する。図１２の音声データは、そのエンド位置（ＤＥ）とループエンド位置とが一致している。
【００９６】
かかる場合、エンコード処理部１１０は、音声データを次のように分割した後、エンコードする。
【００９７】
まず、上記で説明したように、必要な終了ブロック用ダミーデータのサンプル数を求める。音声データのエンド位置（ループエンド位置）がブロックの最後である場合、必要なダミーデータのサンプル数は、１ブロック分のサンプル数である。次に、求めたサンプル数分の音声データを、ループスタート位置の後ろから抽出する。そして、抽出したデータを音声データの最後に付加した後、先頭からブロックに分割する。
【００９８】
なお、上記の実施形態では、連続する２つのオリジナルブロックを用いて１ブロックのエンコードデータを生成するエンコード方式を用いた場合について主に説明したが、３つ以上のオリジナルブロックを用いて１ブロックのエンコードデータを生成するエンコード方式の場合にも、本発明を適用できる。
【００９９】
また、連続する３つの以上のエンコードブロックを用いて１ブロックのデコードデータを生成するデコード方式の場合にも本発明を適用できる。
【図面の簡単な説明】
【０１００】
【図１】本発明の実施形態の構成の概要を示す図である。
【図２】音声データエンコード装置１００におけるエンコード処理について説明するフロー図である。
【図３】音声データ１１のブロックの分割方法について説明する図である。
【図４】ループの際のブロック単位の処理を説明する図である。
【図５】音声データ１１のブロックの分割方法について説明する図である。
【図６】音声データ再生装置２００における再生処理について説明するフロー図である。
【図７】ループの際のブロック単位の処理を説明する図である。
【図８】変形例にかかる入力遅延用ダミーデータサンプル数を求める様子を説明する図である。
【図９】変形例にかかる音声データ１１のブロックの分割方法について説明する図である。
【図１０】変形例にかかるループの際のブロック単位の処理を説明する図である。
【図１１】変形例にかかる音声データ１１のブロックの分割方法について説明する図である。
【図１２】変形例にかかる音声データ１１のブロックの分割方法について説明する図である。
【符号の説明】
【０１０１】
１１…音声データ
１２…ループ情報
２０…エンコードデータ
３０…制御用プログラム
１００…音声データエンコード装置
１１０…エンコード処理部
２００…音声データ再生装置
２１０…プログラム実行部
２２０…デコード処理部
２３０…再生処理部
３００…記録媒体
【図１】
2006153908.tif 000003
【図２】
2006153908.tif 000004
【図３】
2006153908.tif 000005
【図４】
2006153908.tif 000006
【図５】
2006153908.tif 000007
【図６】
2006153908.tif 000008
【図７】
2006153908.tif 000009
【図８】
2006153908.tif 000010
【図９】
2006153908.tif 000011
【図１０】
2006153908.tif 000012
【図１１】
2006153908.tif 000013
【図１２】
2006153908.tif 000014