以下、本発明を実施するための形態について図面を用いて詳細に説明する。
〔伝送システム〕
まず、本発明の実施形態による送信装置及び受信装置を含む伝送システムについて説明する。図1は、伝送システムの概略構成を示す全体図である。この伝送システムは、放送及び通信の異なる伝送媒体を組み合わせるアプリケーションを示しており、送信装置1、受信装置2(1)〜2(3)、放送ネットワーク3及び通信回線4を備えて構成される。
映像及び音声Aを含むパケットは、放送波として、送信装置1から放送ネットワーク3を介して受信装置2(1)〜2(3)へ送信される。また、送信装置1及び受信装置2(2),2(3)は、インターネット等の通信回線4を介して接続される。音声Bを含むパケットは、送信装置1から通信回線4を介して受信装置2(2),2(3)へ送信され、音声Cを含むパケットは、送信装置1から通信回線4を介して受信装置2(3)へ送信される。
送信装置1は、サービス提供事業者により提供される映像及びこの映像に付随する音声Aの各信号を入力し、映像及び音声Aの各信号を符号化し、発振器のクロックのカウンタ値に基づいてDTS及びCTS等を生成し、映像及び音声Aの符号データ、DTS等をパケットに格納し、放送波として放送ネットワーク3を介して送信する。
また、送信装置1は、サービス提供事業者により提供される、音声Aとは別に映像に付随する音声B,Cの各信号を入力し、音声B,Cの各信号を符号化し、符号データ等をパケットに格納し、音声Aの放送波が放送ネットワーク3を介して送信されるタイミングと同時に、通信回線4を介して送信する。
音声Bは、音声Aを下層としたときの中層のチャンネルの音声であり、音声Cは、さらに上層のチャンネルの音声である。受信装置2(2)は、音声A,Bを受信することにより、音声Aだけを受信する場合に比べ、マルチチャンネルの臨場感のある音声を出力することができ、受信装置2(3)は、さらに音声Cを受信することにより、臨場感が向上した音声を出力することができる。また、音声B,Cは、音声Aとは異なる言語の音声または映像の解説音声とすることもでき、受信装置2(3)は、音声A,B,Cをそれぞれ切り替えて受信することもできる。尚、本発明は、音声A〜Cの内容を限定するものではない。
本発明の実施形態では、送信装置1は、受信装置2(1)〜2(3)において映像、音声A,B,Cである各コンポーネントのクロックリカバリを行うときのクロックを流用するコンポーネント識別子(参照するクロックを用いているコンポーネントの識別子:クロックリカバリ用コンポーネント識別子)を含む制御用メタデータ(Startup Control Unit)を、放送ネットワーク3または通信回線4を介して受信装置2(1)〜2(3)へ送信する。つまり、送信装置1は、映像、音声A,B,Cの符号データ等に先立って、制御用メタデータを送信する。これにより、受信装置2(1)〜2(3)は、制御用メタデータに含まれるクロックリカバリ用コンポーネント識別子に従って、使用するクロックを特定する。これにより、受信装置2(1)〜2(3)は、所定のコンポーネントについて、他のコンポーネントのクロックを流用することにより、クロックリカバリの仕組みを省略することができ、その仕組みを簡便にすることができる。
図2は、制御用メタデータ及びコンポーネントの伝送タイミングを説明する概略図である。図2に示すように、送信装置1は、クロックリカバリ用コンポーネント識別子を含む制御用メタデータ、及びコンポーネント(図1の例では、映像、音声A,B,Cの符号データ等)を受信装置2へ送信する際に、制御用メタデータを定期的に送信する。
図1に戻って、受信装置2(1)〜2(3)は、送信装置1から放送ネットワーク3を介して、映像及び音声Aの符号データ等の放送波を受信し、受信側のクロックを送信装置1のクロックに同期させ、DTS及びCTSにより符号データを復号及び出力/提示する。これにより、視聴者は、映像及び音声Aを視聴することができる。
また、受信装置2(2)は、送信装置1から通信回線4を介して、音声Bの符号データ等を受信し、CTSにより符号データを復号及び出力/提示する。これにより、視聴者は、映像及び音声Aに加えて、音声Bを視聴することができる。
また、受信装置2(3)は、送信装置1から通信回線4を介して、音声B,Cの符号データ等を受信し、CTSにより符号データを復号及び出力/提示する。これにより、視聴者は、映像及び音声Aに加えて、音声B,Cを視聴することができる。
本発明の実施形態では、受信装置2(1)〜2(3)は、符号データ等に先立って制御用メタデータを受信し、その制御用メタデータには、例えば、音声B,Cのコンポーネントについて、クロックリカバリ用コンポーネント識別子として1(映像のコンポーネントを示す識別子)が規定されている。この場合、受信装置2(2),2(3)は、音声B,Cのコンポーネントについて、クロックリカバリ用コンポーネント識別子が示す映像のコンポーネントにて用いるクロックを流用し、そのクロックのカウンタ値に基づいてCTSの時刻のときに、音声B,Cの復号及び出力/提示を行う。
これにより、受信装置2(2),2(3)は、音声B,Cのコンポーネントのために、クロックリカバリの仕組みを用いる必要がないから、受信装置2(2),2(3)におけるクロックリカバリの仕組みを簡便にすることができる。また、送信装置1は、音声B,Cのコンポーネントについて、クロックリカバリのために必要な時刻情報(例えばPCR)を送信する必要がないから、伝送時のオーバーヘッドを削減することができる。
〔具体例〕
次に、本発明の実施形態による送信装置1及び受信装置2について、具体例を挙げて説明する。図3は、コンポーネント(1)〜(5)を独立して伝送する場合の機能構成を説明する図である。本具体例は、図3に示すように、送信装置1から受信装置2へ5個のコンポーネント(1)〜(5)を伝送する例であり、制御用メタデータには、コンポーネント(3)〜(5)について、クロックリカバリ用コンポーネント識別子として1(コンポーネント(1)を示す識別子)が規定されるものとする。つまり、送信装置1は、コンポーネント(1)(2)について、自身のクロックを用いて符号化を行い、コンポーネント(3)〜(5)について、コンポーネント(1)のクロックを用いて符号化を行う。また、受信装置2は、コンポーネント(1)(2)について、自身のクロックに対しクロックリカバリを行うと共に、自身のクロックを用いて復号及び出力/提示の処理を行い、コンポーネント(3)〜(5)について、コンポーネント(1)のクロックを流用して復号及び出力/提示の処理を行う。クロックリカバリのために必要な時刻情報として、PCRが伝送されるものとする。以下、コンポーネントが映像信号の場合について説明する(後述する実施例1,2も同じ)。
(送信装置/構成)
まず、送信装置1について説明する。送信装置1は、制御メタ生成部10、エンコーダ11−1〜11−5、発振器12−1,12−2及び多重部(送信部)14−1,14−2を備えている。制御メタ生成部10は、ユーザーの操作に従って制御用メタデータを生成し、制御用メタデータを、後述する符号データ等の送信に先立って、定期的に受信装置2へ送信する。
図4は、制御用メタデータの構成を示す図である。この制御用メタデータは、番組を構成するコンポーネントの識別番号、コンポーネントの取得先、種類等のデータからなり、具体的には、コンポーネント識別子(component_identification)、クロックリカバリ用コンポーネント識別子(clock_recovery_dependency)、送信元アドレス(src_addr)、宛先アドレス(dst_addr)、送信元ポート番号(src_port)、宛先ポート番号(dst_port)等により構成される。
コンポーネント識別子は、伝送する映像信号、音声信号等のコンポーネントを識別するためのデータである。本具体例では、コンポーネント識別子として、コンポーネント(1)〜(5)を示す識別子1〜5が規定される。
クロックリカバリ用コンポーネント識別子は、前述のとおり、クロックリカバリを行うときに参照するクロックの(クロックを基準として用いている)コンポーネントの識別データである。本具体例では、クロックリカバリ用コンポーネント識別子として、コンポーネント(1)〜(5)についてそれぞれ1,2,1,1,1が規定される。つまり、これらのクロックリカバリ用コンポーネント識別子は、コンポーネント(1)では自身のクロックを、コンポーネント(2)では自身のクロックを、コンポーネント(3)〜(5)ではコンポーネント(1)のクロックをそれぞれ用いることを示している。送信元アドレス、宛先アドレス、送信元ポート番号、宛先ポート番号はそれぞれ、コンポーネントを伝送するパケットのアドレス、ポートを示しており、これらの組み合わせによって、IPパケットの集合を示すデータフローが識別される。
図3に戻って、送信装置1のエンコーダ11−1は、コンポーネント(1)を入力して符号化する。また、エンコーダ11−1は、発振器12−1からカウンタ値を入力し、このカウンタ値に基づいて90KHzでサンプルした値(1秒間に90,000だけ進む値)を生成し、このサンプル値に基づいてDTS及びCTSを生成する。そして、エンコーダ11−1は、符号データ、DTS及びCTSを多重部14−1に出力する。
発振器12−1は、27MHzのクロックによりカウンタ値を生成し、エンコーダ11−1,11−3〜11−5に出力し、27MHzのクロックに基づいてPCRを生成し、多重部14−1に出力する。多重部14−1は、エンコーダ11−1から符号データ、DTS及びCTSを入力すると共に、発振器12−1からPCRを入力し、これらをパケットに格納して受信装置2へ送信する。
エンコーダ11−2、発振器12−2及び多重部14−2は、エンコーダ11−1、発振器12−1及び多重部14−1と同様の処理を行う。尚、発振器12−2は、カウンタ値をエンコーダ11−2のみに出力し、他のエンコーダ11−3〜11−5には出力しない。
エンコーダ11−3は、コンポーネント(3)を入力して符号化し、発振器12−1からカウンタ値を入力し、このカウンタ値に基づいて90KHzでサンプルした値を生成し、このサンプル値に基づいてDTS及びCTS(またはCTS)を生成する。そして、エンコーダ11−3は、符号データ、DTS及びCTS(またはCTS)をパケットに格納して受信装置2へ送信する。エンコーダ11−4,11−5は、エンコーダ11−3と同様の処理を行う。
(送信装置/処理)
図5は、送信装置1による処理の概要を示すフローチャートである。まず、送信装置1の制御メタ生成部10は、制御用メタデータを生成する(ステップS501)。送信装置1は、制御用メタデータをパケットに格納して多重し、図2に示したように、符号データ等のコンポーネントの送信に先立って受信装置2へ定期的に送信する(ステップS502)。
送信装置1は、制御用メタデータに含まれるコンポーネント識別子と、対応するクロックリカバリ用コンポーネント識別子とを比較し(ステップS503)、両識別子が同じであると判定した場合(ステップS503:Y)、そのコンポーネント識別子が示すコンポーネントを符号化すると共に、自身の発振器のクロックによるカウンタ値に基づいて、PCR、DTS及びCTSを生成する(ステップS504)。図4に示した制御用メタデータの例では、コンポーネント識別子1,2とクロックリカバリ用コンポーネント識別子1,2とが同じである。したがって、図3に示した発振器12−1が、クロックによるカウンタ値に基づいて、コンポーネント(1)のPCRを生成し、エンコーダ11−1が、発振器12−1のクロックによるカウンタ値に基づいて、コンポーネント(1)のDTS及びCTSを生成する。また、発振器12−2も発振器12−1と同様に、コンポーネント(2)のPCRを生成し、エンコーダ11−2もエンコーダ11−1と同様に、発振器12−2のクロックによるカウンタ値に基づいて、コンポーネント(2)のDTS及びCTSを生成する。
図5に戻って、送信装置1は、ステップS503において、両識別子が同じでないと判定した場合(ステップS503:N)、そのコンポーネント識別子が示すコンポーネントを符号化すると共に、クロックリカバリ用コンポーネント識別子の示すコンポーネントの発振器のクロックによるカウンタ値に基づいて、DTS及びCTSを生成する(ステップS505)。図4に示した制御用メタデータの例では、コンポーネント識別子3〜5とこれに対応するクロックリカバリ用コンポーネント識別子1とが同じでない。したがって、図3に示したエンコーダ11−3が、クロックリカバリ用コンポーネント識別子1の示すコンポーネント(1)のクロック(発振器12−1のクロック)によるカウンタ値に基づいて、コンポーネント(3)のDTS及びCTSを生成する。また、エンコーダ11−4,11−5もエンコーダ11−3と同様に、クロックリカバリ用コンポーネント識別子1の示すコンポーネント(1)のクロック(発振器12−1のクロック)によるカウンタ値に基づいて、コンポーネント(4)(5)のDTS及びCTSを生成する。
図5に戻って、送信装置1は、ステップS504及びステップS505から移行して、全てのコンポーネントについて処理が完了したか否かを判定し(ステップS506)、全てのコンポーネントについて処理が完了していないと判定した場合(ステップS506:N)、ステップS503へ移行する。一方、送信装置1は、ステップS506において、全てのコンポーネントについて処理が完了したと判定した場合(ステップS506:Y)、全てのコンポーネントの符号データ、ステップS504にて生成したPCR、DTS及びCTS、並びに、ステップS505にて生成したDTS及びCTSを多重し、パケットに格納して送信する(ステップS507)。
(受信装置/構成)
次に、受信装置2について説明する。図3を参照して、受信装置2は、多重分離部(受信部)21−1,21−2、デコーダ22−1〜22−5及び発振器23−1,23−2を備えている。受信装置2が、ユーザーにより番組の視聴を行う際、送信装置1により送信された、図4に示した制御用メタデータを受信すると、制御メタ処理部20は、制御用メタデータを入力し、制御用メタデータから、コンポーネント識別子、クロックリカバリ用コンポーネント識別子等を取り出す。
受信装置2は、送信装置1により送信された、コンポーネント(1)〜(5)の符号データ等を受信すると、制御メタ処理部20により取り出された送信元アドレス、宛先アドレス、送信元ポート番号及び宛先ポート番号に基づいて、受信した符号データ等に対しコンポーネント(1)〜(5)を識別し、コンポーネント(1)の符号データ等を多重分離部21−1に出力し、コンポーネント(2)〜(5)の符号データ等を、多重分離部21−2、デコーダ22−3〜22−5にそれぞれ出力する。
ここで、コンポーネント(1)〜(5)が、制御用メタデータのデータフローとは異なるデータフローで伝送される場合、例えば、制御用メタデータが放送ネットワーク3(図1を参照)を介して伝送され、コンポーネント(1)〜(5)が通信回線4(図1を参照)を介して伝送される場合、受信装置2は、制御用メタデータに含まれる送信元アドレス、宛先アドレス、送信元ポート番号及び宛先ポート番号によりデータフローを識別し、そのデータフローの受信を開始する。
多重分離部21−1は、コンポーネント(1)の符号データ、PCR、DTS及びCTSを入力し、多重されたこれらの符号データ等から、符号データ、DTS及びCTSと、PCRとを分離し、符号データ、DTS及びCTSをデコーダ22−1に出力し、PCRを発振器23−1に出力する。
発振器23−1は、多重分離部21−1からPCRを入力し、PCRに基づいて、27MHzのクロックを、送信装置1における発振器12−1のクロックに同期させ、クロックによるカウンタ値をデコーダ22−1,22−3〜22−5に出力する。
デコーダ22−1は、多重分離部21−1から符号データ、DTS及びCTSを入力すると共に、発振器23−1からカウンタ値を入力し、カウンタ値に基づいて90KHzでサンプルした値(1秒間に90,000だけ進む値)を生成し、このサンプル値がDTSの示す時刻に到達したときに、符号データの復号を開始する。また、デコーダ22−1は、このサンプル値がCTSの示す時刻に到達したときに、復号した信号を出力/提示する。このようにして、コンポーネント(1)は、デコーダ22−1から出力される。
多重分離部21−2、デコーダ22−2及び発振器23−2は、多重分離部21−1、デコーダ22−1及び発振器23−1と同様の処理を行う。このようにして、コンポーネント(2)は、デコーダ22−2から出力される。尚、発振器23−2は、カウンタ値をデコーダ22−2のみに出力し、他のデコーダ22−3〜22−5には出力しない。
デコーダ22−3は、コンポーネント(3)の符号データ、DTS及びCTSを入力すると共に、発振器23−1から、コンポーネント(1)のクロックによるカウンタ値を入力し、このカウンタ値に基づいて90KHzでサンプルした値を生成し、このサンプル値がDTSの示す時刻に到達したときに、符号データの復号を開始する。また、デコーダ22−3は、このサンプル値がCTSの示す時刻に到達したときに、復号した信号を出力/提示する。このようにして、コンポーネント(3)は、他のコンポーネント(1)のクロックを用いることにより、デコーダ22−3にて復号等が行われ、出力される。
デコーダ22−4,22−5は、デコーダ22−3と同様の処理を行う。コンポーネント(4)(5)は、他のコンポーネント(1)のクロックを用いることにより、デコーダ22−4,22−5にて復号等が行われ、出力される。
図6は、コンポーネント(1)のクロックを用いてコンポーネント(3)の復号等を行う例を説明する図である。図6に示すように、受信装置2は、制御用メタデータを受信すると共に、コンポーネント(1)(3)の符号データが格納されたAU(Access Unit:アクセスユニット)、DTS及びCTSを順次受信する。また、制御用メタデータに含まれるコンポーネント(1)のクロックリカバリ用コンポーネント識別子が1であるから、コンポーネント(1)は親コンポーネントである。また、コンポーネント(3)のクロックリカバリ用コンポーネント識別子が1であるから、コンポーネント(3)はコンポーネント(1)の子コンポーネントである。したがって、コンポーネント(3)の復号等の処理は、コンポーネント(1)の27MHzのクロックを用いて行われる。
(受信装置/処理)
図7は、受信装置2による処理の概要を示すフローチャートである。まず、受信装置2は、送信装置1から制御用メタデータを受信したか否かを判定し(ステップS701)、制御用メタデータを受信したと判定した場合(ステップS701:Y)、制御メタ処理部20は、制御用メタデータを入力し、制御用メタデータから、コンポーネント識別子、クロックリカバリ用コンポーネント識別子、送信元アドレス等を取得する(ステップS702)。一方、受信装置2は、ステップS701において、制御用メタデータを受信していないと判定した場合(ステップS701:N)、ステップS703へ移行する。
受信装置2は、ステップS701から移行して、送信装置1からコンポーネントの符号データ等を受信したか否かを判定し(ステップS703)、コンポーネントの符号データ等を受信したと判定した場合(ステップS703:Y)、制御用メタデータから取得した送信元アドレス等に基づいて、コンポーネント(1)〜(5)を識別して分離する(ステップS704)。一方、受信装置2は、ステップS703において、コンポーネントの符号データ等を受信していないと判定した場合(ステップS703:N)、処理を終了し、ステップS701へ移行する。
受信装置2は、制御用メタデータから取得したコンポーネント識別子と、対応するクロックリカバリ用コンポーネント識別子とを比較し(ステップS705)、両識別子が同じであると判定した場合(ステップS705:Y)、そのコンポーネント識別子が示すコンポーネントについて、そのコンポーネントのPCRに基づいて、自らの発振器のクロックリカバリを行う(ステップS706)。そして、受信装置2は、自らの発振器のクロックによるカウンタ値に基づいて、DTSのときに符号データを復号し、CTSのときに復号した信号を出力/提示する(ステップS707)。図4に示した制御用メタデータの例では、コンポーネント識別子1,2とクロックリカバリ用コンポーネント識別子1,2とが同じである。したがって、コンポーネント(1)について、図3に示した発振器23−1が、コンポーネント(1)のPCRに基づいて、クロックを、送信装置1における発振器12−1のクロックに同期させる。また、デコーダ22−1が、自らの発振器23−1のクロックによるカウンタ値に基づいて、コンポーネント(1)の復号及び出力/提示を行う。また、コンポーネント(2)について、発振器23−2が、コンポーネント(2)のPCRに基づいて、クロックを、送信装置1における発振器12−2のクロックに同期させる。また、デコーダ22−2が、自らの発振器23−2のクロックによるカウンタ値に基づいて、コンポーネント(2)の復号及び出力/提示を行う。
図7に戻って、受信装置2は、ステップS705において、両識別子が同じでないと判定した場合(ステップS705:N)、そのコンポーネント識別子が示すコンポーネントについて、クロックリカバリ用コンポーネント識別子の示すコンポーネントの発振器のクロックによるカウンタ値に基づいて、DTSのときに符号データを復号し、CTSのときに復号した信号を出力/提示する(ステップS708)。図4に示した制御用メタデータの例では、コンポーネント識別子3〜5とこれに対応するクロックリカバリ用コンポーネント識別子1とが同じでない。したがって、コンポーネント(3)〜(5)について、図3に示したデコーダ22−3〜22−5が、コンポーネント(1)の発振器23−1のクロックによるカウンタ値に基づいて、コンポーネント(3)〜(5)の復号及び出力/提示をそれぞれ行う。
図7に戻って、受信装置2は、ステップS707及びステップS708から移行して、全てのコンポーネントについて処理が完了したか否かを判定し(ステップS709)、全てのコンポーネントについて処理が完了していないと判定した場合(ステップS709:N)、ステップS705へ移行する。一方、受信装置2は、ステップS709において、全てのコンポーネントの処理について処理が完了したと判定した場合(ステップS709:Y)、処理を終了し、ステップS701へ移行する。
以上のように、本発明の実施形態によれば、送信装置1は、コンポーネント識別子、クロックリカバリ用コンポーネント識別子、送信元アドレス等を含む制御用メタデータを生成し、この制御用メタデータを定期的に送信し、コンポーネント(1)(2)について、符号化を行い、自身のクロックを用いてPCR、DTS及びCTSを生成し、コンポーネント(3)〜(5)について、符号化を行い、コンポーネント(1)のクロックを用いてDTS及びCTSを生成し、コンポーネント(1)〜(5)の符号データ等を受信装置2へ送信するようにした。また、受信装置2は、制御用メタデータを定期的に受信すると共に、コンポーネント(1)〜(5)の符号データ等を受信し、制御用メタデータに含まれる送信元アドレス等に基づいて、受信したコンポーネント(1)〜(5)の符号データ等を識別して分離し、コンポーネント(1)(2)について、制御用メタデータに含まれるコンポーネント識別子とクロックリカバリ用コンポーネント識別子とが同じであると判定し、自身のクロックに対してクロックリカバリを行うと共に、自身のクロックに基づいて、DTSのときに符号データを復号し、CTSのときに復号信号を出力/提示するようにした。さらに、受信装置2は、コンポーネント(3)〜(5)について、制御用メタデータに含まれるコンポーネント識別子とクロックリカバリ用コンポーネント識別子とが同じでないと判定し、クロックリカバリ用コンポーネント識別子が示すコンポーネント(1)のクロックを流用し、そのクロックに基づいて、DTSのときに符号データを復号し、CTSのときに復号信号を出力/提示するようにした。
すなわち、本発明の実施形態では、受信装置2が、コンポーネント(3)〜(5)についてクロックリカバリの仕組みを用いる代わりに、送信装置1から受信装置2へクロックを流用するコンポーネントの識別子を示すクロックリカバリ用コンポーネント識別子を含む制御用メタデータを伝送するようにした。
これにより、受信装置2において、コンポーネント(3)〜(5)についてのクロックリカバリの仕組みを用いる必要がないから、その仕組みを省略することができる。したがって、全てのコンポーネント(1)〜(5)について、簡易な構成によりクロックリカバリを実現することができ、送受信の仕組みを簡便にすることができる。また、送信装置1は、コンポーネント(3)〜(5)についてPCRを送信する必要がないから、伝送時のオーバーヘッドを削減することができる。
次に、実施例1について説明する。実施例1は、制御用メタデータ及びコンポーネントをMPEG−2 TSのTSパケットに格納して伝送する例である。尚、TSパケットを規定する非特許文献2では、復号した信号を出力/提示して表示等を行う時刻をPTS(Presentation Time Stamp)と記しているが、本実施例ではCTSをPTSと同意で用いる。また、TSパケットの特定はPID(Packet Identifier)で行うが、本実施例では、PIDで特定される一連のTSパケットは、送信元アドレス、宛先アドレス、送信元ポート番号及び宛先ポート番号の組み合わせにより特定されるものとして説明する。
〔送信装置/実施例1〕
まず、実施例1の送信装置について説明する。図8は、実施例1による送信装置の構成を示すブロック図である。この送信装置1−1は、制御メタ生成部10、符号データ生成部15−1〜15−n及び多重部(送信部)14−1〜14−nを備えている。送信装置1−1は、n個のコンポーネント(1)〜(n)を入力して符号化し、制御用メタデータに従って、各コンポーネント(1)〜(n)に用いるクロックを設定し、このクロックに基づいてPCR、DTS及びCTSを生成し、符号データ、PCR、DTS及びCTSをMPEG−2 TS(1)〜(n)のTSパケットに格納し、後述する受信装置2−1へ送信する。
(制御メタ生成部)
制御メタ生成部10は、ユーザーの操作に従って制御用メタデータを生成し、制御用メタデータを多重部14−1に出力する。また、制御メタ生成部10は、生成した制御用メタデータに基づいて、符号データ生成部15−1〜15−nにおいてクロックを選択するための選択信号を生成し、選択信号を符号データ生成部15−1〜15−nに出力する。
例えば、図4に示した制御用メタデータの場合、コンポーネント識別子1,2とこれに対応するクロックリカバリ用コンポーネント識別子1,2とが同じであるから、符号データ生成部15−1,15−2では自身のクロックが用いられ、コンポーネント識別子3〜5とこれに対応するクロックリカバリ用コンポーネント識別子1とが同じでないから、符号データ生成部15−3〜15−5ではコンポーネント識別子1(コンポーネント(1))のクロックが用いられる。また、n=5である。したがって、制御メタ生成部10は、図4に示した制御用メタデータに基づいて、自身のクロックを用いることを示す選択信号を生成し、符号データ生成部15−1,15−2に出力する。また、制御メタ生成部10は、コンポーネント(1)のクロックを用いることを示す選択信号を生成し、符号データ生成部15−3〜15−5に出力する。
(符号データ生成部)
符号データ生成部15−1〜15−nは、エンコーダ11−1〜11−n、発振器12−1〜12−n及び選択器13−1〜13−nを備えている。エンコーダ11−1〜11−nは、コンポーネント(1)〜(n)を入力して符号化し、選択器13−1〜13−nからカウンタ値を入力し、このカウンタ値に基づいてDTS及びCTSを生成し、符号データ、DTS及びCTSを、対応する多重部14−1〜14−nに出力する。
発振器12−1〜12−nは、クロックによりカウンタ値を生成し、このカウンタ値に基づいてPCRを生成し、カウンタ値及びPCRを、自身の符号データ生成部15−1〜15−nの選択器13−1〜13−nに出力すると共に、カウンタ値を、他の符号データ生成部15−1〜15−nの選択器13−1〜13−nに出力する。
選択器13−1〜13−nは、同じ符号データ生成部15−1〜15−nに備えた発振器12−1〜12−nからカウンタ値及びPCRを入力すると共に、他の符号データ生成部15−1〜15−nに備えた発振器12−1〜12−nからカウンタ値を入力し、さらに制御メタ生成部10から選択信号を入力し、選択信号に従って、入力したカウンタ値を選択しエンコーダ11−1〜11−nに出力する。また、選択器13−1〜13−nは、同じ符号データ生成部15−1〜15−nに備えた発振器12−1〜12−nから入力したカウンタ値を選択した場合、このカウンタ値と共に入力したPCRを、対応する多重部14−1〜14−nに出力する。つまり、符号データ生成部15−1〜15−nは、自身のクロックを用いる場合、符号データ、DTS及びCTSに加えてPCRも、対応する多重部14−1〜14−nに出力する。一方、符号データ生成部15−1〜15−nは、他のコンポーネントのクロックを用いる場合、符号データ、DTS及びCTSを、対応する多重部14−1〜14−nに出力し、PCRを出力しない。
例えば、図4に示した制御用メタデータの場合、符号データ生成部15−1の選択器13−1は、制御メタ生成部10から、自身のクロックを用いることを示す選択信号を入力し、この選択信号に基づいて、発振器12−1から入力したカウンタ値及びPCR、並びに他の符号データ生成部15−2〜15−5の発振器12−2〜12−5から入力したカウンタ値のうち、発振器12−1から入力したカウンタ値及びPCRを選択し、選択したカウンタ値をエンコーダ11−1に出力すると共に、PCRを多重部14−1に出力する。そして、エンコーダ11−1は、入力したコンポーネント(1)を符号化し、選択器13−1から入力したカウンタ値(自身のクロックによるカウンタ値)に基づいてDTS及びCTSを生成し、符号データ、DTS及びCTSを多重部14−1に出力する。
符号データ生成部15−2の選択器13−2は、符号データ生成部15−1の選択器13−1と同様の処理を行う。すなわち、符号データ生成部15−2の選択器13−2は、制御メタ生成部10から入力した、自身のクロックを用いることを示す選択信号に基づいて、発振器12−2から入力したカウンタ値及びPCRを選択し、選択したカウンタ値をエンコーダ11−2に出力すると共に、PCRを多重部14−2に出力する。そして、エンコーダ11−2は、入力したコンポーネント(2)を符号化し、選択器13−2から入力したカウンタ値(自身のクロックによるカウンタ値)に基づいてDTS及びCTSを生成し、符号データ、DTS及びCTSを多重部14−2に出力する。
符号データ生成部15−3の選択器13−3は、制御メタ生成部10から、コンポーネント(1)のクロックを用いることを示す選択信号を入力し、この選択信号に基づいて、発振器12−3から入力したカウンタ値及びPCR、並びに他の符号データ生成部15−1,15−2,15−4,15−5の発振器12−1,12−2,12−4,12−5から入力したカウンタ値のうち、コンポーネント(1)のクロックによるカウンタ値である発振器12−1から入力したカウンタ値を選択し、選択したカウンタ値をエンコーダ11−3に出力する。そして、エンコーダ11−3は、入力したコンポーネント(3)を符号化し、選択器13−3から入力したカウンタ値(コンポーネント(1)のクロックによるカウンタ値)に基づいてDTS及びCTSを生成し、符号データ、DTS及びCTSを多重部14−3に出力する。この場合、符号データ生成部15−3は、PCRを出力しない。
符号データ生成部15−4,15−5の選択器13−4,13−5は、符号データ生成部15−3の選択器13−3と同様の処理を行う。すなわち、符号データ生成部15−4,15−5の選択器13−4,13−5は、制御メタ生成部10から、コンポーネント(1)のクロックを用いることを示す選択信号を入力し、この選択信号に基づいて、コンポーネント(1)のクロックによるカウンタ値である発振器12−1から入力したカウンタ値を選択し、選択したカウンタ値をエンコーダ11−4,11−5に出力する。そして、エンコーダ11−4,11−5は、入力したコンポーネント(4)(5)を符号化し、選択器13−4,13−5から入力したカウンタ値(コンポーネント(1)のクロックによるカウンタ値)に基づいてDTS及びCTSを生成し、符号データ、DTS及びCTSを、対応する多重部14−4,14−5に出力する。この場合、符号データ生成部15−4,15−5は、PCRを出力しない。
(多重部)
多重部14−1は、制御メタ生成部10から制御用メタデータを入力すると共に、符号データ生成部15−1からコンポーネント(1)の符号データ、DTS及びCTS、並びに自身のクロックを用いる場合にはPCRを入力し、コンポーネント(1)の符号データ等の送信に先立って、制御用メタデータを多重し、TSパケットに格納して定期的に受信装置2へ送信し、また、符号データ等を多重してTSパケットに格納し、受信装置2へ送信する。多重部14−2〜14−nは、対応する符号データ生成部15−2〜15−nからコンポーネント(2)〜(n)の符号データ、DTS及びCTS、並びに自身のクロックを用いる場合にはPCRを入力し、これらを多重し、TSパケットに格納して受信装置2へ送信する。これにより、受信装置2は、コンポーネント(1)〜(n)の符号データ等に先立って制御用メタデータを受信することにより、クロックリカバリを行うコンポーネントのクロックを特定すると共に、コンポーネントの復号等を行う際に用いるクロックを特定することができる。また、受信装置2は、制御用メタデータに従ったクロックを用いて、コンポーネント(1)〜(n)の復号等を行うことができる。
例えば、図4に示した制御用メタデータの場合、多重部14−1は、制御メタ生成部10から制御用メタデータを入力し、符号データ等の送信に先立って受信装置2へ送信し、符号データ生成部15−1からコンポーネント(1)の符号データ、DTS、CTS及びPCRを入力し、これらを多重し、TSパケットに格納して送信する。多重部14−2は、符号データ生成部15−2から、コンポーネント(2)の符号データ、DTS、CTS及びPCRを入力し、これらを多重し、TSパケットに格納して送信する。また、多重部14−3〜14−5は、対応する符号データ生成部15−3〜15−5から、コンポーネント(3)〜(5)の符号データ、DTS及びCTSを入力し、これらを多重し、TSパケットに格納して送信する。
〔受信装置/実施例1〕
次に、実施例1の受信装置について説明する。図9は、実施例1による受信装置の構成を示すブロック図である。この受信装置2−1は、制御メタ処理部20、多重分離部(受信部)21−1〜21−n及びコンポーネント生成部25−1〜25−nを備えている。受信装置2−1は、送信装置1−1から、制御用メタデータが格納されたTSパケットを定期的に受信し、制御用メタデータに従って、各コンポーネント(1)〜(n)に用いるクロックを特定し、受信したPCRに基づいて、特定したクロックを送信装置1−1のクロックに同期させることによりクロックリカバリを行い、同期したクロックを用いて、DTSのときに符号データを復号し、CTSのときに復号した信号を出力/提示する。
(制御メタ処理部)
制御メタ処理部20は、多重分離部21−1から制御用メタデータを入力し、入力した制御用メタデータから、コンポーネント(1)〜(n)のコンポーネント識別子に対応する送信元アドレス、宛先アドレス、送信元ポート番号及び宛先ポート番号をそれぞれ取り出し、対応する多重分離部21−1〜21−nに出力する。また、制御メタ処理部20は、制御用メタデータに基づいて、コンポーネント生成部25−1〜25−nにおいてクロックによるカウンタ値を選択するための選択信号を生成し、選択信号をコンポーネント生成部25−1〜25−nに出力する。
例えば、図4に示した制御用メタデータの場合、コンポーネント識別子1,2とこれに対応するクロックリカバリ用コンポーネント識別子1,2とが同じであるから、コンポーネント生成部25−1,25−2では自身のクロックが用いられ、コンポーネント識別子3〜5とこれに対応するクロックリカバリ用コンポーネント識別子1とが同じでないから、コンポーネント生成部25−3〜25−5ではコンポーネント識別子1(コンポーネント(1))のクロックが用いられる。また、n=5である。したがって、制御メタ処理部20は、図4に示した制御用メタデータに基づいて、自身のクロックを用いることを示す選択信号を生成し、コンポーネント生成部25−1,25−2に出力する。また、制御メタ処理部20は、コンポーネント(1)のクロックを用いることを示す選択信号を生成し、コンポーネント生成部25−3〜25−5に出力する。
(多重分離部)
多重分離部21−1は、送信装置1−1の多重部14−1から受信した、制御用メタデータが格納されたTSパケットを入力すると、TSパケットから制御用メタデータを取り出し、制御用メタデータを制御メタ処理部20に出力する。また、多重分離部21−1〜21−nは、制御メタ処理部20から、コンポーネント(1)〜(n)のコンポーネント識別子に対応する送信元アドレス、宛先アドレス、送信元ポート番号及び宛先ポート番号を入力し、送信装置1−1の対応する多重部14−1〜14−nから受信したTSパケットを入力する。そして、多重分離部21−1〜21−nは、TSパケットのヘッダに格納された送信元アドレス、宛先アドレス、送信元ポート番号及び宛先ポート番号と、制御メタ処理部20からのコンポーネント(1)〜(n)のコンポーネント識別子に対応する送信元アドレス、宛先アドレス、送信元ポート番号及び宛先ポート番号とを比較し、これらのデータが同じであると判定した場合のTSパケットを特定し、そのTSパケットから符号データ等を取り出し、コンポーネント(1)〜(n)のコンポーネント識別子の示すコンポーネントにおける符号データ等を分離する。そして、多重分離部21−1〜21−nは、対応するコンポーネント(1)〜(n)の符号データ、DTS及びCTSを、対応するコンポーネント生成部25−1〜25−nにそれぞれ出力する。また、多重分離部21−1〜21−nは、コンポーネント(1)〜(n)のPCRを分離した場合、そのPCRを、対応するコンポーネント生成部25−1〜25−nに出力する。
例えば、図4に示した制御用メタデータの場合、多重分離部21−1〜21−nは、送信装置1−1における対応する多重部14−1〜14−nからのTSパケットのヘッダに格納された送信元アドレス、宛先アドレス、送信元ポート番号及び宛先ポート番号と、制御メタ処理部20からのコンポーネント(1)〜(5)のコンポーネント識別子に対応する送信元アドレス、宛先アドレス、送信元ポート番号及び宛先ポート番号とを比較することにより、対応するコンポーネント(1)〜(5)の符号データ等を分離する。そして、多重分離部21−1,21−2は、コンポーネント(1)(2)の符号データ、DTS及びCTSに加え、PCRもコンポーネント生成部25−1,25−2にそれぞれ出力する。また、多重分離部21−3〜21−5は、コンポーネント(3)〜(5)の符号データ、DTS及びCTSをコンポーネント生成部25−3〜25−5にそれぞれ出力する。
(コンポーネント生成部)
コンポーネント生成部25−1〜25−nは、デコーダ22−1〜22−n、発振器23−1〜23−n及び選択器24−1〜24−nを備えている。デコーダ22−1〜22−nは、対応する多重分離部21−1〜21−nからコンポーネント(1)〜(n)の符号データ、DTS及びCTSを入力すると共に、選択器24−1〜24−nからカウンタ値を入力し、このカウンタ値に基づいて、DTSの示す時刻に到達したことを判定すると、符号データの復号を開始し、CTSの示す時刻に到達したことを判定すると、復号した信号を出力/提示する。
発振器23−1〜23−nは、対応する多重分離部21−1〜21−nからPCRを入力した場合、PCRに基づいて、クロックを、対応する送信装置1−1の符号データ生成部15−1〜15−nに備えた発振器12−1〜12−nのクロックに同期させることにより、クロックリカバリを行い、クロックによるカウンタ値を選択器24−1〜24−nに出力する。尚、発振器23−1〜23−nは、PCRを入力しない場合、すなわち、制御用メタデータにおいてコンポーネント識別子とクロックリカバリ用コンポーネント識別子とが異なり、他のコンポーネントのクロックを流用する場合、クロックリカバリを行わない。
例えば、図4に示した制御用メタデータの場合、コンポーネント生成部25−1の発振器23−1は、多重分離部21−1からコンポーネント(1)のPCRを入力し、PCRに基づいてクロックリカバリを行い、クロックによるカウンタ値を選択器24−1に出力する。コンポーネント生成部25−2の発振器23−2は、コンポーネント生成部25−1の発振器23−1と同様の処理を行う。すなわち、発振器23−2は、多重分離部21−2からコンポーネント(2)のPCRを入力し、PCRに基づいてクロックリカバリを行い、クロックによるカウンタ値を選択器24−2に出力する。コンポーネント生成部25−3〜25−5の発振器23−3〜23−5は、対応する多重分離部21−3〜21−5からコンポーネント(3)〜(5)のPCRを入力しないから、クロックリカバリを行わない。
選択器24−1〜24−nは、同じコンポーネント生成部25−1〜25−nに備えた発振器23−1〜23−nからカウンタ値を入力すると共に、他のコンポーネント生成部25−1〜25−nに備えた発振器23−1〜23−nからカウンタ値を入力し、さらに、制御メタ処理部20から選択信号を入力し、選択信号に従って、入力したカウンタ値を選択してデコーダ22−1〜22−nに出力する。
例えば、図4に示した制御用メタデータの場合、コンポーネント生成部25−1の選択器24−1は、制御メタ処理部20から、自身のクロックを用いることを示す選択信号を入力し、この選択信号に基づいて、同じコンポーネント生成部25−1の発振器23−1から入力したカウンタ値、及び他のコンポーネント生成部25−2〜25−5の発振器23−2〜23−5から入力したカウンタ値のうち、発振器23−1から入力したカウンタ値を選択し、選択したカウンタ値をデコーダ22−1に出力する。そして、デコーダ22−1は、入力したカウンタ値に基づいてDTS及びCTSの時刻に到達したことを判定し、入力したコンポーネント(1)の符号データを復号し、復号した信号を出力/提示する。
コンポーネント生成部25−2の選択器24−2は、コンポーネント生成部25−1の選択器24−1と同様の処理を行う。すなわち、コンポーネント生成部25−2の選択器24−2は、制御メタ処理部20から、自身のクロックを用いることを示す選択信号を入力し、この選択信号に基づいて、同じコンポーネント生成部25−2の発振器23−2から入力したカウンタ値を選択し、選択したカウンタ値をデコーダ22−2に出力する。そして、デコーダ22−2は、入力したカウンタ値に基づいてDTS及びCTSの時刻に到達したことを判定し、入力したコンポーネント(2)の符号データを復号し、復号した信号を出力/提示する。
コンポーネント生成部25−3の選択器24−3は、制御メタ処理部20から、コンポーネント(1)のクロックを用いることを示す選択信号を入力し、この選択信号に基づいて、同じコンポーネント生成部25−3の発振器23−3から入力したカウンタ値、及び他のコンポーネント生成部25−1,25−2,25−4,25−5の発振器23−1,23−2,23−4,23−5から入力したカウンタ値のうち、コンポーネント(1)のクロックによるカウンタ値である発振器23−1から入力したカウンタ値を選択し、選択したカウンタ値をデコーダ22−3に出力する。そして、デコーダ22−3は、入力したカウンタ値に基づいてDTS及びCTSの時刻に到達したことを判定し、入力したコンポーネント(3)の符号データを復号し、復号した信号を出力/提示する。
コンポーネント生成部25−4,25−5の選択器24−4,24−5は、コンポーネント生成部25−3の選択器24−3と同様の処理を行う。すなわち、コンポーネント生成部25−4,25−5の選択器24−4,24−5は、制御メタ処理部20から、コンポーネント(1)のクロックを用いることを示す選択信号を入力し、この選択信号に基づいて、コンポーネント(1)のクロックによるカウンタ値である発振器23−1から入力したカウンタ値を選択し、選択したカウンタ値をデコーダ22−4,22−5に出力する。そして、デコーダ22−4,22−5は、入力したカウンタ値に基づいてDTS及びCTSの時刻に到達したことを判定し、入力したコンポーネント(4)(5)の符号データを復号し、復号した信号を出力/提示する。
以上のように、実施例1によれば、送信装置1−1が、制御用メタデータを生成し、制御用メタデータを多重してTSパケットに格納し、定期的に受信装置2−1へ送信するようにした。また、送信装置1−1が、コンポーネントの符号化を行い、制御用メタデータに従って、自身のコンポーネントのクロックを用いてPCR、DTS及びCTSを生成し、または、他のコンポーネントのクロックを用いてDTS及びCTSを生成し、これらを多重してTSパケットに格納し、受信装置2−1へ送信するようにした。また、受信装置2−1は、制御用メタデータのTSパケットを定期的に受信すると共に、コンポーネントの符号データ等のTSパケットを受信し、制御用メタデータに従って、受信したPCRに基づいて自身のコンポーネントのクロックに対しクロックリカバリを行うと共に、自身のコンポーネントのクロックに基づいて、DTSのときに符号データを復号し、CTSのときに復号信号を出力/提示するようにした。さらに、受信装置2−1は、制御用メタデータに従って、他のコンポーネントのクロックを流用し、そのクロックに基づいて、DTSのときに符号データを復号し、CTSのときに復号信号を出力/提示するようにした。
これにより、TSパケットを送受信する送信装置1−1及び受信装置2−1において、制御用メタデータに従って、所定のコンポーネントについてのクロックリカバリの仕組みを省略することができる。したがって、全てのコンポーネントについて、簡易な構成によりクロックリカバリを実現することができ、TSパケットの送受信の仕組みを簡便にすることができる。また、送信装置1−1は、クロックリカバリが行われないコンポーネントについてPCRを送信する必要がないから、伝送時のオーバーヘッドを削減することができる。
次に、実施例2について説明する。実施例2は、制御用メタデータ及びコンポーネントをIPパケットに格納して伝送する例である。
〔送信装置/実施例2〕
実施例2の送信装置について説明する。図10は、実施例2による送信装置の構成を示すブロック図である。この送信装置1−2は、制御メタ生成部50、システムタイム生成部51、ユニット生成部56−1〜56−n、ATS(Advanced Transport Scheme)パケット生成部57及びIP/UDPパケット化部(送信部)58を備えている。送信装置1−2は、n個のコンポーネント(1)〜(n)を入力して符号化し、制御用メタデータに従って、各コンポーネント(1)〜(n)に用いるクロックを設定し、このクロックに基づいてDTS及びCTSを生成し、符号データ、DTS、CTS、及び、送信装置1−2及び後述する受信装置2−2において共通して参照可能な時刻(参照時刻)をIPパケットに格納し、受信装置2−2へ送信する。
(制御メタ生成部)
制御メタ生成部50は、ユーザーの操作に従って制御用メタデータを生成し、制御用メタデータをATSパケット生成部57に出力する。また、制御メタ生成部50は、生成した制御用メタデータに基づいて、ユニット生成部56−1〜56−nにおいてクロックを選択するための選択信号を生成し、選択信号をユニット生成部56−1〜56−nに出力する。
例えば、図4に示した制御用メタデータの場合、コンポーネント識別子1,2とこれに対応するクロックリカバリ用コンポーネント識別子1,2とが同じであるから、ユニット生成部56−1,56−2では自身のクロックが用いられ、コンポーネント識別子3〜5とこれに対応するクロックリカバリ用コンポーネント識別子1とが同じでないから、ユニット生成部56−3〜56−5ではコンポーネント識別子1(コンポーネント(1))のクロックが用いられる。また、n=5である。したがって、制御メタ生成部50は、図4に示した制御用メタデータに基づいて、自身のクロックを用いることを示す選択信号を生成し、ユニット生成部56−1,56−2に出力する。また、制御メタ生成部50は、コンポーネント(1)のクロックを用いることを示す選択信号を生成し、ユニット生成部56−3〜56−5に出力する。
(システムタイム生成部)
システムタイム生成部51は、送信装置1−2及び受信装置2−2において参照可能な時刻、例えばUTC(Coordinated Universal Time:協定世界時、以下、UTC時刻という。)を生成し、UTC時刻をユニット生成部56−1〜56−nに出力する。
(ユニット生成部)
ユニット生成部56−1〜56−nは、エンコーダ52−1〜52−n、MU生成部53−1〜53−n、発振器54−1〜54−n及び選択器55−1〜55−nを備えている。エンコーダ52−1〜52−nは、コンポーネント(1)〜(n)を入力し、符号化を行い、符号データのフレームまたはスライス等の符号化単位毎に、符号データからAU(Access Unit:アクセスユニット)を生成し、AUをMU生成部53−1〜53−nに出力する。
MU生成部53−1〜53−nは、エンコーダ52−1〜52−nからAUを入力すると共に、選択器55−1〜55−nからカウンタ値を入力し、システムタイム生成部51からUTC時刻を入力し、制御メタ生成部50から選択信号を入力し、AUからMUを生成してATSパケット生成部57に出力する。MUは、1つのAUを単位としてAUが格納されたユニットである。具体的には、MU生成部53−1〜53−nは、入力したカウンタ値に基づいて、例えば90KHzでサンプルした値を生成し、つまり、1秒間に90,000だけ進む値を生成する。そして、MU生成部53−1〜53−nは、このカウンタ値に基づいてDTS及びCTSを生成し、AUにDTS及びCTSを付加してMUを生成し、さらに、入力した選択信号が自身のクロックを用いることを示しており、かつAUがランダムアクセスポイントの場合、DTSを生成したときに入力したUTC時刻(DTSを指す瞬間のUTC時刻)を参照時刻(Reftime)に設定し、AUに参照時刻も付加してMUを生成する。尚、MU生成部53−1〜53−nは、CTSを生成したときに入力したUTC時刻を参照時刻に設定するようにしてもよい。
ここで、ランダムアクセスポイントとは、復号を開始することができるAU、すなわち、それ以前のAUとの間で符号の相関がないAUをいう。映像信号のAUには、そのAUから復号を開始することができるAUと、復号を開始することができないAUとがある。ランダムアクセスポイントは、前者のAUであり、それより以前のAUを参照することなく独立して符号化されたAUである。H.264/AVCでは、ランダムアクセスポイントのAUとして、IDR(Instantaneous Decoding Refresh)フレームのAUが該当する。また、ランダムアクセスポイントでないAUとして、P(Prediction)フレーム及びB(Bi−prediction)フレームのAUが該当する。尚、音声信号のAUは、一般に、全てランダムアクセスポイントのAUである。
図11は、MU生成部53−1〜53−nの処理を示すフローチャートである。MU生成部53−1〜53−nは、エンコーダ52−1〜52−nからAUを入力し(ステップS1101)、選択器55−1〜55−nから入力したカウンタ値に基づいてDTS及びCTSを生成する(ステップS1102)。そして、MU生成部53−1〜53−nは、DTS及びCTSをAUに付加する(ステップS1103)。
MU生成部53−1〜53−nは、入力した選択信号が自身のクロックを用いることを示しているか否かを判定する(ステップS1104)。MU生成部53−1〜53−nは、ステップ1104において、入力した選択信号が自身のクロックを用いることを示していると判定した場合(ステップS1104:Y)、ステップS1105へ移行し、入力した選択信号が自身のクロックを用いることを示していないと判定した場合(ステップS1104:N)、ステップS1110へ移行する。
MU生成部53−1〜53−nは、ステップS1104から移行して、入力したAUがI(Intra)フレーム(H.264/AVCの場合、IDRフレーム)であるか否かを判定する(ステップS1105)。MU生成部53−1〜53−nは、ステップS1105において、AUがIフレームであると判定した場合(ステップS1105:Y)、入力したAUはランダムアクセスポイントであるとして(ステップS1106)、DTSを生成したときのUTC時刻を参照時刻に設定し、参照時刻をAUに付加する(ステップS1107)。そして、MU生成部53−1〜53−nは、DTS、CTS、参照時刻及びAUからなるMUを生成し(ステップS1108)、MUをATSパケット生成部57に出力する(ステップS1111)。
一方、MU生成部53−1〜53−nは、ステップS1105において、AUがIフレームでないと判定した場合(ステップS1105:N)、入力したAUはランダムアクセスポイントでないと判断する(ステップS1109)。そして、MU生成部53−1〜53−nは、ステップS1104及びステップS1109から移行して、DTS、CTS及びAUからなるMUを生成し(ステップS1110)、MUをATSパケット生成部57に出力する(ステップS1111)。
尚、送信装置1−2が入力するコンポーネントが音声信号の場合、全てのAUはIフレームである。そこで、MU生成部53−1〜53−nは、入力したAUをカウントし、そのカウンタ値が所定間隔の値のときに(例えば、AUを30回入力する毎に)、DTSを生成したときのUTC時刻を参照時刻に設定し、参照時刻をAUに付加する。また、MU生成部53−1〜53−nは、そのカウンタ値が所定間隔の値でないときには、参照時刻をAUに付加しない。
図12は、MU生成部53−1〜53−nにより生成されるMUの構成を説明する図である。図12に示すように、選択信号が自身のクロックを用いることを示している場合、MU生成部53−1〜53−nにおいて2種類のMUが生成される。第1のMUは、DTS、CTS、Reftime(すなわち参照時刻)及びAUにより構成され、第2のMUは、DTS、CTS及びAUにより構成される。第1のMUは、ランダムアクセスポイントのAUのときに生成されるユニットであり、第2のMUは、ランダムアクセスポイントでないAUのときに生成されるユニットである。つまり、図12の左から1番目のMUでは、AU1がランダムアクセスポイントであるため、DTS1、CTS1、Reftime1が付加されている。2〜4番目のMUでは、AUがランダムアクセスポイントでないため、Reftimeが付加されず、DTS及びCTSのみが付加されている。また、5番目のMUでは、AU2がランダムアクセスポイントであるため、DTS2、CTS2、Reftime2が付加されている。
尚、選択信号が自身のクロックを用いることを示していない場合、MU生成部53−1〜53−nにおいて、2〜4番目に示すMU(AUにDTS及びCTSが付加されたMU)のみが生成される。また、MU生成部53−1〜53−nは、参照時刻であるReftimeとして、システムタイム生成部51からのUTC時刻を設定するようにしたが、必ずしもUTC時刻である必要はない。例えば、MU生成部53−1〜53−nは、GPS(Global Positioning System)から時刻を取得し、このGPSによる時刻を参照時刻に設定するようにしてもよい。要するに、MU生成部53−1〜53−nは、送信装置1−2及び受信装置2−2のいずれもが共通に参照でき、それぞれのシステムタイムを校正できる時刻を参照時刻に設定すればよい。
(DTS)
図10に戻って、前述のとおり、MU生成部53−1〜53−nは、例えば27MHzのクロックにて生成されたカウンタ値を選択器55−1〜55−nから入力し、このカウンタ値に基づいて、例えば90KHzでサンプルした値のカウンタ値を生成する。そして、MU生成部53−1〜53−nは、例えば、前回入力したAU(直前のAU)のタイミングにおけるカウンタ値と、今回入力したAU(現時点のAU)のタイミングにおけるカウンタ値との間の差分値を算出し、この差分値を、現時点のAUに対するDTSに設定する。このようにして、DTSが生成される。
図13は、カウンタ値の差分が設定されるDTS及びCTSの例を説明する図である。図13に示すように、DTSは、直前のAUにおける復号時刻に対する、現時点のAUにおける復号時刻の差分をカウンタ値で記載したデータである。CTSは、現時点のAUにおけるDTSに対し、どれだけの時間を空けるかをカウンタ値で記載したデータである。DTSに設定された2,698は、90,000×30/1001にて表される。これは、1秒間に29.97フレームが表示される画像の場合の例を示している。受信装置2−2において、復号処理は、AU1→AU2→AU3→AU4の順番に行われるが、出力/提示処理は、AU1→AU3→AU4→AU2の順番に行われる。
尚、MU生成部53−1〜53−nは、カウンタ値におけるAU毎の差分値をDTSに設定するようにしたが、差分値ではなくカウンタ値そのものをDTSに設定するようにしてもよい。
図10に戻って、発振器54−1〜54−nは、例えば27MHzのクロックを用いて、1秒間に27,000,000だけ進む値をカウントし、カウンタ値を、自身のユニット生成部56−1〜56−nの選択器55−1〜55−nに出力すると共に、他のユニット生成部56−1〜56−nの選択器55−1〜55−nに出力する。
選択器55−1〜55−nは、同じユニット生成部56−1〜56−nに備えた発振器54−1〜54−nからカウンタ値を入力すると共に、他のユニット生成部56−1〜56−nに備えた発振器54−1〜54−nからカウンタ値を入力し、さらに制御メタ生成部50から選択信号を入力し、選択信号に従って、入力したカウンタ値を選択してMU生成部53−1〜53−nに出力する。
例えば、図4に示した制御用メタデータの場合、ユニット生成部56−1の選択器55−1は、制御メタ生成部50から、自身のクロックを用いることを示す選択信号を入力し、この選択信号に基づいて、自身のユニット生成部56−1に備えた発振器54−1から入力したカウンタ値を選択し、選択したカウンタ値をMU生成部53−1に出力する。そして、MU生成部53−1は、選択器55−1から入力したカウンタ値(自身のクロックによるカウンタ値)に基づいてDTS及びCTSを生成し、DTS、CTS、参照時刻及びAUからなるMU、及び、DTS、CTS及びAUからなるMUを生成し、2種類のMUをATSパケット生成部57に出力する。
ユニット生成部56−2の選択器55−2は、ユニット生成部56−1の選択器55−1と同様の処理を行う。すなわち、ユニット生成部56−2の選択器55−2は、制御メタ生成部50から、自身のクロックを用いることを示す選択信号を入力し、この選択信号に基づいて、自身のユニット生成部56−2に備えた発振器54−2から入力したカウンタ値を選択し、選択したカウンタ値をMU生成部53−2に出力する。そして、MU生成部53−2は、選択器55−2から入力したカウンタ値(自身のクロックによるカウンタ値)に基づいてDTS及びCTSを生成し、DTS、CTS、参照時刻及びAUからなるMU、及び、DTS、CTS及びAUからなるMUを生成し、2種類のMUをATSパケット生成部57に出力する。
ユニット生成部56−3の選択器55−3は、制御メタ生成部50から、自身のクロックを用いることを示さない選択信号、すなわちコンポーネント(1)のクロックを用いることを示す選択信号を入力し、この選択信号に基づいて、コンポーネント(1)のクロックによるカウンタ値である発振器54−1から入力したカウンタ値を選択し、選択したカウンタ値をMU生成部53−3に出力する。そして、MU生成部53−3は、選択器55−3から入力したカウンタ値(コンポーネント(1)のクロックによるカウンタ値)に基づいてDTS及びCTSを生成し、DTS、CTS及びAUからなるMUを生成し、1種類のMUをATSパケット生成部57に出力する。この場合、MU生成部53−3は、参照時刻を含むMUを生成しない。
ユニット生成部56−4,56−5の選択器55−4,55−5は、ユニット生成部56−3の選択器55−3と同様の処理を行う。すなわち、ユニット生成部56−4,56−5の選択器55−4,55−5は、制御メタ生成部50から、自身のクロックを用いることを示さない選択信号、すなわちコンポーネント(1)のクロックを用いることを示す選択信号を入力し、この選択信号に基づいて、コンポーネント(1)のクロックによるカウンタ値である発振器54−1から入力したカウンタ値を選択し、選択したカウンタ値をMU生成部53−4,53−5に出力する。そして、MU生成部53−4,53−5は、選択器55−4,55−5から入力したカウンタ値(コンポーネント(1)のクロックによるカウンタ値)に基づいてDTS及びCTSを生成し、DTS、CTS及びAUからなるMUを生成し、1種類のMUをATSパケット生成部57に出力する。この場合、MU生成部53−4,53−5は、参照時刻を含むMUを生成しない。
(ATSパケット生成部)
ATSパケット生成部57は、制御メタ生成部50から制御用メタデータを入力すると共に、ユニット生成部56−1〜56−nからMUを入力し、伝送路のMTU(Maximum Transmission Unit)の大きさに収まるように、MUをATSパケットに分割し、ATSパケットをIP/UDPパケット化部58に出力する。例えば、ATSパケット生成部57は、高度BSデジタル放送の伝送路の場合、4KB以下の大きさになるように、MUをATSパケットに分割し、インターネットの伝送路の場合、1.5KB以下の大きさになるように、MUをATSパケットに分割する。
(IP/UDPパケット化部)
IP/UDPパケット化部58は、ATSパケット生成部57からATSパケットを入力し、ATSパケットにIP/UDPヘッダを付加してIPパケットを生成する。そして、IP/UDPパケット化部58は、放送ネットワークの伝送路の場合、IPパケットを含む放送波を生成し、受信装置2−2へ送信する。また、IP/UDPパケット化部58は、インターネットの伝送路の場合、生成したIPパケットを、IPのプロトコルにより受信装置2−2へ送信する。
例えば、図4に示した制御用メタデータの場合、IP/UDPパケット化部58は、コンポーネント(1)(2)のAU、DTS、CTS及び参照時刻からなるMUを分割したATSパケットをIPパケットに格納すると共に、AU、DTS及びCTSからなるMUをIPパケットに格納し、送信する。また、IP/UDPパケット化部58は、コンポーネント(3)〜(5)のAU、DTS及びCTSからなるMUを分割したATSパケットをIPパケットに格納し、送信する。
〔受信装置/実施例2〕
次に、実施例2の受信装置について説明する。図14は、実施例2による受信装置の構成を示すブロック図である。この受信装置2−2は、制御メタ処理部60、システムタイム生成部61、IP/UDPパケット受信部62、ATSパケット処理部63及びコンポーネント生成部71−1〜71−nを備えている。受信装置2−2は、送信装置1−2から、制御用メタデータが格納されたIPパケットを定期的に受信し、n個のコンポーネント(1)〜(n)の符号データ等が格納されたIPパケットを受信し、制御用メタデータに従って、各コンポーネント(1)〜(n)に用いるクロックを特定し、受信した参照情報及びDTS等に基づいて、特定したクロックを送信装置1−2のクロックに同期させることによりクロックリカバリを行い、同期したクロックを用いて、DTSのときにコンポーネント(1)〜(n)の符号データを復号し、CTSのときに復号した信号を出力/提示する。
制御メタ処理部60は、ATSパケット処理部63から制御用メタデータを入力し、入力した制御用メタデータから、コンポーネント(1)〜(n)のコンポーネント識別子に対応する送信元アドレス、宛先アドレス、送信元ポート番号及び宛先ポート番号を取り出し、IP/UDPパケット受信部62に出力する。また、制御メタ処理部60は、制御用メタデータに基づいて、コンポーネント生成部71−1〜71−nにおいてクロックを選択するための選択信号を生成し、選択信号をコンポーネント生成部71−1〜71−nに出力する。
例えば、図4に示した制御用メタデータの場合、制御メタ処理部60は、実施例1に示した受信装置2−1の制御メタ処理部20と同様の処理を行う。すなわち、制御メタ処理部60は、図4に示した制御用メタデータに基づいて、自身のクロックを用いることを示す選択信号を生成し、コンポーネント生成部71−1,71−2に出力する。また、制御メタ処理部60は、コンポーネント(1)のクロックを用いることを示す選択信号を生成し、コンポーネント生成部71−3〜71−5に出力する。
システムタイム生成部61は、送信装置1−2のシステムタイム生成部51と同等の機能を有し、送信装置1−2及び受信装置2−2において参照可能なUTC時刻を生成し、UTC時刻をコンポーネント生成部71−1〜71−nに出力する。
IP/UDPパケット受信部62は、送信装置1−2から受信した、制御用メタデータが格納されたIPパケットを入力すると、IPパケットからIP/UDPヘッダを取り除き、IPパケットからATSパケットを取り出し、ATSパケット処理部63に出力する。また、IP/UDPパケット受信部62は、制御メタ処理部60から、コンポーネント(1)〜(n)のコンポーネント識別子に対応する送信元アドレス、宛先アドレス、送信元ポート番号及び宛先ポート番号を入力し、送信装置1−2から受信した、コンポーネント(1)〜(n)の符号データ等が格納されたIPパケットを入力すると、IPパケットからIP/UDPヘッダを取り除くと共に、IPパケットのヘッダに格納された送信元アドレス、宛先アドレス、送信元ポート番号及び宛先ポート番号と、制御メタ処理部60からのコンポーネント(1)〜(n)のコンポーネント識別子に対応する送信元アドレス、宛先アドレス、送信元ポート番号及び宛先ポート番号とを比較し、これらのデータが同じであると判定した場合のIPパケットからATSパケットを取り出し、コンポーネント識別子の示すコンポーネント(1)〜(n)のATSパケットを分離する。そして、IP/UDPパケット受信部62は、コンポーネント(1)〜(n)のATSパケットをATSパケット処理部63に出力する。
ATSパケット処理部63は、IP/UDPパケット受信部62からATSパケットを入力し、ATSパケットを結合してMUに復元する。そして、ATSパケット処理部63は、復元したMUに制御用メタデータが格納されている場合、制御用メタデータを制御メタ処理部60に出力し、復元したMUにコンポーネント(1)〜(n)の符号データ等が格納されている場合、コンポーネント(1)〜(n)のMUをコンポーネント生成部71−1〜71−nに出力する。MUに制御用メタデータが格納されているか、またはコンポーネント(1)〜(n)の符号データ等が格納されているかは、ATSパケットに含まれるペイロードタイプによって判定される。また、コンポーネント(1)〜(n)のそれぞれは、MUに含まれるコンポーネント識別子により判定される。
コンポーネント生成部71−1〜71−nは、MU復元部64−1〜64−n、デコーダ65−1〜65−n、参照カウンタ値算出部66−1〜66−n、発振器67−1〜67−n及び選択器70−1〜70−nを備えている。
MU復元部64−1〜64−nは、ATSパケット処理部63からコンポーネント(1)〜(n)のMUを入力し、MUからDTS、CTS、参照時刻及びAUを取り出し、または、MUからDTS、CTS及びAUを取り出し、AU、DTS及びCTSをデコーダ65−1〜65−nに出力し、DTS及び参照時刻を参照カウンタ値算出部66−1〜66−nに出力する。
図15は、MU復元部64−1〜64−nの処理を示すフローチャートである。MU復元部64−1〜64−nは、ATSパケット処理部63−1〜63−nからコンポーネント(1)〜(n)のMUを入力し(ステップS1501)、MUに参照時刻が含まれているか否かを判定する(ステップS1502)。MU復元部64−1〜64−nは、ステップS1502において、MUに参照時刻が含まれていると判定した場合(ステップS1502:Y)、MUからDTS、CTS、参照時刻及びAUを取得する(ステップS1503)。そして、MU復元部64−1〜64−nは、DTS及び参照時刻を参照カウンタ値算出部66−1〜66−nに出力し(ステップS1504)、AU、DTS及びCTSをデコーダ65−1〜65−nに出力する(ステップS1505)。
一方、MU復元部64−1〜64−nは、ステップS1502において、MUに参照時刻が含まれていないと判定した場合(ステップS1502:N)、MUからDTS、CTS及びAUを取得する(ステップS1506)。そして、MU復元部64−1〜64−nは、DTSを参照カウンタ値算出部66−1〜66−nに出力し(ステップS1507)、AU、DTS及びCTSをデコーダ65−1〜65−nに出力する(ステップS1508)。
図14に戻って、デコーダ65−1〜65−nは、MU復元部64−1〜64−nからコンポーネント(1)〜(n)のAU、DTS及びCTSを入力すると共に、選択器70−1〜70−nからカウンタ値を入力する。そして、デコーダ65−1〜65−nは、入力したカウンタ値に基づいて90KHzでサンプルした値を生成し、つまり、1秒間に90,000だけ進むカウンタ値を生成し、直前のAUを復号した後、生成したカウンタ値がDTSに示される量だけ進んだときに、現時点のAUの復号を開始する。また、デコーダ65−1〜65−nは、復号処理を開始後、CTSに示された値だけカウンタ値が進んだときに、復号したAUを出力/提示する。
参照カウンタ値算出部66−1〜66−nは、MU復元部64−1〜64−nが参照時刻を含むMUを復元する処理を行ったときのDTS及び参照時刻をMU復元部64−1〜64−nから入力し、MU復元部64−1〜64−nが参照時刻を含まないMUを復元する処理を行ったときのDTSをMU復元部64−1〜64−nから入力する。また、参照カウンタ値算出部66−1〜66−nは、システムタイム生成部61からUTC時刻を入力し、発振器67−1〜67−nから選択器70−1〜70−nを介してカウンタ値を入力する。そして、参照カウンタ値算出部66−1〜66−nは、MU復元部64−1〜64−nにおいて参照時刻を含むMUの処理が行われる毎に、受信装置2−2の発振器67−1〜67−nにおけるクロックを送信装置1−2のクロックに同期させるための参照カウンタ値(RefCount)を、以下の式(1)にて算出し、発振器67−1〜67−nに出力する。
RefCount=((Systime2−Systime1)/(Reftime2−Reftime1))×ΔDTS+Count1
・・・(1)
ここで、Reftime2は、現時点のAUに付加された参照時刻、Reftime1は、直前のAUに付加された参照時刻である、また、ΔDTSは、現時点のAU(参照時刻が付加されたAU)の復号時刻と直前のAU(参照時刻が付加されたAU)との間の差、すなわち、DTSにAU間の差分値が設定されている場合、DTSの総和(直前のAU(参照時刻が付加されたAU)の次のAUから現時点のAU(参照時刻が付加されたAU)までの間において、AUに付加されたDTSの総和)である。また、Systime2は、現時点のAU(参照時刻が付加されたAU)の処理を行うタイミングにて入力したUTC時刻であり、Systime1は、直前のAU(参照時刻が付加されたAU)の処理を行ったタイミングにて入力したUTC時刻である。また、Count1は、直前のAU(参照時刻が付加されたAU)の処理を行ったタイミングにて入力したカウンタ値である。
図16は、参照カウンタ値算出部66−1〜66−nの処理を示すフローチャートであり、図17は、その処理を説明する図である。現時点のAU2に、DTS2、CTS2及びReftime2(参照時刻2)が付加され、直前のAU1に、DTS1、CTS1及びReftime1(参照時刻1)が付加されているものとする。尚、AU2とAU1との間に、参照時刻が付与されていないAU(DTS及びCTSが付与されたAU)が存在する。
参照カウンタ値算出部66−1〜66−nは、現時点のAUに付加されたDTS及び参照時刻を入力する(ステップS1601)。そして、参照カウンタ値算出部66−1〜66−nは、現時点のAUに付加された参照時刻を参照時刻2(Reftime2)に、直前のAUに付加された参照時刻を参照時刻1(Reftime1)に、現時点のAUの復号時刻と直前のAUの復号時刻との差をΔDTSに設定する(ステップS1602)。すなわち、参照カウンタ値算出部66−1〜66−nは、ΔDTSとして、DTSの総和(直前のAU(参照時刻が付加されたAU)の次のAUから現時点のAU(参照時刻が付加されたAU)までの間において、AUに付加されたDTSの総和)を設定する。
参照カウンタ値算出部66−1〜66−nは、現時点のAUについて処理を行う際のUTC時刻をSystime2に設定し(ステップS1603)、直前のAUについて処理を行った際のUTC時刻をSystime1に設定する(ステップS1604)。そして、参照カウンタ値算出部66−1〜66−nは、直前のAUについて処理を行った際の発振器67−1〜67−nのカウンタ値をCount1に設定する(ステップS1605)。
参照カウンタ値算出部66−1〜66−nは、前記式(1)により、参照カウンタ値(RefCount)を算出し(ステップS1606)、参照カウンタ値を発振器67−1〜67−nに出力する(ステップS1607)。参照カウンタ値算出部66−1〜66−nにより算出される参照カウンタ値は、図17において、現時点のAU2について処理を行う際の、発振器67−1〜67−nが出力すべき真のカウンタ値、すなわち、受信装置2−2の発振器67−1〜67−nにおけるクロックを送信装置1−2のクロックに同期させるためのカウンタ値を示している。つまり、参照カウンタ値は、送信装置1−2により生成されたIPパケットが伝送路を介して受信装置2−2へ送信された際の、IPパケットの間隔が不定となる遅延ジッタを吸収した値となる。
図14に戻って、発振器67−1〜67−nは、PLL(Phase Locked Loop)回路68−1〜68−n及びカウンタ69−1〜69−nを備えている。カウンタ69−1〜69−nは、PLL回路68−1〜68−nから27MHzのクロックによるクロック信号を入力し、1秒間に27,000,000だけ進む値をカウントし、カウンタ値を、PLL回路68−1〜68−n、選択器70−1〜70−nを介してデコーダ65−1〜65−n及び参照カウンタ値算出部66−1〜66−nに出力する。PLL回路68−1〜68−nは、カウンタ69−1〜69−nが出力したカウンタ値を入力すると共に、参照カウンタ値算出部66−1〜66−nから参照カウンタ値を入力し、参照カウンタ値を基準値として用いることにより、両カウンタ値の差が0になるように、クロックの周波数をフィードバック制御して補正し、補正後のクロックによるクロック信号をカウンタ69−1〜69−nに出力する。これにより、PLL回路68−1〜68−nのクロックを送信装置1−2のクロックに同期させることができる。つまり、発振器67−1〜67−nは、PLL回路68−1〜68−nのクロックを送信装置1−2のクロックに同期させたときのカウンタ値を出力する。
具体的には、発振器67−1〜67−nは、以下の(1)〜(3)の処理を行うことにより、発振器67−1〜67−nのクロックの周波数を補正する。RefCountは参照時刻であり、現時点における真のカウンタ値である。Count2は、現時点におけるカウンタ値である。
(1)RefCount>Count2のとき、クロックの周波数を増す。
(2)RefCount<Count2のとき、クロックの周波数を減らす。
(3)RefCount=Count2のとき、クロックの周波数を維持する。
尚、PLL回路68−1〜68−nの動作については既知であるから、ここでは説明を省略する。
尚、MU復元部64−1〜64−nに入力されたMUに参照時刻を含まない場合、すなわち、制御用メタデータにおいてコンポーネント識別子とクロックリカバリ用コンポーネント識別子とが異なり、他のコンポーネントのクロックを流用する場合、そのコンポーネント生成部71−1〜71−nでは、クロックリカバリを行わない。
例えば、図4に示した制御用メタデータの場合、コンポーネント生成部71−1は、ATSパケット処理部63からコンポーネント(1)のMUを入力する。コンポーネント(1)のMUには参照時刻が含まれる場合があるから、参照カウンタ値算出部66−1は参照カウンタ値を算出し、発振器67−1はクロックリカバリを行う。コンポーネント生成部71−2は、コンポーネント生成部71−1と同様の処理を行う。すなわち、参照カウンタ値算出部66−2は参照カウンタ値を算出し、発振器67−2はクロックリカバリを行う。コンポーネント生成部71−3は、ATSパケット処理部63からコンポーネント(3)のMUを入力する。コンポーネント(3)のMUには参照時刻が含まれないから、コンポーネント生成部71−3は、クロックリカバリを行わない。コンポーネント生成部71−4,71−5もコンポーネント生成部71−3と同様に、クロックリカバリを行わない。
選択器70−1〜70−nは、同じコンポーネント生成部71−1〜71−nに備えた発振器67−1〜67−nからカウンタ値を入力すると共に、他のコンポーネント生成部71−1〜71−nに備えた発振器67−1〜67−nからカウンタ値を入力し、さらに、制御メタ処理部60から選択信号を入力し、選択信号に従って、入力したカウンタ値を選択してデコーダ65−1〜65−n及び参照カウンタ値算出部66−1〜66−nに出力する。
例えば、図4に示した制御用メタデータの場合、コンポーネント生成部71−1の選択器70−1は、制御メタ処理部60から、自身のクロックを用いることを示す選択信号を入力し、この選択信号に基づいて、同じコンポーネント生成部71−1の発振器67−1から入力したカウンタ値を選択し、選択したカウンタ値をデコーダ65−1及び参照カウンタ値算出部66−1に出力する。そして、デコーダ65−1は、入力したカウンタ値に基づいてDTS及びCTSの時刻に到達したことを判定し、入力したコンポーネント(1)の符号データを復号し、復号した信号を出力/提示する。
コンポーネント生成部71−2の選択器70−2は、コンポーネント生成部71−1の選択器70−1と同様の処理を行う。すなわち、コンポーネント生成部71−2の選択器70−2は、制御メタ処理部60から、自身のクロックを用いることを示す選択信号を入力し、この選択信号に基づいて、同じコンポーネント生成部71−2の発振器67−2から入力したカウンタ値を選択し、選択したカウンタ値をデコーダ65−2及び参照カウンタ値算出部66−2に出力する。そして、デコーダ65−2は、入力したカウンタ値に基づいてDTS及びCTSの時刻に到達したことを判定し、入力したコンポーネント(2)の符号データを復号し、復号した信号を出力/提示する。
コンポーネント生成部71−3の選択器70−3は、制御メタ処理部60から、コンポーネント(1)のクロックを用いることを示す選択信号を入力し、この選択信号に基づいて、コンポーネント(1)のクロックによるカウンタ値である、コンポーネント生成部71−1の発振器67−1から入力したカウンタ値を選択し、選択したカウンタ値をデコーダ65−3に出力する。そして、デコーダ65−3は、入力したカウンタ値に基づいてDTS及びCTSの時刻に到達したことを判定し、入力したコンポーネント(3)の符号データを復号し、復号した信号を出力/提示する。
コンポーネント生成部71−4,71−5の選択器70−4,70−5は、コンポーネント生成部71−3の選択器70−3と同様の処理を行う。すなわち、コンポーネント生成部71−4,71−5の選択器70−4,70−5は、制御メタ処理部60から、コンポーネント(1)のクロックを用いることを示す選択信号を入力し、この選択信号に基づいて、コンポーネント(1)のクロックによるカウンタ値である、コンポーネント生成部71−1の発振器67−1から入力したカウンタ値を選択し、選択したカウンタ値をデコーダ65−4,65−5に出力する。そして、デコーダ65−4,65−5は、入力したカウンタ値に基づいてDTS及びCTSの時刻に到達したことを判定し、入力したコンポーネント(4)(5)の符号データを復号し、復号した信号を出力/提示する。
以上のように、実施例2によれば、送信装置1−2が、制御用メタデータを生成し、制御用メタデータをIPパケットに格納して定期的に受信装置2−2へ送信するようにした。また、送信装置1−2が、コンポーネントの符号化を行い、制御用メタデータに従って、自身のコンポーネントのクロックを用いてDTS及びCTSを生成し、システムタイム生成部51により生成されたUTC時刻を参照時刻とし、符号データ、DTS、CTS及び参照時刻をIPパケットに格納して受信装置2−2へ送信すると共に、他のコンポーネントのクロックを用いてDTS及びCTSを生成し、符号データ、DTS及びCTSをIPパケットに格納して受信装置2−2へ送信するようにした。また、受信装置2−2は、制御用メタデータのIPパケットを定期的に受信すると共に、コンポーネントの符号データ等のIPパケットを受信し、制御用メタデータに従って、受信した参照時刻及びDTSに基づいて自身のコンポーネントのクロックに対しクロックリカバリを行うと共に、自身のコンポーネントのクロックに基づいて、DTSのときに符号データを復号し、CTSのときに復号信号を出力/提示するようにした。さらに、受信装置2−2は、制御用メタデータに従って、他のコンポーネントのクロックを流用し、そのクロックに基づいて、DTSのときに符号データを復号し、CTSのときに復号信号を出力/提示するようにした。
これにより、IPパケットを送受信する送信装置1−2及び受信装置2−2において、制御用メタデータに従って、所定のコンポーネントについてのクロックリカバリの仕組みを省略することができる。したがって、全てのコンポーネントについて、簡易な構成によりクロックリカバリを実現することができ、IPパケットの送受信の仕組みを簡便にすることができる。また、送信装置1−2は、クロックリカバリが行われないコンポーネントについて参照時刻を送信する必要がないから、伝送時のオーバーヘッドを削減することができる。
また、実施例2の送信装置1−2によれば、MU生成部53−1〜53−nが、選択器55−1〜55−nから入力したカウンタ値に基づいて90KHzでサンプルした値を生成し、このカウンタ値に基づいてDTS及びCTSを生成し、AUにDTS及びCTSを付加してMUを生成し、また、入力した選択信号が自身のクロックを用いることを示しており、かつ、AUがランダムアクセスポイントの場合、DTSを生成したときにシステムタイム生成部51から入力したUTC時刻を参照時刻に設定し、AUにDTS、CTS及び参照時刻を付加してMUを生成するようにした。そして、IP/UDPパケット化部58が、MUが分割されたATSパケットをIPパケットに格納し、伝送路を介して受信装置2−2へ送信するようにした。
これにより、受信装置2−2は、IPパケットを受信し、IPパケットからDTS及び参照時刻を取り出し、DTS及び参照時刻、並びに受信側の発振器により生成されるカウンタ値及び受信側にて生成されるUTC時刻に基づいて、受信側の発振器により生成されるカウンタ値を補正することができる。つまり、受信装置2−2のクロックを送信装置1−2のクロックに同期させることができる。したがって、IP網のように、パケット間隔が不定で、伝送遅延変動が発生する伝送環境においても、クロックリカバリを確実に実現することが可能となる。また、送信装置1−2は、クロックリカバリのために、PCRのような特別なサンプル値を生成して受信装置2−2へ送信する必要がないから、クロックリカバリのためのオーバーヘッドを抑えることができる。
また、実施例2の受信装置2−2によれば、参照カウンタ値算出部66−1〜66−nが、参照時刻を含むMUの処理が行われる毎に、そのMUに含まれるDTS及び参照時刻、参照時刻を含まないMUに含まれるDTS、発振器67−1〜67−nから入力したカウンタ値及びシステムタイム生成部61から入力したUTC時刻に基づいて、前記式(1)を用いて、参照カウンタ値を算出するようにした。また、発振器67−1〜67−nが、出力するカウンタ値と参照カウンタ値とが一致するようにフィードバック制御を行い、クロックの周波数を増減させるようにした。
これにより、参照時刻を含むMUを受信する毎に、受信装置2−2のクロックを送信装置1−2のクロックに同期させることができる。したがって、IP網のように、パケット間隔が不定で、伝送遅延変動が発生する伝送環境においても、クロックリカバリを確実に実現することが可能となる。
以上、実施例1,2を挙げて本発明を説明したが、本発明は前記実施例1,2に限定されるものではなく、その技術思想を逸脱しない範囲で種々変形可能である。例えば、実施例1,2では、送信装置1−1,1−2は、制御用メタデータ及びコンポーネント(1)〜(n)を、図1に示した放送ネットワーク3または通信回線4のいずれかの伝送路を介して受信装置2−1,2−2へ送信するようにした。これに対し、送信装置1−1,1−2は、制御用メタデータをIPパケットに格納し、放送ネットワーク3または通信回線4のいずれか一方の伝送路を介して受信装置2−1,2−2へ送信し、他のコンポーネントから参照されるクロックを用いるコンポーネント、すなわちクロックの基準となるコンポーネント(図4の制御用メタデータを用いる場合、コンポーネント(1)(2))についてはこれを多重し、MPEG−2 TSのTSパケットに格納し、放送ネットワーク3の伝送路を介して受信装置2−1,2−2へ送信するようにしてもよい。
尚、図3に示した送信装置1及び受信装置2、図8に示した送信装置1−1、図9に示した受信装置2−1、図10に示した送信装置1−2及び図14に示した受信装置2−2のハードウェア構成としては、通常のコンピュータを使用することができる。送信装置1,1−1,1−2及び受信装置2,2−1,2−2は、CPU、RAM等の揮発性の記憶媒体、ROM等の不揮発性の記憶媒体、及びインターフェース等を備えたコンピュータによって構成される。送信装置1に備えたエンコーダ11−1〜11−5及び多重部14−1,14−2の各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。また、受信装置2に備えた多重分離部21−1,21−2及びデコーダ22−1〜22−5の各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。さらに、送信装置1−1に備えた制御メタ生成部10、多重部14−1〜14−n及び符号データ生成部15−1〜15−nの各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。また、受信装置2−1に備えた制御メタ処理部20、多重分離部21−1〜21−n、コンポーネント生成部25−1〜25−nの各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。さらに、送信装置1−2に備えた制御メタ生成部50、システムタイム生成部51、ユニット生成部56−1〜56−n、ATSパケット生成部57及びIP/UDPパケット化部58の各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。また、受信装置2−2に備えた制御メタ処理部60、システムタイム生成部61、IP/UDPパケット受信部62、ATSパケット処理部63、コンポーネント生成部71−1〜71−nの各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。これらのプログラムは、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリ等の記憶媒体に格納して頒布することもできる。