(57)【特許請求の範囲】
【請求項１】
ソースパケットのデータとタイムスタンプを含むソースパケットのヘッダとの組で構成されるソースパケットを送信する送信装置であって、
前記ソースパケットが入力されると、前記ソースパケットに含まれる前記タイムスタンプの所定の部分の値を調べ、前記所定の部分の値が同一で、かつ連続して入力された前記ソースパケットをまとめて１個の伝送パケットデータとして出力する伝送パケット生成手段と、
出力された前記伝送パケットデータに所定の付加情報を付加して伝送パケットを作成し、作成した前記伝送パケットを外部に出力するデータ出力手段とを備えたことを特徴とする送信装置。
【請求項２】
前記伝送パケット生成手段は、２個の連続して入力された前記ソースパケットに含まれる前記タイムスタンプの前記所定の部分の値の差が、Ｎ≧２であるＮであった場合、
（Ｎ−１）個のダミー伝送パケットデータを前記データ出力手段に出力することを特徴とする請求項１記載の送信装置。
【請求項３】
ソースパケットのデータとタイムスタンプを含むソースパケットのヘッダとの組で構成されるソースパケットを送信する送信装置であって、
前記ソースパケットを分割する分割数Ｍ（Ｍ≧１）を指定する分割数指定手段と、
前記ソースパケットが入力されると、前記ソースパケットに含まれる前記タイムスタンプの所定の部分の値を調べ、２個の連続した前記ソースパケットに含まれる前記タイムスタンプの前記所定の部分の値の差が、初期値が０でかつ１以上の整数であるＬに対し、Ｎ≦（Ｌ＋１）（Ｌ≧０）であるＮ（Ｎ≧０）であった場合には、前記ソースパケットを前記Ｍ個に分割したものを、それぞれ伝送パケットデータとして出力し、
前記タイムスタンプの前記所定の部分の値の差が、Ｎ＞ＬであるＮであった場合には、（Ｎ−Ｌ）個のダミー伝送パケットデータを出力し、また、Ｎ≦（Ｌ＋１）であった場合はＬに（Ｌ＋Ｍ−Ｎ）を代入し、Ｎ＞（Ｌ＋１）であった場合にはＬに（Ｌ−１）を代入する伝送パケット生成手段と、
前記出力された伝送パケットデータ及び／または前記ダミー伝送パケットデータに所定の付加情報を付加したものを、伝送パケットとして外部に出力するデータ出力手段とを備えたことを特徴とする送信装置。
【請求項４】
前記Ｍは２または４または８であることを特徴とする請求項３記載の送信装置。
【請求項５】
前記伝送パケット生成手段は、Ｋ≧１である可変長もしくは固定長であるＫ個の前記ソースパケットを１組として入力されることを特徴とする請求項１〜４のいずれかに記載の送信装置。
【請求項６】
前記所定の付加情報とは、ＣＩＰヘッダ、アイソクロナスヘッダ、ヘッダＣＲＣ、及びデータＣＲＣであり、
前記データ出力手段は、前記出力された伝送パケットデータに所定の前記ＣＩＰヘッダを付加するＣＩＰヘッダ付加手段と、
前記所定のＣＩＰヘッダを付加された伝送パケットデータに、さらに前記アイソクロナスヘッダ、前記ヘッダＣＲＣおよび前記データＣＲＣを付加して前記伝送パケットを作成し、前記作成した伝送パケットを外部に出力するＩＥＥＥ１３９４インターフェースとを有することを特徴とする請求項１〜５のいずれかに記載の送信装置。
【請求項７】
前記ソースパケットのデータは、ＭＰＥＧのトランスポートストリームパケットであることを特徴とする請求項６記載の送信装置。
【請求項８】
前記タイムスタンプは、ＩＥＥＥ１３９４規格のＣｙｃｌｅＴｉｍｅＲｅｇｉｓｔｅｒのＣｙｃｌｅ＿ＣｏｕｎｔとＣｙｃｌｅ＿Ｏｆｆｓｅｔで表され、
前記所定の部分とは、前記Ｃｙｃｌｅ＿Ｃｏｕｎｔの部分であることを特徴とする請求項７記載の送信装置。
【請求項９】
ソースパケットのデータとタイムスタンプを含むソースパケットのヘッダとの組で構成されるソースパケットを受け取ると、
直前に受け取った前記ソースパケットに含まれる前記タイムスタンプの値と、今回受け取った前記ソースパケットに含まれるタイムスタンプの値との差分Ｎを計算し、
前記Ｎが、Ｎ＞（Ａ＋１）である場合には、（Ｎ−Ａ−１）個のダミーパケットを出力した後に、今回受け取った前記ソースパケットをＭ個に分割し出力すると同時に、Ａに（Ｍ−１）を代入し、
前記Ｎが、Ｎ＞（Ａ＋１）でない場合には、今回受け取った前記ソースパケットをＭ個に分割し出力すると同時に、Ａに（Ａ＋Ｍ−Ｎ）を代入することを特徴とするパケット形態決定方法。
【請求項１０】
最初に受け取った前記ソースパケットの場合には、Ｎ＝１かつＡ＝０とすることを特徴とする請求項９記載のパケット形態決定方法。
【請求項１１】
前記Ｍは、あらかじめ指定された値であることを特徴とする請求項９または１０記載のパケット形態決定方法。
【請求項１２】
前記Ｍは、前記ソースパケットと組で受け取ることを特徴とする請求項９または１０記載のパケット形態決定方法。
【請求項１３】
前記Ｍは、２または４または８であることを特徴とする請求項９〜１２のいずれかに記載のパケット形態決定方法。
【請求項１４】
前記ソースパケットのデータは、ＭＰＥＧのトランスポートストリームパケットであることを特徴とする請求項９〜１３のいずれかに記載のパケット形態決定方法。
【請求項１５】
前記タイムスタンプは、ＩＥＥＥ１３９４規格のＣｙｃｌｅＴｉｍｅＲｅｇｉｓｔｅｒのＣｙｃｌｅ＿ＣｏｕｎｔとＣｙｃｌｅ＿Ｏｆｆｓｅｔで表され、
前記差分Ｎは、前記Ｃｙｃｌｅ＿Ｃｏｕｎｔの部分の差分であることを特徴とする請求項１４記載のパケット形態決定方法。
【請求項１６】
第１のクロックで伝送されるデータパケットを生成し、前記第１のクロックで表される、前記データパケットの伝送タイミングを決定するパケット生成手段と、
前記伝送タイミングを、第２のクロックで表される時間軸上の時刻情報に変換し、前記時刻情報の全部または一部に基づいて値が決定されたタイムスタンプを前記データパケットに付加し、そのタイムスタンプが付加されたデータパケットをソースパケットとして出力する時刻情報付加手段とを備え、
出力された前記ソースパケットは、その付加されたタイムスタンプの値に基づいて伝送用パケットに変換されてインターフェースから送り出されることを特徴とするソースパケット生成装置。
【請求項１７】
前記データパケットのうち所定のデータパケットを第１のデータパケットとし、前記データパケットのうち、前記第１のデータパケット以外のデータパケットを第２のデータパケットとした場合、前記時刻情報付加手段は、前記第１のデータパケットと前記第２のデータパケットとの、前記第１のクロックにおける前記伝送タイミングの差を、前記第２のクロックにおける時間差に変換した値に基づいて前記第２のデータパケットに付加するタイムスタンプの値を決定することを特徴とする請求項１６記載のソースパケット生成装置。
【請求項１８】
前記時刻情報付加手段は、前記第１のデータパケットに付加するタイムスタンプの値を０とし、
前記第２のデータパケットに付加するタイムスタンプの値を前記第２のクロックにおける時間差に変換した値とすることを特徴とする請求項１７記載のソースパケット生成装置。
【請求項１９】
前記時刻情報付加手段は、前記第１のデータパケットに付加するタイムスタンプの値を所定の値とし、
前記第２のデータパケットに付加するタイムスタンプの値を、前記第２のクロックにおける時間差に変換した値に前記所定の値を加算した値とすることを特徴とする請求項１７記載のパケット生成装置。
【請求項２０】
前記所定のデータパケットとは、先頭のデータパケットであることを特徴とする請求項１７〜１９のいずれかに記載のパケット生成装置。
【請求項２１】
前記データパケットのうち、既にタイムスタンプの値が決定されたデータパケットである第３のデータパケットに隣接するデータパケットを第４のデータパケットとした場合、前記時刻情報付加手段は、前記第３のデータパケットと前記第４のデータパケットとの、前記第１のクロックにおける前記伝送タイミングの差を、前記第２のクロックにおける時間差に変換した値に前記第３のデータパケットに付加されている前記タイムスタンプの値を加算した値を、前記第４のデータパケットに付加する前記タイムスタンプの値とすることを特徴とする請求項１６記載のソースパケット生成装置。
【請求項２２】
前記時刻情報付加手段は、前記データパケットのうち先頭のデータパケットに付加するタイムスタンプの値を所定の値とすることを特徴とする請求項２１記載のソースパケット生成装置。
【請求項２３】
前記第１のクロックの周波数は、２７ＭＨｚであり、
前記データパケットはＭＰＥＧ２トランスポートストリームパケットであることを特徴とする請求項１６〜２２のいずれかに記載のソースパケット生成装置。
【請求項２４】
前記パケット生成手段は、前記時刻情報付加手段に前記ＭＰＥＧ２トランスポートストリームパケットを出力する代わりに、前記ＭＰＥＧ２トランスポートストリームパケットにダミータイムスタンプを付加したものを出力し、
前記時刻情報付加手段は、前記ダミータイムスタンプを、生成した前記タイムスタンプで置き換えることを特徴とする請求項２３記載のソースパケット生成装置。
【請求項２５】
前記パケット生成手段は、ＭＰＥＧ２プログラムストリームパケットを受け取り、前記ＭＰＥＧ２プログラムストリームパケットから前記ＭＰＥＧ２トランスポートストリームパケットを生成することを特徴とする請求項２３または２４に記載のソースパケット生成装置。
【請求項２６】
前記第２のクロックの周波数は、約２４．５７６ＭＨｚであり、
前記時刻情報は、ＩＥＥＥ１３９４規格におけるＣｙｃｌｅ  Ｔｉｍｅ  Ｒｅｇｉｓｔｅｒに基づく値であり、
前記タイムスタンプは、ＩＥＣ６１８８３におけるソースパケットヘッダに記載するタイムスタンプであることを特徴とする請求項２３〜２５のいずれかに記載のソースパケット生成装置。
【請求項２７】
前記出力するとは、外部に出力することであることを特徴とする請求項１６〜２６のいずれかに記載のソースパケット生成装置。
【請求項２８】
前記タイムスタンプが付加されたデータパケットをソースパケットとして格納するバッファ手段を備え、
前記出力するとは、前記バッファに書き込むことであり、
前記バッファ手段は、所定の個数の前記ソースパケットが書き込まれると、
前記所定の個数の前記ソースパケットを外部に出力することを特徴とする請求項１６〜２６のいずれかに記載のソースパケット生成装置。
【請求項２９】
請求項１〜８、１６〜２８のいずれかに記載の送信装置またはソースパケット生成装置の手段の機能をコンピュータにより実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項３０】
請求項９〜１５のいずれかに記載のパケット形態決定方法のステップの動作をコンピュータにより実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はソースパケットヘッダを含むソースパケットから伝送パケットを構成して送信処理を行う送信装置、パケット形態決定方法、ソースパケットを生成するソースパケット生成装置、及び記録媒体に関するものである。
【０００２】
【従来の技術】
ＬＳＩ技術の向上に伴って映像情報や音声情報をディジタル化して伝送するネットワークが開発されつつある。映像信号や音声信号はリアルタイムで再生される必要があるため、リアルタイム伝送が可能なネットワークが必要となる。
【０００３】
このようなリアルタイム伝送に適したネットワークとしてＩＥＥＥ１３９４というネットワークがある。ＩＥＥＥ１３９４はシリアルの高速バスシステムで、データを同期伝送できるため、リアルタイム伝送が可能である。
【０００４】
ＩＥＥＥ１３９４は、衛星放送などからＭＰＥＧ２データを受信するＳｅｔ Ｔｏｐ Ｂｏｘ（以下ＳＴＢと記述）を始め、多くのディジタル映像音声機器に外部用インタフェースとして搭載することができる。例えばＳＴＢにおいては、ＩＥＥＥ１３９４を用いることにより、他のＡＶ機器とＳＴＢとの間でのデータ伝送を行うことができる。ＩＥＥＥ１３９４を用いてＭＰＥＧ２などのＡＶデータを伝送するための規格としてＩＥＣ６１８８３が制定されている。
【０００５】
一方パーソナルコンピュータ（以下ＰＣと記述）においても、標準ＯＳであるＭｉｃｒｏｓｏｆｔ社のＷｉｎｄｏｗｓ９８などで正式にＩＥＥＥ１３９４がサポートされるようになったことにより、ＰＣの世界でもＩＥＥＥ１３９４は急速に普及しつつある。
【０００６】
さて、ＩＥＣ６１８８３におけるＭＰＥＧ２のトランスポートストリームパケット(以下ＴＳパケットと記述)をＩＥＥＥ１３９４上で伝送する方法について図１〜図６を用いて説明する。
【０００７】
図１は、ソースパケットの構成である。図１において、101はＴＳパケット、102はソースパケットヘッダ、103はソースパケットである。
【０００８】
図２は、ソースパケットヘッダ102の構成である。図２において、201はタイムスタンプ、202は予備情報である。
【０００９】
図３は、ＣＩＰデータの構成例である。図３において、301はＣＩＰヘッダ、302はＣＩＰデータである。
【００１０】
図４は、アイソクロナスパケットの構成である。図４において、401はアイソクロナスパケット、402はアイソクロナスヘッダ、403はヘッダCRC、404はデータCRCである。
【００１１】
図５は、ＴＳパケット101伝送時の概念図である。
【００１２】
図６は、ＩＥＥＥ１３９４におけるＣｙｃｌｅ  Ｔｉｍｅ  Ｒｅｇｉｓｔｅｒ(以下ＣＴＲと記述)の構成である。図６において、601はＣＴＲである。
【００１３】
まず、図１に示すように、ＴＳパケット101にソースパケットヘッダ102を付加し、ソースパケット103を構成する。ソースパケットヘッダ102は、図２に示されるように、25ビットのタイムスタンプ201と7ビットの予備情報202とで構成されている。タイムスタンプ201にはＴＳパケット101の伝送タイミングを表す時刻情報が記述されており、予備情報202は将来のために予約された領域で現在は7ビット全てに０が記述されている。タイムスタンプ201の詳細については後述する。
【００１４】
次にソースパケット103からＣＩＰデータ302を構成する。構成方法は、データの伝送レートに応じて多少変化する。図３はＣＩＰデータ302の構成方法の一例で、ソースパケット103にＣＩＰヘッダ301を付加することによってＣＩＰデータ302を構成する。
【００１５】
伝送レートが低い場合には、ソースパケット103を２個、４個もしくは８個に分割し、それぞれにＣＩＰヘッダ301を付加することでＣＩＰデータ302を構成する場合もある。ただしこの場合、そのストリームにおいては、分割する個数を変更することはできない。
【００１６】
また伝送レートが高い場合には、複数個のソースパケット103をまとめ、これにＣＩＰヘッダ301を付加することでＣＩＰデータ302を構成することもできる。この場合は、そのストリーム内で、１個のＣＩＰデータ302に含めるソースパケット103の個数を変更することは可能である。
【００１７】
あるいは伝送レートを調節するなどの目的で、ＣＩＰヘッダ301だけでＣＩＰデータ302を構成することもできる。このようなパケットは、実際のデータを伝送するわけではないので、Ｅｍｐｔｙパケットと呼ばれている。
【００１８】
最後に図４に示すように、ＣＩＰデータ302にアイソクロナスヘッダ402とヘッダＣＲＣ403とデータＣＲＣ404を付加し、ＩＥＥＥ１３９４の伝送形式であるアイソクロナスパケット401を生成する。ヘッダＣＲＣ403は、アイソクロナスヘッダ402の誤り訂正用情報、データＣＲＣ404は、ＣＩＰデータ302の誤り訂正用情報である。
【００１９】
ところでＭＰＥＧ２のトランスポートストリームにおいては、時間情報(Ｐｒｏｇｒａｍ  Ｃｌｏｃｋ  Ｒｅｆｅｒｅｎｃｅ＝ＰＣＲ)を含むＴＳパケットが存在しており、そのパケットの伝送タイミングがずれるとデコードして表示するときに色ずれなどの問題が発生したり、場合によっては全くデコードできないケースが発生する。このため受信側では送信側と同じタイミングを再現しなければならない。
【００２０】
しかし実際にはＩＥＥＥ１３９４バスでの伝送ジッタや機器内での遅延などが存在しており、受信側でアイソクロナスパケットを受け取るタイミングは、図５のように元のタイミングとはずれる場合が多い。
【００２１】
そこでＩＥＣ６１８８３では、受信側でＴＳパケット101のタイミングを復元できるように、ソースパケットヘッダ102に時刻情報を表すタイムスタンプ201を付加することになっている。
【００２２】
タイムスタンプ201は、送信機にＴＳパケット101が到着した時刻にある一定のオフセットを加えた値を用いる。受信側ではこのタイムスタンプ201で表される時刻にデコーダなどに出力することにより、元のストリームのタイミングを再現することができる。このとき各ＴＳパケットのタイミングは、図５のように元のストリームからオフセット分だけ遅延したタイミングとなる。
【００２３】
タイムスタンプ201の値は、ＩＥＥＥ１３９４のＣＴＲの値で表現する。ＩＥＥＥ１３９４のＣＴＲは、図６のように、7ビットのＳｅｃｏｎｄ＿Ｃｏｕｎｔ、13ビットのＣｙｃｌｅ＿Ｃｏｕｎｔおよび12ビットのＣｙｃｌｅ＿Ｏｆｆｓｅｔで構成されているが、タイムスタンプ201の値はこのうち下位25ビット、すなわちＣｙｃｌｅ＿ＣｏｕｎｔとＣｙｃｌｅ＿Ｏｆｆｓｅｔとで構成されている。
【００２４】
ところで上記のようなＴＳパケットをＩＥＥＥ１３９４を用いて伝送する場合、例えば送信側にリアルタイムでＴＳパケットデータが入力されている場合には、その時点でＩＥＥＥ１３９４インタフェース内のＣＴＲの値を取り出し、それにオフセットを加えてタイムスタンプを作成すればよい。
【００２５】
これに対し、例えばＰＣのハードディスク上にＴＳパケットデータが記録されており、ハードディスクからＴＳパケットデータを読み出して送信する場合には、ＴＳパケットの伝送タイミングを決定するために、あらかじめＴＳパケットに送信元で付加されたタイムスタンプの値をＴＳパケットと一緒にしてハードディスクに記録しておき、このタイムスタンプの値を利用してＴＳパケットの伝送タイミングを決定するという方法が提案されている。
【００２６】
この方法に従えば、ＰＣの構成が複雑にならず、またＩＥＥＥ１３９４インターフェースの一部または全部がＰＣのソフトウェアで構成されていても容易にＴＳパケットをＩＥＥＥ１３９４バスに伝送することが出来る。
【００２７】
すなわち、ＰＣのハードディスク上にＴＳパケットデータが記録されており、ハードディスクからＴＳパケットデータを読み出して送信する場合には、ＴＳパケットに含まれているＰＣＲの値を検出し、ＴＳパケットの伝送タイミングを作り直す必要があり、構成が複雑になる。ところがこの提案されている方法では、記録されているタイムスタンプの値を利用してＴＳパケットの伝送タイミングを決定するので、ＰＣＲを検出して、ＴＳパケットの伝送タイミングを作り直す必要もないので、上記のようにＰＣの構成が複雑にならない。
【００２８】
またＩＥＥＥ１３９４インターフェース一部または全部がＰＣのソフトウェアで構成されていて、タイムスタンプをソフトウェアで作成しなければならない場合、ＩＥＥＥ１３９４インタフェースからＣＴＲの値を取り出すと、遅延が生じ、またその遅延量は一定でなく予測できないので、正確なタイムスタンプを作成することが困難である。ところがこの方法によれば、記録されたタイムスタンプの値を利用してＴＳパケットに付加するタイムスタンプの値を決定するので、ＩＥＥＥ１３９４インターフェースの全部または一部がＰＣのソフトウェアで構成されていても、正確なタイムスタンプを作成することが出来る。
【００２９】
またＰＣのソフトウェアでエンコードして作成されたＴＳパケットの場合には、全く新規にタイムスタンプの値を作成、付加する必要がある。
【００３０】
【発明が解決しようとする課題】
上記のようにハードディスクからＴＳパケットデータを読み出してＩＥＥＥ１３９４を用いて伝送する場合には、あらかじめ付加されたタイムスタンプの値を元に、それぞれのＴＳパケットをどのようにアイソクロナスパケットに組み入れるか、あるいはＥｍｐｔｙパケットをどう挿入するかを決定しなければならない。ところが付加されたタイムスタンプの値を元にして、実際にどのようにアイソクロナスパケットに組み入れるか、あるいはＥｍｐｔｙパケットをどう挿入するかを決定する手段は今まで提供されていなかった。
【００３１】
すなわち、予め付加されたタイムスタンプの値を元にＴＳパケットをどのようにアイソクロナスパケットに組み入れるかあるいはＥｍｐｔｙパケットをどう挿入するかを決定する手段がないという課題がある。
【００３２】
本発明は、このような従来の問題点を鑑みてなされたものであって、ハードディスクからＴＳパケットデータを読み出してＩＥＥＥ１３９４を用いて伝送する場合に、タイムスタンプの値を元にＴＳパケットデータをどのように伝送するかを容易に決定することができる送信装置、パケット形態決定方法、及び記録媒体を提供することを目的とするものである。
【００３３】
またＴＳパケットデータが例えばＰＣのソフトウェアでエンコードして作成されたものなどの場合、ＴＳパケットデータがＰＣ上に存在しており、ＰＣからＩＥＥＥ１３９４を用いてこのＴＳパケットデータを伝送しようとする場合には、あらかじめＴＳパケットの伝送タイミングを特定できるようなタイムスタンプを作成しておく必要がある。
【００３４】
しかし、このようにＰＣのソフトウェアでエンコードして作成されたＴＳパケットをＩＥＥＥ１３９４を用いて正常に伝送することが出来るＰＣは、世の中に知られていない。
【００３５】
すなわち、従来のＰＣでは、ＴＳパケットデータがＰＣ上に存在している場合、そのＴＳパケットデータをＩＥＥＥ１３９４を用いて正常に伝送することが出来るＰＣは存在しないという課題がある。
【００３６】
本発明は、このような従来の問題点を鑑みてなされたものであって、ＰＣ上でＴＳパケットデータをＩＥＥＥ１３９４を用いて伝送するためのタイムスタンプを容易に作成、付加することができ、従ってＰＣ上で作成されたＴＳパケットをＩＥＥＥ１３９４を用いて正常に伝送することが出来るソースパケット生成装置、及び記録媒体を提供することを目的とするものである。
【００３７】
【課題を解決するための手段】
上述した課題を解決するために、第１の本発明は、ソースパケットのデータとタイムスタンプを含むソースパケットのヘッダとの組で構成されるソースパケットを送信する送信装置であって、
前記ソースパケットが入力されると、前記ソースパケットに含まれる前記タイムスタンプの所定の部分の値を調べ、前記所定の部分の値が同一で、かつ連続して入力された前記ソースパケットをまとめて１個の伝送パケットデータとして出力する伝送パケット生成手段と、
出力された前記伝送パケットデータに所定の付加情報を付加して伝送パケットを作成し、作成した前記伝送パケットを外部に出力するデータ出力手段とを備えたことを特徴とする送信装置である。
【００３８】
また、第２の本発明は、前記伝送パケット生成手段は、２個の連続して入力された前記ソースパケットに含まれる前記タイムスタンプの前記所定の部分の値の差が、Ｎ≧２であるＮであった場合、
（Ｎ−１）個のダミー伝送パケットデータを前記データ出力手段に出力することを特徴とする第１の本発明の送信装置である。
【００３９】
また、第３の本発明は、ソースパケットのデータとタイムスタンプを含むソースパケットのヘッダとの組で構成されるソースパケットを送信する送信装置であって、
前記ソースパケットを分割する分割数Ｍ（Ｍ≧１）を指定する分割数指定手段と、
前記ソースパケットが入力されると、前記ソースパケットに含まれる前記タイムスタンプの所定の部分の値を調べ、２個の連続した前記ソースパケットに含まれる前記タイムスタンプの前記所定の部分の値の差が、初期値が０でかつ１以上の整数であるＬに対し、Ｎ≦（Ｌ＋１）（Ｌ≧０）であるＮ（Ｎ≧０）であった場合には、前記ソースパケットを前記Ｍ個に分割したものを、それぞれ伝送パケットデータとして出力し、
前記タイムスタンプの前記所定の部分の値の差が、Ｎ＞ＬであるＮであった場合には、（Ｎ−Ｌ）個のダミー伝送パケットデータを出力し、また、Ｎ≦（Ｌ＋１）であった場合はＬに（Ｌ＋Ｍ−Ｎ）を代入し、Ｎ＞（Ｌ＋１）であった場合にはＬに（Ｌ−１）を代入する伝送パケット生成手段と、
前記出力された伝送パケットデータ及び／または前記ダミー伝送パケットデータに所定の付加情報を付加したものを、伝送パケットとして外部に出力するデータ出力手段とを備えたことを特徴とする送信装置である。
【００４０】
また、第４の本発明は、前記Ｍは２または４または８であることを特徴とする第３の本発明の送信装置である。
【００４１】
また、第５の本発明は、前記伝送パケット生成手段は、Ｋ≧１である可変長もしくは固定長であるＫ個の前記ソースパケットを１組として入力されることを特徴とする第１〜４の本発明のいずれかの送信装置である。
【００４２】
また、第６の本発明は、前記所定の付加情報とは、ＣＩＰヘッダ、アイソクロナスヘッダ、ヘッダＣＲＣ、及びデータＣＲＣであり、
前記データ出力手段は、前記出力された伝送パケットデータに所定の前記ＣＩＰヘッダを付加するＣＩＰヘッダ付加手段と、
前記所定のＣＩＰヘッダを付加された伝送パケットデータに、さらに前記アイソクロナスヘッダ、前記ヘッダＣＲＣおよび前記データＣＲＣを付加して前記伝送パケットを作成し、前記作成した伝送パケットを外部に出力するＩＥＥＥ１３９４インターフェースとを有することを特徴とする第１〜５の本発明のいずれかの送信装置である。
【００４３】
また、第７の本発明は、前記ソースパケットのデータは、ＭＰＥＧのトランスポートストリームパケットであることを特徴とする第６の本発明の送信装置である。
【００４４】
また、第８の本発明は、前記タイムスタンプは、ＩＥＥＥ１３９４規格のＣｙｃｌｅＴｉｍｅＲｅｇｉｓｔｅｒのＣｙｃｌｅ＿ＣｏｕｎｔとＣｙｃｌｅ＿Ｏｆｆｓｅｔで表され、
前記所定の部分とは、前記Ｃｙｃｌｅ＿Ｃｏｕｎｔの部分であることを特徴とする第７の本発明の送信装置である。
【００４５】
また、第９の本発明は、ソースパケットのデータとタイムスタンプを含むソースパケットのヘッダとの組で構成されるソースパケットを受け取ると、
直前に受け取った前記ソースパケットに含まれる前記タイムスタンプの値と、今回受け取った前記ソースパケットに含まれるタイムスタンプの値との差分Ｎを計算し、
前記Ｎが、Ｎ＞（Ａ＋１）である場合には、（Ｎ−Ａ−１）個のダミーパケットを出力した後に、今回受け取った前記ソースパケットをＭ個に分割し出力すると同時に、Ａに（Ｍ−１）を代入し、
前記Ｎが、Ｎ＞（Ａ＋１）でない場合には、今回受け取った前記ソースパケットをＭ個に分割し出力すると同時に、Ａに（Ａ＋Ｍ−Ｎ）を代入することを特徴とするパケット形態決定方法である。
【００４６】
また、第１０の本発明は、最初に受け取った前記ソースパケットの場合には、Ｎ＝１かつＡ＝０とすることを特徴とする第９の本発明のパケット形態決定方法である。
【００４７】
また、第１１の本発明は、前記Ｍは、あらかじめ指定された値であることを特徴とする第９または１０の本発明のパケット形態決定方法である。
【００４８】
また、第１２の本発明は、前記Ｍは、前記ソースパケットと組で受け取ることを特徴とする第９または１０の本発明のパケット形態決定方法である。
【００４９】
また、第１３の本発明は、前記Ｍは、２または４または８であることを特徴とする第９〜１２の本発明のいずれかのパケット形態決定方法である。
【００５０】
また、第１４の本発明は、前記ソースパケットのデータは、ＭＰＥＧのトランスポートストリームパケットであることを特徴とする第９〜１３の本発明のいずれかのパケット形態決定方法である。
【００５１】
また、第１５の本発明は、前記タイムスタンプは、ＩＥＥＥ１３９４規格のＣｙｃｌｅＴｉｍｅＲｅｇｉｓｔｅｒのＣｙｃｌｅ＿ＣｏｕｎｔとＣｙｃｌｅ＿Ｏｆｆｓｅｔで表され、
前記差分Ｎは、前記Ｃｙｃｌｅ＿Ｃｏｕｎｔの部分の差分であることを特徴とする第１４の本発明のパケット形態決定方法である。
【００５２】
また、第１６の本発明は、第１のクロックで伝送されるデータパケットを生成し、前記第１のクロックで表される、前記データパケットの伝送タイミングを決定するパケット生成手段と、
前記伝送タイミングを、第２のクロックで表される時間軸上の時刻情報に変換し、前記時刻情報の全部または一部に基づいて値が決定されたタイムスタンプを前記データパケットに付加し、そのタイムスタンプが付加されたデータパケットをソースパケットとして出力する時刻情報付加手段とを備え、
出力された前記ソースパケットは、その付加されたタイムスタンプの値に基づいて伝送用パケットに変換されてインターフェースから送り出されることを特徴とするソースパケット生成装置である。
【００５３】
また、第１７の本発明は、前記データパケットのうち所定のデータパケットを第１のデータパケットとし、前記データパケットのうち、前記第１のデータパケット以外のデータパケットを第２のデータパケットとした場合、前記時刻情報付加手段は、前記第１のデータパケットと前記第２のデータパケットとの、前記第１のクロックにおける前記伝送タイミングの差を、前記第２のクロックにおける時間差に変換した値に基づいて前記第２のデータパケットに付加するタイムスタンプの値を決定することを特徴とする第１６の本発明のソースパケット生成装置である。
【００５４】
また、第１８の本発明は、前記時刻情報付加手段は、前記第１のデータパケットに付加するタイムスタンプの値を０とし、
前記第２のデータパケットに付加するタイムスタンプの値を前記第２のクロックにおける時間差に変換した値とすることを特徴とする第１７の本発明のソースパケット生成装置である。
【００５５】
また、第１９の本発明は、前記時刻情報付加手段は、前記第１のデータパケットに付加するタイムスタンプの値を所定の値とし、
前記第２のデータパケットに付加するタイムスタンプの値を、前記第２のクロックにおける時間差に変換した値に前記所定の値を加算した値とすることを特徴とする第１７の本発明のパケット生成装置である。
【００５６】
また、第２０の本発明は、前記所定のデータパケットとは、先頭のデータパケットであることを特徴とする第１７〜１９の本発明のいずれかのパケット生成装置である。
【００５７】
また、第２１の本発明は、前記データパケットのうち、既にタイムスタンプの値が決定されたデータパケットである第３のデータパケットに隣接するデータパケットを第４のデータパケットとした場合、前記時刻情報付加手段は、前記第３のデータパケットと前記第４のデータパケットとの、前記第１のクロックにおける前記伝送タイミングの差を、前記第２のクロックにおける時間差に変換した値に前記第３のデータパケットに付加されている前記タイムスタンプの値を加算した値を、前記第４のデータパケットに付加する前記タイムスタンプの値とすることを特徴とする第１６の本発明のソースパケット生成装置である。
【００５８】
また、第２２の本発明は、前記時刻情報付加手段は、前記データパケットのうち先頭のデータパケットに付加するタイムスタンプの値を所定の値とすることを特徴とする第２１の本発明のソースパケット生成装置である。
【００５９】
また、第２３の本発明は、前記第１のクロックの周波数は、２７ＭＨｚであり、
前記データパケットはＭＰＥＧ２トランスポートストリームパケットであることを特徴とする第１６〜２２の本発明のいずれかのソースパケット生成装置である。
【００６０】
また、第２４の本発明は、前記パケット生成手段は、前記時刻情報付加手段に前記ＭＰＥＧ２トランスポートストリームパケットを出力する代わりに、前記ＭＰＥＧ２トランスポートストリームパケットにダミータイムスタンプを付加したものを出力し、
前記時刻情報付加手段は、前記ダミータイムスタンプを、生成した前記タイムスタンプで置き換えることを特徴とする第２３の本発明のソースパケット生成装置である。
【００６１】
また、第２５の本発明は、前記パケット生成手段は、ＭＰＥＧ２プログラムストリームパケットを受け取り、前記ＭＰＥＧ２プログラムストリームパケットから前記ＭＰＥＧ２トランスポートストリームパケットを生成することを特徴とする第２３または２４の本発明のソースパケット生成装置である。
【００６２】
また、第２６の本発明は、前記第２のクロックの周波数は、約２４．５７６ＭＨｚであり、
前記時刻情報は、ＩＥＥＥ１３９４規格におけるＣｙｃｌｅ  Ｔｉｍｅ  Ｒｅｇｉｓｔｅｒに基づく値であり、
前記タイムスタンプは、ＩＥＣ６１８８３におけるソースパケットヘッダに記載するタイムスタンプであることを特徴とする第２３〜２５の本発明のいずれかのソースパケット生成装置である。
【００６３】
また、第２７の本発明は、前記出力するとは、外部に出力することであることを特徴とする第１６〜２６の本発明のいずれかのソースパケット生成装置である。
【００６４】
また、第２８の本発明は、前記タイムスタンプが付加されたデータパケットをソースパケットとして格納するバッファ手段を備え、
前記出力するとは、前記バッファに書き込むことであり、
前記バッファ手段は、所定の個数の前記ソースパケットが書き込まれると、
前記所定の個数の前記ソースパケットを外部に出力することを特徴とする第１６〜２６の本発明のいずれかのソースパケット生成装置である。
【００６５】
また、第２９の本発明は、第１〜８、１６〜２８の本発明のいずれかの送信装置またはソースパケット生成装置の手段の機能をコンピュータにより実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【００６６】
また、第３０の本発明は、第９〜１５の本発明のいずれかのパケット形態決定方法のステップの動作をコンピュータにより実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【００６７】
【発明の実施の形態】
以下に、本発明の実施の形態を図面を参照して説明する。
【００６８】
（第１の実施の形態）
以下、本発明の第１の実施の形態について、図７〜図１０を用いて説明する。
【００６９】
図７は、送信装置の例である。図７において、701はＰＣ、702はＩＥＥＥ１３９４インタフェース、703はＣＩＰ作成部、704はデータ読み出し部、705はタイムスタンプ抽出判断部、706はハードディスク、707はＩＥＥＥ１３９４バス、708は受信装置である。
【００７０】
図８は、ハードディスク706におけるＴＳパケット101の記録形式の一例である。図８において、801はヘッダ、802はトレーラである。
【００７１】
図９は、ハードディスク706から読み出されたソースパケットデータの一例である。
【００７２】
図１０は、図９のソースパケットデータから作成したＣＩＰの構成である。
【００７３】
なお、本実施の形態のＰＣ701は本発明の送信装置の例である。
【００７４】
それでは、ＰＣ701の動作について説明する。
【００７５】
まずハードディスク706には図８のような形式でＴＳパケットデータが記録されている。すなわち、ハードディスク７０６には、ＴＳパケットデータの送信元がＴＳパケットデータに付加したタイムスタンプも一緒に記録されている。
【００７６】
データ読み出し部704は、ハードディスク706からソースパケット103、すなわちソースパケットヘッダ102とＴＳパケット101の組を読み出し、ＣＩＰ作成部703およびタイムスタンプ抽出判断部705に出力する。
【００７７】
タイムスタンプ抽出判断部705は、受け取ったソースパケットヘッダ102からタイムスタンプ201を抽出し、タイムスタンプ201のＣｙｃｌｅ＿Ｃｏｕｎｔの値が同じでかつ連続しているソースパケット103がどれかをＣＩＰ作成部703に通知し、それらのソースパケットをまとめて１つのＣＩＰデータを構成するように指示を出す。
【００７８】
例えば図９の場合には、ソースパケット103aとソースパケット103bが同じＣｙｃｌｅ＿Ｃｏｕｎｔであり、かつ連続しているというのを検出し、ＣＩＰ作成部703に指示を出す。
【００７９】
ＣＩＰ作成部902は、受け取ったソースパケット103から、従来の技術で説明した方法に従って、ＣＩＰデータ302を作成し、ＩＥＥＥ１３９４インタフェース901に出力する。
【００８０】
例えば、ソースパケット103aとソースパケット103bを連結し、その先頭にＣＩＰヘッダ301aを付加し、ＣＩＰデータ302aとしてＩＥＥＥ１３９４インタフェース702に出力する。
【００８１】
またタイムスタンプ抽出判断部705は、抽出したタイムスタンプ201のＣｙｃｌｅ＿Ｃｏｕｎｔと、直前のソースパケット103に含まれているタイムスタンプ201のＣｙｃｌｅ＿Ｃｏｕｎｔとを比較し、両者の差Ｎが２以上であった場合には、それらのソースパケットの間に、（Ｎ−１）個のＥｍｐｔｙパケットを挿入するように指示を出す。
【００８２】
ＣＩＰ作成部703は、Ｅｍｐｔｙパケットを挿入する指示を受けると、ＣＩＰヘッダ301のみで構成されるＣＩＰデータ302を作成し、ＩＥＥＥ１３９４インタフェース702に出力する。
【００８３】
例えば図９の場合には、ソースパケット103cに含まれるタイムスタンプのＣｙｃｌｅ＿Ｃｏｕｎｔと、ソースパケット103dに含まれるＣｙｃｌｅ＿Ｃｏｕｎｔとの差が２であるので、これらのソースパケットの間にＥｍｐｔｙパケットを１個挿入するように、ＣＩＰ作成部703に指示を出す。
【００８４】
ＩＥＥＥ１３９４インタフェース702は、受け取ったＣＩＰデータ302に図４のようにアイソクロナスヘッダ402、ヘッダＣＲＣ403およびデータＣＲＣ404を付加しアイソクロナスパケット401を生成し、ＩＥＥＥ１３９４バス706に出力する。
【００８５】
出力されたアイソクロナスパケット401は、例えば受信装置708で受信される。
【００８６】
以上のようにして、ハードディスク706に記録されているＴＳパケットデータからアイソクロナスパケット401を構成し、ＩＥＥＥ１３９４バス706に出力することができる。
【００８７】
なお、ハードディスク706に記録されているのはソースパケット103であるとしたが、ＴＳパケット101とタイムスタンプ201の組でもよいし、タイムスタンプ201の代わりにタイムスタンプ201から生成した別の時刻情報でも構わない。この場合には、データ読み出し部704でタイムスタンプ201およびソースパケットヘッダ102を作成する。
【００８８】
また、ハードディスク704上のデータファイルは、ＡＶＩファイル形式やＡＳＦファイル形式、あるいはＱｕｉｃｋＴｉｍｅファイル形式として記録されていてもよいし、ヘッダやトレーラなどの付加情報が記録されていなくてもよい。
【００８９】
またソースパケットヘッダ102やＴＳパケット101が記録されている順序は図８の通りでなくてもよい。
【００９０】
また伝送するデータは、ＭＰＥＧ２ＴＳパケットに限らず、ソースパケットヘッダを含むソースパケットであればよい。
【００９１】
またソースパケットを出力するのはハードディスクに限らず、他の記録装置であってもよいし、ＴＳパケット形式以外のＭＰＥＧ２データをＴＳパケット形式に変換する装置でも構わない。
【００９２】
また送信装置の一部または全部がソフトウェアで構成されていても構わないし、送信装置はＰＣでなくても構わない。
【００９３】
（第２の実施の形態）
以下、本発明の第２の実施の形態について、図１１〜図１４を用いて説明する。
【００９４】
図１１は、送信装置の例である。図１１において、1601はＰＣ、1602はＣＩＰ作成部、1603は分割数指定部、1604はタイムスタンプ抽出判断部、1605は分割数である。
【００９５】
図１２は、ソースパケット103aの分割方法の一例である。図１２において、1701a1、1701a2は分割ブロックである。
【００９６】
図１３は、ハードディスク706から読み出されたソースパケットデータの一例である。
【００９７】
図１４は、図１３のソースパケットデータから作成したＣＩＰの構成である。
【００９８】
なお、本実施の形態のＰＣ1601は本発明の送信装置の例である。
【００９９】
ところでＭＰＥＧ２−ＴＳデータを伝送する際に、データレートが十分低い場合には、使用するＩＥＥＥ１３９４バスの伝送帯域を少なくするように、ソースパケット103を分割してＣＩＰデータ304を構成することができる。例えば図１２の場合には、１９２バイトのソースパケット103aを、それぞれ９６バイトの分割ブロック1701a1、分割ブロック1701a2に分割している。この分割ブロック1701a1に対し、分割しない場合と同様ＣＩＰヘッダ301を付加し、ＣＩＰデータ302を構成する。
【０１００】
この分割数は、２、４または８のいずれかの値を取ることができ、それぞれ９６バイト、４８バイトおよび２４バイトずつ均等に分割される。分割数は、一連のデータを伝送し終わるまで変更されることはない。
【０１０１】
それでは、ＰＣ1601の動作について説明する。
【０１０２】
ハードディスク706には第１の実施の形態同様、図８のような形式でＴＳパケットデータが記録されているものとする。
【０１０３】
まず、データ伝送に先立って、分割数指定部1603は、あらかじめ分割数1605として、例えばＭ＝２をＣＩＰ作成部1602およびタイムスタンプ抽出判断部1604に出力しておく。指定した分割数1605は、伝送を終了するまで変更しないものとする。
【０１０４】
データ読み出し部704は、ハードディスク706からソースパケット103、すなわちソースパケットヘッダ102とＴＳパケット101の組を読み出し、ＣＩＰ作成部1602およびタイムスタンプ抽出判断部1604に出力する。
【０１０５】
タイムスタンプ抽出判断部1604は、受け取ったソースパケットヘッダ102からタイムスタンプ201を抽出し、そのタイムスタンプ201のＣｙｃｌｅ＿Ｃｏｕｎｔの値と、直前に受け取ったソースパケットヘッダ102に含まれていたタイムスタンプ201のＣｙｃｌｅ＿Ｃｏｕｎｔの値との差分Ｎを取る。ただし最初に受け取ったソースパケット103の場合には、Ｎ＝１とする。
【０１０６】
このときＡ≧０である可変値Ａに対し、Ｎ≦（Ａ＋１）であれば、受け取ったソースパケット103をＭ＝２個に分割し、ＣＩＰデータ301を構成するように、ＣＩＰ作成部1602に指示を出す。
【０１０７】
ここでは、最初に受け取ったソースパケット103に含まれるタイムスタンプ201のＣｙｃｌｅ＿Ｃｏｕｎｔの値と、今回受け取ったソースパケット103に含まれるタイムスタンプ201のＣｙｃｌｅ＿Ｃｏｕｎｔの値との差をＮｃとし、Ｅｍｐｔｙパケットを含めてそれまでに作成したＣＩＰデータ301の個数をＰ個としたとき、できるだけＮｃ＝ＰとなるようにＡの値を変化させていく。ただしＣｙｃｌｅ＿Ｃｏｕｎｔは０〜７９９９の間の値しかとれず、８０００を越えた場合には０に戻るようになっている。このためＮｃは、単純にタイムスタンプ201の値の差分ではなく、それまでの累計値であるものとする。
【０１０８】
またＮ＞（Ａ＋１）である場合には、まず（ＮーＡー１）個のＥｍｐｔｙパケットを挿入するようにＣＩＰ作成部1602に指示を出した後、受け取ったソースパケット103をＭ＝２個に分割し、ＣＩＰデータ301を構成するように、ＣＩＰ作成部1602に指示を出す。
【０１０９】
Ａの決定方法としては、初期値としてＡ＝０とし、新しいソースパケット103を受け取り、ＣＩＰ作成部1602に指示を出すごとに、Ｎ≦（Ａ＋１）であった場合には新たに（Ａ＋Ｍ−Ｎ）をＡに代入し、Ｎ＞（Ａ＋１）であった場合には（Ｍ−１）をＡに代入するものとする。
【０１１０】
例えば図１３の場合には、まず最初のソースパケットであるソースパケット103aの場合はＮ＝１であり、この時点ではＡ＝０であるため、Ｎ≦（Ａ＋１）であるため、ソースパケット103aをＭ＝２個に分割してＣＩＰデータ301を作成するように、ＣＩＰ作成部1602に指示を出す。この時点で、Ａ＝０＋２ー１＝１となる。
【０１１１】
ソースパケット103bの場合はＮ＝２となり、Ａ＝１であるため、Ｎ≦（Ａ＋１）であるため、やはりソースパケット103bをＭ＝２個に分割してＣＩＰデータ301を作成するように、ＣＩＰ作成部1602に指示を出す。この時点でＡ＝１＋２ー２＝１である。
【０１１２】
ソースパケット103cの場合も同様の結果になり、やはりＡ＝１になる。
【０１１３】
またソースパケット103dの場合はＮ＝３となり、Ａ＝１であるため、Ｎ＞（Ａ＋１）となる。そのためまず（３−１−１）＝１個のＥｍｐｔｙパケットを挿入するように、ＣＩＰ作成部1602に指示を出した後、ソースパケット103dをＭ＝２個に分割してＣＩＰデータ301を作成するように、ＣＩＰ作成部1602に指示を出す。この場合はＡ＝２−１＝１となる。
【０１１４】
さて、ＣＩＰ作成部1602は、受け取ったソースパケット103から、上記した方法に従って、ＣＩＰデータ302を作成し、ＩＥＥＥ１３９４インタフェース702に出力する。
【０１１５】
またＣＩＰ作成部902は、Ｅｍｐｔｙパケットを挿入する指示を受けると、ＣＩＰヘッダ301のみで構成されるＣＩＰデータ302を作成し、ＩＥＥＥ１３９４インタフェース702に出力する。
【０１１６】
ＩＥＥＥ１３９４インタフェース702は、受け取ったＣＩＰデータ302に図４のようにアイソクロナスヘッダ402、ヘッダＣＲＣ403およびデータＣＲＣ404を付加しアイソクロナスパケット401を生成し、ＩＥＥＥ１３９４バス706に出力する。
【０１１７】
出力されたアイソクロナスパケット401は、例えば受信装置708で受信される。
【０１１８】
以上のようにして、ハードディスク706に記録されているＴＳパケットデータを分割しながら、アイソクロナスパケット401を構成し、ＩＥＥＥ１３９４バス706に出力することができる。
【０１１９】
なお本実施の形態では、Ｍの値は２であるとしたが、Ｍ＝１、２、４、８のいずれかの値であればよい。ただしＭ＝１の場合には、ＣＩＰ作成部1602およびタイムスタンプ抽出判断部1604の動作は、第１の実施の形態で説明した動作をするものとする。
【０１２０】
またＡの決定方法は、上記したものに限らず、できるだけＮｃ＝Ｐとなるようにする値であれば、どのように決定しても構わない。
【０１２１】
また、ハードディスク706に記録されているのはソースパケット103であるとしたが、ＴＳパケット101とタイムスタンプ201の組でもよいし、タイムスタンプ201の代わりにタイムスタンプ201から生成した別の時刻情報でも構わない。この場合には、データ読み出し部704でタイムスタンプ201およびソースパケットヘッダ102を作成する。
【０１２２】
また、ハードディスク704上のデータファイルは、ＡＶＩファイル形式やＡＳＦファイル形式、あるいはＱｕｉｃｋＴｉｍｅファイル形式などとして記録されていてもよいし、ヘッダやトレーラなどの付加情報が記録されていなくてもよい。
【０１２３】
またソースパケットヘッダ102やＴＳパケット101が記録されている順序は図８の通りでなくてもよい。
【０１２４】
また伝送するデータは、ＭＰＥＧ２ＴＳパケットに限らず、ソースパケットヘッダを含むソースパケットであればよい。
【０１２５】
また送信装置の一部または全部がソフトウェアで構成されていても構わないし、送信装置はＰＣでなくても構わない。
【０１２６】
（第３の実施の形態）
以下、本発明の第３の実施の形態について、図１５、図１６を用いて説明する。
【０１２７】
図１５はソースパケット生成装置の例である。
【０１２８】
図１５において、2401はタイムスタンプ付加部、2402はＴＳパケット生成部、2403はデータ読み出し部、2404は送信部、2405はハードディスク、2406はＰＣ、2407は時刻情報、2408はＰＳ（Ｐｒｏｇｒａｍ  Ｓｔｒｅａｍ）パケットである。
【０１２９】
図１６はタイムスタンプ201の生成方法の一例である。
【０１３０】
まずデータ読み出し部2403は、ハードディスク2405よりＰＳパケット2408を読み出し、ＴＳパケット生成部2402に出力する。
【０１３１】
ＴＳパケット生成部2402は、受け取ったＰＳパケット2408をＭＰＥＧ２の規格に従って、ＴＳパケット101を生成し、タイムスタンプ付加部2401に出力する。このときＴＳパケット101の伝送タイミングはＴＳパケット生成部2402が決定するので、ＭＰＥＧ２の動作クロック（２７ＭＨｚ）で表される時間軸上での時刻情報2407を合わせて出力する。
【０１３２】
ＴＳパケット101の伝送タイミングは、例えば図１６の２７ＭＨｚの時間軸のようになる。
【０１３３】
タイムスタンプ付加部2401は、受けとった時刻情報2407をＩＥＥＥ１３９４の動作クロック（２４．５７６ＭＨｚ）で表される時間軸上の時刻情報に変換する。時刻情報の変換は例えば以下のように行う。
【０１３４】
まずストリームの先頭のＴＳパケット101aのＩＥＥＥ１３９４の動作クロックにおける時間軸上の時刻は初期値として０とする。
【０１３５】
次にあるＴＳパケットと、先頭のＴＳパケット101aとの時間差をＩＥＥＥ１３９４の動作クロックに変換する。例えば図１６のように、TSパケット101aとＴＳパケット101bとの時間差がＭＰＥＧ２の動作クロックである２７ＭＨｚで５０００サイクルだとすると、これをＩＥＥＥ１３９４の動作クロックである２４．５７６ＭＨｚに換算すると、約４５５１サイクルとなる。これを図６で示すＣＴＲの値として記述すると、０ｘ００００１５Ｃ７となり、この値の下位２５ビットがＴＳパケット101bに付加されるタイムスタンプの値となる。
【０１３６】
タイムスタンプ付加部2401は、以上のようにして作成されたタイムスタンプ201をＴＳパケット101に付加したものを、ソースパケット103として送信部2404に出力する。
【０１３７】
送信部2404は、例えば本発明の第１の実施の形態におけるＣＩＰ作成部703、ＩＥＥＥ１３９４インタフェース702およびタイムスタンプ抽出判断部705と同様の動作を行うことにより、ＩＥＥＥ１３９４バス707にアイソクロナスパケット401を出力される。出力されたアイソクロナスパケット401は、ＩＥＥＥ１３９４バス707を通して、受信装置708などに送信される。
【０１３８】
以上のようにして、ハードディスク2405に記録されているＰＳパケットデータから生成されたＴＳパケット103および時刻情報2407から、タイムスタンプ201を生成、付加することでソースパケット103を生成し、またソースパケット103からアイソクロナスパケット401を構成し、ＩＥＥＥ１３９４バス706に出力することができる。
【０１３９】
なお、タイムスタンプ付加部2401は、あるＴＳパケットと、先頭のＴＳパケット101aとの時間差をＩＥＥＥ１３９４の動作クロックに変換することでタイムスタンプ201を生成するとしたが、あるＴＳパケットに付加されるタイムスタンプは、直前のＴＳパケットに付加されているタイムスタンプの値に、直前のＴＳパケットとそのＴＳパケットとの時間差をＩＥＥＥ１３９４の動作クロックで表した値を加算することで生成するなど、異なる方法で作成しても構わない。要するにＭＰＥＧ２の動作クロックで表される時刻情報を、ＩＥＥＥ１３９４の動作クロックの時間軸上で表せるようにすればよい。
【０１４０】
また、本実施の形態のタイムスタンプ付加部２４０１は、あるＴＳパケットと、先頭のＴＳパケット１０１ａとの時間差をＩＥＥＥ１３９４の動作クロックに変換することでタイムスタンプ２０１を生成するとして説明したが、これに限らない。先頭以外のＴＳパケット１０１ａとの時間差をＩＥＥＥ１３９４の動作クロックに変換することでタイムスタンプ２０１を生成しても構わない。要するに、所定のＴＳパケットとの時間差をＩＥＥＥ１３９４の動作クロックに変換することでタイムスタンプ２０１を生成しさえすればよい。
【０１４１】
またＴＳパケット生成部2402は、データ読み出し部2403を通してハードディスク2405上に記録されているＰＳパケット2408を、ＴＳパケット101に変換するとしたが、ＰＳパケット2408はハードディスク2405ではなく他の記録装置に記録されていてもよいし、ＬＡＮやインターネットなどから出力されるものでも構わない。
【０１４２】
またＴＳパケット生成部2402は、ＰＳパケット2408からＴＳパケット101に変換するとしたが、他のデータからＴＳパケット101を生成しても構わないし、外部からＴＳパケット101を入力し、その時刻情報2407を生成し、ＴＳパケット101と合わせてタイムスタンプ付加部2401に出力しても構わない。
【０１４３】
またＴＳパケット生成部2402は、ＴＳパケット101の代わりに、ＴＳパケット101にタイムスタンプ201と同じ大きさのダミータイムスタンプを付加し、タイムスタンプ付加部2401は、このダミーのタイムスタンプを生成したタイムスタンプ201で置き換えるようにしても構わない。
【０１４４】
また送信部2404を通してＩＥＥＥ１３９４バス707に出力する代わりに、タイムスタンプ付加部2401で生成されたソースパケット103を、ハードディスクなどの記録装置に記録したり、ＬＡＮやインターネットなどに出力しても構わない。
【０１４５】
またＴＳパケット101の代わりに、ＭＰＥＧ２トランスポートストリーム以外のパケットデータを出力しても構わない。要するにＩＥＥＥ１３９４と異なる動作クロックのフォーマットに基づくパケットデータで、伝送時にＩＥＥＥ１３９４のＣＴＲに基づく時刻情報を付加する必要のあるものであればよい。
【０１４６】
またソースパケット生成装置の一部または全部がソフトウェアで構成されていても構わないし、送信装ソースパケット生成装置はＰＣでなくても構わない。
【０１４７】
（第４の実施の形態）
以下、本発明の第４の実施の形態について、図１７を用いて説明する。
【０１４８】
図１７はソースパケット生成装置の例である。図１７において、2601はバッファである。
【０１４９】
データ読み出し部2403、ＴＳパケット生成部2402およびタイムスタンプ付加部2401の動作は、本発明の第３の実施の形態と同様である。
【０１５０】
タイムスタンプ付加部2401は、生成したタイムスタンプ201をＴＳパケット101に付加したものを、ソースパケット103としてバッファ2601に記録する。
【０１５１】
バッファ2601は、記録されたソースパケット103の数が一定量、例えば２５６パケットになると、これらのソースパケット103を一括して送信部2602に出力する。
【０１５２】
送信部2602は、例えば本発明の第１におけるＣＩＰ作成部703、ＩＥＥＥ１３９４インタフェース702およびタイムスタンプ抽出判断部705と同様の動作を行うことにより、ＩＥＥＥ１３９４バス707にアイソクロナスパケット401を出力される。出力されたアイソクロナスパケット401は、ＩＥＥＥ１３９４バス707を通して、受信装置708などに送信される。
【０１５３】
以上のようにして、ハードディスク2405に記録されているＰＳパケットデータから生成されたＴＳパケット103および時刻情報2407から、タイムスタンプ201を生成、付加することでソースパケット103を生成し、またソースパケット103からアイソクロナスパケット401を構成し、ＩＥＥＥ１３９４バス706に出力することができる。
【０１５４】
なお、本実施の形態のタイムスタンプ付加部２４０１は本発明の時刻情報付加手段の例である。
【０１５５】
なお、タイムスタンプ付加部2401は、あるＴＳパケットと、先頭のＴＳパケット101aとの時間差をＩＥＥＥ１３９４の動作クロックに変換することでタイムスタンプ201を生成するとしたが、あるＴＳパケットに付加されるタイムスタンプは、直前のＴＳパケットに付加されているタイムスタンプの値に、直前のＴＳパケットとそのＴＳパケットとの時間差をＩＥＥＥ１３９４の動作クロックで表した値を加算することで生成するなど、異なる方法で作成しても構わない。要するにＭＰＥＧ２の動作クロックで表される時刻情報を、ＩＥＥＥ１３９４の動作クロックの時間軸上で表せるようにすればよい。
【０１５６】
またＴＳパケット生成部2402は、データ読み出し部2403を通してハードディスク2405上に記録されているＰＳパケット2408を、ＴＳパケット101に変換するとしたが、ＰＳパケット2408はハードディスク2405ではなく他の記録装置に記録されていてもよいし、ＬＡＮやインターネットなどから出力されるものでも構わない。
【０１５７】
またＴＳパケット生成部2402は、ＰＳパケット2408からＴＳパケット101に変換するとしたが、他のデータからＴＳパケット101を生成しても構わないし、外部からＴＳパケット101を入力し、その時刻情報2407を生成し、ＴＳパケット101と合わせてタイムスタンプ付加部2401に出力しても構わない。
【０１５８】
またＴＳパケット生成部2402は、ＴＳパケット101の代わりに、ＴＳパケット101にタイムスタンプ201と同じ大きさのダミータイムスタンプを付加し、タイムスタンプ付加部2401は、このダミーのタイムスタンプを生成したタイムスタンプ201で置き換えるようにしても構わない。
【０１５９】
また送信部2404を通してＩＥＥＥ１３９４バス707に出力する代わりに、バッファ2601は記録されたソースパケット103を、ハードディスクなどの記録装置に記録したり、ＬＡＮやインターネットなどに出力しても構わない。
【０１６０】
またＴＳパケット101の代わりに、ＭＰＥＧ２トランスポートストリーム以外のパケットデータを出力しても構わない。要するにＩＥＥＥ１３９４と異なる動作クロックのフォーマットに基づくパケットデータで、伝送時にＩＥＥＥ１３９４のＣＴＲに基づく時刻情報を付加する必要のあるものであればよい。
【０１６１】
またソースパケット生成装置の一部または全部がソフトウェアで構成されていても構わないし、ソースパケット生成装置はＰＣでなくても構わない。
【０１６２】
なお、本発明の送信装置またはソースパケット生成装置の全部または一部の手段の全部または一部の機能をコンピュータにより実行させるためのプログラム及び／またはデータを担持した媒体であって、コンピュータにより処理可能なことを特徴とする媒体も本発明に属する。
【０１６３】
さらに、本発明の送信装置またはソースパケット生成装置の全部または一部の手段の全部または一部の機能をコンピュータにより実行させるためのプログラム及び／またはデータであることを特徴とする情報集合体も本発明に属する。
【０１６４】
さらに、本発明のパケット形態決定方法の全部または一部のステップの全部または一部の動作をコンピュータにより実行させるためのプログラム及び／またはデータを担持した媒体であって、コンピュータにより処理可能なことを特徴とする媒体も本発明に属する。
【０１６５】
さらに、本発明のパケット形態決定方法の全部または一部のステップの全部または一部の動作をコンピュータにより実行させるためのプログラム及び／またはデータであることを特徴とする情報集合体も本発明に属する。
【０１６６】
さらに、本発明は、上述した本発明の送信装置またはソースパケット生成装置の全部または一部の手段の全部または一部の機能をコンピュータにより実行させるためのプログラム及び／またはデータを担持した媒体であり、コンピュータにより読み取り可能且つ、読み取られた前記プログラム及び／またはデータが前記コンピュータと協動して前記機能を実行する媒体である。
【０１６７】
さらに、本発明は、上述した本発明の送信装置またはソースパケット生成装置の全部または一部の手段の全部または一部の機能をコンピュータにより実行させるためのプログラム及び／またはデータである情報集合体であり、コンピュータにより読み取り可能且つ、読み取られた前記プログラム及び／またはデータが前記コンピュータと協動して前記機能を実行する情報集合体である。
【０１６８】
さらに、本発明は、上述した本発明のパケット形態決定方法の全部または一部のステップの全部または一部の動作をコンピュータにより実行させるためのプログラム及び／またはデータを担持した媒体であり、コンピュータにより読み取り可能且つ、読み取られた前記プログラム及び／またはデータが前記コンピュータと協動して前記動作を実行する媒体である。
【０１６９】
本発明は、上述した本発明のパケット形態決定方法の全部または一部のステップの全部または一部の動作をコンピュータにより実行させるためのプログラム及び／またはデータである情報集合体であり、コンピュータにより読み取り可能且つ、読み取られた前記プログラム及び／またはデータが前記コンピュータと協動して前記動作を実行する情報集合体である。
【０１７０】
さらに、本発明のデータとは、データ構造、データフォーマット、データの種類などを含む。
【０１７１】
さらに、本発明の媒体とは、ＲＯＭ等の記録媒体、インターネット等の伝送媒体、光・電波・音波等の伝送媒体を含む。
【０１７２】
さらに、本発明の担持した媒体とは、例えば、プログラム及び／またはデータを記録した記録媒体、やプログラム及び／またはデータを伝送する伝送媒体等を含む。
【０１７３】
さらに、本発明のコンピュータにより処理可能とは、例えば、ＲＯＭなどの記録媒体の場合であれば、コンピュータにより読みとり可能であることであり、伝送媒体の場合であれば、伝送対象となるプログラム及び／またはデータが伝送の結果として、コンピュータにより取り扱えることであることを含む。
【０１７４】
さらに、本発明の情報集合体とは、例えば、プログラム及び／またはデータ等のソフトウエアを含むものである。
【０１７５】
さらに、以上説明した様に、本発明の構成は、ソフトウェア的に実現しても良いし、ハードウェア的に実現しても良い。
【０１７６】
【発明の効果】
以上説明したところから明らかなように、本発明は、ハードディスクなどの記録装置からＴＳパケットデータを読み出してＩＥＥＥ１３９４を用いて伝送する場合に、タイムスタンプの値を元にＴＳパケットデータをどのように伝送するかを容易に決定することができる送信装置、パケット形態決定方法、及び記録媒体を提供することが出来る。
【０１７７】
また、以上説明したところから明らかなように、本発明は、ＴＳパケットデータに付加すべきタイムスタンプの値を容易に生成することができるソースパケット生成装置、及び記録媒体を提供することが出来る。
【図面の簡単な説明】
【図１】  ＩＥＣ６１８８３におけるＭＰＥＧ２ＴＳパケットを伝送するためのソースパケットの構成を示す図
【図２】  ソースパケットヘッダ102の構成を示す図
【図３】  ＣＩＰの構成の一例を示す図
【図４】  ＣＩＰデータ302を伝送するためのアイソクロナスパケットの構成を示す図
【図５】  ＴＳパケット101の伝送タイミングの概念図
【図６】  ＩＥＥＥ１３９４におけるＣＴＲの構成を示す図
【図７】  本発明の第１の実施形の態における送信装置の例を示す図
【図８】  ハードディスク704に記録されるデータファイルの構成の一例を示す図
【図９】  ハードディスク706から読み出されたソースパケットデータの一例を示す図
【図１０】  図９のソースパケットデータから作成したＣＩＰデータの構成を示す図
【図１１】  本発明の第２の実施の形態における送信装置の例を示す図
【図１２】  ソースパケット103aの分割方法の一例を示す図
【図１３】  ハードディスク706から読み出されたソースパケットデータの一例を示す図
【図１４】  図１１のソースパケットデータから作成したＣＩＰデータの構成を示す図
【図１５】  本発明の第３の実施の形態におけるソースパケット生成装置の例を示す図
【図１６】  タイムスタンプ201の生成方法の一例を示す図
【図１７】  本発明の第４の実施の形態におけるソースパケット生成装置の例を示す図
【符号の説明】
101 ＴＳパケット
102 ソースパケットヘッダ
103 ソースパケット
201 タイムスタンプ
202 予備情報
301 ＣＩＰヘッダ
302 ＣＩＰデータ
401 アイソクロナスパケット
402 アイソクロナスヘッダ
403 ヘッダＣＲＣ
404 データＣＲＣ
601 ＣＴＲ
701 ＰＣ
702 ＩＥＥＥ１３９４インタフェース
703 ＣＩＰ作成部
704 データ読み出し部
705 タイムスタンプ抽出判断部
706 ハードディスク
707 ＩＥＥＥ１３９４バス
708 受信装置
801 ヘッダ
802 トレーラ
1101  伝送パケット形態リスト
1301  最終差分値用バッファ
1302  待避用バッファ
1601  ＰＣ
1602  ＣＩＰ作成部
1603  分割数指定部
1604  タイムスタンプ抽出判断部
1701a1、1701a2  分割ブロック
2401  タイムスタンプ付加部
2402  ＴＳパケット生成部
2403  データ読み出し部
2404  送信部
2405  ハードディスク
2406  ＰＣ
2407  時刻情報
2408  ＰＳパケット
2601  バッファ
2602  送信部
【図１】
0003748376.tif 000002
【図２】
0003748376.tif 000003
【図３】
0003748376.tif 000004
【図４】
0003748376.tif 000005
【図５】
0003748376.tif 000006
【図６】
0003748376.tif 000007
【図７】
0003748376.tif 000008
【図８】
0003748376.tif 000009
【図９】
0003748376.tif 000010
【図１０】
0003748376.tif 000011
【図１１】
0003748376.tif 000012
【図１２】
0003748376.tif 000013
【図１３】
0003748376.tif 000014
【図１４】
0003748376.tif 000015
【図１５】
0003748376.tif 000016
【図１６】
0003748376.tif 000017
【図１７】
0003748376.tif 000018