(57)【要約】【課題】無線ＬＡＮの通信状態の変化に合わせてビットレートを変化させながらＭＰ３データを配信できるオーディオサーバ装置を提供する。【解決手段】ＰＣＭオーディオデータを複数の分割データに分割し、分割データ単位でエンコード処理を行いながら、エンコードしたＭＰ３データをストリーミング配信する。無線ＬＡＮの通信状態を監視し、その通信状態の変化に合わせて、分割データ毎に、エンコードするビットレートを更新する。これにより、そのときの通信状態で伝送可能な最良の音質のＭＰ３データの伝送が可能になり、音飛びや音質の低下がなくなる。【選択図】　図１
2004128651.tif 000002
【特許請求の範囲】
【請求項１】
オーディオデータをエンコードするエンコード手段と、
エンコードされたオーディオデータを通信網に送出する通信手段と、
オーディオデータを複数の分割データに分割してエンコード手段に供給する分割手段と、
通信網の状態を監視し、各分割データのエンコード時に、そのときの通信網の状態に応じたビットレートをエンコード手段に指示するビットレート指示手段と、
を備えたオーディオデータ配信装置。
【請求項２】
前記エンコード手段は、ＰＣＭオーディオデータをＭＰ３データにエンコードする手段であり、
前記分割手段は、各分割データにその前後の分割データと重なり合うオーバーラップ区間を持たせて分割する手段であり、
さらに、エンコード手段によってエンコードされた各分割データが重なり合うことなく再結合できる結合箇所を、各分割データの前記オーバーラップ区間のなかで決定し、この結合箇所で各分割データを再結合して通信手段に供給する結合手段を備えた請求項１に記載のオーディオデータ配信装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ネットワーク等を介してオーディオデータをストリーミング配信するオーディオデータ配信装置に関する。
【０００２】
【従来の技術】
ＬＡＮやインターネット等を介したオーディオデータのストリーミング配信のデータ形式としてＭＰ３が用いられる場合が多い。ＭＰ３データは、ＰＣＭオーディオデータの約１／１１（１２８ｋｂｐｓ）のデータサイズ（ビットレート）でＰＣＭオーディオデータとほぼ同様の音質を得ることができるためである。ＭＰ３のオーディオデータを配信するサーバは、ＭＰ３にエンコードしたオーディオデータを蓄積記憶しており、クライアント装置（端末装置）から配信要求（リクエスト）があると、このリクエストに応じてＭＰ３オーディオデータをストリーム配信する装置である。
【０００３】
また、ＭＰ３データは、１２８ｋｂｐｓのビットレートに固定されているわけではなく、これ以外に６４ｋｂｐｓなど種々のビットレートでエンコードすることができ、曲の途中でビットレートを変化させるＶＢＲ方式のエンコード方式も実用化されている。ＶＢＲ方式は、たとえば曲中の静かな箇所についてはビットレートを下げてデータ量を節約し、複雑な構成の楽音の部分についてはビットレートを上げて楽音の再現性を良くするという方式であり、これにより同じデータ量であってもビットレート固定方式（ＣＢＲ）よりも音質を向上させることができる。
【０００４】
【発明が解決しようとする課題】
ネットワークを介した通信状態、特に無線ＬＡＮなど無線を介した通信の状態は、電波伝搬の環境や輻輳の状態などの影響によって種々変化し、伝送可能なビットレートも刻々変化する。しかし、上記従来のサーバ装置では、予めＭＰ３にエンコードしたオーディオデータを記憶しているため、通信状態に対応してビットレートを変化させることができなかった。
【０００５】
特に、１曲のオーディオデータを配信している途中でも通信状態は刻々と変化するが、このように曲の途中で通信状態の変化に対応してビットレートを変化させることは不可能であった。また、予めエンコードされているＭＰ３データのなかにもビットレートが途中で変化するものもあるが、これは上記のように曲中の楽音の変化に合わせたものであり、通信状態に変化に動的に対応させたものではなかった。
【０００６】
この発明は、通信状態の変化に応じて動的にビットレートを変更してオーディオデータを配信することができるオーディオデータ配信装置を提供することを目的とする。
【０００７】
【課題を解決するための手段】
請求項１の発明は、オーディオデータをエンコードするエンコード手段と、エンコードされたオーディオデータを通信網に送出する通信手段と、オーディオデータを複数の分割データに分割してエンコード手段に供給する分割手段と、通信網の状態を監視し、各分割データのエンコード時に、そのときの通信網の状態に応じたビットレートをエンコード手段に指示するビットレート指示手段と、を備えたことを特徴とする。
【０００８】
この発明において、エンコード手段には、（１曲の）オーディオデータを複数に分割した分割データが供給される。エンコード手段は、この分割データ、すなわち分割されたオーディオデータをエンコードして通信手段に供給するが、エンコード時のビットレートを可変することができる。エンコード手段がどのようなビットレートでオーディオデータをエンコードするかは、ビットレート指示手段によって指定される。ビットレート指示手段は、エンコードされたオーディオデータが送出される通信網の状態を監視しており、その状態に応じてビットレートを決定する。オーディオデータは複数の分割データに分割されているため、各分割データ毎に、その分割データをエンコード・送出する直前にそのときの通信網の状態に応じてビットレートを決定することにより、そのときの通信状態に応じた最適なビットレートを選択することができる。
【０００９】
なお、通信網の状態は、以下のような方式で判断することができる。配信をＴＣＰプロトコルで行う場合には、再送頻度に基づいて判断することができる。通信網が無線ＬＡＮの場合には、電波強度に基づいて判断することができる。この場合において、サーバ装置はクライアント装置から制御信号を受信するため、この制御信号の強度に基づいてクライアント装置との通信網の状態を判断することができる。また、クライアント装置からサーバ装置に対して別途受信品質の情報を送信するようにしてもよい。
また、クライアント装置におけるオーディオデータのバッファ量をサーバ装置に送信し、サーバ装置がこのバッファ量も考慮に入れてビットレートを決定するようにしてもよい。
【００１０】
請求項２の発明は、請求項１の発明において、前記エンコード手段がＰＣＭオーディオデータをＭＰ３データにエンコードし、前記分割手段が各分割データにその前後の分割データと重なり合うオーバーラップ区間を持たせて分割し、さらに、エンコード手段によってエンコードされた各分割データが重なり合うことなく再結合できる結合箇所を、各分割データの前記オーバーラップ区間のなかで決定し、この結合箇所で各分割データを再結合して通信手段に供給する結合手段を備えたことを特徴とする。
【００１１】
ＭＰ３データへのエンコード処理は、エンコードするデータ（フレーム）だけでなくその前後のデータも用いて処理を行うため、分割データの端部のエンコードされたデータは分割しない状態でエンコードされた場合と異なる内容になってしまう。そこで、分割データをオーバーラップさせ、このオーバーラップしている区間の適当な位置（結合フレーム）で各分割データを結合するようにした。これにより、分割データの端部のデータを使用しないで分割データを再結合することができ、分割してエンコード処理しても全体を１つのデータとしてエンコード処理した場合と同じ内容にすることができる。
【００１２】
【発明の実施の形態】
図面を参照してこの発明の実施形態であるオーディオサーバ装置について説明する。図１はオーディオサーバ装置１、および、このオーディオサーバ装置１に無線ＬＡＮ３を介して接続されるクライアント装置２からなるオーディオデータ配信システムのブロック図である。オーディオサーバ装置１は、複数の曲の曲データ（ＰＣＭオーディオデータ）を記憶しており、クライアント装置２からリクエストがあるとそのリクエストに対応する曲データを読み出し、この曲データをリアルタイムにＭＰ３データに変換（エンコード）しながら、これを無線ＬＡＮ３を介してクライアント装置２にストリーム配信する。
【００１３】
ＰＣＭオーディオデータのＭＰ３データへの変換は１曲全部を通して行うのではなく、曲を複数の分割データに分割し、各分割データ毎にＭＰ３エンコードする。各分割データのビットレートは、無線ＬＡＮ３の通信状態を監視しながらエンコード直前に決定される。これによって、そのときの通信状態に対応した最適のビットレートを選択することができる。
【００１４】
ＰＣＭオーディオデータのＭＰ３へのエンコードは、エンコード対象のデータ（フレーム）だけでなく、その前後のデータも参照して行うため、分割データの結合部が不連続にならないように、前後の分割データが重なり合うオーバーラップ区間を設けて分割データを作成し、ＭＰ３にエンコードしたのちこのオーバーラップ区間で前後の分割データを結合しながらクライアント装置２に送信する。
【００１５】
図１において、オーディオサーバ装置１は、ＣＰＵ１０、ＣＤ−ＲＯＭドライブ１１、ＨＤＤ１２、ＤＳＰ１３、および、無線ＬＡＮ制御部１４を有している。
ＣＤ−ＲＯＭドライブ１１、ＨＤＤ１２は、ＰＣＭオーディオデータを記憶する記憶手段であり、複数の曲のＰＣＭオーディオデータを記憶している。
ＣＰＵ１０は、このオーディオサーバ装置の動作を制御する制御装置であり、クライアント装置からのリクエストに対応して曲データ（ＰＣＭオーディオデータ）をＣＤまたはＨＤＤから読み出し、この曲データを複数の分割データに分割し、ＭＰ３エンコードされた分割データを結合して、無線ＬＡＮ制御部１４に入力する、などの処理を実行する。
【００１６】
ＤＳＰ１３は、ＣＰＵ１０から供給されたＰＣＭオーディオデータをＭＰ３にエンコードするためのプロセッサである。ＰＣＭオーディオデータは、複数の分割データとして供給されるが、各分割データ毎にビットレートが指定され、その指定されたビットレートでＭＰ３にエンコードする。
無線ＬＡＮ制御部１４は、ＩＥＥＥ８０２．１１ｂのプロトコルで無線ネットワーク通信が可能な制御部であり、クライアント装置２からのリクエストを受信するとともに、このリクエストに応じてＭＰ３エンコードされたオーディオデータをストリーム配信する。また、通信状態はこの無線ＬＡＮ制御部１４が監視している。
【００１７】
一方、クライアント装置２は、ＣＰＵ２０、無線ＬＡＮ制御部２１、ＤＳＰ２２、ＤＡコンバータ２３、アンプ２４、スピーカ２５などを備えている。
ＣＰＵ２０は、このクライアント装置２の制御装置であり、ユーザが入力したリクエストを無線ＬＡＮ制御部２１を介してオーディオサーバ装置１に送信するとともに、無線ＬＡＮ制御部２１を介して受信したＭＰ３データをＤＳＰ２２に入力する。
無線ＬＡＮ制御部２１は、ＩＥＥＥ８０２．１１ｂプロトコルで前記サーバ装置１の無線ＬＡＮ制御部１４と通信し、リクエストを送信するとともに、ＭＰ３にエンコードされたオーディオストリームデータを受信する。
ＤＳＰ２２は、受信したＭＰ３データをＰＣＭオーディオデータにデコードするプロセッサである。受信したＭＰ３データのビットレートは、各フレーム毎にサイドインフォメーションに書き込まれており、このビットレートに合わせてＭＰ３データをＰＣＭオーディオデータにデコードする。
アナログ回路部は、ＤＡコンバータ２３、アンプ２４、スピーカ２５からなり、ＤＳＰ２２がデコードしたＰＣＭオーディオデータをアナログオーディオ信号に変換して増幅・出力する。
【００１８】
上記の構成のオーディオデータ配信システムにおいて、無線ＬＡＮ３の通信状態が、無線ＬＡＮ制御部１４によって監視され、その通信状態に応じて決定されたビットレートでＰＣＭオーディオデータがＭＰ３データにエンコードされる。図２は、そのエンコード手順を説明する図である。
リクエストに対応して読み出された曲データ（ＰＣＭオーディオデータ）は、同図最上段に示すように長いものであるため、これを複数の分割データに分割する。同図では、９個の分割データに分割している。各分割データは前後の分割データと互いに重なり合うオーバーラップ区間を設けて作成されている。
各分割データを、順次それぞれ別々にＭＰ３エンコードし、このエンコードしたデータを結合してクライアント装置２にストリーミング配信する。分割データの結合は、互いに重なり合うオーバーラップ区間の適当なフレーム（結合フレーム）で行う。
【００１９】
ＣＰＵ１０はＤＳＰ１３がエンコードしたＭＰ３データを先頭から順次無線ＬＡＮ制御部１４に入力する。無線ＬＡＮ制御部１４はこのデータをストリーミング配信するとともに、無線ＬＡＮの通信状態を監視する。
【００２０】
ここで、通信状態は、以下のような方式で判断することができる。配信をＴＣＰプロトコルで行う場合には、再送頻度に基づいて判断することができる。通信網が無線ＬＡＮの場合には、電波強度に基づいて判断することができる。この場合において、サーバ装置はクライアント装置から制御信号を受信するため、この制御信号の強度に基づいてクライアント装置との通信網の状態を判断することができる。また、クライアント装置からサーバ装置に対して別途受信品質の情報を送信するようにしてもよい。
【００２１】
この通信状態に基づいてＰＣＭオーディオデータをＭＰ３データにエンコードするときのビットレートが決定される。このビットレートの変更は分割データ単位で行われ、直前の分割データをストリーミング配信している期間の通信状態に基づいて次の分割データのビットレートが決定される。
【００２２】
図３は、オーディオサーバ装置１のオーディオデータ配信手順を示すフローチャートである。クライアント装置２からリクエストが入力されると（ｓ２０）、このリクエストに対応する曲データ（ＰＣＭオーディオデータ）をＣＤまたはＨＤＤから読み出す（ｓ２１）。そして、この曲データを複数の分割データに分割する（ｓ２２）。そして、先頭の分割データをデフォルトのビットレートでＭＰ３エンコードするとともに（ｓ２３）、これを無線ＬＡＮ制御部１４を介してストリーミング配信する（ｓ２４）。この配信と並行して無線ＬＡＮ３の通信状態を監視する（ｓ２５）。このｓ２３、ｓ２４、ｓ２５は先頭の分割データのエンコード処理が終了するまで並行して行われる。そして、（先頭の）分割データのエンコードが終了すると（ｓ２６）、この分割データのストリーミング配信の通信状態に基づいて次の分割データのビットレートを決定する（ｓ２７）。
【００２３】
この新たに決定されたビットレートで次の分割データのエンコードを開始し、オーバーラップ区間をエンコードし終えたところで直前の分割データと今回の分割データとを結合し（ｓ３１）、直前の分割データのストリーミング配信に続けて今回の分割データのストリーミング配信を開始する（ｓ３２）。そして、今回の分割データが最終分割データの場合には（ｓ３３）、この分割データの配信終了を待って（ｓ３４）、動作を終了する。この分割データが最終分割データでない場合にはｓ２５に進む。
【００２４】
以上のようにこのオーディオサーバ装置では、ＰＣＭオーディオデータを複数の分割データに分割し、各分割データをそのときの通信状態に合わせたビットレートでＭＰ３にエンコードすることで、そのときの通信状態に対応した音飛びしない最良の音質でオーディオデータを配信できるようにしている。
ただし、上述したようにＰＣＭオーディオデータをＭＰ３データにエンコードするとき、エンコードするデータの前後のデータも用いてエンコードするため、分割データを再結合したとき曲データ全部を一度にエンコードした場合と内容が異なってしまわないように、オーバーラップ区間を設けて分割データを作成し、このオーバーラップ区間を用いて分割データを再結合することによって、曲データを全部を一度にエンコードした場合と同様に、データの連続性が保たれる。
【００２５】
以下、ＭＰ３データの構成と分割・結合の手順について説明する。
図４はＭＰ３データのデータ構成を示す図である。ＭＰ３データは、ＰＣＭオーディオデータの１１５２サンプルで１フレームを構成する。各フレームの構成は同図（ｂ）に示すように、ヘッダ、サイドインフォメーション、メインデータなどからなり、ヘッダ内の情報のうち、サンプルレート、ビットレート、パディングの有無の情報によりフレームサイズを割り出すことができる。すなわち、１フレームの大きさ（ｂｙｔｅ数）は、１４４×（ビットレート）÷（サンプルレート）で決定される。たとえは、ビットレート：１２８ｋｂｐｓ、サンプルレート（サンプリング周波数ｆｓ）：４４．１ｋＨｚの場合；
１４４×１２８０００／４４１００＝４１７ｂｙｔｅ
であり、小数点以下は切り捨てられるが、ＭＰ３データ全体としての伝送ビットレートを合わせるために数フレームに１つの割合で１ｂｙｔｅを加算（パディング）したフレームが構成される。数フレームに１つの割合で４１８バイトのフレーム（パディングフレーム）を作成する。
【００２６】
また、サイドインフォメーションには、メインデータビギンというデータが書き込まれている。このデータは、ＭＰ３エンコードされた上記１１５２サンプルの符号化データ部（メインデータ）がどこから（メインデータのどの位置から）始まるかを示すデータである。ここで、ＭＰ３フォーマットの１フレームは、上記のように１１５２サンプルを対象としたものであるが、この１１５２サンプル分の符号化データ部（メインデータ）を、このフレーム以外の複数の隣接フレームのメインデータエリアにまたがって配置することを許容している。すなわち、１１５２サンプルのＰＣＭデータをエンコードしたときのデータサイズはそのＰＣＭデータの状態に応じて変化させることができる。これにより、単調な音の区間ではデータ量を少なく、複雑で変化に富んだ区間にはデータ量を多く割り振ることで、音質を考慮したデータ配分を行うことができる。また、このとき生じるフレーム毎のデータ配分量の差異は、複数の隣接フレーム間でそれぞれのメインデータサイズを調節することで吸収し、データ量が多い区間により大きなメインデータエリアを割り当てるようにする。その結果として、データ量の少ない区間では、メインデータエリアの後ろの部分に余白ができることで、次のフレーム以降のデータ量の多い区間により多くのデータを配分するための余裕分が生じることになる（ビット貯蔵）。
【００２７】
そして、次のフレームのメインデータは、そのフレームのメインデータエリアからでなく、このビット貯蔵されている前のフレームのメインデータエリアの途中から書きはじめる。これによって、配信のビットレートを変更することがなくなるうえ、その分のメインデータエリアのエリアを節約している。そして、なかには、エンコードしたメインデータのサイズが１フレームのメインデータエリアの大きさよりも大きい場合があるが、上記のように他のフレームでビット貯蔵しているため、このようなデータを書き込んでも、全体としてフレーム数に対応したメインデータエリアのデータ量に対応するデータ量に収めることができる。
【００２８】
図４（Ｃ）にビット貯蔵の例を示す。これは曲の途中のフレームを示す図であり、フレーム（１）　のメインデータエリアにはフレーム（２）　のメインデータの後半部、フレーム（３）　のメインデータおよびフレーム（４）　のメインデータの先頭部分が書き込まれている。そして、フレーム（４）　のメインデータの残りの部分は、フレーム（２）　のメインデータエリアに書き込まれている。このように、メインデータがフレームの範囲を越えて書き込まれるため、ＰＣＭオーディオデータの内容に応じて、ビット数を節約できるフレームではメインデータを小さくしてビット貯蔵し、複雑なＰＣＭデータのフレームでは、貯蔵されているビットを借りて１フレームを超える大きさのデータを書き込むことができ、全体としてのデータ量を増加させることなく高音質のエンコードをすることができる。
【００２９】
ＭＰ３エンコードにおいては、処理対象フレームとその前後の隣接フレームの半分にわたったフィルタ処理を行う。このため、データを分割してしまうと、その分割点付近のフレームでは隣接フレームの有無による影響が生じてしまう。また、ＭＰ３データにはビット貯蔵によるメインデータの移動があるため、オーディオデータを時間軸上でオーバーラップ無しに切断した分割データを単純に結合するのみでは再結合されたデータが不連続になってしまう。
そこで、ＰＣＭオーディオデータを分割するときに前後の分割データに重なり合うオーバーラップ区間を設け、ＭＰ３にエンコードしたのち、このオーバーラップ区間内で最適な結合フレームを割り出し、メインデータの連続性を維持しつつ前記割り出された結合フレームで分割データを結合するようにしている。
【００３０】
図５は、ＰＣＭオーディオデータの分割処理を説明する図である。オーディオデータを分割する場合、各分割データがＭＰ３の１フレームのサンプル数（この実施形態では１１５２サンプル）の整数倍になるように分割する。さらに、各分割データが前後の分割データと数フレーム分のオーバーラップ区間を共有するように、このオーバーラップ区間を両方に重複させて分割データを作成する。オーバーラップ区間のフレーム数は、上記のフィルタ処理で必要な隣接フレームをカバーできるフレーム数およびビット貯蔵が適合するフレームを検索するためのフレーム数を加算したフレーム数とする。
【００３１】
同図では、１曲のオーディオデータを４分割し、各分割データが均等に同じ長さになるように調節している。このため、各分割データの長さ（フレーム数）をｂａｓｅ＋ｏｖｌのフレーム数にしている。なお、基本分割フレーム数ｂａｓｅは、総データフレーム数；ｓｉｚｅ、分割数；Ｎ、オーバーラップフレーム数；ｏｖｌとすると、（ｓｉｚｅ−ｏｖｌ）／Ｎで求めることができる。したがって、最初の分割データおよび最後の分割データは、隣の分割データとオーバーラップするのは片方のみであるため、両方ともオーバーラップする中間の分割データに比べてオーバーラップしない区間がｏｖｌ／２だけ長くなっている。
【００３２】
なお、元々のＰＣＭオーディオデータのデータ長（サンプル数）がＭＰ３の１フレームのサンプル数（１１５２サンプル）の整数倍でない場合には、最後の１フレームは短いフレームとなる。また、ＰＣＭオーディオデータのフレーム数が分割数Ｎで割り切れる数でなかった場合には、最後（Ｎ番目）の分割データは他の分割データよりも短い分割データとなる。
【００３３】
先頭の分割データから順次ＭＰ３データにエンコードされてゆくが、１つの分割データがＭＰ３にエンコードされ、その次の分割データの先頭部分がＭＰ３データにエンコードされると、このＭＰ３エンコードされた分割データを結合して連続するＭＰ３データに再編集する。
【００３４】
図６および図７は、結合フレーム検索処理を説明する図である。図６（Ａ）は、分割データＭＰ３（１）　と分割データＭＰ３（２）　とを結合する場合について説明している。分割データＭＰ３（１）　のうちオーバーラップ区間の最後の２フレームは、終了点差などの影響を受ける区間であるため、それ以前のフレームの品質を確保するためのダミーフレームとして捨てることとする。また同様に、分割データＭＰ３（２）　のうちオーバーラップ区間の最初の２フレームは、フィルタリング遅延や開始点差などの影響を受ける区間であるため、それ以後のフレームの品質を確保するためのダミーフレームとして捨てることとする。したがって、オーバーラップ区間のうち両端の２フレームずつを除いた中央のフレームのどれかを結合フレームとするため、この区間の分割データＭＰ３（１）　、分割データＭＰ３（２）　の対応する各フレームのメインデータビギン（ビット貯蔵値）の適合性をチェックする。
【００３５】
すなわち、同図（Ｂ）に示すように、前のデータである分割データＭＰ３（１）　のメインデータビギンが、後のデータである分割データＭＰ３（２）　のメインデータビギンと同じか、または、それよりも手前にあれば、分割データＭＰ３（１）　のメインデータと分割データＭＰ３（２）　のメインデータを重なり合うことなく結合することができる。
【００３６】
なお、ビット貯蔵に応じて複数の隣接フレーム間でデータ配分を調節するときは、エンコードを行うＰＣＭデータの聴覚的情報量とその時点のビット貯蔵値によって配分量を決定する。このため、オーバーラップ領域について同じＰＣＭデータに対してエンコードを行ったとしても、オーバーラップ領域の始端からエンコードを開始したものと、その前からエンコードをしてきたものとでは、オーバーラップ領域に至るまでのエンコード過程が異なるため、それぞれのビット貯蔵値が異なる。したがって、結果として、それぞれのオーバーラップ領域のビット貯蔵値とメインデータビギン値は異なるものになる。このため、図６（Ａ）に示すオーバーラップ領域のうち両端を除く全域にわたってメインデータビギンを比較し、メインデータが重ならない範囲でＭＰ３（１）　のメインデータビギンとＭＰ３（２）　のメインデータビギンが近いフレームを検索して、それを結合フレームとする。
【００３７】
メインデータが重ならない範囲で、ＭＰ３（１）　のメインデータビギンとＭＰ３（２）　のメインデータビギンが近いフレームで両分割データを結合すると、図６（Ｂ）の下段に示す結合後のメインデータのマージン（空白エリア）が少なくなり、空白を埋めるためのダミーデータを少なくしてメインデータエリアを有効に使うことができる。
【００３８】
図７は、ＣＰＵ１０が実行する結合フレーム検索動作を示すフローチャートである。まず、ｓ１で検索範囲およびレジスタのリセットを行う。結合する分割データＭＰ３（１）　、ＭＰ３（２）　のオーバーラップ区間のうち、両端のデータを除いた検索範囲の先頭フレームの番号をそれぞれｉ、ｊにセットし、検索範囲の最終フレームの番号をそれぞれｅｎｄ＿ｉ、ｅｎｄ＿ｊにセットする。また、メインデータビギンの差が最小のフレーム番号を記憶するレジスタｍｉｎ＿ｉ、ｍｉｎ＿ｊにダミーデータとして−１をセットする。
【００３９】
以下、検索範囲の先頭フレームから最終フレームまでメインデータビギンを比較してゆく。分割データＭＰ３（１）　のフレームｉのメインデータビギンを読み出してレジスタＡに書き込み（ｓ２）、分割データＭＰ３（２）　のフレームｊのメインデータビギンを読み出してレジスタＢに書き込む（ｓ３）。このレジスタＡ、Ｂの内容を比較して結合条件（Ａ≧Ｂ）を満たし（ｓ４）、且つ、その差（Ａ−Ｂ）が今まで比較したフレームのうち最も小さい場合には（ｓ５）、これを結合フレームとするため（Ａ−Ｂ）をｍｉｎレジスタに書き込むとともに、そのフレーム番号ｉ、ｊをｍｉｎ＿ｉ、ｍｉｎ＿ｊに書き込む（ｓ６）。上記の処理をｉ、ｊに１を加算しながら（ｓ７）、最終フレームｅｎｄ＿ｉ、ｅｎｄ＿ｊについて処理するまで繰り返し実行する（ｓ８）。
【００４０】
全てのフレームについて上記の処理を行ったのち、ｍｉｎ＿ｉ、ｍｉｎ＿ｊを結合フレームと決定して、結合処理に進む（ｓ１０）。このとき、もしフレーム番号ｍｉｎ＿ｉがダミーデータ（−１）のままであれば、Ａ≧Ｂを満たすフレームが無かったものとして、結合処理に進まずにエラー処理（ｓ１１）に進む。
【００４１】
図８はＭＰ３エンコードされた分割データの結合処理を説明する図である。この処理では、上記の処理で決定された結合フレームで分割データＭＰ３（１）　と分割データＭＰ３（２）　を結合する。同図では、ＭＰ３（１）　の結合フレームｍｉｎ＿ｉのメインデータビギン（ビット貯蔵値）が１６０であり、ＭＰ３（２）　の結合フレームｍｉｎ＿ｊのメインデータビギン（ビット貯蔵値）が１５０の場合を示している。
【００４２】
まず、分割データＭＰ３（２）　において、結合フレームｍｉｎ＿ｊより前に繰り上げられている１５０サンプルのメインデータを読み出して蓄積しておく。次に、分割データＭＰ３（１）　において、結合フレームｍｉｎ＿ｉのメインデータビギンが存在するフレームから結合フレームの直前（ｍｉｎ＿ｉ−１）のフレームまでを合成対象フレームとする。この合成対象フレームにおいて、ヘッダ、サイドインフォメーション、フレームサイズ、および、結合フレームｍｉｎ＿ｉのメインデータビギン以前のメインデータについては、分割データＭＰ３（１）　のものを用いる。そして、そのメインデータにつづけて上記（Ａ−Ｂ＝ｍｉｎ）のサイズのダミーデータを挿入したのち、上記蓄積しておいた結合フレームｍｉｎ＿ｊ以後の分割データＭＰ３（２）　のメインデータをＭＰ３（１）　のメインデータエリアに書き込む。
そして、上記合成対象フレームより後の（結合フレームｍｉｎ＿ｊを含む）フレームは分割データＭＰ３（２）　のものを結合する。
【００４３】
なお、この実施形態では、ＰＣＭオーディオデータをＭＰ３データにエンコードする場合の処理について説明したが、これ以外の形式であっても、エンコード時にエンコード箇所よりも前または後のデータが必要なエンコード方式であれば全て適用可能である。
【００４４】
【発明の効果】
以上のようにこの発明によれば、オーディオデータを複数の分割データに分割し、分割データ毎にエンコードしながらストリーム配信するようにし、各分割データ毎にビットレートを決定するようにしたことにより、刻々と変化する通信状態に対応して最良のビットレートでオーディオデータをストリーム配信することができる。
【００４５】
【図面の簡単な説明】
【図１】この発明の実施形態であるオーディオサーバ装置のブロック図
【図２】同オーディオサーバ装置のオーディオデータのエンコード・配信の手順を説明する図
【図３】同オーディオサーバ装置の動作を示すフローチャート
【図４】ＭＰ３データのフォーマットを説明する図
【図５】オーディオサーバ装置のＣＰＵの分割処理を説明する図
【図６】同ＣＰＵの結合フレーム解析処理を説明する図
【図７】同ＣＰＵの結合フレーム解析処理動作を示すフローチャート
【図８】同ＣＰＵの結合処理を説明する図
【符号の説明】
１…オーディオサーバ装置、２…クライアント装置、３…無線ＬＡＮ、
１０…ＣＰＵ、１１…ＣＤ−ＲＯＭドライブ、１２…ＨＤＤ、１３…ＤＳＰ、１４…無線ＬＡＮ制御部、
２０…ＣＰＵ、２１…無線ＬＡＮ制御部、２２…ＤＳＰ、２３…ＤＡコンバータ、２４…アンプ、２５…スピーカ
【図１】
2004128651.tif 000003
【図２】
2004128651.tif 000004
【図３】
2004128651.tif 000005
【図４】
2004128651.tif 000006
【図５】
2004128651.tif 000007
【図６】
2004128651.tif 000008
【図７】
2004128651.tif 000009
【図８】
2004128651.tif 000010