(57)【要約】【課題】  必要なメモリサイズを削減し、フォーマット変換したデータを正常に出力できるデータ処理装置を提供すること。【解決手段】  本発明にかかるデータ処理装置は、入力されるＡＥＳフレームを格納する共用ＥＳリングバッファ１１３と、格納されたＡＥＳフレームをデコードし、ＰＣＭデータを出力するデコーダ１２０と、格納されたＡＥＳフレームをＩＥＣフレームに変換し、ＰＣＭデータの出力タイミングに基づいて、ＩＥＣフレームを出力するパケッタイザ１３０と、を有するものである。【選択図】  図１
2006246296.tif 000002
【特許請求の範囲】
【請求項１】
入力されるデータストリームを構成する複数のフレームのそれぞれを格納する格納部と、
前記格納された複数のフレームのそれぞれを第１の形式のデータに変換し、前記第１の形式のデータを出力する第１の変換部と、
前記格納された複数のフレームのそれぞれを第２の形式のデータに変換し、前記第２の形式のデータを、前記第１の形式のデータの出力タイミングに基づいて出力する第２の変換部と、
を有するデータ処理装置。
【請求項２】
前記第２の変換部は、前記第１の形式のデータ出力後、所定の期間内に、前記第２の形式のデータを出力する、
請求項１に記載のデータ処理装置。
【請求項３】
前記所定の期間は、前記第１の形式のデータの変換処理時間と、前記第２の形式のデータの出力レートとに基づいた期間である、
請求項２に記載のデータ処理装置。
【請求項４】
複数のフレームを含むデータストリームを入力する入力部と、
前記入力されたデータストリームのうちの第１のフレームをデコードし、デコードしたデコードデータを出力するデコーダと、
前記第１のフレームのフォーマットを変換し、変換したフォーマット変換データを、前記デコードデータの出力タイミングに基づいて出力するフォーマット変換部と、
を有するデータ処理装置。
【請求項５】
前記入力された第１のフレームを記憶する記憶部と、
前記記憶された第１のフレームを前記デコーダへ転送するデコーダ用転送部と、
前記記憶された第１のフレームを前記フォーマット変換部へ転送するフォーマット変換用転送部と、
をさらに有する請求項４に記載のデータ処理装置。
【請求項６】
前記フォーマット変換部は、前記第１のフレームをデコードしないデータを含む前記フォーマット変換データを出力する、
請求項４又は５に記載のデータ処理装置。
【請求項７】
前記フォーマット変換部は、前記フォーマット変換データを出力しようとする時、前記デコードデータの出力位置に基づいて、前記フォーマット変換データを出力する、
請求項４乃至６のいずれか一つに記載のデータ処理装置。
【請求項８】
前記デコードデータの出力位置は、デコードデータのデータ数で規定される位置である、
請求項７に記載のデータ処理装置。
【請求項９】
前記フォーマット変換部は、前記フォーマット変換データを出力しようとする時、前記デコードデータの出力位置が所定の許容値内であれば、前記フォーマット変換データを出力する、
請求項７又は８に記載のデータ処理装置。
【請求項１０】
前記フォーマット変換部は、前記フォーマット変換データを出力しようとする時、前記デコードデータの出力位置が所定の許容値の範囲内であれば、前記第１のフレームを含まないデータを出力する、
請求項７乃至９のいずれか一つに記載のデータ処理装置。
【請求項１１】
前記所定の許容値は、前記デコードデータのデコード処理時間と、前記フォーマット変換データの出力レートとに基づいた値である、
請求項９又は１０に記載のデータ処理装置。
【請求項１２】
入力されるデータストリームを構成する複数のフレームのうち第１のフレームを格納し、
前記格納された第１のフレームをデコードし、デコードしたデコードデータを出力し、
前記格納された第１のフレームのフォーマットを変換し、変換したフォーマット変換データを、前記デコードデータの出力タイミングに基づいて出力する、
データ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理装置及びデータ処理方法に関し、特に、入力されたフレームを複数の形式のデータに変換し、変換した複数の形式のデータのそれぞれを出力するデータ処理装置及びデータ処理方法に関する。
【背景技術】
【０００２】
近年、衛星や地上波及びケーブルによるデジタル放送が開始され、普及し始めている。例えば、デジタル放送を受信する装置では、放送局からトランスポートストリーム（ＴＳ）を受信し、ＴＳに含まれるオーディオエレメンタリストリーム（ＡＥＳ）をデコードすることで音声を出力するとともに、ＴＳに含まれるビデオエレメンタリストリーム（ＶＥＳ）をデコードすることで映像の表示等を行う。このような装置は、一般的に、複数の外部端子を有し、受信したＡＥＳ等を異なる形式で出力する。例えば、ＡＥＳ等をデコードしたＰＣＭのデータを音声出力として外部の音声出力装置等へ出力するとともに、ＡＥＳ等をＩＥＣ６１９３７等のフォーマットに変換したデータを光出力として外部のＡＶ機器（例えば、５．１ｃｈサラウンド装置）等へ出力する。この場合、ＰＣＭの音声出力を経由して出力される音と、ＩＥＣ６１９３７の光出力を経由して出力される音とは、同時に同じユーザが聞くことがあるため、同期して出力される必要がある。一般に、人間の聴覚上で問題がない範囲として、ＡＥＳのフレームで、１フレーム程度のずれが許容されると言われている。尚、オーディオストリームをＩＥＣ６１９３７フォーマットで転送する装置として、特許文献１のものが知られている。
【０００３】
図１０は、ＩＥＣ６１９３７フォーマットのフレーム（以下、ＩＥＣフレームという）の構成を示している。ＩＥＣフレームとして、図１０（ａ）に示すオーディオデータバーストフレーム（以下、オーディオデータフレームという）や、図１０（ｂ）に示すポーズデータバーストフレーム（以下、ポーズデータフレームという）が規定されている。オーディオデータフレームは、ＡＥＳ等の実データを含むフレームであり、ポーズデータフレームは、実データを含まないフレームである。尚、実際には、オーディオデータフレームやポーズデータフレームは、多数のダミーデータ（２バイト）が挿入されてバースト的なデータとなる。
【０００４】
図１０（ａ）に示されるように、オーディオデータフレームは、プリアンブル（Ｐｒｅａｍｂｌｅ）部、ペイロード（Ｐａｙｌｏａｄ）部、スタッフィング（Ｓｔｕｆｆｉｎｇ）部から構成されている。プリアンブル部は、ヘッダであり、２バイトのヘッダＰａ（Ｓｙｎｃ−ｗｏｒｄ１）、２バイトのヘッダＰｂ（Ｓｙｎｃ−ｗｏｒｄ２）、２バイトのヘッダＰｃ（Ｂｕｒｓｔ−ｉｎｆｏ）、２バイトのヘッダＰｄ（Ｌｅｎｇｔｈ−ｃｏｄｅ）を含んでいる。ペイロード部には、１フレームのＡＥＳが格納される。スタッフィング部には、スタッフィングデータ（例えば、０ｘ００）が格納される。ここで、スタッフィングデータとは、各ＩＥＣフレームのフレーム長を一定にするために、付加されるデータである。
【０００５】
図１０（ｂ）に示されるように、ポーズデータフレームは、プリアンブル部とスタッフィング部から構成されている。プリアンブル部とスタッフィング部は、オーディオデータフレームと同様である。
【０００６】
図１１のブロック図は、従来のオーディオデータ処理装置の構成を示している。この従来のオーディオデータ処理装置９００は、入力されるＡＥＳをデコードしたＰＣＭサンプルデータ（ＰＣＭデータ）を出力するとともに、ＡＥＳを変換したＩＥＣフレームを出力する。尚、ＰＣＭデータは、複数のＰＣＭサンプルから構成されている。このＰＣＭサンプルは、データがＰＣＭでデジタル化される際のサンプリング単位のデータであり、ＰＣＭデータの最小単位である。
【０００７】
図１１に示されるように、従来のオーディオデータ処理装置９００は、ＡＥＳが入力される入力部９１０、入力部９１０から転送されたＡＥＳフレームをデコードしＰＣＭデータを出力するデコーダ９２０、入力部９１０から転送されたＡＥＳフレームをＩＥＣフレームに変換し出力するパケッタイザ９３０を備えている。
【０００８】
入力部９１０は、入力されたＡＥＳフレームを順次格納するデコード用ＥＳリングバッファ９１１及びパケッタイザ用ＥＳリングバッファ９１２を有し、各リングバッファに格納されたＡＥＳフレームを、それぞれデコーダ９２０とパケッタイザ９３０へ転送する。
【０００９】
デコーダ９２０は、転送されたＡＥＳフレームをデコードし、デコードしたＰＣＭデータをデコーダ９２０内部のＰＣＭバッファ９２１に格納しながら出力する。パケッタイザ９３０は、プリアンブル部と、転送されたＡＥＳフレームとを出力し、さらにスタッフィング部を出力することで、ＩＥＣフレームを出力する。
【００１０】
図１２は、従来のオーディオデータ処理装置９００の処理の時間的な流れを示している。入力部９１０は、ＡＥＳが入力されると、デコード用ＥＳリングバッファ９１１とパケッタイザ用ＥＳリングバッファ９１２に、ＡＥＳフレームが入力順に格納される。ここで、デコード用ＥＳリングバッファ９１１とパケッタイザ用ＥＳリングバッファ９１２は、それぞれ２フレームのＡＥＳフレームが格納可能であるとし、リングバッファの前半を領域（バッファ領域）１、後半を領域（バッファ領域）２と呼ぶこととすれば、、例えば、各リングバッファの領域１にフレーム（ｎ−１）が格納され、各リングバッファの領域２にフレーム（ｎ−１）の次に入力されたフレーム（ｎ）が格納される。
【００１１】
デコーダ９２０は、デコード用ＥＳリングバッファ９１１に格納されたＡＥＳフレームが順に転送されると、ＡＥＳフレームをＰＣＭデータにデコードしながら、ＰＣＭデータをＰＣＭバッファ９２１に格納した後、ＰＣＭバッファ９２１のＰＣＭデータを出力する。例えば、デコーダ９２０にデコード用ＥＳリングバッファ９１１の領域１からＡＥＳフレーム（ｎ−１）の転送が完了した時点（図１２中（ａ））で、デコード用ＥＳリングバッファの領域１にあるＡＥＳフレーム（ｎ−１）は不要になり、当該バッファは再利用可能となる。
【００１２】
パケッタイザ９３０は、パケッタイザ用ＥＳリングバッファ９１２に格納されたＡＥＳフレームが順に転送されると、プリアンブル部を出力し、転送されるＡＥＳフレームをそのまま出力した後、スタッフィング部を出力することで、ＩＥＣフレームのオーディオデータフレームを出力している。例えば、パケッタイザ９３０にパケッタイザ用ＥＳリングバッファ９１２のバッファからＡＥＳフレーム（ｎ−１）が転送され、ＡＥＳフレーム（ｎ−１）を外部へ出力完了した時点（図１２中（ｂ））で、パケッタイザ用ＥＳリングバッファの領域１にあるＡＥＳフレーム（ｎ−１）は不要になり、当該バッファは再利用可能となる。
【００１３】
なお、デコード用ＥＳリングバッファ９１１、パケッタイザ用ＥＳリングバッファ９１２のそれぞれの領域１が再利用可能となったとき（図１２中（ｃ））、ＡＥＳフレーム（ｎ＋１）のすべてのデータが領域１に格納可能となる。
【００１４】
一方、従来のオーディオデータ処理装置９００において出力されるＰＣＭデータは、他の装置によりＶＥＳをデコードされたビデオ信号やＳＴＣ（Ｓｙｓｔｅｍ  Ｔｉｍｅ  Ｃｌｏｃｋ）と同期を取る必要がある。一般に、ビデオ信号等との同期が外れた場合に音の遅延／先行を調整するために、ＰＣＭやＰＣＭのデコード元のデータをスキップやリピートさせる手法が用いられる。
【００１５】
例えば、デコーダ９２０へ転送する前に入力部９１０では、ＡＥＳのフレーム単位で転送するデータをスキップ／リピートさせる。また、デコーダ９２０ではフレームよりも小さい単位、例えば、ＰＣＭサンプル単位でもスキップ／リピートが可能である。
【００１６】
フレームスキップ／リピートは、例えば、２０ｍｓ〜３０ｍｓ単位で行われ、サンプルスキップ／リピートは、例えば、０．２ｍｓ単位で行われる。フレームスキップ／リピートを行うと、聴覚上目立つため、サンプルスキップ／リピートで調整を行うことが望ましい。
【００１７】
図１３は、サンプルスキップが多発し、あるフレームにおけるＰＣＭデータの出力がパケッタイザの出力よりも先行した場合の、従来のオーディオデータ処理装置９００におけるフレームスキップ時の処理の流れを示している。
【００１８】
例えば、デコード用ＥＳリングバッファ９１１とパケッタイザ用ＥＳリングバッファ９１２のそれぞれで、領域１にＡＥＳフレーム（ｎ−１）、領域２にＡＥＳフレーム（ｎ）が格納されていたとし、ＡＥＳフレーム（ｎ−１）がデコーダ９２０に転送後、フレーム（ｎ）のスキップが確定したとする。デコーダ９２０は、フレーム（ｎ）のデータは必要なくなるため、領域１から次のデコード対象フレームであるＡＥＳフレーム（ｎ＋１）を読み出してデコードを行う。
【００１９】
一方、このときパケッタイザ９３０は、ＡＥＳフレーム（ｎ−１）を出力中である。この出力が完了するまで、入力部９１０において、デコード用ＥＳリングバッファの領域１にＡＥＳフレーム（ｎ＋１）のすべてのデータの入力が完了しないため、ＡＥＳフレーム（ｎ−１）に対応したＰＣＭデータが出力し終わるまでに、ＡＥＳフレーム（ｎ＋１）のデコードが完了できず、ＰＣＭ出力が滞る場合がありうる。したがって、この例では、パケッタイザ用ＥＳリングバッファ９１２には、領域１、２とは別の領域３、つまりＡＥＳが３フレーム格納される分のバッファサイズを用意し、フレームスキップ時にＡＥＳフレームの入力が滞りなく行われるようにする必要があることがわかる。
【特許文献１】特開２００２−７７１２８号公報
【発明の開示】
【発明が解決しようとする課題】
【００２０】
このように、従来のオーディオデータ処理装置９００では、パケッタイザ用にＡＥＳを３フレーム分、デコーダ用にＡＥＳを２フレーム分、合計で５フレーム分格納できるバッファサイズが必要となるため、装置で必要なメモリサイズが大きいという問題があった。例えば、ハードウェアのメモリサイズによっては５フレーム分のバッファサイズを確保できない場合もある。また、メモリ中のバッファサイズの割合が大きいと、バッファ以外のプログラムやユーザデータ等の装置に必要なデータを格納するためのメモリが不足してしまう場合もある。
【課題を解決するための手段】
【００２１】
本発明にかかるデータ処理装置は、入力されるデータストリームを構成する複数のフレームのそれぞれを格納する格納部と、前記格納された複数のフレームのそれぞれを第１の形式のデータに変換し、前記第１の形式のデータを出力する第１の変換部と、前記格納された複数のフレームのそれぞれを第２の形式のデータに変換し、前記第２の形式のデータを、前記第１の形式のデータの出力タイミングに基づいて出力する第２の変換部と、を有するものである。本発明にかかるデータ処理装置によれば、同じ格納部に格納されたフレームを第１の形式のデータで出力しつつ、第２の形式のデータで出力できるようになる。また、第１の形式のデータと第２の形式のデータとが同期を取って出力できるようになる。したがって、格納部のメモリサイズを削減することができるとともに、第１の形式のデータの変換処理等によって、第２の形式のデータの出力に致命的な障害を与えることをなくすことができる。
【００２２】
本発明にかかるデータ処理装置は、複数のフレームを含むデータストリームを入力する入力部と、前記入力されたデータストリームのうちの第１のフレームをデコードし、デコードしたデコードデータを出力するデコーダと、前記第１のフレームのフォーマットを変換し、変換したフォーマット変換データを、前記デコードデータの出力タイミングに基づいて出力するフォーマット変換部と、を有するものである。本発明にかかるデータ処理装置によれば、入力されたフレームをデコードしたデコードデータを出力しつつ、フォーマット変換したフォーマット変換データを出力できるようになる。また、デコードデータとフォーマット変換データとが同期を取って出力できるようになる。したがって、格納部のメモリサイズを削減することができるとともに、デコーダの処理等によって格納部のデータのスキップ／リピート等が生じるような場合でも、正常にフォーマット変換データを出力することができる。
【００２３】
本発明にかかるデータ処理方法は、入力されるデータストリームを構成する複数のフレームのうち第１のフレームを格納し、前記格納された第１のフレームをデコードし、デコードしたデコードデータを出力し、前記格納された第１のフレームのフォーマットを変換し、変換したフォーマット変換データを、前記デコードデータの出力タイミングに基づいて出力するものである。本発明にかかるデータ処理方法によれば、同じ格納部に格納されたフレームをデコードしたデコードデータを出力しつつ、フォーマット変換したフォーマット変換データを出力できるようになる。また、デコードデータとフォーマット変換データとが同期を取って出力できるようになる。したがって、フレームを格納するためのメモリサイズを削減することができるとともに、デコード処理等によって格納部のデータのスキップ／リピート等が生じるような場合でも、正常にフォーマット変換データを出力することができる。
【発明の効果】
【００２４】
本発明によれば、必要なメモリサイズを削減し、フォーマット変換したデータを正常に出力できるデータ処理装置を提供することができる。
【発明を実施するための最良の形態】
【００２５】
発明の実施の形態１．
まず、図１乃至図７を用いて、本発明の実施の形態１にかかるオーディオデータ処理装置について説明する。本実施形態にかかるオーディオデータ処理装置は、ＰＣＭデータのデコーダとＩＥＣフレームのパケッタイザとに入力するためのバッファを共用し、さらに、ＰＣＭデータの出力に基づいてＩＥＣフレームの出力を制御し、ＰＣＭデータの出力とＩＥＣフレームの出力とを同期させることを特徴としている。
【００２６】
図１のブロック図は、本実施形態にかかるオーディオデータ処理装置の構成を示している。このオーディオデータ処理装置１００は、入力されるＡＥＳをデコードしたＰＣＭデータを出力するとともに、ＡＥＳを変換したＩＥＣフレームを出力する。図１に示されるように、オーディオデータ処理装置１００は、入力部１１０、デコーダ１２０、パケッタイザ１３０を備えている。
【００２７】
入力部１１０は、外部からＡＥＳが入力されるとともに、入力されたＡＥＳをデコーダ１２０及びパケッタイザ１３０へ転送する。入力部１１０は、図１に示されるように、バッファ格納部１１１、ライトポインタ保持部１１２、共用ＥＳリングバッファ１１３、デコーダ転送部１１４、デコーダ用リードポインタ保持部１１５、パケッタイザ転送部１１６、パケッタイザ用リードポインタ保持部１１７を有している。
【００２８】
ライトポインタ保持部１１２は、入力されたＡＥＳフレームを共用ＥＳリングバッファ１１３に格納するための書き込みアドレスを示すライトポインタを保持する保持部である。ライトポインタの示すアドレスは、共用ＥＳリングバッファ１１３の相対的もしくは絶対的な位置である。例えば、ライトポインタは、ＡＥＳフレームの書き込み処理が完了した次のアドレスを示しており、次に書き込みが開始されるアドレスを示している。バッファ格納部１１１は、外部から入力されるＡＥＳの各フレームのそれぞれを順に共用ＥＳリングバッファ１１３に書き込む。バッファ格納部１１１は、ライトポインタ保持部１１２のライトポインタを書き込み処理が完了した次のアドレスとし、このアドレスを更新しながら、ＡＥＳフレームの書き込みを行う。
【００２９】
共用ＥＳリングバッファ１１３は、入力されたＡＥＳの各フレームを格納する格納部である。例えば、共用ＥＳリングバッファ１１３は、ＡＥＳを約２フレーム格納できるサイズである。
【００３０】
デコーダ用リードポインタ保持部１１５は、デコーダ１２０へＡＥＳフレームを転送するための共用ＥＳリングバッファ１１３の読み出しアドレスを示すデコーダ用リードポインタを保持する保持部である。デコーダ用リードポインタの示すアドレスは、共用ＥＳリングバッファ１１３の相対的もしくは絶対的な位置である。例えば、デコーダ用リードポインタは、ＡＥＳフレームの読み出し処理が完了した次のアドレスを示しており、次に読み出しが開始されるアドレスを示している。デコーダ転送部１１４は、共用ＥＳリングバッファ１１３に格納されたＡＥＳフレームをデコーダ１２０へ転送する。デコーダ転送部１１４は、デコーダ用リードポインタ保持部１１５のデコーダ用リードポインタを読み出し処理が完了した次のアドレスとし、このアドレスを更新しながら、ＡＥＳフレームを読み出して、デコーダ１２０へ出力する。
【００３１】
また、デコーダ転送部１１４は、ＰＣＭデータの出力と他の装置がデコードしたビデオ信号やＳＴＣ等との同期制御を行う。デコーダ転送部１１４は、ＰＣＭデータとビデオ信号等との同期外れを検出した場合には、デコーダ１２０へ転送するデータのＡＥＳフレーム単位でのスキップ／リピートを行う。音の遅延を検出した場合には、デコーダ用リードポインタを所定のアドレスへ進めて転送するデータをスキップさせる。音の先行を検出した場合には、デコーダ用リードポインタを所定のアドレスへ戻して転送するデータをリピートさせる。
【００３２】
パケッタイザ用リードポインタ保持部１１７は、パケッタイザ１３０へＡＥＳフレームを転送するための共用ＥＳリングバッファ１１３の読み出しアドレスを示すパケッタイザ用リードポインタを保持する保持部である。パケッタイザ用リードポインタの示すアドレスは、共用ＥＳリングバッファ１１３の相対的もしくは絶対的な位置である。例えば、パケッタイザ用リードポインタは、ＡＥＳフレームの読み出し処理が完了した次のアドレスを示しており、次に読み出しが開始されるアドレスを示している。パケッタイザ転送部１１６は、共用ＥＳリングバッファ１１３に格納されたＡＥＳフレームをパケッタイザ１３０へ転送する。パケッタイザ転送部１１６は、パケッタイザ用リードポインタ保持部１１７のパケッタイザ用リードポインタを読み出し処理が完了した次のアドレスとし、このアドレスを更新しながら、ＡＥＳフレームを読み出して、パケッタイザ１３０へ出力する。
【００３３】
デコーダ１２０は、共用ＥＳリングバッファ１１３に格納されたＡＥＳフレームをそれぞれＰＣＭデータにデコードし出力する。デコーダ１２０は、図１に示されるように、復号部１２１、ＰＣＭバッファ１２２、デコーダ出力部１２３、ＰＣＭリードポインタ保持部１２４を有している。
【００３４】
ＰＣＭバッファ１２２は、デコードしたＰＣＭデータを格納する格納部である。ＰＣＭリードポインタ保持部１２４は、ＰＣＭデータを外部へ出力するためのＰＣＭバッファ１２２の読み出しアドレスを示すＰＣＭリードポインタを保持する保持部である。ここで、ＰＣＭリードポインタの示すアドレスは、ＰＣＭバッファ１２２に格納されたＰＣＭデータの相対的もしくは絶対的な位置である。例えば、このアドレスは、ＡＥＳを１フレームデコードしたＰＣＭデータのうちの相対的なＰＣＭサンプルの位置（先頭からのＰＣＭサンプル数）である。例えば、ＰＣＭリードポインタは、ＰＣＭデータの読み出し処理が完了した次のアドレスを示しており、次に読み出しが開始されるアドレスを示している。
【００３５】
復号部１２１は、共用ＥＳリングバッファ１１３に格納されたＡＥＳフレームを受け取り、それぞれのフレームをデコードする。さらに、復号部１２１は、ＡＥＳフレームをデコードして得られた、ＰＣＭデータをＰＣＭバッファ１２２に格納する。
【００３６】
デコーダ出力部１２３は、ＰＣＭバッファ１２２に格納されたＰＣＭデータを読み出し、外部へ出力する。デコーダ出力部１２３は、ＰＣＭリードポインタ保持部１２４のＰＣＭリードポインタを読み出し処理が完了した次のアドレスとし、このアドレスを更新しながら、ＰＣＭデータを読み出して、外部へ出力する。
【００３７】
また、デコーダ出力部では、ＰＣＭサンプル単位でスキップ／リピートを行う。音の遅延を検出した場合には、ＰＣＭ用リードポインタを所定のアドレスへ進めて、出力するＰＣＭデータをスキップさせる。音の先行を検出した場合には、ＰＣＭ用リードポインタを所定のアドレスへ戻して、出力するＰＣＭデータをリピートさせる。
【００３８】
パケッタイザ１３０は、共用ＥＳリングバッファ１１３に格納されたＡＥＳフレームをそれぞれＩＥＣフレームに変換し出力する。パケッタイザ１３０は、図１に示されるように、オーディオデータ出力部１３１、ポーズデータ出力部１３２、同期制御部１３３を有している。
【００３９】
オーディオデータ出力部１３１は、共用ＥＳリングバッファ１１３に格納されたＡＥＳフレームを受け取り、それぞれのフレームをＩＥＣフレームに変換して、外部へ出力する。オーディオデータ出力部１３１は、プリアンブル部と、ＡＥＳフレームとを出力し、さらにスタッフィング部を出力することで、ＩＥＣフレームに変換し出力する。すなわち、オーディオデータ出力部１３１は、ＡＥＳフレームを図１０（ａ）に示したオーディオデータフレームに変換し出力する。
【００４０】
ポーズデータ出力部１３２は、プリアンブル部とスタッフィング部とを出力し、図１０（ｂ）に示したポーズデータフレームを出力する。
【００４１】
同期制御部１３３は、デコーダ１２０が出力するＰＣＭデータとパケッタイザ１３０が出力するＩＥＣフレームとの同期を制御する。同期制御部１３３は、ＰＣＭデータとＩＥＣフレームとの同期状態（同期／同期ずれ）に基づいて、パケッタイザ１３０の出力を制御する。同期制御部１３３は、オーディオデータフレームもしくはポーズデータフレームの出力完了時、ＰＣＭリードポインタ保持部１２４のＰＣＭリードポインタを参照し、ＰＣＭデータの出力に対して、ＩＥＣフレームの出力タイミングが、後述の同期許容値Ｓの範囲内かどうか判定し、オーディオデータ出力部１３１からオーディオデータフレーム、もしくは、ポーズデータ出力部１３２からポーズデータフレームを出力する。
【００４２】
このオーディオデータ処理装置１００では、デコーダ１２０とパケッタイザ１３０に入力するバッファを共用することで、メモリサイズの削減を図っている。しかしながら、単純にバッファを共用すると、フレームやサンプルのスキップ／リピート時に、ＩＥＣフレームの出力中であっても、共用ＥＳリングバッファが上書きされてしまい、正常にＩＥＣフレームを出力できない場合がある。また、フレームやサンプルのスキップ／リピートを行わないようにしてしまうと、音の遅延／先行が生じ好ましくない。そこで、本実施形態では、同期制御部１３３によって、ＰＣＭデータの出力とＩＥＣフレームの出力との同期をとることで、フレームやサンプルのスキップ／リピートが生じても、正常にＰＣＭデータの出力かつＩＥＣフレームの出力を可能としている。
【００４３】
次に、同期制御部１３３で同期の判定に用いる同期許容値Ｓについて説明する。ここでは、説明を簡単にするために、まず、デコーダ１２０のみが共用ＥＳリングバッファ１１３を使用する場合について考える。
【００４４】
また、図２に示すように、共用ＥＳリングバッファ１１３は、ＡＥＳを２フレーム格納可能なサイズであるとし、バッファの前半を領域（バッファ領域）１、後半を領域（バッファ領域）２とする。領域１と領域２には、バッファ格納部１１１により順にＡＥＳのフレームがそれぞれ格納され、デコーダ転送部１１４により順にフレームが転送される。図２は、フレームスキップ発生前後のリングバッファの状態を示している。
【００４５】
図２（ａ）は、フレームスキップが発生する前の共用ＥＳリングバッファ１１３の状態の一例を示している。この例は、バッファ格納部１１１が、共用ＥＳリングバッファ１１３の領域１，２にフレーム（ｎ），フレーム（ｎ＋１）を格納し、デコーダ転送部１１４がフレーム（ｎ）を読み出した状態を示している。このとき、図２（ａ）に示すように、ライトポインタ保持部１１２のライトポインタは、領域２の最終アドレスを指しており、デコーダ用リードポインタ保持部１１５のデコーダ用リードポインタは、領域１の最終アドレスを指している。
【００４６】
図２（ｂ）は、図２（ａ）の状態でフレーム（ｎ＋１）がフレームスキップした直後のリングバッファの状態を示している。領域２に格納されたフレーム（ｎ＋１）がフレームスキップすると、図２（ｂ）に示すように、領域２のデータは不要になるため、ライトポインタが領域１の先頭アドレスへ更新されて、領域１へフレーム（ｎ＋２）の上書きが開始される。また、フレームスキップ時、デコーダ用リードポインタは、フレーム（ｎ＋２）を転送するために領域１の先頭アドレスとなる。
【００４７】
図３は、図２のようにフレームスキップが発生した場合の、時間的な処理の流れを示している。図に示されるように、共用ＥＳリングバッファ１１３には、領域１にフレーム（ｎ）が書き込まれ、領域２にフレーム（ｎ＋１）が書き込まれた後、フレームスキップが発生し、領域１にフレーム（ｎ＋２）が書き込まれている。デコーダ１２０の復号部１２１は、デコーダ転送部１１４により転送されたフレーム（ｎ）をデコードした後、フレームスキップし転送されたフレーム（ｎ＋２）をデコードしている。デコーダ１２０のＰＣＭバッファ１２２には、復号部１２１によりフレーム（ｎ）のＰＣＭデータが書き込まれ、デコーダ出力部１２３により出力された後、復号部１２１によりフレーム（ｎ＋２）のＰＣＭデータが書き込まれ、デコーダ出力部１２３により出力される。
【００４８】
このように、フレーム（ｎ＋１）がフレームスキップした場合に、フレーム（ｎ）のＰＣＭデータ出力後に、フレーム（ｎ＋２）のＰＣＭデータ出力が正常に行われるためには、フレーム（ｎ）のＰＣＭデータの出力完了（図３中（ａ））までに、スキップ後の次のフレームであるフレーム（ｎ＋２）のデコードが完了していなければならない。もし、図３中（ａ）までにフレーム（ｎ＋２）のデコードが完了しなければ、図３中（ａ）の時点でデコーダ１２０から出力すべきＰＣＭデータが存在しないことになるため、出力される音が途切れてしまい、聴覚上、問題となってしまうからである。この条件は、次の（式１）で表される。
【００４９】
フレームスキップ後ＰＣＭ出力完了時間Ｑ  ＞  １フレームのデコード処理時間Ｐ      （式１）
【００５０】
ここで、１フレームのデコード処理時間Ｐは、次の（式２）で表される。
【００５１】
１フレームのデコード処理時間Ｐ  ＝  （ＡＥＳフレームサイズ／ＡＥＳ入力レート）＋α＋β      （式２）
【００５２】
この（式２）において、ＡＥＳ入力レートは、ＡＥＳが入力部１１０に入力され、共用ＥＳリングバッファ１１３にＡＥＳフレームが書き込まれるレートである。αは、デコーダ転送部１１４が共用ＥＳリングバッファ１１３からデコーダ１２０へＡＥＳを１フレーム転送する時間、βは、復号部１２１におけるＡＥＳを１フレームデコードする時間である。式２を式１に代入すると、次の（式３）となる。
【００５３】
フレームスキップ後ＰＣＭ出力完了時間Ｑ  ＞  （ＡＥＳフレームサイズ／ＡＥＳ入力レート）＋α＋β      （式３）
【００５４】
ここで、本実施形態のように共用ＥＳリングバッファ１１３をデコーダ１２０とパケッタイザ１３０とで共用する場合について考える。この場合、パケッタイザ１３０は、転送されるＡＥＳフレームをプリアンブル部とともにそのままＩＥＣフレームとして出力するため、ＡＥＳ入力レートをＩＥＣフレームの出力レート（通常、ＡＥＳ入力レート＞ＩＥＣフレーム出力レート）として考えることができる。そうすると、（式３）は、次の（式４）となる。
【００５５】
フレームスキップ後ＰＣＭ出力完了時間Ｑ  ＞  （ＡＥＳフレームサイズ／ＩＥＣフレーム出力レート）＋α＋β      （式４）
【００５６】
この（式４）において、ＩＥＣフレーム出力レートは、パケッタイザ１３０からＩＥＣフレームが外部へ出力されるレートである。したがって、ＰＣＭデータの出力とＩＥＣフレームの出力が上記（式４）の関係を満たしていれば、フレームスキップが発生しても問題なくＰＣＭデータとＩＥＣフレームとを出力することができることになる。この（式４）の関係を満たしている状態を、ＰＣＭデータの出力とＩＥＣフレームの出力との「同期」が取れているという。尚、本実施形態では、フレームスキップによるＰＣＭデータとＩＥＣフレームの出力のずれは１フレーム程度である。１フレーム程度のずれであれば、ＰＣＭデータとＩＥＣフレームが音として出力された場合に、聴覚上の問題が生じないからである。例えば、ＰＣＭデータとＩＥＣフレームの出力が１フレーム程度ずれると、後述のように、同期をとるように動作し、２フレーム以上のずれを防止している。
【００５７】
上記（式４）を時間単位からＰＣＭサンプル単位に変換し、これを同期許容値Ｓとすると、次の（式５）となる。
【００５８】
同期許容値Ｓ  ＝  ［１−｛（ＡＥＳフレームサイズ／ＩＥＣフレーム出力レート）＋α＋β｝／ＡＥＳ１フレームのＰＣＭサンプル時間］×ＡＥＳ１フレームのＰＣＭサンプル数      (式５)
【００５９】
この（式５）において、ＰＣＭサンプル時間は、ＡＥＳ１フレームをデコードして得られるＰＣＭサンプルが音として出力される時間である。ＰＣＭサンプル数は、ＡＥＳ１フレームをデコードして得られるＰＣＭサンプル数である。同期許容値Ｓは、ＰＣＭデータの出力に対して、ＩＥＣフレームの出力のタイミングのずれが許容される範囲を示す値である。例えば、ＰＣＭリードポインタは、ＰＣＭデータのうちのＰＣＭサンプルの位置を示しているため、ＩＥＣフレームの出力時に、ＰＣＭリードポインタが同期許容値Ｓの範囲内かどうかで、ＰＣＭデータとＩＥＣフレームの出力の同期を確認することができる。
【００６０】
以下、本実施形態にかかるオーディオデータ処理装置の動作について説明する。図４は、パケッタイザ１３０の動作を示すフローチャートであり、パケッタイザ１３０がＰＣＭデータの出力と同期をとりながらＩＥＣフレームを出力する処理を示している。
【００６１】
まず、パケッタイザ１３０は、ＡＥＳフレームを受け取る（Ｓ７０１）。例えば、パケッタイザ１３０のオーディオデータ出力部１３１は、パケッタイザ転送部１１６から共用ＥＳリングバッファ１１３に格納されたＡＥＳフレームを１フレーム受け取る。
【００６２】
次いで、パケッタイザ１３０は、オーディオデータフレームを出力する（Ｓ７０２）。例えば、オーディオデータ出力部１３１は、受け取ったＡＥＳフレームをオーディオデータフレームに変換し外部へ出力する。
【００６３】
次いで、パケッタイザ１３０は、次のＡＥＳフレームが存在するかどうか判定する（Ｓ７０３）。例えば、オーディオデータ出力部１３１は、オーディオデータフレームの出力が完了すると、パケッタイザ転送部１１６からＡＥＳフレームを受け取るかいなかにより、次に変換し送信すべきＡＥＳフレームの有無を判定する。
【００６４】
Ｓ７０３において、パケッタイザ１３０は、次のＡＥＳフレームが存在しないと判定した場合、ポーズデータを出力する（Ｓ７０４）。例えば、オーディオデータ出力部１３１が、次に送信すべきＡＥＳフレームが無いと判定すると、ポーズデータ出力部１３２は、ポーズデータフレームを生成し外部へ出力する。さらに、ポーズデータフレームの出力を繰り返し、次のＡＥＳフレームがパケッタイザ転送部１１６から転送されると、Ｓ７０１以降の処理を行う。
【００６５】
Ｓ７０３において、パケッタイザ１３０は、次のＡＥＳフレームが存在すると判定した場合、ＰＣＭデータの出力とＩＥＣフレームの出力の同期がとれているかどうか判定する（Ｓ７０５）。オーディオデータ出力部１３１が、次に送信すべきＡＥＳフレームが有ると判定すると、同期制御部１３３は、ＰＣＭリードポインタ保持部１２４のＰＣＭリードポインタを参照し、ＰＣＭデータの出力と、次に送信しようとするオーディオデータフレームの出力の同期がとれているかどうか判定する。
【００６６】
例えば、図５に示すように、デコーダ１２０では、デコードされたＰＣＭデータがＰＣＭバッファ１２２に格納されており、デコーダ出力部１２３は、ＰＣＭリードポインタ保持部１２４のＰＣＭリードポインタを更新しながら、ＰＣＭデータを読み出して出力している。そして、同期制御部１３３は、オーディオデータフレームが１フレーム出力完了したとき（図５中（ａ））、すなわち、１フレームのスタッフィング部の出力が完了したとき、ＰＣＭリードポインタを参照し、ＰＣＭリードポインタのアドレスが同期許容値Ｓの範囲内か否か判定する。
【００６７】
このとき、ＰＣＭリードポインタが、同期許容値Ｓの範囲内（例えば、０〜同期許容値Ｓまでの値）であれば、同期が取れていると判定される。また、ＰＣＭリードポインタが、同期許容値Ｓの範囲外（例えば、同期許容値Ｓを超えた値）であれば、同期が外れていると判定される。
【００６８】
Ｓ７０５において、パケッタイザ１３０は、同期がとれていると判定した場合、次のＡＥＳフレームを受け取り、Ｓ７０１以降の処理を行う。例えば、ＰＣＭリードポインタが、同期許容値Ｓの範囲内の場合には、フレームスキップ等が発生しても、オーディオデータフレームを正常に出力できるため、そのまま、次のフレームの出力を行う。
【００６９】
Ｓ７０５において、パケッタイザ１３０は、同期がとれていないと判定した場合、ポーズデータフレームを出力する（Ｓ７０６）。例えば、フレームやサンプルのスキップ／リピート等によりＰＣＭリードポインタが、同期許容値Ｓの範囲外となった場合、ポーズデータ出力部１３２は、ポーズデータフレームを生成し外部へ出力する。
【００７０】
次いで、パケッタイザ１３０は、ＰＣＭデータの出力とＩＥＣフレームの出力の同期がとれているかどうか判定する（Ｓ７０７）。例えば、同期制御部１３３は、ポーズデータフレームの出力完了毎に、Ｓ７０５と同様にして、ＰＣＭデータの出力と、次に送信しようとするオーディオデータフレームの出力の同期がとれているかどうか判定する。
【００７１】
Ｓ７０７において、パケッタイザ１３０は、同期がとれていないと判定した場合、さらに、ポーズデータフレームを出力し（Ｓ７０６）、同期がとれるまで出力を繰り返す。そして、Ｓ７０７において、パケッタイザ１３０は、同期がとれていると判定した場合、次のＡＥＳフレームを受け取り、Ｓ７０１以降の処理を行う。
【００７２】
こうして、パケッタイザ１３０は、出力するオーディオデータフレームとオーディオデータフレームとの間で同期制御を行い、同期が崩れた場合には、ポーズデータフレームを出力し、ＰＣＭデータの出力とオーディオデータフレームの出力タイミングを再調整することで、ＰＣＭデータの出力とＩＥＣフレームの出力の同期をとっている。
【００７３】
図６は、オーディオデータ処理装置１００の処理の時間的な流れを示しており、ＰＣＭデータの出力がフレームスキップ等することなく安定し、ＰＣＭデータ出力とＩＥＣフレーム出力とが同期している場合の動作を示している。図は、共用ＥＳリングバッファ１１３にＡＥＳフレーム（１〜５）が順に格納され、ＡＥＳフレーム（１，２）をデコードしたＰＣＭデータが出力され、ＡＥＳフレーム（１〜３）を変換したＩＥＣフレームが出力される例である。
【００７４】
まず、入力部１１０にＡＥＳが入力されると、バッファ格納部１１１が、共用ＥＳリングバッファ１１３の領域１にフレーム（１）（ＡＥＳフレーム）の書き込みを開始する（Ｔ１）。バッファ格納部１１１が、共用ＥＳリングバッファ１１３の領域１にフレーム（１）の書き込みを完了すると（Ｔ２）、デコーダ転送部１１４は、復号部１２１へフレーム（１）の転送を開始する（Ｔ３）。
【００７５】
また、Ｔ２よりも前に、デコーダ出力部１２３は、フレーム（０）のＰＣＭデータ（ダミーデータ（０データ））の出力を開始する。そして、Ｔ２の時点で、例えば、出力するＰＣＭサンプルが、［ＡＥＳの１フレーム分のＰＣＭデータ−同期許容値Ｓ／２］となるようにダミーデータを出力する（Ｔ４）。さらに、Ｔ２と同時に、パケッタイザ１３０のオーディオデータ出力部１３１は、フレーム（１）を変換したオーディオデータフレームの出力を開始する（Ｔ５）。
【００７６】
すなわち、オーディオデータフレームの出力開始の時点を、ＰＣＭダミーデータのほぼ同期許容値Ｓ／２として、同期をとり、同期ずれの発生をできるだけ抑止している。同期ずれには、遅延のずれや先行のずれがあり、いずれも同様の確率で生じるため、どのずれも等しく許容できるように同期許容値Ｓ／２としている。尚、Ｔ４におけるＰＣＭサンプルの位置は、同期許容値Ｓ／２に限らず、その他、同期許容値の範囲内であってもよい。
【００７７】
尚、この例では、ＰＣＭダミーデータの出力するタイミングで、フレーム（１）のオーディオデータフレームを出力し、ＰＣＭデータの出力よりもＩＥＣフレームの出力を先行させている。例えば、ＩＥＣフレームの出力先に接続される装置では、デコード処理等が必要であるため、ＩＥＣフレームをより早く出力することが好ましいが、フレーム（１）のＰＣＭデータを出力するタイミングで、フレーム（１）のオーディオデータフレームを出力してもよい。
【００７８】
Ｔ２では、さらに、バッファ格納部１１１が、共用ＥＳリングバッファ１１３の領域２にフレーム（２）の書き込みを行う。そして、オーディオデータ出力部１３１から、フレーム（１）のオーディオデータフレームの出力が順次開始されると、出力されたデータが不要となり、順次フレーム（３）のデータが領域１に書き込まれる（Ｔ６）。
【００７９】
Ｔ３で開始されたフレーム（１）の転送が完了すると（α）、復号部１２１によりデコードされ（β）、デコードされたＰＣＭデータがＰＣＭバッファ１２２に格納されて、出力が開始される（Ｔ７）。
【００８０】
Ｔ５で開始されたオーディオデータフレームの出力が完了すると、上述のように、同期制御部１３３は、ＰＣＭリードポインタ保持部１２４のＰＣＭリードポインタを参照し、次のフレームの送信タイミングが、同期許容値Ｓの範囲内かどうか判定する。この例では、Ｔ８や次の送信タイミングのＴ９において、同期許容値Ｓの範囲内であり、同期が取れているため、そのままオーディオデータフレームの出力を行っている。
【００８１】
図７は、図６と同様に、オーディオデータ処理装置１００の処理の時間的な流れを示しており、ＰＣＭデータの出力でサンプルスキップ等が発生し、ＰＣＭデータの出力とＩＥＣフレームの出力との同期が外れた場合の動作を示している。図は、共用ＥＳリングバッファ１１３にＡＥＳフレーム（ｎ〜ｎ＋３）が順に格納され、ＡＥＳフレーム（ｎ−２〜ｎ＋１）をデコードしたＰＣＭデータが出力され、ＡＥＳフレーム（ｎ−１，ｎ＋１）を変換したＩＥＣフレームが出力される例である。
【００８２】
図７では、図６と同様に、同期制御部１３３によって、ＰＣＭリードポインタ保持部１２４のＰＣＭリードポインタが参照され、次のフレームの送信タイミングが、同期許容値Ｓの範囲内かどうか判定される。この例では、Ｔ１０において、同期許容値Ｓの範囲外であり、同期が外れているため、このときに送信すべきフレーム（ｎ）の代わりに、ポーズデータ出力部１３２から、ポーズデータフレームを出力する（図７中（ａ））。そして、ポーズデータフレームの出力完了毎に、ＰＣＭリードポインタを参照し、次のフレームの送信タイミングが、同期許容値Ｓの範囲内となり同期がとれるまで繰り返す。例えば、ポーズデータの出力完了時にＰＣＭリードポインタがほぼ同期許容値Ｓ／２となると、フレーム（ｎ＋１）のオーディオデータフレームを出力する（Ｔ１１）。尚、上記のＰＣＭダミーデータと同様に、同期許容値Ｓ／２であることが好ましいが、その他、同期許容値の範囲内であってもよい。
【００８３】
以上のように、本実施形態では、ＰＣＭデータのデコーダとＩＥＣフレームのパケッタイザとに入力するためのバッファを共用することで、必要なメモリサイズを削減することができる。例えば、図１１の従来例では、ＡＥＳを５フレーム分格納するメモリサイズが必要であったが、本実施形態では、２フレーム分のメモリサイズとなる。また、ＰＣＭデータの出力に基づいてＩＥＣフレームの出力タイミングを制御し、ＰＣＭデータの出力とＩＥＣフレームの出力とを同期させることにより、フレームやサンプルのスキップ／リピートが発生した場合でも、ＰＣＭデータの出力が滞ることなく正常に、またＩＥＣフレームの出力に致命的な障害を与えずに出力することができる。
【００８４】
例えば、メモリサイズの削減量を算出すると、次のようになる。共用ＥＳリングバッファ１１３のメモリサイズをフレームサイズ２倍確保し、ＡＥＳ１フレームのＰＣＭサンプル数＝１５３６（ｓａｍｐｌｅ／ｆｒａｍｅ）、ＡＥＳ１フレームのＰＣＭサンプル時間＝０．０３２（ｓ／ｆｒａｍｅ）、サンプリング周波数＝４８ｋＨｚ、ＩＥＣフレーム出力レート＝１．５３６Ｍｂｐｓとする。また、デコーダ転送部１１４からデコーダ１２０への転送レート＝６Ｍｂｐｓとし、１フレームの転送時間α＝０．００２３（ｓ）（ＤＶＤｍａｘ＝８９６（ｗｏｒｄ／ｆｒａｍｅ））とする。さらに、復号部１２１における１フレームのデコード時間＝０．０１８（ｓ／ｆｒａｍｅ）とする。そうすると、上記（式５）より、同期許容値Ｓ＝１１５となる。したがって、５５サンプル程度のスキップ／リピートが許容できることになる。この結果、図１１の従来例と本実施形態とのメモリサイズ比＝８９６×２／８９６×５＝１７９２（ｂｙｔｅ）／４４８０（ｂｙｔｅ）＝２／５となり、２６８８（ｂｙｔｅ）のメモリ削減が可能となる。
【００８５】
本実施形態では、わかりやすく説明するため、共有ＥＳリングバッファをＡＥＳフレーム×２の大きさとしてきたが、図８のように、一般的には共有ＥＳリングバッファの大きさをＡＥＳフレーム×２＋ａ（ａ：マージン）とすると、上述の（式３）（式４）（式５）は、次の（式６）（式７）（式８）となる。
【００８６】
フレームスキップ後ＰＣＭ出力完了時間Ｑ  ＞  （（ＡＥＳフレームサイズ−ａ）／ＡＥＳ入力レート）＋α＋β      （式６）
【００８７】
フレームスキップ後ＰＣＭ出力完了時間Ｑ  ＞  （（ＡＥＳフレームサイズ−ａ）／ＩＥＣフレーム出力レート）＋α＋β      （式７）
【００８８】
同期許容値Ｓ  ＝  (１−［｛（ＡＥＳフレームサイズ−ａ）／ＩＥＣフレーム出力レート｝＋α＋β］／ＡＥＳ１フレームのＰＣＭサンプル時間)×ＡＥＳ１フレームのＰＣＭサンプル数      (式８)
【００８９】
尚、デコーダ１２０やパケッタイザ１３０の処理を行うＣＰＵの処理速度が高速の場合には、マージンａをマイナス、すなわち、共用ＥＳリングバッファ１１３のサイズを、ＡＥＳの２フレーム分よりもマージンａだけ少ないメモリサイズとすることもできる。
【００９０】
発明の実施の形態２．
次に、本発明の実施の形態２にかかるオーディオデータ処理装置について説明する。
【００９１】
本実施形態のオーディオデータ処理装置は、図１のオーディオデータ処理装置１００と同様の構成であり、共用ＥＳリングバッファ１１３のサイズのみが異なる。ここでは、共用ＥＳリングバッファ１１３は、ＡＥＳの３フレーム分のサイズであるとする。これは、例えば、デコーダ１２０の後段にＰＣＭデータを音場処理する装置を設けた場合に、音場処理に時間を要するため、ＩＥＣフレームの出力よりもＰＣＭデータの出力を先行させることがある場合を想定している。
【００９２】
本実施形態では、上記条件の場合の、（式８）を用いない、ストリームの特徴を生かした同期制御方法について説明する。
【００９３】
次に、図９を用いて、本実施形態にかかるオーディオデータ処理装置の動作について説明する。本実施形態では、例えば、ＡＥＳとしてＡＣ３（Ａｕｄｉｏ  Ｃｏｄｅ  ｎｕｍｂｅｒ３）ストリームが入力される。この場合、ＡＣ３ストリームを構成する各ＡＣ３フレームが、デコーダ１２０でデコードされるとともに、パケッタイザ１３０でＩＥＣフレームに変換される。また、このＡＣ３フレームは、６つのオーディオブロックと、ＣＲＣ１、ＣＲＣ２から構成されている。例えば、１つのオーディオブロックをデコードすると２５６のＰＣＭサンプルとなる。
【００９４】
ＡＣ３のデコード方式は、規格化されており、ＣＲＣ１とＣＲＣ２のＣＲＣチェックを行いながら、所定のオーディオブロックのデコードを行う。例えば、デコーダ１２０の復号部１２１は、ＡＣ３フレームのＣＲＣ１についてＣＲＣチェックを行い、チェックの結果がＯＫの場合、フレームの５／８まで、つまり、先頭から２つのオーディオブロックまでデコードする。さらに、復号部１２１は、ＡＣ３フレームのＣＲＣ２についてＣＲＣチェックを行い、チェック結果がＯＫの場合、フレームの全て、つまり、最後のオーディオブロックまでデコードする。
【００９５】
図９に示される通り、共用ＥＳリングバッファ１１３は、３つのＡＣ３フレームを格納するサイズであり、領域（バッファ領域）１，２，３にＡＣ３フレームが１フレームずつ格納される。例えば、領域１には、オーディオブロック００〜０５が格納され、領域２には、オーディオブロック１０〜１５が格納され、領域３には、オーディオブロック２０〜２５が格納される。
【００９６】
入力部１１０では、バッファ格納部１１１が、ライトポインタ保持部１１２のライトポインタを更新しながら、入力されるＡＣ３フレームを順に共用ＥＳリングバッファ１１３に格納する。デコーダ転送部１１４は、デコーダ用リードポインタ保持部１１５のデコーダ用リードポインタを更新しながら、格納されたＡＣ３フレームのオーディオブロックを順にデコーダ１２０へ転送する。復号部１２１は、ＣＲＣチェックを行うとともに、デコードを行い、外部へＰＣＭデータを出力する。
【００９７】
例えば、ＣＲＣ２のチェックがＯＫとなり領域１のフレームのデコードが完了したとき、デコーダ用リードポインタは、図９中（ａ）の位置となる。上記のように、ＰＣＭデータの出力よりもＩＥＣフレームの出力を１フレーム遅延させるとすると、デコーダ用リードポインタが図９中（ａ）のとき、パケッタイザ用リードポインタは図９中（ｂ）の位置となる。
【００９８】
フレーム１のデコード完了直後に、領域２のフレームのスキップが発生すると、デコーダ用リードポインタは、図９中（ｃ）から図９中（ｄ）へ移動する。このとき、復号部１２１でデコードが続けて行われるためには、次フレーム（領域３）のＣＲＣ１のＣＲＣチェックが可能なデータ量、つまりＡＣ３のフレームサイズの５／８のデータ量が、バッファ格納部１１１によって共用ＥＳリングバッファ１１３に格納されている必要がある。このとき、ライトポインタは図９中（ｅ）の位置となる。
【００９９】
そうすると、復号部１２１では、領域３のフレームのＣＲＣ１のＣＲＣチェックを行いオーディオブロック２０，２１のデコードを行う。この間、領域１のパケッタイザ１３０への転送が進み、復号部１２１でオーディオブロック２０，２１のデコード処理（１フレームの１／３の処理）が完了する間に、例えば、パケッタイザ用リードポインタは、ＡＣ３の１フレームの４／６（２×１／３）以上進み、図９中（ｆ）の位置となる。
【０１００】
このとき、領域３の残りは、フレームサイズの３／８となり、フレームサイズ×３／８＜フレームサイズ×４／６なので、ＡＣ３の１フレームの残りのデータを、バッファ格納部１１１から補充することができる。
【０１０１】
以上のように、本実施形態では、実施の形態１の共用ＥＳリングバッファ１１３を２フレーム分よりも多く、例えば、３フレーム分のメモリサイズとすることで、後段の処理等を考慮して、ＩＥＣフレームの出力を遅延させた場合でも、メモリサイズを削減できるとともに、ＰＣＭデータとＩＥＣフレームを正常に出力することができる。すなわち、実施の形態１と同様に、ＰＣＭデータの出力とＩＥＣフレームの出力との同期をとり、フレームやサンプルのスキップ／リピートに影響されることなく正常にＩＥＣフレームを出力することができる。例えば、ＡＣ３の３フレーム分のメモリサイズを確保することで、サンプルスキップ／リピートに対し２５６サンプル程度許容できる。
【０１０２】
尚、上述の例では、ＡＥＳをＰＣＭデータとＩＥＣフレームに変換し出力するオーディオデータ処理装置として説明したが、これに限らず、その他のデータストリームのフレームを所定の形式に変換し出力する装置にも適用することができる。
【０１０３】
このほか、本発明の要旨を逸脱しない範囲で種々の変形、実施が可能である。
【図面の簡単な説明】
【０１０４】
【図１】本発明にかかるオーディオデータ処理装置の構成を示すブロック図である。
【図２】本発明にかかるオーディオデータ処理装置のバッファ処理を説明するための図である。
【図３】本発明にかかるオーディオデータ処理装置の動作を説明するための図である。
【図４】本発明にかかるオーディオデータ処理装置の動作を説明するフローチャートである。
【図５】本発明にかかるオーディオデータ処理装置のバッファ処理を説明するための図である。
【図６】本発明にかかるオーディオデータ処理装置の動作を説明するための図である。
【図７】本発明にかかるオーディオデータ処理装置の動作を説明するための図である。
【図８】本発明にかかるオーディオデータ処理装置のバッファ処理を説明するための図である。
【図９】本発明にかかるオーディオデータ処理装置のバッファ処理を説明するための図である。
【図１０】ＩＥＣ６１９３７のフォーマットを示す図である。
【図１１】従来のオーディオデータ処理装置の構成を示すブロック図である。
【図１２】従来のオーディオデータ処理装置の動作を説明するための図である。
【図１３】従来のオーディオデータ処理装置の動作を説明するための図である。
【符号の説明】
【０１０５】
１００  オーディデータ処理装置
１１０  入力部
１１１  バッファ格納部
１１２  ライトポインタ保持部
１１３  共用ＥＳリングバッファ
１１４  デコーダ転送部
１１５  デコーダ用リードポインタ保持部
１１６  パケッタイザ転送部
１１７  パケッタイザ用リードポインタ保持部
１２０  デコーダ
１２１  復号部
１２２  ＰＣＭバッファ
１２３  デコーダ出力部
１２４  ＰＣＭリードポインタ保持部
１３０  パケッタイザ
１３１  オーディオデータ出力部
１３２  ポーズデータ出力部
１３３  同期制御部
【図１】
2006246296.tif 000003
【図２】
2006246296.tif 000004
【図３】
2006246296.tif 000005
【図４】
2006246296.tif 000006
【図５】
2006246296.tif 000007
【図６】
2006246296.tif 000008
【図７】
2006246296.tif 000009
【図８】
2006246296.tif 000010
【図９】
2006246296.tif 000011
【図１０】
2006246296.tif 000012
【図１１】
2006246296.tif 000013
【図１２】
2006246296.tif 000014
【図１３】
2006246296.tif 000015