(57)【要約】【課題】  USBホストが通信先のUSBデバイスに応じて、パケットジッタを除去することのできる適切な通信方法を用いて、MPEG-2 TSデータの送受信を行えるようにすること。【解決手段】  外部装置とUSBを介して通信するUSBホストにおけるMPEG-2 TSデータの通信方法であって、前記外部装置からディスクリプタ情報を取得する取得工程（Ｓ１００）と、取得したディスクリプタ情報を解析して、前記外部装置との送受信にタイムスタンプ情報を用いるかどうかを判断する判断工程（Ｓ１０２）と、タイムスタンプ情報を用いると判断した場合に、タイムスタンプ情報を用いて前記外部装置とMPEG-2 TSデータの送受信を行う第１のモードに設定し（Ｓ１０３）、タイムスタンプ情報を用いないと判断した場合には、タイムスタンプ情報を用いずに前記外部装置とMPEG-2 TSデータの送受信を行う第２のモードに設定する（Ｓ１０４）設定工程とを有する。【選択図】  図１１
2005354524.tif 000002
【特許請求の範囲】
【請求項１】
MPEG-2 TSデータを送受信する通信装置であって、
外部装置とUSBを介して通信する通信手段と、
前記外部装置からディスクリプタ情報を取得し、取得したディスクリプタ情報を解析して、前記外部装置とのMPEG-2 TSデータの送受信にタイムスタンプ情報を用いるかどうかを判断する判断手段とを有し、
前記判断手段によりタイムスタンプ情報を用いると判断された場合には、タイムスタンプ情報を用いて前記外部装置とMPEG-2 TSデータの送受信を行い、タイムスタンプ情報を用いないと判断された場合には、タイムスタンプ情報を用いずに前記外部装置とMPEG-2 TSデータの送受信を行うことを特徴とする通信装置。
【請求項２】
前記判断手段は、前記外部装置のディスクリプタ情報を取得するために、前記外部装置にディスクリプタ情報の送信をリクエストすることを特徴とする請求項１に記載の通信装置。
【請求項３】
前記判断手段は、受信したディスクリプタ情報の内、MPEG-2 TSストリーム長を示す値がMPEG-2 TSパケット長の値と同じ場合にはタイムスタンプ情報を用いずにMPEG-2 TSデータの送受信を行い、異なる場合にはタイムスタンプ情報を用いてMPEG-2 TSデータの送受信を行うと判断することを特徴とする請求項２に記載の通信装置。
【請求項４】
タイムスタンプ情報を付加する付加手段と、
タイムスタンプ情報に基づいてパケットジッタを除去する除去手段とを更に有し、
前記判断手段がタイムスタンプ情報を用いると判断した場合に、前記付加手段はMPEG-2 TSデータにタイムスタンプ情報を付加して送信し、前記除去手段は受信したMPEG-2 TSデータからタイムスタンプ情報を取得してパケットジッタを除去することを特徴とする請求項１乃至３のいずれかに記載の通信装置。
【請求項５】
前記タイムスタンプ情報はソースパケットヘッダに含まれることを特徴とする請求項４に記載の通信装置。
【請求項６】
前記付加手段は、ソースパケットヘッダをMPEG-2 TSデータに付加することを特徴とする請求項５に記載の通信装置。
【請求項７】
バッファを更に有し、
前記判断手段がタイムスタンプ情報を用いないと判断した場合に、受信したMPEG-2 TSデータを前記バッファに一旦記憶し、読み出すことによりパケットジッタを除去することを特徴とする請求項４乃至６のいずれかに記載の通信装置。
【請求項８】
MPEG-2 TSデコーダを有し、
MPEG-2 TSデコーダは最初に検出したプログラム時刻基準参照値のみをロードしてシステムタイムクロックを合わせるように設定し、以降のプログラム時刻基準参照値のロードを行わないことを特徴とする請求項７に記載の通信装置。
【請求項９】
前記判断手段がタイムスタンプ情報を用いると判断した場合に、前記MPEG-2 TSデコーダはプログラム時刻基準参照値を検出する度に当該プログラム時刻基準参照値をロードしてシステムタイムクロックを位相ロック・ループにより制御することを特徴とする請求項８に記載の通信装置。
【請求項１０】
外部装置とUSBを介して通信する通信装置におけるMPEG-2 TSデータの通信方法であって、
前記外部装置からディスクリプタ情報を取得する取得工程と、
取得したディスクリプタ情報を解析して、前記外部装置とのMPEG-2 TSデータの送受信にタイムスタンプ情報を用いるかどうかを判断する判断工程と、
前記判断工程でタイムスタンプ情報を用いると判断した場合に、タイムスタンプ情報を用いて前記外部装置とMPEG-2 TSデータの送受信を行う第１のモードに設定し、タイムスタンプ情報を用いないと判断した場合には、タイムスタンプ情報を用いずに前記外部装置とMPEG-2 TSデータの送受信を行う第２のモードに設定する設定工程と
を有することを特徴とする通信方法。
【請求項１１】
前記外部装置のディスクリプタ情報を取得するために、前記外部装置にディスクリプタ情報の送信をリクエストする工程を更に有することを特徴とする請求項１０に記載の通信方法。
【請求項１２】
前記判断工程では、受信したディスクリプタ情報の内、MPEG-2 TSストリーム長を示す値がMPEG-2 TSパケット長の値と同じ場合にはタイムスタンプ情報を用いないと判断し、異なる場合にはタイムスタンプ情報を用いると判断することを特徴とする請求項１１に記載の通信方法。
【請求項１３】
タイムスタンプ情報を付加する付加工程と、
タイムスタンプ情報に基づいてパケットジッタを除去する除去工程とを更に有し、
前記判断手段がタイムスタンプ情報を用いると判断した場合に、前記付加工程ではMPEG-2 TSデータにタイムスタンプ情報を付加して送信し、前記除去工程では受信したMPEG-2 TSデータからタイムスタンプ情報を取得してパケットジッタを除去することを特徴とする請求項１０乃至１２のいずれかに記載の通信方法。
【請求項１４】
前記タイムスタンプ情報はソースパケットヘッダに含まれることを特徴とする請求項１３に記載の通信方法。
【請求項１５】
前記付加工程では、ソースパケットヘッダをMPEG-2 TSデータに付加することを特徴とする請求項１４に記載の通信方法。
【請求項１６】
前記通信装置は更にバッファを有し、
前記判断工程でタイムスタンプ情報を用いないと判断した場合に、受信したMPEG-2 TSデータを前記バッファに一旦記憶し、読み出すことによりパケットジッタを除去する工程を更に有することを特徴とする請求項１３乃至１５のいずれかに記載の通信方法。
【請求項１７】
前記通信装置はMPEG-2 TSデコーダを有し、
前記送受新方法はプログラム時刻基準参照値を検出する検出工程を更に有し、
前記検出工程において最初に検出したプログラム時刻基準参照値のみをMPEG-2 TSデコーダにロードしてシステムタイムクロックを合わせるように設定する工程を更に有し、
以降のプログラム時刻基準参照値のロードを行わないことを特徴とする請求項１６に記載の通信方法。
【請求項１８】
前記判断工程でタイムスタンプ情報を用いると判断した場合に、前記検出工程においてプログラム時刻基準参照値を検出する度に当該プログラム時刻基準参照値を前記MPEG-2 TSデコーダにロードしてシステムタイムクロックを位相ロック・ループにより制御する工程を更に有することを特徴とする請求項１７に記載の通信方法。
【請求項１９】
情報処理装置が実行可能なプログラムであって、前記プログラムを実行した情報処理装置を、請求項１乃至９のいずれかに記載の通信装置として機能させることを特徴とするプログラム。
【請求項２０】
請求項１０乃至１８のいずれかに記載の通信方法を実現するためのプログラムコードを有することを特徴とする情報処理装置が実行可能なプログラム。
【請求項２１】
請求項１９又は２０に記載のプログラムを記憶したことを特徴とする情報処理装置が読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、USB（Universal Serial Bus）を用いた通信装置及び通信方法に関する。
【背景技術】
【０００２】
従来、USB（Universal Serial Bus）を利用したビデオストリーミング機能を規格化した文献として、例えば非特許文献１がある。また、MPEG-2 TSストリームおよびそのパケット化については、例えば非特許文献２に記述されている。また、非特許文献１において、特にビデオストリーミングがMPEG2-TSの場合におけるUSBデバイスのペイロードフォーマットを規定した文献として、例えば非特許文献３がある。なお、USBについては、例えば非特許文献４がある。非特許文献４では、USB2.0を規定している。
【０００３】
【非特許文献１】Universal Serial Bus Device Class Definition for Video Devices, Revision 1.0a, November 3, 2003
【非特許文献２】ISO/IEC 13818-1: Information technology ミ Generic coding of moving pictures and associated audio information: Part 1:Systems
【非特許文献３】Universal Serial Bus Device Class Definition for Video Devices:MPEG2-TS Payload, Revision 1.0, August 1, 2003
【非特許文献４】USB Specification Revision 2.0, April 27, 2000
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、USBデバイスによるMPEG-2 TSペイロードフォーマットを規定した非特許文献３には、ペイロードフォーマットにUSB Video Class Layerでのパケットジッタを取り除くためのタイムスタンプ情報が規定されていないため、USBホストはUSBデバイスに対してMPEG-2 TSパケットにタイムスタンプ情報を付加して送信すべきなのかどうか、また、USBデバイスからタイムスタンプ情報を受信できるのかどうかをあらかじめ知ることができない。
【０００５】
本発明は上記問題点を鑑みてなされたものであり、USBホストが通信先のUSBデバイスに応じて、パケットジッタを除去することのできる適切な通信方法を用いて、MPEG-2 TSデータの送受信を行えるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明に係る通信装置は、MPEG-2 TSデータを送受信する通信装置であって、外部装置とUSBを介して通信する通信手段と、前記外部装置からディスクリプタ情報を取得し、取得したディスクリプタ情報を解析して、前記外部装置とのMPEG-2 TSデータの送受信にタイムスタンプ情報を用いるかどうかを判断する判断手段とを有し、前記判断手段によりタイムスタンプ情報を用いると判断された場合には、タイムスタンプ情報を用いて前記外部装置とMPEG-2 TSデータの送受信を行い、タイムスタンプ情報を用いないと判断された場合には、タイムスタンプ情報を用いずに前記外部装置とMPEG-2 TSデータの送受信を行う。
【０００７】
また、本発明に係る通信方法は、外部装置とUSBを介して通信する通信装置におけるMPEG-2 TSデータの通信方法であって、前記外部装置からディスクリプタ情報を取得する取得工程と、取得したディスクリプタ情報を解析して、前記外部装置とのMPEG-2 TSデータの送受信にタイムスタンプ情報を用いるかどうかを判断する判断工程と、前記判断工程でタイムスタンプ情報を用いると判断した場合に、タイムスタンプ情報を用いて前記外部装置とMPEG-2 TSデータの送受信を行う第１のモードに設定し、タイムスタンプ情報を用いないと判断した場合には、タイムスタンプ情報を用いずに前記外部装置とMPEG-2 TSデータの送受信を行う第２のモードに設定する設定工程とを有する。
【発明の効果】
【０００８】
本発明によれば、USBホストが通信先のUSBデバイスに応じて、パケットジッタを除去することのできる適切な通信方法を用いて、MPEG-2 TSデータの送受信を行うことが可能となる。
【発明を実施するための最良の形態】
【０００９】
以下、添付図面を参照して本発明を実施するための最良の形態を詳細に説明する。
【００１０】
図１は本発明の実施の形態に係る通信装置であるUSBホストの概略構成を示すブロックである。図１に示すUSBホストは、USB2.0で規定されたUSBホストの機能を有する装置である。また、図１に示すUSBホストは、非特許文献１乃至４に準拠した装置でもある。USBホストの全体の動作はCPU１によって統括される。USBホストは、USBホストの全体の制御プログラムを記録したメモリ２、USB IF４およびUSBホスト機能を実現するためのUSBホストIFコントローラ３、MPEG-2 TSエンコーダ５、映像データおよび音声データをMPEG-2 TSエンコーダ５に転送する前に記録する記録用バッファ部６、記録用バッファ部６を制御するための記録用バッファコントローラ７、USB IF４から受信したMPEG-2 TSデータをMPEG-2 TSデコーダ９に転送する前に一時的にバッファリングするための再生用バッファ８、MPEG-2 TSデコーダ９、再生バッファ８を制御するための再生用バッファコントローラ１０を備え、それぞれが内部バス１１を介してCPU１と接続されている。
【００１１】
記録用バッファ部６に記録されているMPEG-2 PS(Program Stream)形式のデータ、またはその他の形式の映像または音声データは、MPEG-2 TSエンコーダ５に転送されてMPEG-2 TSデータにエンコードされ、USB ホストIFコントローラ３に転送される。USBホストIFコントローラ３は転送されたMPEG-2 TSパケットにストリーミングヘッダおよび必要ならばその他のヘッダを付加して、MPEG-2 TSストリームとしてUSB IF４に送信する。ヘッダを付加されたMPEG-2 TSストリームは、USBによる接続先であるUSBデバイスに送信される。
【００１２】
一方、USB IF４からMPEG-2 TSストリームを受信すると、USBホストIFコントローラ３はそのヘッダを取り除き、再生用バッファ部８にMPEG-2 TSパケットを転送する。再生用バッファ部８に一時的に蓄積されたMPEG-2 TSパケットはMPEG-2 TSデコーダ９に転送され、デコードされてモニタ等の映像出力装置へ出力される。
【００１３】
図２はMPEG-2 TSデコーダ９の一般的なプログラム時刻基準参照値（PCR：Program Clock Reference）による位相ロック・ループ（PLL：Phase Locked Loop）の構成を示す図である。PCRとは、ビデオデコーダ２４とオーディオデコーダ２５を含むMPEGシステムデコーダにおいて、時刻の基準となる同期情報であるSTC（System Time Clock）の値をエンコーダ側で意図した値にセット・校正するための情報である。図２に示すような位相比較器２６、デジタルアナログ変換器２０、ローパスフィルタ２１、電圧制御発振器２２などで構成される位相ロック・ループを構成することにより、エンコーダのシステムクロックと完全に周波数の一致したクロックがSTCカウンタ２３に供給される。STCカウンタ２３では、このクロックに同期してSTCをカウントアップすることで、エンコーダ側で意図したSTCをデコーダで持つことが可能となる。
【００１４】
図３は、図１及び図２に示す構成を有するUSBホストと、USBデバイスとの一接続例を示す図であり、図３においては、USBホストをＰＣ３１、USBデバイスをデジタルビデオカメラ３０として、USB2.0で接続されている場合を示している。ここでは、デジタルビデオカメラ３０はUSB OTG(On The Go)には対応しておらず、ＰＣとの接続のみ対応しているデバイスであるものとする。また、デジタルビデオカメラ３０はMPEG-2 TS Codecを備えており、USB2.0によりＰＣ３１との間でMPEG-2 TSデータを送受信することができるものとする。
【００１５】
図３に示すシステムでは、ソースパケットヘッダ（Source Packet Header。以下、「SPH」と略す。）が無くても、デジタルビデオカメラ３０とＰＣ３１との間で発生し得る125μ秒のパケットジッタを吸収することができる。よって、図３に示すUSBデバイスとのパケット交換にはタイムスタンプ情報を含むSPHを付加しない。SPHを含まない場合のMPEG-2 TSストリームの構成を図４に示す。2バイトのUSB Stream Headerに続き、188バイトのMPEG-2 TSパケットが入る。
【００１６】
図５は、図４に示す２バイトのUSB Stream Headerのフォーマットの詳細な構造と値を示す。１バイト目はヘッダ長（バイト単位）を示し、本実施の形態では２(バイト)をセットする。２バイト目の各ビットは図５のDescriptionにその意味を、Valueに本実施の形態でセットする値を示す。
【００１７】
USBデバイスは、様々な種類のディスクリプタ（Descriptor）情報を有する。ディスクリプタ情報の一つには、USBデバイスのデバイス情報を含むものがある。デバイス情報には、USBデバイスの性能、USBデバイスが保有している機能、USBデバイスが対応しているデバイスクラス、USBデバイスのバージョン等を示す情報が含まれる。USBホスト側はUSBデバイス側にGET_DESCRIPTORリクエストを送信することにより、USBデバイス側の所有するディスクリプタ情報を受信し、USBデバイスのデバイス情報を得ることができる。
【００１８】
図６は本実施の形態におけるデジタルビデオカメラ３０が持つディスクリプタ情報の一つであるMPEG-2 TS Format Descriptorの詳細な構造を示す。MPEG-2 TS Format Descriptorには、MPEG-2 TSストリームの特徴に関する情報が記述されている。MPEG-2 TS Format Descriptorは７バイト長のデータであり、各フィールドの意味を図６のDescriptionに、また、各フィールドの値をValueに示す。図３に示す構成では、上述したようにMPEG-2 TSストリームはMPEG-2 TSパケットのみを含むため、ディスクリプタ情報のデータ長を示すbLengthフィールドの値は７、ディスクリプタ情報のタイプを示すbDescriptorTypeフィールドはCS_INTERFACE(Class Specified Interface)を示す0x24、ディスクリプタ情報のサブタイプを示すbDescriptorSubtypeフィールドはVS_FORMAT_MPEG2TS(Video Streaming Format MPEG2TS)を示す0x0A、Format Descriptorのインデックスを示すbFormatIndexフィールドは１、MPEG2 TSストリーム中のMPEG2 TSパケットの先頭位置までのオフセットを示すbDataOffsetフィールドは０、MPEG2 TSパケット長を示すbPacketLengthフィールドは188バイト、MPEG2 TSストリーム長を示すbStrideLengthも188バイトをセットする。なお、MPEG-2 TS Format Descriptorのより詳細な説明は、上述の非特許文献３に記述されている。
【００１９】
図７は、図１及び図２に示す構成を有するUSBホストと、USBデバイスとの別の接続例を示す図であり、図７においては、USBホストをデジタルテレビ４１、USBデバイスをチューナー４０として、USB2.0で接続されている場合を示している。ここでは、チューナー４０およびデジタルテレビ４１はともにUSB OTG(On The Go)に対応しており、ＰＣとの接続のみならず、その他のUSB OTH対応デバイスと接続することが可能であるものとする。また、チューナー４０はMPEG-2 TS Codecを備えており、USB2.0によりデジタルテレビ４１との間でMPEG-2 TSデータを送受信することができるものとする。
【００２０】
また、上述したようにチューナー４０はUSB OTG(On The Go)に対応しており、ＰＣとの接続のみならず、他のUSB OTG対応のデバイスと接続することも可能であるため、図７に示すデジタルテレビ４１のような家電製品に接続する場合には、ＰＣと異なり、デコーダの前に十分な大きさのバッファをとることができない。よって、タイムスタンプ情報を含むSPHを付加することで、USBホストとUSBデバイスとの間で発生しうる125μ秒のパケットジッタを吸収する。SPHを含む場合のMPEG-2 TSストリームの構成を図８に示す。２バイトのUSB Stream Headerに続き、４バイトのSPH、さらに188バイトのMPEG-2 TSパケットが続く。
【００２１】
図８に示すMPEG-2 TSストリームにおいて、USB Stream Headerと188ByteのMPEG-2 TSパケットは図５で説明したものと同様であるので、ここでは説明を省略する。
【００２２】
図９は、図８の４バイトのソースパケットヘッダのフォーマットの詳細な構造を示す。Cycle Countフィールドは13ビット長のフィールドであり、125μ秒毎にカウントアップする。Cycle Offsetは12ビット長のフィールドであり、24.576MHzのクロックでカウントアップする。またこのフィールドは125μ秒毎に、すなわちCycle Countがカウントアップする度に０にリセットされる。このタイムスタンプ情報をUSBホストIFコントローラ３とUSBデバイスのUSBコントローラ間で利用することにより、USBホストとUSBデバイスとの間におけるパケットジッタを24.576MHzの分解能で取り除くことができる。
【００２３】
図１０は本実施の形態におけるチューナー４０が持つディスクリプタ情報の一つであるMPEG-2 TS Format Descriptorの詳細な構造を示す図であり、各フィールドの意味をDescriptionに、また、各フィールドの値をValueに示す。図７に示す構成では、上述したようにMPEG-2 TSストリームにはMPEG-2 TSパケットの前にタイムスタンプ情報を含むSPHを含むため、ディスクリプタ情報のデータ長を示すbLengthフィールドの値は７、ディスクリプタ情報のタイプを示すbDescriptorTypeフィールドはCS_INTERFACE(Class Specified Interface)を示す0x24、ディスクリプタ情報のサブタイプを示すbDescriptorSubtypeフィールドはVS_FORMAT_MPEG2TS(Video Streaming Format MPEG2TS)を示す0x0A、Format Descriptorのインデックスを示すbFormatIndexフィールドは１、MPEG2 TSストリーム中のMPEG2 TSパケットの先頭位置までのオフセットを示すbDataOffsetフィールドは４、MPEG2 TSパケット長を示すbPacketLengthフィールドは188バイト、MPEG2 TSストリーム長を示すbStrideLengthは192バイトをセットする。
【００２４】
図１１は本実施の形態におけるUSBホストのSPH有モード／SPH無モードの判断処理手順を示すフローチャートである。本実施の形態におけるUSBホストはUSBホストIFコントローラ３によってGET_Descriptorリクエストを接続先のUSBデバイスに対して送信する（ステップＳ１００）。USBデバイスはMPEG-2 TS Format Descriptor（７バイト分）をUSBホストにレスポンスとして返信する。USBデバイスが例えば図３に示すデジタルビデオカメラ３０の場合、図６に示すMPEG-2 TS Format Descriptorが、また、図７に示すチューナー４０であれば、図１０に示すMPEG-2 TS Format DescriptorがUSBホストに対して送信される。
【００２５】
USBホストIFコントローラ３はUSB IF４からMPEG-2 TS Format Descriptorを受信すると（ステップＳ１０１でＹＥＳ）その情報を保持し、特にMPEG-2 TSストリーム長を示すフィールドであるbStrideLengthの値を参照する。その値が188(バイト)であれば（ステップＳ１０２でＹＥＳ）SPHが付加されないモード（SPH無モード）であると認識し、SPH無モードに設定する（ステップＳ１０４）。ここでbStrideLengthの値が188でなければ（具体的には、188を超える）（ステップＳ１０２でＹＥＳ）、SPHが付加されると判断し、SPH有モードに設定する（ステップＳ１０３）。
【００２６】
図１２は本実施の形態におけるUSBホストにおけるSPH無モードでのMPEG-2 TSデータの送信処理手順を示すフローチャートである。この場合にはSPHを付加しないため、USBホストIFコントローラ３はMPEG-2 TSエンコーダから転送された188バイトのMPEG-2 TSパケットに対して図５に示すStream Header２バイトを付加してMPEG-2 TSストリームとし（ステップＳ１３０）、しかる後にUSB IF４を介してUSBバス上にSPH無しのMPEG-2 TSストリーム（図４）を送信する（ステップＳ１３１）。
【００２７】
図１３は本実施の形態におけるUSBホストにおけるSPH無モードでのMPEG-2 TSデータの受信処理手順を示すフローチャートである。この場合にはSPHを付加しないため、PCRのジッタを吸収するために再生用バッファ部８として、デコードするに十分な大きさ分確保しておく（ステップＳ１４０）。次に、MPEG-2 TSデコーダ９は図２で説明したPCRによるPLLにおいて、MPEG-2 TSストリーム中の最初のPCRのみをロードして、その後のPCRについてはロードせずに無視するように設定する（ステップＳ１４１）。これにより、システムクロックには何ら影響を与えることはなく、再生用バッファ部８に転送されたMPEG-2 TSパケットからMPEG-2 TSデコーダ９に一定レートで転送することによりMPEG-2 TSデコーダ９の持つクロック精度でデコードすることが可能となる。ステップＳ１４２でUSBホストIFコントローラ３はUSB IF４からMPEG-2 TSストリームを受信すると、再生用バッファ部８に転送する（ステップＳ１４３）。図４に示すMPEG-2 TSストリームからUSB Stream Header２バイトを除いたMEPG-2 TSパケットを再生用バッファ部８に転送する。その後、ステップＳ１４４で、MPEG-2 TSデコーダ９は再生用バッファ部８から転送されたMPEG-2 TSパケットをMPEG-2 TSデコーダ９の持つSTC（システムクロック）を参照してデコードし、映像出力装置へ出力する。
【００２８】
図１４は本実施の形態におけるUSBホストにおけるSPH有モードでのMPEG-2 TSデータの送信処理手順を示すフローチャートである。この場合にはSPHを付加するため、USBホストIFコントローラ３はMPEG-2 TSエンコーダから転送された188バイトのMPEG-2 TSパケットに対して図５に示すStream Header２バイトおよび図９に示すタイムスタンプ情報を含むSPHを付加してMPEG-2 TSストリームとし（ステップＳ１５０）、しかる後にUSB IF４を介してUSBバス上にSPH有りのMPEG-2 TSストリーム（図８）を送信する（ステップＳ１５１）。
【００２９】
図１５は本発明におけるUSBホストのSPH有モード時でのMPEG-2 TSデータの受信方法を示すフローチャートである。この場合にはSPHを付加するため、PCRのジッタは既に再生用バッファ部８に入る前に除かれているために、デコードするに大きなサイズの再生用バッファを必要としない。よって、再生用バッファを小さく、または無しに設定する（ステップＳ１６０）。次に、MPEG-2 TSデコーダ９は図２で説明したPCRによるPLLにおいて、MPEG-2 TSストリーム中のPCRを検出するたびにPCRロードを実行するように設定する（ステップＳ１６１）。これにより、デコーダはSTCカウンタ２３に、エンコーダのシステムクロックと完全に周波数の一致したSTCを持つことができる。ステップＳ１６２でUSBホストIFコントローラ３はUSB IF４からMPEG-2 TSストリームを受信すると、受信したMPEG-2 TSストリームのStream Header２バイト及びSPH４バイトを除いたMPEG-2 TSパケットを再生用バッファ部８に転送する（ステップＳ１６３）。その後、ステップＳ１６４で、MPEG-2 TSデコーダ９は再生用バッファ部８から転送されたMPEG-2 TSパケットをMPEG-2 TSデコーダ９の持つSTC（システムクロック）を参照してデコードし、映像出力装置へ出力する。
【００３０】
上記の通り、本発明の実施の形態によれば、USBホストがUSBデバイスに接続する時に、 USBデバイスの種類に応じて通信にタイムスタンプ情報を含むSPHを用いるかどうかを判断し、判断結果に応じてSPH有りまたは無しで通信を行うため、USBデバイスに対してMPEG-2 TSデータを適切に送受信することが可能となる。
【００３１】
なお、上記実施の形態では、USBホストとしてＰＣおよびデジタルテレビを、また、USBデバイスとしてデジタルビデオカメラ及びチューナーを例として挙げたが、本発明はこれに限られるものではなく、USBバスを介してMPEG-2 TSデータを通信可能な機器であれば、本発明を適用可能であることは言うまでもない。
【００３２】
＜他の実施形態＞
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。ここでプログラムコードを記憶する記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、ＲＯＭ、ＲＡＭ、磁気テープ、不揮発性のメモリカード、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ、光ディスク、光磁気ディスク、ＭＯなどが考えられる。また、ＬＡＮ（ローカル・エリア・ネットワーク）やＷＡＮ（ワイド・エリア・ネットワーク）などのコンピュータネットワークを、プログラムコードを供給するために用いることができる。
【００３３】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００３４】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明した図１１乃至図１５に示すフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【００３５】
【図１】本発明の実施の形態に係るUSBホストの概略構成を示すブロック図である。
【図２】PCRによるPLL(Phase Locked Loop)の構成を示すブロック図である。
【図３】本発明の実施の形態におけるUSBホストとUSBデバイスとの接続例を示す図である。
【図４】SPH無しのMPEG-2 TSストリームの構成を示す図である。
【図５】Stream Headerのフォーマット図である。
【図６】図３に示すUSBデバイスのMPEG-2 TS Format Descriptorを示す図である。
【図７】本発明の実施の形態におけるUSBホストとUSBデバイスとの別の接続例を示す図である。
【図８】SPH有りのMPEG-2 TSストリームの構成図である。
【図９】SPHのフォーマット図である。
【図１０】図７に示すUSBデバイスのMPEG-2 TS Format Descriptorを示す図である。
【図１１】本発明の実施の形態に係るUSBホストのSPH有モード／SPH無モードの判断処理手順を示すフローチャートである。
【図１２】本発明の実施の形態に係るUSBホストにおけるSPH無モードでの送信処理手順を示すフローチャートである。
【図１３】本発明の実施の形態に係るUSBホストにおけるSPH無モードでの受信処理手順を示すフローチャートである。
【図１４】本発明の実施の形態に係るUSBホストにおけるSPH有モードでの送信処理手順を示すフローチャートである。
【図１５】本発明の実施の形態に係るUSBホストにおけるSPH有モードでの受信処理手順を示すフローチャートである。
【符号の説明】
【００３６】
１  CPU
２  メモリ
３  USBホストIFコントローラ
４  USB IF
５  MPEG-2 TSエンコーダ
６  記録用バッファ部
７  記録用バッファコントローラ
８  再生用バッファ
９  MPEG-2 TSデコーダ
１０  再生用バッファコントローラ
１１  CPUバス
【図１】
2005354524.tif 000003
【図２】
2005354524.tif 000004
【図３】
2005354524.tif 000005
【図４】
2005354524.tif 000006
【図５】
2005354524.tif 000007
【図６】
2005354524.tif 000008
【図７】
2005354524.tif 000009
【図８】
2005354524.tif 000010
【図９】
2005354524.tif 000011
【図１０】
2005354524.tif 000012
【図１１】
2005354524.tif 000013
【図１２】
2005354524.tif 000014
【図１３】
2005354524.tif 000015
【図１４】
2005354524.tif 000016
【図１５】
2005354524.tif 000017