【解決手段】パケット変換装置100は、デジタル放送受信装置1に搭載可能なパケット変換装置100であって、デジタル放送信号を受信して得られた可変長パケットを取得する可変長パケット取得部110と、可変長パケットのヘッダ及びペイロードのうち少なくともヘッダを解析する解析部130と、可変長パケットから、それぞれTSヘッダを有する複数のTSパケットを再構成するパケット再構成部140と、複数のTSパケットを出力するTSパケット出力部150と、を備える。パケット再構成部140は、少なくとも可変長パケットのヘッダ解析結果に基づいて、TSヘッダ中のPIDの値を設定する。
前記パケット再構成部は、前記複数のTSパケットのうち最初のTSパケットのペイロードに、MPEG2−TS方式のPESヘッダを配置することを特徴とする請求項1に記載のパケット変換装置。
前記パケット再構成部は、前記複数のTSパケットのうち最後のTSパケットのペイロードに空きが生じる場合に、当該ペイロードにMPEG2−TS方式のアダプテーションフィールドを配置することを特徴とする請求項1又は2に記載のパケット変換装置。
前記解析部は、前記可変長パケットのペイロードに、MMTPパケットを含む圧縮IPパケットが格納されている場合に、前記MMTPパケットのヘッダを解析することにより前記MMTPパケットのペイロードの開始位置を判定し、
前記MMTPパケットのペイロードは、所定のデータ長を1単位として暗号化されており、かつ、前記所定のデータ長に応じて定まる所定のデータ位置から復号開始され、
前記パケット再構成部は、前記MMTPパケットのペイロードの開始位置が前記所定のデータ位置と整合していない場合に、前記MMTPパケットのヘッダとペイロードとの間にスタッフデータを配置することを特徴とする請求項1〜5の何れか一項に記載のパケット変換装置。
【発明を実施するための形態】
【0011】
図面を参照して、本発明の実施形態を説明する。
【0012】
(デジタル放送受信装置)
まず、実施形態に係るデジタル放送受信装置について説明する。実施形態に係るデジタル放送受信装置は、高度BSデジタル放送や次世代地上デジタル放送等のデジタル放送システムにおいて用いられる。デジタル放送受信装置は、デジタルテレビ放送用のチューナ装置、チューナ内蔵の録画装置、又はチューナ内蔵のテレビ装置等である。
【0013】
実施形態において、デジタル放送受信装置が、4K/8Kデジタル放送を実現する衛星デジタル放送方式であるISDB−S3(Integrated Services Digital Broadcasting for Satellite,3rd generation)に従ったデジタル放送信号を受信する一例について説明する。
【0014】
かかるデジタル放送システムでは、可変長パケットを用いた伝送を行う。実施形態において、可変長パケットがARIB STD−B32 第3部に規定されるようなTLVパケットである一例について説明する。
【0015】
図1は、実施形態に係るデジタル放送受信装置1の構成を示す図である。
図1(a)に示すように、デジタル放送受信装置1は、受信処理装置10と、パケット変換装置100と、TS信号処理装置20とを備える。受信処理装置10、パケット変換装置100、及びTS信号処理装置20のそれぞれは、デジタル放送受信装置1に搭載されるシステムLSI(SoC)として構成される。
【0016】
受信処理装置10は、アンテナにおいて受信されたデジタル放送信号(受信信号)を入力し、デジタル放送信号に対する受信処理(例えば、A/D変換処理、復調処理、及び誤り訂正処理)を行ってTLVパケットを抽出し、抽出したTLVパケットをクロック信号1に同期して出力する。受信処理装置10は、クロック信号及びTLVパケットを出力することに加えて、TLVパケット先頭の同期パターンの区間を示すシンク信号、有効データ区間を示す信号、及びエラーの有無を示す信号(エラービット)をさらに出力してもよい。
【0017】
パケット変換装置100は、受信処理装置10が出力するTLVパケットを取得し、取得したTLVパケットをTSパケットに変換し、TSパケットをクロック信号2に同期して出力する。
【0018】
一般的に、TLVパケットはTSパケットに比べてパケット長が長いため、パケット変換装置100は、通常、1つのTLVパケットを複数のTSパケットに変換して出力する。但し、TLVパケットのパケット長がTSパケットのパケット長よりも短いこともあり得る。以下においては、パケット変換装置100が1つのTLVパケットを複数のTSパケットに変換して出力するケースを主として説明する。
【0019】
パケット変換装置100の出力側のクロック信号2は、パケット変換装置100の入力側のクロック信号1とは非同期かつ異なるクロック周波数であってもよい。
【0020】
TS信号処理装置20は、TS入力を有する既存の信号処理装置である。TS信号処理装置20は、パケット変換装置100が出力するTSパケットを取得し、取得したTSパケットを既存の方法によって処理する。
【0021】
図2は、デジタル放送受信装置1において処理されるTLVパケット及びTSパケットの構成を示す図である。
【0022】
図2(a)に示すように、TLVパケットは、TLVヘッダとTLVペイロードとからなる。TLVペイロードは、Valueフィールドと称されることがある。TLVヘッダは、同期パターンとパケット種別(Type)フィールドと長さ(Length)フィールドとを含む。Typeフィールドには、TLVペイロードに格納されたデータの種類を示す情報が格納される。Lengthフィールドには、TLVペイロードのデータ長を示す情報が格納される。
【0023】
TLVペイロードには、MMTP(MPEG Media Transport Protocol)パケットがカプセル化されたIPパケット又はTLV伝送制御信号(TLV−SI)等が格納される。MMTPパケットがカプセル化されたIPパケットはヘッダ圧縮が施されており、かかるIPパケットは圧縮IPパケットと称される。TLV−SIとしては、NTP(Network Time Protocol)、NIT(Network Information Table)、及びAMP(Address Map Table)等がある。
図2(b)及び(c)の例では、TLVペイロードに圧縮IPパケットが格納され、圧縮IPパケットのペイロードにMMTPパケットが格納されている。
図2(d)及び(e)の例では、TLVペイロードにはTLV−SI(NTP/NIT/AMP)が格納されている。MMT方式では、符号化データ内の映像GOP(Group of Pictures)などのように独立して復号処理可能な単位をMPU(Media Processing Unit)と定義し、1枚の映像フレームなどの単位をMFU(Media Fragment Unit)と定義しており、MFUがMMTPペイロードに格納される。
【0024】
一方、
図2(d)に示すように、TSパケットは、188バイトの固定長パケットである。TSパケットは、4バイト長のTSヘッダ(ヘッダ部)と、TSペイロードとからなる。TSヘッダには、パケットの識別に用いる13ビット長のPID(Packet ID)が含まれる。MPEG2−TS方式では、符号化データを1枚の映像フレームなどの単位でPES(Packetized Elementary Stream)としてカプセル化した後、PESパケットが分割されてTSパケットに格納される。1つのPESパケットは同一のPIDを持つ各TSパケットのペイロードに分割して配置され、1つのTSパケットに複数のPESパケットの情報が含まれることはない。
【0025】
(パケット変換装置)
次に、実施形態に係るパケット変換装置100について説明する。
図1(b)に示すように、パケット変換装置100は、TLVパケット取得部110と、第1バッファ部120と、解析部130と、パケット再構成部140と、TSパケット出力部150と、第2バッファ部160とを備える。
【0026】
TLVパケット取得部110は、デジタル放送信号を受信して得られた可変長パケットを取得する。具体的には、TLVパケット取得部110は、受信処理装置10が出力するTLVパケットを、TLVパケット先頭の同期パターンの区間を示すシンク信号に基づいて取得(キャプチャ)する。TLVパケット取得部110は、シンク信号の変化点に基づいて、TLVパケットの開始位置を認識できる。
【0027】
TLVパケット取得部110は、受信処理装置10が出力するエラービットに基づいて、取得したTLVパケットにエラーが含まれているか否かを判断してもよい。取得したTLVパケットにエラーが含まれている場合、パケット変換装置100は、このTLVパケットに対応するTSパケットを出力しなくてもよいし、このTLVパケットに対応する無効パケット(ヌルパケット)を出力してもよい。
【0028】
第1バッファ部120は、TLVパケット取得部110が取得したTLVパケットを一時的に保持する。第1バッファ部120は、解析部130が解析処理を行うために必要な時間及びパケット再構成部140が各種ヘッダ等を生成するために必要な時間においてTLVパケットを保持する。
【0029】
解析部130は、第1バッファ部120に保持されたTLVパケットの解析を行う。解析部130は、TLVパケットのヘッダ及びペイロードのうち少なくともヘッダを解析する。
【0030】
図3は、解析部130の動作例を示す図である。
図3に示すように、解析部130は、TLVヘッダ中のパケット種別フィールドを解析し、このフィールド中の値に基づいてTLVペイロードの中身を判別する。
【0031】
具体的には、解析部130は、パケット種別フィールド中の値が「0x02」である場合に、TLVペイロードにIPパケット(すなわち、NTP)が格納されていると判断する。解析部130は、パケット種別フィールド中の値が「0x03」である場合に、TLVペイロードに圧縮IPパケット(すなわち、MMTPパケット)が格納されていると判断する。
【0032】
解析部130は、パケット種別フィールド中の値が「0xFE」である場合に、TLVペイロードに、TLV伝送制御信号であるTLV−SI(TLV−Signaling Information)が格納されていると判断する。この場合、解析部130は、TLVペイロードに格納されているテーブルIDをさらに解析する。そして、テーブルIDの値が「0x40」である場合、解析部130は、TLVペイロードにTLV−NIT(actual)が格納されていると判断する。テーブルIDの値が「0x41」である場合、解析部130は、TLVペイロードにTLV−NIT(others)が格納されていると判断する。テーブルIDの値が「0xFE」である場合、解析部130は、TLVペイロードにAMTが格納されていると判断する。なお、TLV−NITはMPEG−2システムで規定されるネットワーク情報テーブルである。TLV−NIT(actual)が主となるものであり、TLV−NIT(others)はそれ以外のものである。
【0033】
解析部130は、TLVヘッダ中の長さフィールドをさらに解析し、解析結果に基づいて、再構成すべきTSパケットの数や、最後のTSパケットに空きが生じるか否か等を判断してもよい。
【0034】
また、解析部130は、削除部131を有する。削除部131は、第1バッファ部120に保持されたTLVパケットについて、パケット種別フィールド中の値が「0x02」、「0x03」、「0xFE」のいずれにも該当しない場合に、そのTLVパケットを不要なTLVパケットであると判断し、そのTLVパケットを削除する。さらに、削除部131は、解析後のTLVヘッダを削除する。
【0035】
削除部131は、TLVパケットのペイロードに圧縮IPパケットが格納されている場合に、圧縮IPパケットのヘッダ中の少なくとも一部の情報を削除する。圧縮IPパケットは、IPヘッダ(ヘッダ部)とIPペイロード(データ部)とからなる。IPヘッダは、コンテクスト識別子(CID)と、連続番号(SN)と、コンテクスト識別ヘッダ種別(CID header type)と、圧縮ヘッダとを含む。解析部130(削除部131)は、コンテクスト識別子(CID)と連続番号(SN)とを削除し、コンテクスト識別ヘッダ種別(CID header type)を解析する。コンテクスト識別ヘッダ種別(CID header type)が「0x60」である場合、解析部130(削除部131)は、IPヘッダ(ヘッダ部)中の圧縮ヘッダが部分IPv6ヘッダ及び部分UDPヘッダであると判断する。部分IPv6ヘッダは、「version」、「traffic class」、「flow label」、「next header」、「hop limit」、「source address」、「destination address」を含む。部分UDPヘッダは、「source port」、「destination port」を含む。削除部131は、部分IPv6ヘッダ及び部分UDPヘッダを削除する。IPヘッダが削除された結果、MMTPパケットが残ることになる。
【0036】
パケット再構成部140は、解析部130による解析の結果に基づいて、TLVパケットから、それぞれTSヘッダを有する複数のTSパケットを再構成して出力する。パケット再構成部140は、TSパケット化部141と、TSヘッダを生成するTSヘッダ生成部142と、PESヘッダを生成するPESヘッダ生成部143と、アダプテーションフィールドを生成するアダプテーションフィールド生成部144と、MMTPパケットに対するスタッフィングを行うMMTPパケットスタッフィング部145とを備える。
【0037】
TSパケット化部141は、TLVパケットのペイロードをTSパケット化する。
図4は、TSパケット化部141の動作例を示す図である。
【0038】
図4(a)に示すように、第1バッファ部120には、TLVパケットのペイロードのデータが保持されている。
図4(d)に示すように、TSパケット化部141は、かかるTLVペイロードデータを分割し、分割データを複数のTSパケットのペイロードに配置する。
図4(d)の例では、1つのTLVパケットに対して7つのTSパケットが再構成されている。また、TSパケット化部141は、TSヘッダ生成部142から入力される各TSヘッダを、対応するTSパケットに配置する。
【0039】
図4(b)に示すように、TSパケット化部141は、PESヘッダ生成部143から入力されるPESヘッダ(9バイト)を、最初のTSパケット#1のペイロードの先頭部分に配置する。また、TSパケット化部は、残りのペイロード領域(175バイト)にデータを配置する。PESヘッダの詳細については後述する。
【0040】
図4(c)に示すように、TSパケット化部141は、最初のTSパケット#1及び最後のTSパケット#7以外のTSパケット#2〜#6については、TSペイロード領域(184バイト)にデータのみを配置する。
【0041】
図4(e)に示すように、TSパケット化部141は、アダプテーションフィールド生成部144から入力されるアダプテーションフィールドを最後のTSパケット#7のペイロード領域の先頭部分に配置する。
図4(e)に示すように、アダプテーションフィールドは、アダプテーションフィールドの長さを示す情報が格納される「アダプテーションフィールド長(Adaptation Field Length)」(1バイト)と、最後のTSパケット#7のペイロードの空きの長さに応じた長さを有するスタッフデータとを有する。
【0042】
TSヘッダ生成部142は、TSパケットのTSヘッダに含める情報を生成して出力する。TSヘッダに含める情報としてはPID等がある(
図2(d)参照)。TSヘッダ生成部142は、解析部130による解析の結果に基づいて、TSヘッダ中のPIDの値を設定する。ここで、PIDの値は、MPEG2−TSに準拠した値とする。TSヘッダ生成部142は、次の1)〜5)のようにPIDの値を設定する。
【0043】
1)パケット種別「0x02」(すなわち、NTP): PID=0x010
2)パケット種別「0x03」(すなわち、圧縮IPパケット): PID=0x011
3)パケット種別「0XFE」、かつ、テーブルID「0x40」(すなわち、TLV−NIT[actual]): PID=0x100
4)パケット種別「0XFE」、かつ、テーブルID「0x41」(すなわち、TLV−NIT[others]): PID=0x101
5)パケット種別「0XFE」、かつ、テーブルID「0xFE」(すなわち、AMT): PID=0x110
【0044】
PESヘッダ生成部143は、MPEG2−TS方式のPESヘッダを生成して出力する。上述したように、PESヘッダは、TSパケット化部141により、最初のTSパケットのペイロードに配置される。
図4(b)に示すように、PESヘッダは、3バイト長の「パケット開始コード」と1バイト長の「ストリーム識別子」と2バイト長の「PESパケット長」とからなるヘッダ部と、1バイト長の「PESヘッダオプション」と1バイト長の「スタッフィングバイト」とからなるヘッダ拡張部と、1バイト長の「データ部」とからなる。
【0045】
例えば、PESヘッダ生成部143は、「パケット開始コード」に「0x000001」を設定し、「ストリーム識別子」に「0xE0」を設定し、「PESパケット長」に「0x0000」を設定する。ここでは、「PESパケット長」の値として、PESパケットの長さが不明(unknown)であることを示す値を設定している。このように設定しても、後述するアダプテーションフィールドにより、PESパケットの終端を含む最後のTSパケットを示すことができる。或いは、PESヘッダ生成部143は、TLVヘッダ中のLengthフィールド中の情報に基づいてPESパケット長を算出し、算出したPESパケット長をPESヘッダ中の「PESパケット長」に配置してもよい。
【0046】
アダプテーションフィールド生成部144は、最後のTSパケットのペイロードに空きが生じる場合に、MPEG2−TS方式のアダプテーションフィールドを生成する。上述したように、アダプテーションフィールドは、TSパケット化部141により最後のTSパケットのペイロードに配置される。
図5は、最後のTSパケットの構成例を示す図である。
【0047】
図5(a)に示すように、最後のTSパケットのペイロードに配置するデータが183バイトである場合、184バイトのペイロード容量に対して1バイトの空きが生じる。この場合、アダプテーションフィールド生成部144は、1バイト長の「アダプテーションフィールド長」に、ゼロバイトを示す値を含める。TSパケット化部141は、TSパケットのペイロードに、「アダプテーションフィールド長」と183バイト長のデータ(ペイロード)とを配置する。
【0048】
図5(b)に示すように、最後のTSパケットのペイロードに配置するデータが182バイトである場合、184バイトのペイロード容量に対して2バイトの空きが生じる。この場合、アダプテーションフィールド生成部144は、「アダプテーションフィールド長」フィールドに、1バイトを示す値を含める。また、アダプテーションフィールド生成部144は、「アダプテーションフィールドインジケータ(Adaptation Field Indicator)」を生成する。TSパケット化部141は、TSパケットのペイロードに、「アダプテーションフィールド長」フィールドと「アダプテーションフィールドインジケータ」フィールドと182バイト長のデータ(ペイロード)とを配置する。
【0049】
図5(c)に示すように、最後のTSパケットのペイロードに配置するデータが81バイトである場合、184バイトのペイロード容量に対して103バイトの空きが生じる。この場合、アダプテーションフィールド生成部144は、「アダプテーションフィールド長」フィールドに、102バイトを示す値を含める。また、アダプテーションフィールド生成部144は、「アダプテーションフィールドインジケータ」を生成するとともに、101バイト長のスタッフデータを生成する。TSパケット化部141は、TSパケットのペイロードに、「アダプテーションフィールド長」フィールドと「アダプテーションフィールドインジケータ」フィールドと101バイト長のスタッフデータと81バイト長のデータ(ペイロード)とを配置する。
【0050】
図5(d)に示すように、最後のTSパケットのペイロードに配置するデータが1バイトである場合、184バイトのペイロード容量に対して183バイトの空きが生じる。この場合、アダプテーションフィールド生成部144は、「アダプテーションフィールド長」フィールドに、182バイトを示す値を含める。また、アダプテーションフィールド生成部144は、「アダプテーションフィールドインジケータ」を生成するとともに、181バイト長のスタッフデータを生成する。TSパケット化部141は、TSパケットのペイロードに、「アダプテーションフィールド長」フィールドと「アダプテーションフィールドインジケータ」フィールドと181バイト長のスタッフデータと1バイト長のデータ(ペイロード)とを配置する。
【0051】
図5(e)に示すように、最後のTSパケットのペイロードに配置するデータのデータ長Nが181よりも大きい場合、スタッフデータがスキップされ、Nが182よりも大きい場合、「アダプテーションフィールドインジケータ」もスキップされる。
【0052】
MMTPパケットスタッフィング部145は、MMTPパケットを含む圧縮IPパケットが格納されている場合において、MMTPパケットのヘッダとペイロードとの間にスタッフデータを配置する。MMTPパケットスタッフィング部145の処理に先立ち、解析部130は、TLVパケットのペイロードに、MMTPパケットのヘッダを解析することによりMMTPパケットのペイロードの開始位置を判定する。
【0053】
MMTPパケットのペイロードは、所定のデータ長(例えば、8バイト)を1単位として暗号化されており、かつ、所定のデータ長に応じて定まる所定のデータ位置から復号開始される。暗号化には、例えばAES(Advanced Encryption Standard)が用いられる。なお、暗号化されたMMTPペイロードに対する復号は、TS信号処理装置20によって実行される。
【0054】
MMTPパケットスタッフィング部145は、MMTPパケットのペイロードの開始位置が所定のデータ位置と整合していない場合に、MMTPパケットのヘッダとペイロードとの間にスタッフデータを配置する。その結果、MMTPパケットのペイロードの開始位置が所定のデータ位置(すなわち、復号開始位置)と整合する。
【0055】
図6は、MMTPパケットに対するスタッフィング動作を示す図である。
【0056】
図6に示すように、MMTPパケットは、MMTPヘッダ(ヘッダ部)とMMTPペイロード(ペイロード部)とからなる。解析部130は、MMTPヘッダ中のパケットカウンタフラグを解析し、MMTPヘッダ中に「パケットカウンター」フィールドが存在するか否かを判断する。また、解析部130は、MMTPヘッダ中の拡張ヘッダフラグを解析し、MMTPヘッダ中に「拡張ヘッダタイプ」フィールド、「拡張ヘッダ長」フィールド、及び「拡張ヘッダ領域」フィールドが存在するか否かを判断する。これらのフィールドの有無に応じて、MMTPパケットのペイロードの開始位置が定められる。解析部130は、これらのフィールドの有無に応じて、MMTPパケット先頭を基準としたMMTPペイロードの開始位置を算出する。算出した開始位置が8バイト(64ビット)の倍数でない場合、MMTPパケットスタッフィング部145は、MMTPペイロードの開始位置が8バイト(64ビット)の倍数になるように、MMTPペイロードの前にスタッフデータ(オールゼロ)を配置する。
【0057】
TSパケット出力部150は、TSパケット化部141から入力された複数のTSパケットを外部(すなわち、TS信号処理装置20)に出力する。TSパケット出力部150は、TSパケットをシリアル化し、シリアル化したTSパケット(TS信号)をクロック信号と同期して出力する。
【0058】
第2バッファ部160は、TSパケット出力部150が未出力のTSパケットを一時的に保持する。第2バッファ部160は、パケット変換装置100の出力ビットレート(出力クロック周波数)がパケット変換装置100の入力ビットレート(入力クロック周波数)よりも高い場合に、入力と出力との間のビットレート差を吸収するために用いられる。
【0059】
(実施形態のまとめ)
実施形態に係るパケット変換装置100は、デジタル放送受信装置1に搭載可能なパケット変換装置100であって、デジタル放送信号を受信して得られたTLVパケットを取得するTLVパケット取得部110と、TLVパケットのヘッダ及びペイロードのうち少なくともヘッダを解析する解析部130と、TLVパケットから、それぞれTSヘッダを有する複数のTSパケットを再構成するパケット再構成部140と、複数のTSパケットを出力するTSパケット出力部150と、を備える。パケット再構成部140は、少なくともTLVパケットのヘッダ解析結果に基づいて、TSヘッダ中のPIDの値を設定する。これにより、パケット再構成部140がTLVパケットのヘッダ解析結果に基づいてTSヘッダ中のPIDの値を適切に設定することができるため、既存のTS信号処理装置20が各TSパケットの内容をPIDに基づいて適切に判別し、各TSパケットを効率的に処理することが可能となる。
【0060】
実施形態において、パケット再構成部140は、複数のTSパケットのうち最初のTSパケットのペイロードに、MPEG2−TS方式のPESヘッダを配置する。これにより、パケット変換装置100が出力する複数のTSパケットによって1つのPESパケットが構成されることを既存のTS信号処理装置20に認識させることができるため、既存のTS信号処理装置20が各TSパケットを効率的に処理することが可能となる。具体的には、TS信号処理装置20にPESパケットと認識させれば、TS信号処理装置20は、TSヘッダを自動的に削除し、PESパケット長及びアダプテーションフィールドを考慮しながらペイロードデータだけをメモリに書き込むことができる。
【0061】
実施形態において、パケット再構成部140は、複数のTSパケットのうち最後のTSパケットのペイロードに空きが生じる場合に、当該ペイロードにMPEG2−TS方式のアダプテーションフィールドを配置する。これにより、最後のTSパケットのペイロードに空き領域が生じても、当該最後のTSパケットをMPEG2−TSと互換性を有するTSパケットとすることができる。また、アダプテーションフィールドにより、最後のTSパケットを既存のTS信号処理装置20に認識させることができる。
【0062】
実施形態において、パケット変換装置100は、TLVパケットのヘッダを削除する削除部131を備える。削除部131は、TLVパケットのペイロードに圧縮IPパケットが格納されている場合に、圧縮IPパケットのヘッダ中の少なくとも一部の情報をさらに削除する。これにより、既存のTS信号処理装置20が必要としない情報が削除され、TSパケットを効率的に処理することが可能となる。また、パケット変換装置100の出力データ量の増大を抑制できる。
【0063】
実施形態において、パケット変換装置100は、TSパケット出力部150が未出力のTSパケットを一時的に保持するバッファ部(第2バッファ部)160をさらに備える。バッファ部160は、パケット変換装置100の出力ビットレートがパケット変換装置100の入力ビットレートよりも高い場合に、入力と出力との間のビットレート差を吸収するために用いられる。これにより、TSパケット化に起因してデータ量が増加し、入力と出力との間にビットレート差が生じた場合であっても、当該ビットレート差をバッファ部により吸収することができる。
【0064】
実施形態において、解析部130は、TLVパケットのペイロードに、MMTPパケットを含む圧縮IPパケットが格納されている場合に、MMTPパケットのヘッダを解析することによりMMTPパケットのペイロードの開始位置を判定する。MMTPパケットのペイロードは、所定のデータ長(例えば、8バイト)を1単位として暗号化されており、かつ、所定のデータ長に応じて定まる所定のデータ位置から復号開始される。パケット再構成部140は、MMTPパケットのペイロードの開始位置が所定のデータ位置と整合していない場合に、MMTPパケットのヘッダとペイロードとの間にスタッフデータを配置する。これにより、既存のTS信号処理装置20がMMTPパケットのペイロードを適切に復号できる。
【0065】
(変更例)
本変更例では、TLVパケットのパケット長が非常に短い場合における動作例を説明する。かかる場合、1つのTLVパケットから1つのTSパケットのみが再構成され得る。
図7は、実施形態の変更例を示す図である。
【0066】
図7(a)に示すように、TSパケットに格納すべきペイロードデータが175バイトである場合、TSパケットのペイロード領域に、9バイトのPESヘッダと175バイトのペイロードデータが配置される。
【0067】
図7(b)に示すように、TSパケットに格納すべきペイロードデータが174バイトである場合、TSパケットのペイロード領域に、1バイトのアダプテーションフィールド長と、9バイトのPESヘッダと、174バイトのペイロードデータとがこの順で配置される。
【0068】
図7(c)に示すように、TSパケットに格納すべきペイロードデータが173バイトである場合、TSパケットのペイロード領域に、1バイトのアダプテーションフィールド長と、1バイトのアダプテーションフィールドインジケータと、9バイトのPESヘッダと、173バイトのペイロードデータとがこの順で配置される。
【0069】
図7(d)に示すように、TSパケットに格納すべきペイロードデータが81バイトである場合、TSパケットのペイロード領域に、1バイトのアダプテーションフィールド長と、1バイトのアダプテーションフィールドインジケータと、92バイトのスタッフデータと、9バイトのPESヘッダと、81バイトのペイロードデータとがこの順で配置される。
【0070】
図7(e)に示すように、TSパケットに格納すべきペイロードデータが1バイトである場合、TSパケットのペイロード領域に、1バイトのアダプテーションフィールド長と、1バイトのアダプテーションフィールドインジケータと、172バイトのスタッフデータと、9バイトのPESヘッダと、1バイトのペイロードデータとがこの順で配置される。
【0071】
図7(d)に示すように、TSパケットに格納すべきペイロードデータ長Nが172よりも大きい場合、スタッフデータがスキップされ、Nが173よりも大きい場合、「アダプテーションフィールドインジケータ」もスキップされる。
【0072】
(その他の実施形態)
上記のように、本発明は実施形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施形態、実施例及び運用技術が明らかとなる。
【0073】
上述した実施形態において、TS信号処理装置20は、パケット変換装置100から入力された各TSパケットに対してタイムスタンプを付加して記録してもよい。記録された各TSパケットは、後で別の場所で再生することが可能である。よって、4K/8Kデジタル放送の放送信号が届かない場所においても、記録された各TSパケットを用いて4K/8Kデジタル放送の映像や音声を再生できる。
【0074】
上述した実施形態において、パケット変換装置100が受信処理装置10とは別の装置(別のSoC)であって、かつ、パケット変換装置100がTS信号処理装置20とは別の装置(別のSoC)である一例について説明した。しかしながら、パケット変換装置100は、受信処理装置10又はTS信号処理装置20に組み込まれていてもよい。例えば、パケット変換装置100を受信処理装置10に組み込み、これらを1つのSoCとして構成してもよい。パケット変換装置100をTS信号処理装置20に組み込み、これらを1つのSoCとして構成してもよい。
【0075】
上述した実施形態において、可変長パケットがTLVパケットである一例について説明した。しかしながら、可変長パケットはTLVパケットに限定されるものではなく、可変長パケットは例えばETSI TS 102 606等に規定されたGSE(Generic Stream Encapsulation)パケットでもよい。