(57)【要約】【課題】同期語が存在しないＡＶビットストリームに対しても、デコーダ内部でエラーの対応を完結できるようにする。【解決手段】ＡＶビットストリームからデコード対象ストリームを抽出するとともに、抽出したデコード対象ストリームに、フレームの先頭であることを示すビットパターンである同期語を付加するデマルチプレクス部１１０を設ける。また、同期語が付加されたデコード対象ストリームから同期語を検索する同期部１２０を設ける。さらに、デコード対象ストリームの所定の開始位置からデコード処理を行うデコード部１４０を設ける。そして、同期部１２０によって、同期語を検索できた場合に、開始位置をデコード部１４０に指示する。【選択図】図１
2009005150.tif 000002
【特許請求の範囲】
【請求項１】
オーディオストリーム、及びビデオストリームのうちの何れかであるデコード対象ストリームのフレーム先頭位置をＡＶビットストリームから検出しデコードするＡＶビットストリーム再生装置であって、
前記ＡＶビットストリームから前記デコード対象ストリームを抽出するとともに、抽出したデコード対象ストリームに、フレームの先頭であることを示すビットパターンである同期語を付加するデマルチプレクス部と、
前記同期語が付加されたデコード対象ストリームから前記同期語を検索する同期部と、
前記デコード対象ストリームの所定の開始位置からデコード処理を行うデコード部と、
を備え、
前記同期部は、前記同期語を検索できた場合に、検索できた同期語に応じた前記開始位置を前記デコード部に指示することを特徴とするＡＶビットストリーム再生装置。
【請求項２】
請求項１のＡＶビットストリーム再生装置であって、
前記同期部は、複数の同期語を確認して、デコード対象ストリームのフレームの先頭位置を検出することを特徴とするＡＶビットストリーム再生装置。
【請求項３】
請求項１のＡＶビットストリーム再生装置であって、
前記同期語は、デコード対象ストリーム中に存在し得ないビットパターンであることを特徴とするＡＶビットストリーム再生装置。
【請求項４】
請求項１のＡＶビットストリーム再生装置であって、
前記ＡＶビットストリームは、複数種類のビットストリームを繋げたものであり、
前記デマルチプレクス部は、所定の法則にしたがって前記同期語を変更し、
前記同期部は、前記所定の法則に基づいて変化する前記同期語に基づいて、複数種類のビットストリームの境界を検出することを特徴とするＡＶビットストリーム再生装置。
【請求項５】
請求項１のＡＶビットストリーム再生装置であって、
前記ＡＶビットストリームは、ヘッダ情報を含むものであり、
前記デマルチプレクス部は、前記ヘッダ情報の前に前記同期語を付加することを特徴とするＡＶビットストリーム再生装置。
【請求項６】
請求項１のＡＶビットストリーム再生装置であって、
前記デマルチプレクス部は、前記デコード対象ストリームにおけるフレームの先頭に前記同期語を付加することを特徴とするＡＶビットストリーム再生装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＡＶビットストリームからオーディオ、又はビデオのフレーム先頭位置を検出しデコードするＡＶビットストリーム再生装置に関するものである。
【背景技術】
【０００２】
近年のＡＶファイルのオーディオ圧縮フォーマットには、可逆圧縮フォーマットや、非圧縮フォーマット（ＬＰＣＭ：Ｌｉｎｅａｒ  ＰＣＭ）が存在する。また、パーソナルコンピュータの普及により、ＡＶファイルのオーサリングが簡単に行えるようになった。
【０００３】
また、様々なメーカーがオーサリングソフト、エンコーダを発売しており、インターネット上で公開されているシェアウエア、フリーソフトもあわせると、エンコーダの数は数え切れない。しかし、そのエンコーダの品質は様々であり、中には運用規格に反するエンコードを行うものも存在する。
【０００４】
これらオーディオ、ビデオのストリームは各アプリケーションのフォーマットにあわせてパケッタイズされ、記録、放送される。このパケッタイズ処理は正しいが、オーディオ、ビデオストリームが規格に違反している場合は、デコード時にフレームの先頭位置を見失い、同期状態から外れてしまうことがある。この状態では、オーディオ、ビデオストリームを正しくデコードすることはできない。
【０００５】
そのため、入力されたビットストリームが規格違反であってもその違反を許容してデコード処理を行い、ＰＣＭデータを作成するものがある（例えば特許文献１を参照）。
【特許文献１】特開２００７−５８１２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、この装置では同期状態から外れてしまったときに復帰することはできない。同期状態から外れてしまった場合に、元の同期状態に復帰する方法は、例えば以下の２つが考えられる。
【０００７】
１つ目は、システムをフラッシュして、再度ストリームを供給しなおす方法である。これは、ビットストリームのエラーを検出し次第、ビットストリームバッファをフラッシュし、エラーのあるパケットを破棄し、システムを初期化し、次のパケットから再供給し、デコードしなおす方法である。この方法は同期語（オーディオストリームの先頭であることを示すビットパターン）のないＬＰＣＭ系ストリームのデコーダの復帰方法としてよく使用される。
【０００８】
２つ目の方法は、デコーダ自身がオーディオ、ビデオストリームの先頭を検索する方法である。この方法はＭＰ３などの圧縮オーディオフォーマット等でよく使われている。ＭＰ３の場合、オーディオストリーム中にそのオーディオストリームの先頭であることを示すビットパターンである０ｘＦＦＦが存在する。これを同期語（シンクワード）という。ＭＰ３はこの同期語を検索することで、オーディオストリームの先頭位置を探すことができる。そのため、フレームの先頭を見つけ、元の同期状態に復帰することが可能となる。この方法は同期語の存在する圧縮フォーマットで使用されている。
【０００９】
ここで、２つ目の方法では、デコーダ内部で発見されるエラーへの対応がデコーダ内部で完結しているのに対し、１つ目の方法では、上位層の対応が必要となるため、デコーダの制御を難しくする原因の１つであった。
【００１０】
また、各デコーダをライブラリ化する際に、２つ目の方法のように、エラー処理を内部で閉じるようにしたい。しかし、ＬＰＣＭ系ストリームには同期語が存在しないため、実質的に２つ目の方法を実施することができなかった。
【００１１】
本発明は上記の問題に着目してなされたものであり、同期語が存在しないＡＶビットストリームに対しても、デコーダ内部でエラーの対応を完結できるようにすることを目的としている。
【課題を解決するための手段】
【００１２】
上記の課題を解決するため、本発明の一態様は、
オーディオストリーム、及びビデオストリームのうちの何れかであるデコード対象ストリームのフレーム先頭位置をＡＶビットストリームから検出しデコードするＡＶビットストリーム再生装置であって、
前記ＡＶビットストリームから前記デコード対象ストリームを抽出するとともに、抽出したデコード対象ストリームに、フレームの先頭であることを示すビットパターンである同期語を付加するデマルチプレクス部と、
前記同期語が付加されたデコード対象ストリームから前記同期語を検索する同期部と、
前記デコード対象ストリームの所定の開始位置からデコード処理を行うデコード部と、
を備え、
前記同期部は、前記同期語を検索できた場合に、検索できた同期語に応じた記開始位置を前記デコード部に指示することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、同期語が存在しないＡＶビットストリームに対しても、デコーダ内部でエラーの対応を完結することが可能になる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施形態について図面を参照しながら説明する。なお、以下の各実施形態の説明において、一度説明した構成要素と同様の機能を有する構成要素については、同一の符号を付して説明を省略する。
【００１５】
《発明の実施形態１》
図１は、本発明の実施形態１に係るＡＶビットストリーム再生装置の構成を示す図である。このＡＶビットストリーム再生装置は、同図に示すように、デマルチプレクス部１１０、同期部１２０、オーディオバッファ１３０、及びデコード部１４０を備えている。
【００１６】
デマルチプレクス部１１０は、入力ストリームであるＡＶビットストリームＳ０１をオーディオストリームＳ０２とビデオストリームＳ０３とに分けるとともに、同期語（シンクワード）をオーディオストリームＳ０２の特定の位置に付加してオーディオバッファ１３０に置く。具体的には、デマルチプレクス部１１０は、オーディオストリームＳ０２中にヘッダ情報が含まれる場合は、ヘッダ情報の直前に同期語を付加する。
【００１７】
なお、ここでは同期語は、例えば０ｘＦＦＦＦであるものとする。また、図１におけるオーディオストリームＳ０４が、同期語が付加されてオーディオバッファ１３０に格納されたオーディオストリームである。
【００１８】
同期部１２０は、デマルチプレクス部１１０によって同期語を付加されたであろうオーディオバッファ１３０の位置からオーディオストリームＳ０４を切り出し、その値が０ｘＦＦＦＦであった場合は、同期状態であるとして、オーディオストリームＳ０４のフレームの先頭アドレスをデコード部１４０へ送る。
【００１９】
ここで、切り出した値が０ｘＦＦＦＦでなかった場合は、同期部１２０は、切り出し位置をずらして再度切り出しを行い、０ｘＦＦＦＦを切り出せるまでこれを繰り返す。切り出した値が０ｘＦＦＦＦであった場合は、オーディオストリームＳ０４のフレームの先頭アドレスをデコード部１４０へ送る。
【００２０】
上記のようにしてフレームの先頭アドレスが送られると、デコード部１４０は、送られた先頭アドレスに応じ、オーディオバッファ１３０内のオーディオストリームＳ０４に対してデコード処理を行う。
【００２１】
ここで、デコード部１４０でストリームエラーと判定された場合は、再度同期部１２０が０ｘＦＦＦＦの検索を繰り返す。これにより、０ｘＦＦＦＦが付加された位置を同期部１２０が発見することができ、オーディオストリームＳ０４のフレーム位置を確認できる。それゆえ、フレームの先頭位置を見失って、同期状態から外れてしまった場合に、同期状態へ戻すことが可能となる。
【００２２】
なお、オーディオストリームＳ０２内に０ｘＦＦＦＦという値が存在しうる場合は、デマルチプレクス部１１０がその値から同期状態だと誤って判定してしまうこともある。しかし、同期部１２０が０ｘＦＦＦＦを検索し続けることで、最終的にはもとの同期状態に戻ることができる。
【００２３】
以上のように、本実施形態によれば、同期語が存在しないＡＶビットストリームに対しても、デコーダ内部でエラーの対応を完結することが可能になる。
【００２４】
《発明の実施形態２》
図２は、本発明の実施形態２に係るＡＶビットストリーム再生装置の構成を示す図である。
【００２５】
本実施形態では同期部１２０の構成が実施形態１と異なっている。本実施形態の同期部１２０は同期語を発見すると、次に同期語が付加される予定のオーディオストリームＳ０４内の位置を調べる。そして、２箇所とも同期語であった場合に、フレームの先頭アドレスをデコード部１４０へ送る。
【００２６】
このように、同期語の確認箇所を増やすことで、実施形態１よりもより確実に同期状態と判定できる。
【００２７】
なお、この例では同期部１２０が確認する同期語は２箇所であったが、２箇所以上の同期語を確認するようにしてもよい。
【００２８】
《発明の実施形態３》
図３は、本発明の実施形態３に係るＡＶビットストリーム再生装置の構成を示す図である。本実施形態では、同期語として、実施形態で採用した０ｘＦＦＦＦのようにオーディオストリームＳ０２によくありうるビットパターンではなく、音響上ありえないビットパターンを採用する。
【００２９】
例えば、オーディオの最小値の０ｘ８０００と最大値０ｘ７ＦＦＦを連続させた０ｘ８０００７ＦＦＦなどは、通常のオーディオストリームのパターンとしては、存在しないため誤って同期状態と判定することはほとんどありえない。すなわち、このような値を同期語として採用することで、誤って同期状態と判定する確率を低くすることができる。
【００３０】
《発明の実施形態４》
図４は、本発明の実施形態４に係るＡＶビットストリーム再生装置の構成を示す図である。
【００３１】
本実施形態のデマルチプレクス部１１０は、所定の法則にしたがって同期語を変更する。ここでは、上記の法則の一例として、例えば、順番に０ｘ０００１、０ｘ０００２、０ｘ０００３、・・・と、新たに付加する同期語を（前回の同期語＋１）にするという法則が採用されているものとする。ただし、例えばＡＶビットストリームＳ０１が違う２種類のストリームを繋げたものであった場合には、その境界でデマルチプレクス部１１０は、意図的に同期語を（前回の同期語＋１）でないもの（すなわち上記の法則に従わない値）を付加するものとする。例えば、境界では、０ｘ０００３の次に０ｘ０００１、０ｘ０００２と付加する。
【００３２】
同期部１２０は、例えば０ｘ０００１を検出したら、次の同期語は０ｘ０００２であることを期待して同期語検索をおこなう。
【００３３】
ここで、ＡＶビットストリームＳ０１が違う２種類のストリームを繋げたものであり、上記のように、境界において、０ｘ０００３の次に０ｘ０００１、０ｘ０００２と、同期語が付加されていたとすると、同期部１２０では、０ｘ０００３の次に０ｘ０００４ではなく０ｘ０００１を検出してしまう。しかし、同期部１２０は、０ｘ０００１に続いて、さらに０ｘ０００２を検出するので、同期語であることを判定でき、かつ、値が（前回の同期語＋１）でないことから、ＡＶビットストリームＳ０１の境界部分であることを判定することができる。
【００３４】
《発明の実施形態５》
図５は、本発明の実施形態５に係るＡＶビットストリーム再生装置の構成を示す図である。
【００３５】
本実施形態では、オーディオストリームＳ０２は、ヘッダ情報を含んでおり、デマルチプレクス部１１０は、ヘッダ情報の直前に同期語（０ｘＦＦＦＦ）を付加する。
【００３６】
また、同期部１２０は、同期語を検出した後、その直後に続くヘッダ情報にエラーが無いかを調べてから同期状態と判定する。
【００３７】
これにより誤って同期状態と判定する確率を低くすることができる。
【００３８】
《発明の実施形態６》
図６は、本発明の実施形態６に係るＡＶビットストリーム再生装置の構成を示す図である。
【００３９】
本実施形態では、デマルチプレクス部１１０は、オーディオフレームの先頭が判断できる場合には、ここに同期語（例えば０ｘＦＦＦＦ）を付加する。
【００４０】
したがって、同期部１２０が検出した同期語に続くオーディオストリームＳ０５が、デコードすべきオーディオストリームの先頭となっている（すなわち、同期語がオーディオストリームの先頭と直結している）ので、同期状態から外れた状態から同期状態に戻っても、オーディオストリームの先頭へのポインタ移動が不要となる。
【００４１】
なお、上記の各実施形態は、オーディオストリームをデコードする例を説明したが、ビデオストリームのデコードについても同様に行うことが出来ることは言うまでもない。
【産業上の利用可能性】
【００４２】
本発明に係るＡＶビットストリーム再生装置は、同期語が存在しないＡＶビットストリームに対しても、デコーダ内部でエラーの対応を完結することが可能になるという効果を有し、ＡＶビットストリームからオーディオ、又はビデオのフレーム先頭位置を検出しデコードするＡＶビットストリーム再生装置等として有用である。
【図面の簡単な説明】
【００４３】
【図１】実施形態１に係るＡＶビットストリーム再生装置の構成を示す図である。
【図２】実施形態２に係るＡＶビットストリーム再生装置の構成を示す図である。
【図３】実施形態３に係るＡＶビットストリーム再生装置の構成を示す図である。
【図４】実施形態４に係るＡＶビットストリーム再生装置の構成を示す図である。
【図５】実施形態５に係るＡＶビットストリーム再生装置の構成を示す図である。
【図６】実施形態６に係るＡＶビットストリーム再生装置の構成を示す図である。
【符号の説明】
【００４４】
１１０      デマルチプレクス部
１２０      同期部
１３０      オーディオバッファ
１４０      デコード部
Ｓ０１      ＡＶビットストリーム
Ｓ０２      オーディオストリーム
Ｓ０３      ビデオストリーム
Ｓ０４      オーディオストリーム
Ｓ０５      オーディオストリーム
【図１】
2009005150.tif 000003
【図２】
2009005150.tif 000004
【図３】
2009005150.tif 000005
【図４】
2009005150.tif 000006
【図５】
2009005150.tif 000007
【図６】
2009005150.tif 000008