(57)【要約】【課題】処理負荷を抑えながら、効率的に再生品質を向上することができる。【解決手段】パケット蓄積部は、パケットおよびパケットタイプ、その他パケット情報を保存する。統計情報蓄積部は、統計情報（エラー率や、受信装置のパフォーマンス（処理状態）、ストリームの状態、バッファの状態など）を蓄積する。パケット補正方法選択部は、統計情報蓄積部からのパケット識別・統計情報と、パケット情報に基づいて生成されたパケット補正テーブルから、パケット補正方法を選択し、処理中のパケットが補正対象とされた場合、その補正対象のパケットをパケット補正部に供給する。本開示は、例えば、データを送受信する通信システムに適用することができる。【選択図】図３
2017073680.tif 000002
【特許請求の範囲】
【請求項１】
ビデオデータ、オーディオデータ、および制御情報を含むストリームから、パケット情報を抽出する抽出部と、
前記ストリームからパケットエラーを検出するエラー検出部と、
前記抽出部により抽出されたパケット情報および受信処理状態に応じて、前記エラー検出部により検出されたパケットエラーの補正方法を選択する補正方法選択部と、
前記補正方法選択部により選択された補正方法に基づいて、前記エラー検出部により検出されたパケットエラーを補正する補正部と
を備える受信装置。
【請求項２】
前記抽出部により抽出されたパケット情報を蓄積する蓄積部を
さらに備え、
前記補正部は、前記蓄積部に蓄積されたパケット情報から、ビットパターンを推定し、シンタックスを補正することで、前記エラー検出部により検出されたパケットエラーを補正する
請求項１に記載の受信装置。
【請求項３】
前記抽出部により抽出されたパケット情報に応じて、補正優先度を割り当てた補正テーブルを生成する補正テーブル生成部を
さらに備え、
前記補正方法選択部は、前記補正テーブル生成部により生成された補正テーブル、および受信処理状態の少なくとも一方に応じて、前記エラー検出部により検出されたパケットエラーの補正方法を選択する
請求項１に記載の受信装置。
【請求項４】
前記パケット情報は、パケットの種別情報を含む
請求項１に記載の受信装置。
【請求項５】
前記補正方法には、補正対象、補正範囲、および補正精度の少なくとも１つが含まれている
請求項１に記載の受信装置。
【請求項６】
受信装置が、
ビデオデータ、オーディオデータ、および制御情報を含むストリームから、パケット情報を抽出し、
前記ストリームからパケットエラーを検出し、
抽出されたパケット情報および受信処理状態に応じて、検出されたパケットエラーの補正方法を選択し、
選択された補正方法に基づいて、検出されたパケットエラーを補正する
受信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、受信装置および方法に関し、特に、処理負荷を抑えながら、効率的に再生品質を向上することができるようにした受信装置および方法に関する。
【背景技術】
【０００２】
従来放送のコンテンツ受信においては、復調器してストリーム復元の際、伝送時に生じたビットエラーのエラー訂正が行われ、トランスポート層の多重分離、デコード・表示処理が行われている。
【０００３】
ここで、伝送品質の低い状況化では、復調器にてエラーを訂正しきれない場合、トランスポート層の多重分離器では、パケットエラーにより正しくパケットの抽出ができず、その結果、ビデオ・オーディオのAU(AccessUnit)では、一部のデータロスから不連続再生などが発生していた。
【０００４】
また、SI/PSIで特にPAT,PMTなどのストリーム情報を記載しているパケットを抽出できない場合は、コンテンツ再生制御の遅延など、受信機制御全体への影響に繋がっていた。
【０００５】
これに対応して、特許文献１においては、TSを例にパケットエラーを推定し修復を行う方法が提案されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１３−２０７７２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、エラー検出およびエラー補正は、特許文献１に記載の提案により処理負荷に大きく依存するため、実際の受信機で実現するためには状況に応じてコストと効果に見合うより効率的な方法を検討する必要があった。
【０００８】
本開示は、このような状況に鑑みてなされたものであり、処理負荷を抑えながら、効率的に再生品質を向上することができるものである。
【課題を解決するための手段】
【０００９】
本技術の一側面の受信装置は、ビデオデータ、オーディオデータ、および制御情報を含むストリームから、パケット情報を抽出する抽出部と、前記ストリームからパケットエラーを検出するエラー検出部と、前記抽出部により抽出されたパケット情報および受信処理状態に応じて、前記エラー検出部により検出されたパケットエラーの補正方法を選択する補正方法選択部と、前記補正方法選択部により選択された補正方法に基づいて、前記エラー検出部により検出されたパケットエラーを補正する補正部とを備える。
【００１０】
前記抽出部により抽出されたパケット情報を蓄積する蓄積部をさらに備え、前記補正部は、前記蓄積部に蓄積されたパケット情報から、ビットパターンを推定し、シンタックスを補正することで、前記エラー検出部により検出されたパケットエラーを補正することができる。
【００１１】
前記抽出部により抽出されたパケット情報に応じて、補正優先度を割り当てた補正テーブルを生成する補正テーブル生成部をさらに備え、前記補正方法選択部は、前記補正テーブル生成部により生成された補正テーブル、および受信処理状態の少なくとも一方に応じて、前記エラー検出部により検出されたパケットエラーの補正方法を選択することができる。
【００１２】
前記パケット情報は、パケットの種別情報を含むことができる。
【００１３】
前記補正方法には、補正対象、補正範囲、および補正精度の少なくとも１つが含まれていることができる。
【００１４】
本技術の一側面の受信方法は、受信装置が、ビデオデータ、オーディオデータ、および制御情報を含むストリームから、パケット情報を抽出し、前記ストリームからパケットエラーを検出し、抽出されたパケット情報および受信処理状態に応じて、検出されたパケットエラーの補正方法を選択し、選択された補正方法に基づいて、検出されたパケットエラーを補正する。
【００１５】
本技術の一側面においては、ビデオデータ、オーディオデータ、および制御情報を含むストリームから、パケット情報が抽出され、前記ストリームからパケットエラーが検出される。そして、抽出されたパケット情報および受信処理状態に応じて、検出されたパケットエラーの補正方法が選択され、選択された補正方法に基づいて、検出されたパケットエラーが補正される。
【発明の効果】
【００１６】
本技術によれば、処理負荷を抑えながら、効率的に再生品質を向上することができる。
【００１７】
なお、本明細書に記載された効果は、あくまで例示であり、本技術の効果は、本明細書に記載された効果に限定されるものではなく、付加的な効果があってもよい。
【図面の簡単な説明】
【００１８】
【図１】本技術を適用した通信システムの構成例を示す図である。
【図２】本技術を適用した受信装置の構成例を示すブロック図である。
【図３】エラー補正部の構成例を示すブロック図である。
【図４】受信装置の受信処理を説明するフローチャートである。
【図５】図４のステップＳ１１７の再生視聴処理を説明するフローチャートである。
【図６】図４のステップＳ１１８の記録／再送信処理を説明するフローチャートである。
【図７】図４のステップＳ１１３のエラー補正処理を説明するフローチャートである。
【図８】H.264/AVCのNAL構造の例を示す図である。
【図９】H.265/HEVCのNAL構造の例を示す図である。
【図１０】H.265/HEVCの符号化構造例を示す図である。
【図１１】MPEG2-TSのTSおよびPESの構造例を示す図である。
【図１２】MPEG2-TSのSectionのヘッダの構造例を示す図である。
【図１３】MMTパケットのヘッダ構造を示す図である。
【図１４】MMTPペイロードのヘッダ構造を示す図である。
【図１５】MMT-SIタイムスタンプ／拡張タイムスタンプ記述子の構造を示す図である。
【図１６】H.264/AVCのパケット補正テーブルの例を示す図である。
【図１７】H.265/HEVCのパケット補正テーブルの例を示す図である。
【図１８】パーソナルコンピュータの構成例を示すブロック図である。
【発明を実施するための形態】
【００１９】
以下、本開示を実施するための形態（以下実施の形態とする）について説明する。
【００２０】
＜本技術のシステムの構成例＞
図１は、本技術を適用する通信システムの構成例を示す図である。
【００２１】
図１の通信システムは、送信装置５１および受信装置５２を含むように構成されている。送信装置５１は、ビデオ／オーディオデータと制御情報をパケット化し、多重化して、多重化ストリームとして送信する。受信装置５２は、送信装置５１からの多重化ストリームを受信し、パケット情報の抽出、エラー検出、およびエラー補正を行い、再生視聴、記録、再送信などを行う。
【００２２】
なお、送信装置５１の送信と受信装置５２の再送信とはほぼ同様の処理を行う。
【００２３】
＜受信装置の構成例＞
図２は、受信装置の構成例を示すブロック図である。
【００２４】
受信装置５２は、多重分離部１０２、エラー補正部１０３、制御情報バッファ１０４、デコーダバッファ１０５、制御情報パケット解析部１０６、ビデオ・オーディオ同期制御部１０７、ビデオ・オーディオ復号部１０８、制御情報生成・パケット化部１１０、再多重化部１１１を含むように構成されている。この受信装置５２においては、システム層（シンタックスなど）でエラー補正が行われる。
【００２５】
外部からの多重化ストリーム１０１は、多重分離部１０２に入力される。多重化分離部１０２は、パケットのパターンマッチを行い、エラー補正部１０３に、エラー補正をさせて、エラーが補正された多重化ストリームを、制御情報、ビデオ・オーディオデータにそれぞれ分離する。多重分離部１０２は、分離した制御情報を、制御情報バッファ１０４に供給する。多重分離部１０２は、分離したビデオ・オーディオデータからAU(AccessUnit)を生成し、ビデオ・オーディオのAUを、デコーダバッファ１０５に供給する。なお、記録／再送信の場合、多重分離部１０２は、分離したビデオ・オーディオデータのパケットを、再多重化部１１１に供給する。
【００２６】
エラー補正部１０３は、エラーがあるパケットに対して、パケットを識別し、パケット情報や統計情報を基に生成されるパケットテーブルに基づいて、パケット補正方法を選択し、補正を行わないパケットをそのまま、多重分離部１０２に供給する。パケット補正方法とは、補正の対象（優先度の範囲）、種別、補正精度などを含むものである。エラー補正部１０３は、補正対象とされた場合、そのパケットの補正を行い、補正されたパケットを、多重分離部１０２に供給する。
【００２７】
制御情報バッファ１０４は、多重分離部１０２により分離された制御情報を蓄積する。デコーダバッファ１０５は、多重分離部１０２により分離され生成されたビデオ・オーディオのAUを蓄積する。
【００２８】
制御情報パケット解析部１０６は、制御情報バッファ１０４からの制御情報からSI/PSIの解析、および時刻情報の抽出、復元を行い、ビデオ・オーディオ同期制御部１０７、ビデオ・オーディオ復号部１０８、制御情報生成・パケット化部１１０に供給する。
【００２９】
ビデオ・オーディオ同期制御部１０７は、パケット解析により抽出、復元された時刻情報と、ビデオ・オーディオのAUを対応付け、デコーダバッファ１０５のビデオ・オーディオのAUを、ビデオ・オーディオ復号部１０８に復号させる。
【００３０】
ビデオ・オーディオ復号部１０８は、ビデオ・オーディオのAUを復号し、図示せぬ後段の表示部などに、ビデオ・オーディオ信号を出力する。
【００３１】
制御情報生成・パケット化部１１０は、制御情報パケット解析部１０６からの情報を用いて、生成する多重化ストリームに応じて、制御情報を再生成し、パケット化し、パケット化された制御情報を再多重化部１１１に供給する。再多重化部１１１は、多重化に必要なビデオ・オーディオデータのパケットと、制御情報生成・パケット化部１１０からの制御情報のパケットとを再多重化し、多重化ストリーム１１３を、図示せぬ外部に送信したり、記録媒体１１２に記録する。
【００３２】
＜エラー補正部の構成例＞
図３は、エラー補正部の構成例を示すブロック図である。なお、図３の例においては、多重分離部１０２のうち、エラー補正に関わる各部が示されている。
【００３３】
多重分離部１０２は、パケットフィルタ１５１、およびパケット分離部１５２を含むように構成されている。エラー補正部１０３は、パケット識別部２０１、エラー判定部２０２、パケット補正テーブル生成部２０３、パケット蓄積部２０４、パケット補正方法選択部２０５、統計情報蓄積部２０６、およびパケット補正部２０７を含むように構成されている。
【００３４】
多重化ストリームは、パケットフィルタ１５１に入力される。パケットフィルタ１５１は、多重化ストリームから、再生、記録または再送信に必要なパケットを抽出し、抽出したパケットを、パケット識別部２０１に供給する。ここでは、PacketIDなどの最低限のフィルタリングのみ行うことで、エラー補正対象の不要のデータ削減が行われるが、より高精度にエラーを抽出するために、すべてのデータを通過させてもよい。
【００３５】
パケット識別部２０１は、パケットフィルタ１５１からのパケットを、それぞれのフォーマット単位で識別処理を行い、パケットタイプ（パケットの属性）、その他パケット情報を抽出し、パケットとともにパケット蓄積部２０４に保存する。パケット識別部２０１は、識別処理後のパケットを、エラー判定部２０２に供給する。
【００３６】
エラー判定部２０２は、パケット識別部２０１からのパケットから、エラー検出を行い、エラーがなく、補正待ちパケットもないパケットについては、パケット分離部１５２に出力する。エラー判定部２０２は、エラーが検出されており、かつ、必要なパケットを受信済みの場合、統計情報蓄積部２０６からパケット識別・統計情報を取得し、パケット補正テーブル生成部２０３に、パケット補正テーブルを生成させる。
【００３７】
パケット補正テーブル生成部２０３は、エラー判定部２０２からのパケットと、統計情報蓄積部２０６からのパケット識別・統計情報に基づいて、パケット補正テーブルを生成し、生成したパケット補正テーブルを、パケット補正方法選択部２０５に供給する。
【００３８】
パケット蓄積部２０４は、パケットおよびパケットタイプ、その他パケット情報を保存する。
【００３９】
パケット補正方法選択部２０５は、統計情報蓄積部２０６からのパケット識別・統計情報とパケット補正テーブルから、パケット補正方法を選択し、処理中のパケットが補正対象とされた場合、その補正対象のパケットをパケット補正部２０７に供給する。
【００４０】
統計情報蓄積部２０６は、統計情報（エラー率や、受信装置５２のパフォーマンス（処理状態）、ストリームの状態、バッファの状態など）を蓄積する。
【００４１】
パケット補正部２０７は、補正対象とされた場合、参照パケット情報からエラー部分のビットパターン推定、パケット補正を行う。パケット補正部２０７は、補正後のパケット情報を、パケット分離部１５２に出力するとともに、パケット蓄積部２０４および統計情報蓄積部２０６に保存する。
【００４２】
パケット分離部１５２は、エラー判定部２０２およびパケット補正部２０７からのパケットのうち、制御情報のものを、制御情報バッファ１０４に供給し、ビデオ／オーディオデータに関するものを、デコーダバッファ１０５に供給する。
【００４３】
＜受信装置の処理例＞
次に、図４のフローチャートを参照して、受信装置５２の受信処理について説明する。
【００４４】
ステップＳ１１１において、多重分離部１０２は、外部から多重化ストリーム１０１のパケット入力を行う。ステップＳ１１２において、多重分離部１０２のパケットフィルタ１５１は、多重化ストリームのパケットから、再生、記録または再送信に必要なパケットを抽出し、抽出したパケットを、エラー補正部１０３に供給する。
【００４５】
ステップＳ１１３において、エラー補正部１０３は、エラー補正を行う。このエラー補正の詳細は、図６を参照して後述される。なお、このエラー補正は、システム層（シンタックス）で行われる。ステップＳ１１３の処理により、補正後のパケットは、パケット分離部１５２に出力される。また、エラーがなく、補正待ちパケットもないパケットについても、パケット分離部１５２に出力される。
【００４６】
ステップＳ１１４において、パケット分離部１５２は、エラー補正部１０３は、エラーが補正された多重化ストリーム（パケット）を、制御情報、ビデオ・オーディオデータにそれぞれ分離する。多重分離部１０２は、分離した制御情報を、制御情報バッファ１０４に供給する。多重分離部１０２は、分離したビデオ・オーディオデータからAU(AccessUnit)を生成し、ビデオ・オーディオのAUを、デコーダバッファ１０５に供給する。なお、記録／再送信の場合、多重分離部１０２は、分離したビデオ・オーディオデータのパケットを、再多重化部１１１に供給する。
【００４７】
ステップＳ１１５において、制御情報パケット解析部１０６は、制御情報バッファ１０４からの制御情報から、パケット解析・時刻情報復元を行い、ビデオ・オーディオ同期制御部１０７、ビデオ・オーディオ復号部１０８、制御情報生成・パケット化部１１０に供給する。
【００４８】
ステップＳ１１６において、ビデオ・オーディオ同期制御部１０７は、再生視聴処理であるか否かを判定する。ステップＳ１１６において、再生視聴処理であると判定された場合、処理は、ステップＳ１１７に進む。
【００４９】
ステップＳ１１７において、ビデオ・オーディオ同期制御部１０７は、ビデオ・オーディオ復号部１０８を制御し、再生視聴処理を行う。この再生視聴処理の詳細は、図５を参照して後述される。ステップＳ１１７の再生視聴処理により、ビデオ・オーディオ信号が生成され、後段の図示せぬ表示部に出力される。
【００５０】
一方、ステップＳ１１６において、再生視聴処理ではないと判定された場合、処理は、ステップＳ１１８に進む。
【００５１】
ステップＳ１１８において、制御情報生成・パケット化部１１０および再多重化部１１１は、記録／再送信処理を行う。この記録／再送信処理の詳細は、図６を参照して後述される。ステップＳ１１８の記録／再送信処理により、再多重化された多重化ストリーム１１３が生成され、図示せぬ外部に送信されたり、記録媒体１１２に記録される。
【００５２】
ステップＳ１１９において、多重分離部１０２は、再生／記録／送信処理を継続するか否かを判定する。ステップＳ１１９において、再生／記録／送信処理を継続すると判定された場合、処理は、ステップＳ１１１に戻り、それ以降の処理が繰り返される。ステップＳ１１９において、再生／記録／送信処理を継続しないと判定された場合、この受信処理は、終了される。
【００５３】
次に、図５のフローチャートを参照して、図４のステップＳ１１７の再生視聴処理について説明する。
【００５４】
ステップＳ１３１において、ビデオ・オーディオ同期制御部１０７は、パケット解析により抽出、復元された時刻情報と、ビデオ・オーディオのAUを対応付け、復号・再生時刻指定を行う。
【００５５】
ステップＳ１３２において、ビデオ・オーディオ復号部１０８は、ビデオ・オーディオ同期制御部１０７の制御のもと、デコーダバッファ１０５のビデオ・オーディオのAUを復号する。
【００５６】
ステップＳ１３３において、ビデオ・オーディオ復号部１０８は、ステップＳ１３２の復号により生成されたビデオ・オーディオ信号を、後段の図示せぬ表示部に出力する。
【００５７】
次に、図６のフローチャートを参照して、図４のステップＳ１１８の記録／再送信処理について説明する。
【００５８】
ステップＳ１５１において、制御情報生成・パケット化部１１０は、制御情報パケット解析部１０６からの情報を用いて、生成する多重化ストリームに応じて再生成された制御情報をパケット化し、パケット化された制御情報を再多重化部１１１に供給する。
【００５９】
ステップＳ１５２において、再多重化部１１１は、多重化に必要なビデオ・オーディオデータと、制御情報生成・パケット化部１１０からの制御情報のパケットとを再多重化する。
【００６０】
ステップＳ１５３において、再多重化部１１１は、再多重された多重化ストリーム１１３のパケットを、図示せぬ外部や記録媒体１１２に出力する。
【００６１】
次に、図７のフローチャートを参照して、図４のステップＳ１１３のエラー補正処理について説明する。
【００６２】
パケット識別部２０１は、ステップＳ２０１において、パケットフィルタ１５１からパケット入力を行い、ステップＳ２０２において、それぞれのフォーマット単位でパケット識別を行う。
【００６３】
ステップＳ２０３において、パケット識別部２０１は、パケットおよびパケットタイプ、その他パケット情報をパケット蓄積部２０４に保存する。また、パケット識別部２０１は、識別処理後のパケットを、エラー判定部２０２に供給する。
【００６４】
ステップＳ２０４において、エラー判定部２０２は、パケット識別部２０１からのパケットから、エラー検出を行う。エラー判定部２０２は、ステップＳ２０５において、エラーがあるか否かを判定する。ステップＳ２０５において、エラーがないと判定された場合、処理は、ステップＳ２０６に進む。
【００６５】
ステップＳ２０６において、エラー判定部２０２は、（このパケットが必要で、）補正待ちのパケットがあるか否かを判定する。ステップＳ２０６において、補正待ちのパケットがないと判定された場合、処理は、ステップＳ２１５に進む。ステップＳ２１５において、エラー判定部２０２は、エラーがなく、補正待ちパケットもないパケットについては、パケット分離部１５２に出力する。
【００６６】
一方、ステップＳ２０５において、エラーがあると判定された場合、または、ステップＳ２０６において、補正待ちのパケットがあると判定された場合、処理は、ステップＳ２０７に進む。
【００６７】
ステップＳ２０７において、エラー判定部２０２は、パケット蓄積量がMパケットより多いか否かを判定する。ステップＳ２０７において、パケット蓄積量がMパケットよりも少ないと判定された場合、処理は、ステップＳ２０１に戻り、それ以降の処理が繰り返される。
【００６８】
ステップＳ２０７において、パケット蓄積量がMパケットより多いと判定された場合、処理は、ステップＳ２０８に進む。エラー判定部２０２は、ステップＳ２０８において、パケット識別、統計情報蓄積部２０６からの統計情報取得を行い、ステップＳ２０９において、パケット補正テーブル生成部２０３に、パケット補正テーブル生成を行わせる。
【００６９】
ステップＳ２１０において、パケット補正方法選択部２０５は、ステップＳ２０９により生成されたパケット補正テーブルと統計情報蓄積部２０６からの統計情報に基づいて、どの種別のパケット、または、どの優先度のパケットを補正するのか、すなわち、パケットの補正方法（補正範囲）を選択する。
【００７０】
ステップＳ２１１において、パケット補正部２０５は、処理中のパケットが補正対象であるか否かを判定する。ステップＳ２１１において、処理中のパケットが補正対象ではないと判定された場合、処理は、ステップＳ２１５に進む。ステップＳ２１５において、パケット補正部２０５は、補正対象ではないパケットを、パケット分離部１５２に出力する。
【００７１】
ステップＳ２１１において、処理中のパケットが補正対象であると判定された場合、処理は、ステップＳ２１２に進む。パケット補正部２０５は、ステップＳ２１２において、補正対象パケットの前後M個のパケットからビットパターンを推定し、ステップＳ２１３において、シンタックスを補正することで、パケット補正を行う。
【００７２】
ステップＳ２１４において、パケット補正部２０５は、補正後のパケット情報を、パケット蓄積部２０４および統計情報蓄積部２０６に保存することで、パケット上書き保存を行う。ステップＳ２１５において、パケット補正部２０５は、補正後のパケット情報を、パケット分離部１５２に出力する。
【００７３】
ステップＳ２１６において、エラー判定部２０２は、処理待ちパケットがあるか否かを判定する。ステップＳ２１６において、処理待ちパケットがあると判定された場合、処理は、ステップＳ２０５に戻り、それ以降の処理が繰り返される。
【００７４】
ステップＳ２１６において、処理待ちパケットがないと判定された場合、処理は、ステップＳ２１７に進む。ステップＳ２１７において、パケット識別部２０１は、エラー補正を継続するか否かを判定する。ステップＳ２１７において、エラー補正を継続すると判定された場合、処理は、ステップＳ２０１に戻り、それ以降の処理が繰り返される。
【００７５】
ステップＳ２１７において、エラー補正を継続しないと判定された場合、図７のエラー補正処理は終了される。
【００７６】
以上のように行われるパケットのエラー補正処理の詳細について、次に説明する。
【００７７】
＜本技術のパケット補正の詳細＞
本技術においては、以下の手順で、パケット補正が行われる。
１．パケットタイプの識別とパケット重要度の判定
２．補正対象のパケット特定
３．パケット補正の選択と実行
【００７８】
[１．パケットタイプの識別とパケット重要度の判定]
本技術においては、パケット補正を行うために、補正方法を決定する１つの指標としてパケットタイプが用いられる。パケットタイプの識別の例として、例えば、H.264/AVCおよびH.265/HEVCのパケット化で使用されるNAL(Network Abstruction Layer)のヘッダ情報が使用される。
【００７９】
図８は、H.264/AVCのNAL構造の例を示す図である。図中左の数字は、説明の便宜上付されたものである。
【００８０】
H.264/AVCにおいては、NALヘッダのパースで定義されているnal_unit_typeとnal_ref_idcが識別パラメータとして用いられる。図８の第４行目に記述されるnal_unit_typeは、そのNALの種類を識別する識別子で、IDRピクチャ、IDR以外のピクチャ、SEI(Supplemental Enhancement Information)、SPS(Sequence Parameter Set)、PPS(Picture Parameter Set)など、それぞれのNALユニット別に識別が可能である。
【００８１】
したがって、例えば、NALユニットを構成するパケットの重要度はランダムアクセス可能なIDRピクチャを最も高いものとし、次に、SPS、PPSなどのピクチャを構成する情報、IDR以外のピクチャというように、振り分けることが可能である。
【００８２】
図８の第３行目に記述されるnal_ref_idcについては、NALを構成するピクチャが参照ピクチャかどうかを示すフラグである。これにより、非参照ピクチャに相当するピクチャは他ピクチャへの依存度が低いため、重要度が低いと判定することが可能となる。
【００８３】
図９は、H.265/HEVCのNAL構造の例を示す図である。図中左の数字は、説明の便宜上付されたものである。
【００８４】
H.265/HEVCにおいては、図９の第３行目に、nal_unit_typeが定義されているため、H.264/AVCと同様にピクチャタイプの識別と重要度判定が可能である。また、H.265/HEVCにおいては、図９の第５行目に示されるnuh_temporal_id_plus1にて、Temporal ID(時間方向の階層符号化における符号化階層を示す番号)が新たに記述される。
【００８５】
図１０においては、H.265/HEVCの符号化構造が示されている。この符号化構造は、送信装置５１などが有するエンコーダによって決まるもので、各ピクチャは、各々時間的階層と参照関係を有している。受信装置５２は、このTemporal IDを参照することで、各NALユニットに属するピクチャの階層を検知することができる。Temporal IDは、低階層ほど参照関係が密で、時間層間関係で復元に重要なピクチャである。また、SOP構造としては同じ階層のピクチャでもL3になるとより参照関係も密であり、他のピクチャとの依存度が高い。これらの特徴から、ピクチャの重要度を振り分けることが可能となる。
【００８６】
以上は、H.264/AVCやH.265/HEVCのNALヘッダや符号化構造から判別されるパケットタイプ、参照関係により重要度を判定する例であるが、その他にもVPS、PPS、SPS、SEI、メタ情報、Sliceヘッダなどを参照したパケットタイプ識別、および重要度判定が可能である。
【００８７】
一方、SI/PSIやその他メタ情報などについてもパケット重要度の指標とすることができる。例えば、PMTやPMTは、ESやSI/PSIのPIDや各種ストリーム情報を含んでおり、これを受信できない場合、再生、記録、再送信などあらゆる制御に支障をきたすことから重要なパケットと位置付けられる。
【００８８】
[２．補正対象のパケット検出]
ここでは、補正対象とするパケットを特定するために参照するシンタックスとしてMPEG2-TS、MMTの例をあげる。各フォーマットのヘッダやメタ情報に記述されるパラメータによっては、パケット同期、多重分離において重要な指標となるため、誤りが生じた際、補正対象のパケットとして抽出される。
【００８９】
例えば、MPEG2-TSについて、TSパケットは、188byteの固定長信号構造で、そのうち、先頭が4byteのヘッダ構造を有する。残り184byteには、可変長の拡張ヘッダであるアダプテーションフィールドと内容を伝送するペイロードが配置される。図１１は、TSおよびPESの構造例を示す図である。図１２は、Sectionのヘッダの構造例を示す図である。なお、以下の図において、太線で示される部分に格納されている情報が重要な情報である。
【００９０】
ここで、図１１および図１２を参照して、パケット抽出に特に重要なシンタクスを以下にあげる。
【００９１】
図１１のTSヘッダ領域３０１においては、
・sync_byte：”0x47”の固定値
・payload_unit_start_idicator:PESやSectionの先頭をペイロードに含むか否かのフラグ
・adaptation_field_control：TSペイロード内  アダプテーションフィールドの配置構造
・coutinuity_counter：同一PIDのパケットカウンタ
が、重要である。
図１１のTS拡張ヘッダ領域３０２においては、
・adaptation_field_length
図１１のPESヘッダ領域３０３においては、
・packet_start_code_prefix：”0x00001”の固定値
・PSE_packet_length：PESパケットのバイト長
が、重要である。
図１２のSectionヘッダ領域３１１においては、
・section_length：セクションのバイト長
・CRC32：32ビット誤り検出符号
が、重要である。
【００９２】
エラー補正部１０３においては、例えば、これらのシンタックスに誤りが生じているか否かを検出する。その際、予め保存しておいた補正対象前後のパケット情報を参照し、補正対象パケットのビット推定を行う。推定値と実際の値が異なる場合、エラーが発生したと判定される。
【００９３】
特に、TSヘッダ内transport_error_indicatorはパケットにエラーがある可能性を示すフラグで、例えば、復調器でエラー訂正できなかった場合などに使用される。したがって、これが”1”のパケットについては、重点的に補正を施すなどが考えられる。その他にも、TS拡張ヘッダ領域内PCR(Program Clock Reference)やPESヘッダオプショナル領域内PTS/DTS(提示時刻／デコード時刻)は同期制御や再生、記録制御を行う上で重要な時刻情報である。これらは、補正対象前後のパケットとリニアな相関関係を持つため。受信装置５２内で、前後の値から算出し、補正を行うことが可能である。
【００９４】
例えば、MMTにおける符号化信号を構成する要素として、Media Fragment Unit(MFU)、Media Processing Unit(MPU)、MMTPペイロード、MMTPパケットがある。ここでは、MMTPパケット、MMTPペイロードのシンタックスを例に挙げる。図１３は、MMTパケットのヘッダ構造を示す図である。図１４は、MMTPペイロードのヘッダ構造を示す図である。図１５は、MMT-SIタイムスタンプ／拡張タイムスタンプ記述子の構造を示す図である。
【００９５】
ここで、図１３乃至図１５を参照して、パケット抽出に特に重要なシンタクスを以下にあげる。
【００９６】
図１３のMMTPパケットヘッダ３２１においては、
・packet_sequence_number：パケットシーケンス番号
・packet_counter：同一IPデータフロー内MMTPパケットカウンタ
・extension_length：拡張ヘッダ領域のバイト長
が、重要である。
図１４のMMTPペイロードヘッダ３３１においては、
・payload_length：MMTPペイロード長
・fragmentation_indicator：MMTPペイロードに格納するデータ分割の状態
・fragment_counter：分割数カウンタ
・data_unit_length：MPUデータのバイト長
・offset：MFUが属するサンプル内のMPUオフセットバイト
【００９７】
これらのシンタックスもMPEG2-TSと同様にパケット内や、補正対象前後のパケットを参照し、補正対象パケットのビット推定を行い、推定値でない場合は、エラーが発生したと判定することができる。
【００９８】
また、MMTPパケットヘッダ内timestampやMMT-SI MPテーブル(MPT)内に記述するタイムスタンプ記述子（mpu_presentation_time）、およびARIB MMTで採用されている拡張タイムスタンプ記述子(mpu_decoding_time_offset,dts_pts_offset,pts_offset)などMMTにて伝送される時刻情報は種々存在するが、これらは同期制御や再生、記録制御を行う上で重要な情報である。
【００９９】
例えば、mpu_presentation_time,mpu_decoding_time_offsetは前後の同MPUシーケンス番号のパケットにおいて時間相関関係があるため、受信装置５２内で前後の値から算出し、補正することが可能である。また、dts_pts_offset,pts_offsetは、同MPT内の前後の値から補正が可能である。
【０１００】
以上、MPEG2-TS、MMTの例を取り上げたが、パターンマッチ処理においては、どちらもストリーム上対象パケットの前後に多重化された同属性のパケット情報を１つ以上保存し、そのパケットからシンタックスの誤りが特定される。この参照パケット数については、固定値としても、ユーザ指示や受信装置５２内部で動的に変更をしてもかまわない。受信装置５２のメモリリソース、再生遅延に影響するため、受信装置５２毎に決定されるものとする。
【０１０１】
[３．パケット補正の選択と実行]
上記図１１乃至図１５で示した各種シンタックスに対し、さらに補正優先度を割り当てる。例えば、TSにおいては、sync_byte、adaptation_field_control、continuity_counterなど、パケット復元に必須のシンタックスについては、優先度を高く設定し、次にPCR、PTS/DTSなどのように、パケット復元には必須ではないが、画音再生に影響があるもの、画音再生に直接影響を及ぼさないものというように、各チェック項目毎に補正優先度を割り当てる。その結果と、１．で抽出したパケット重要度とをマッピングし、パケット補正テーブルを作成、保存する。受信装置５２は、この補正テーブルを基に補正方法を選択し補正実行を行う。
【０１０２】
図１６は、H.264/AVCのパケット補正テーブルの例を示す図である。
【０１０３】
図１６のパケット補正テーブルにおいては、上から順に、「Packet Type」がVideoESで、「Pict Type」がIピクチャで、「NAL Headerのnal_unit_type」がIDRで、「NAL Headerのnal_ref_idc」が参照ピクチャであるとき、「Priority」がHighであることが示されている。「Packet Type」がSection(PAT,PMT)であるとき、「Priority」がHighであることが示されている。
【０１０４】
「Packet Type」がVideoESで、「Pict Type」がI/P/Bピクチャで、「NAL Headerのnal_unit_type」がIDR以外で、「NAL Headerのnal_ref_idc」が参照ピクチャであるとき、「Priority」がMiddleであることが示されている。「Packet Type」がVideoESで、「Pict Type」がBピクチャで、「NAL Headerのnal_unit_type」がIDR以外で、「NAL Headerのnal_ref_idc」が非参照ピクチャであるとき、「Priority」がLowであることが示されている。「Packet Type」がSection(PAT,PMT以外)であるとき、「Priority」がLowであることが示されている。
【０１０５】
例えば、図７のステップＳ２１０において、統計情報に基づき、受信装置５２のパフォーマンスが落ちているときには、図１６のパケット補正テーブルから、PriorityがHighであるパケットが補正対象パケットに選択される。図７のステップＳ２１０において、統計情報に基づき、受信装置５２のパフォーマンスがよい状態のときには、図１６のパケット補正テーブルから、PriorityがHighに加えて、Priorityが、middleや、場合によっては、Lowであるパケットが補正対象パケットに選択される。
【０１０６】
図１６の例の場合、このようにして、統計情報とパケット補正テーブルから、補正対象が選択される。
【０１０７】
図１７は、H.265/HEVCのパケット補正テーブルの例を示す図である。
【０１０８】
図１７のパケット補正テーブルにおいては、上から順に、「Packet Type」がVideoESで、「Pict Type」がIピクチャで、「NAL Headerのnal_unit_type」がIDRで、「NAL HeaderのTemporal ID」が0で、「SOP Layer」がL0であるとき、「Priority」がHighであることが示されている。「Packet Type」がSection(PAT,PMT)であるとき、「Priority」がHighであることが示されている。
【０１０９】
「Packet Type」がVideoESで、「Pict Type」がI/P/Bピクチャで、「NAL Headerのnal_unit_type」がIDR以外で、「NAL HeaderのTemporal ID」が0で、「SOP Layer」がL1/L2/L3であるとき、「Priority」がMiddleであることが示されている。「Packet Type」がVideoESで、「Pict Type」がBピクチャで、「NAL Headerのnal_unit_type」がIDR以外で、「NAL HeaderのTemporal ID」が1で、「SOP Layer」がL3であるとき、「Priority」がMiddleであることが示されている。
【０１１０】
「Packet Type」がVideoESで、「Pict Type」がBピクチャで、「NAL Headerのnal_unit_type」がIDR以外で、「NAL HeaderのTemporal ID」が1で、「SOP Layer」がL2であるとき、「Priority」がMiddleであることが示されている。「Packet Type」がVideoESで、「Pict Type」がBピクチャで、「NAL Headerのnal_unit_type」がIDR以外で、「NAL HeaderのTemporal ID」が2で、「SOP Layer」がL3であるとき、「Priority」がMiddleであることが示されている。
【０１１１】
「Packet Type」がVideoESで、「Pict Type」がBピクチャで、「NAL Headerのnal_unit_type」がIDR以外で、「NAL HeaderのTemporal ID」が3で、「SOP Layer」がL1/L2/L3であるとき、「Priority」がLowであることが示されている。「Packet Type」がSection(PAT,PMT以外)であるとき、「Priority」がLowであることが示されている。
【０１１２】
例えば、図７のステップＳ２１０において、統計情報に基づき、受信装置５２のパフォーマンスが落ちているときには、図１７のパケット補正テーブルから、PriorityがHighであるパケットが補正対象パケットに選択される。図７のステップＳ２１０において、統計情報に基づき、受信装置５２のパフォーマンスがよい状態のときには、図１７のパケット補正テーブルから、PriorityがHighに加えて、Priorityが、middleや、場合によっては、Lowであるパケットが補正対象パケットに選択される。
【０１１３】
なお、パフォーマンスが良い悪いによって、補正対象パケットの補正範囲の大小だけでなく、補正精度の高低を制御するようにしてもよいし、その両方を行うようにしてもよい。このように、図７のステップＳ２１０において選択される補正対象や補正範囲、補正精度を、まとめて補正方法とする。
【０１１４】
図１７の例の場合、このようにして、統計情報とパケット補正テーブルから、補正対象が選択される。
【０１１５】
すなわち、エラー補正テーブル、エラー補正の実行有無、ストリーム上の実行範囲指定は、受信装置５２側の受信状況、処理状況、過去の統計情報から、例えば、以下のように判断される。
・受信装置５２のリソース負荷が低い場合は、より高精度に補正するよう参照データ蓄積量、計算量を増やす。逆にリソース負荷状況が高い場合は、重要度の高いパケットのみ補正を行う。または、補正精度を下げる。
・再生にいて、不連続やSkip/Repeatが続く場合は、より補正強度を上げる。
・受信状況が低品質な状態が続く場合は、エラー補正自体をオフにする。
など、各種状況に応じて判断することが可能である。
【０１１６】
以上においては、エラー補正部にてパケット補正テーブルを一定のパケット毎に動的に生成し、補正方法を選択することを説明してきたが、ユーザ指定であっても固定値としてもかまわない。
【０１１７】
＜変形例＞
なお、パケット重要度判定の例として、ストリーム内のオリジナルの情報（シンタックス、パケット種別、符号化種別など）による優先度付けの方法を示したが、それ以外にも、例えば、送信装置５１からストリーム中のシンタックスやメタ情報などに予め優先度情報を送り、受信装置５２で参照することも可能である。また、受信装置５２は、再送信装置として、優先度情報を多重化時に挿入することも考えられる。
【０１１８】
また、補正対象のパケット検出の例として、MPEG2-TS、MMTの例をあげたが、同様に、MPEG-DASH，ISOBMFFなどのあらゆるフォーマット、またはARIBの伝送方式にて採用されているTLV,UDP,IPパケットなど伝送プロトコルにおける別階層でパケット補正を行うことも可能である。補正方法の選択についてもそれらに伴い、階層的に適宜切り替えることも可能である。
【０１１９】
以上のように、本技術においては、低品質の伝送状況において受信したストリームにエラーが生じても受信装置においてパケットのエラー補正を行うことで、以下のような効果がある。
【０１２０】
本技術によれば、再生視聴時の不連続動作を回避、または緩和し再生品質を向上させることができる。
【０１２１】
本技術によれば、記録、再送信において再利用ストリームの品質を向上させることができる。
【０１２２】
本技術においては、上述した２つのことを受信装置内で適応的に切り替えることができるので、処理負荷を抑えたうえで、効率的な品質向上ができる。
【０１２３】
＜パーソナルコンピュータ＞
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な汎用のパーソナルコンピュータなどが含まれる。
【０１２４】
図１８は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータのハードウエアの構成例を示すブロック図である。
【０１２５】
パーソナルコンピュータ７００において、CPU（Central Processing Unit）７０１，ROM（Read Only Memory）７０２，RAM（Random Access Memory）７０３は、バス７０４により相互に接続されている。
【０１２６】
バス７０４には、さらに、入出力インタフェース７０５が接続されている。入出力インタフェース７０５には、入力部７０６、出力部７０７、記憶部７０８、通信部７０９、及びドライブ７１０が接続されている。
【０１２７】
入力部７０６は、キーボード、マウス、マイクロホンなどよりなる。出力部７０７は、ディスプレイ、スピーカなどよりなる。記憶部７０８は、ハードディスクや不揮発性のメモリなどよりなる。通信部７０９は、ネットワークインタフェースなどよりなる。ドライブ７１０は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア７１１を駆動する。
【０１２８】
以上のように構成されるパーソナルコンピュータ７００では、CPU７０１が、例えば、記憶部７０８に記憶されているプログラムを、入出力インタフェース７０５及びバス７０４を介して、RAM７０３にロードして実行する。これにより、上述した一連の処理が行われる。
【０１２９】
コンピュータ（CPU７０１）が実行するプログラムは、リムーバブルメディア７１１に記録して提供することができる。リムーバブルメディア７１１は、例えば、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)等）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディア等である。また、あるいは、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
【０１３０】
コンピュータにおいて、プログラムは、リムーバブルメディア７１１をドライブ７１０に装着することにより、入出力インタフェース７０５を介して、記憶部７０８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部７０９で受信し、記憶部７０８にインストールすることができる。その他、プログラムは、ROM７０２や記憶部７０８に、あらかじめインストールしておくことができる。
【０１３１】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要な段階で処理が行われるプログラムであっても良い。
【０１３２】
また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１３３】
また、本明細書において、システムとは、複数のデバイス（装置）により構成される装置全体を表すものである。
【０１３４】
なお、本開示における実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。
【０１３５】
例えば、本開示は、１つの機能を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
【０１３６】
また、以上において、１つの装置（または処理部）として説明した構成を分割し、複数の装置（または処理部）として構成するようにしてもよい。逆に、以上において複数の装置（または処理部）として説明した構成をまとめて１つの装置（または処理部）として構成されるようにしてもよい。また、各装置（または各処理部）の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置（または処理部）の構成の一部を他の装置（または他の処理部）の構成に含めるようにしてもよい。つまり、本技術は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【０１３７】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、開示はかかる例に限定されない。本開示の属する技術の分野における通常の知識を有するのであれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例また修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【０１３８】
なお、本技術は以下のような構成も取ることができる。
（１）  ビデオデータ、オーディオデータ、および制御情報を含むストリームから、パケット情報を抽出する抽出部と、
前記ストリームからパケットエラーを検出するエラー検出部と、
前記抽出部により抽出されたパケット情報および受信処理状態に応じて、前記エラー検出部により検出されたパケットエラーの補正方法を選択する補正方法選択部と、
前記補正方法選択部により選択された補正方法に基づいて、前記エラー検出部により検出されたパケットエラーを補正する補正部と
を備える受信装置。
（２）  前記抽出部により抽出されたパケット情報を蓄積する蓄積部を
さらに備え、
前記補正部は、前記蓄積部に蓄積されたパケット情報から、ビットパターンを推定し、シンタックスを補正することで、前記エラー検出部により検出されたパケットエラーを補正する
前記（１）に記載の受信装置。
（３）  前記抽出部により抽出されたパケット情報に応じて、補正優先度を割り当てた補正テーブルを生成する補正テーブル生成部を
さらに備え、
前記補正方法選択部は、前記補正テーブル生成部により生成された補正テーブル、および受信処理状態の少なくとも一方に応じて、前記エラー検出部により検出されたパケットエラーの補正方法を選択する
前記（１）または（２）に記載の受信装置。
（４）  前記パケット情報は、パケットの種別情報を含む
前記（１）乃至（３）のいずれかに記載の受信装置。
（５）  前記補正方法には、補正対象、補正範囲、および補正精度の少なくとも１つが含まれている
前記（１）乃至（４）のいずれかに記載の受信装置。
（６）  受信装置が、
ビデオデータ、オーディオデータ、および制御信号を含むストリームから、パケット情報を抽出し、
前記ストリームからパケットエラーを検出し、
抽出されたパケット情報および受信処理状態に応じて、検出されたパケットエラーの補正方法を選択し、
選択された補正方法に基づいて、検出されたパケットエラーを補正する
受信方法。
【符号の説明】
【０１３９】
５１  送信装置，  ５２  受信装置，  １０２  多重分離部，  １０３  エラー補正部，  １０４  制御情報バッファ，  １０５  デコーダバッファ，  １０６  制御情報パケット解析部，  １０７  ビデオ・オーディオ同期制御部，  １０８  ビデオ・オーディオ復号部，  １１０  制御情報生成・パケット化部，  １１１  再多重化部，  １１２  記録媒体，  １５１  パケットフィルタ，  １５２  パケット分離部，  ２０１  パケット識別部，  ２０２  エラー判定部，  ２０３  パケット補正テーブル生成部，  ２０４  パケット蓄積部，  ２０５  パケット補正方法選択部，  ２０６  統計情報蓄積部，  ２０７  パケット補正部
【図１】
2017073680.tif 000003
【図２】
2017073680.tif 000004
【図３】
2017073680.tif 000005
【図４】
2017073680.tif 000006
【図５】
2017073680.tif 000007
【図６】
2017073680.tif 000008
【図７】
2017073680.tif 000009
【図８】
2017073680.tif 000010
【図９】
2017073680.tif 000011
【図１０】
2017073680.tif 000012
【図１１】
2017073680.tif 000013
【図１２】
2017073680.tif 000014
【図１３】
2017073680.tif 000015
【図１４】
2017073680.tif 000016
【図１５】
2017073680.tif 000017
【図１６】
2017073680.tif 000018
【図１７】
2017073680.tif 000019
【図１８】
2017073680.tif 000020