(57)【要約】【課題】  USBインタフェースを介するデータ転送を容易にする。【解決手段】ステップＳ１で、ビデオカメラ１は、PC３のUSBインタフェースの通信速度を検知する。ステップＳ２で、ビデオカメラ１は、検知したPC３の通信速度に応じてフォーマットディスクリプタを生成するとともに、そのフォーマットディスクリプタを組み込んでコンフィグレーションディスクリプタを生成する。ステップＳ３で、ビデオカメラ１は、生成したコンフィグレーションディスクリプタをPC３に送信する。ステップＳ４で、カメラ１は、PC３が受信したいデータのフォーマットを示すフォーマット情報を検討し、その検討結果をPC３に送信する。そしてステップＳ６において、ビデオカメラ１は、フォーマット情報が示すフォーマットでデータをPC３に送信する。【選択図】図４
2007060239.tif 000002
【特許請求の範囲】
【請求項１】
所定の通信速度に応じた所定のフォーマットでデータを他の通信装置と授受する通信装置において、
前記他の通信装置の通信速度を検知する検知手段と、
前記検知手段により検知された前記通信速度に応じた前記所定のフォーマットで、前記データを前記他の通信装置と授受する通信制御手段と
を備える通信装置。
【請求項２】
前記通信制御手段は、USBインタフェースを含む
請求項１に記載の通信装置。
【請求項３】
前記USBインタフェースは、ハイスピード対応USBインタフェースである
請求項２に記載の通信装置。
【請求項４】
前記検知手段は、前記通信装置と前記他の通信装置とのUSB通信が確立された後、前記通信速度を検知する
請求項２に記載の通信装置。
【請求項５】
データを授受できる通信速度毎に、その通信速度で授受できるデータのフォーマットに関する情報を保持する保持手段をさらに備え、
前記通信制御手段は、前記保持手段により保持されている前記情報から、前記検知手段により検知された前記通信速度に対応するフォーマットを検出するとともに、検出した前記フォーマットで前記データを前記他の通信装置と授受する
請求項１に記載の通信装置。
【請求項６】
前記保持手段に保持される前記情報は、変更することができる
請求項５に記載の通信装置。
【請求項７】
前記通信制御手段は、前記データを、前記検知手段により検知された前記通信速度に応じたフォーマットで、前記他の通信送信に送信する
請求項１に記載の通信装置。
【請求項８】
前記データは、記録媒体に記録されている
請求項７に記載の通信装置。
【請求項９】
前記通信制御手段は、前記データが所定のコーディックで符号化されている場合、前記データを復号して、前記通信速度に応じたフォーマットに対応するコーディックで符号化し、符号化された前記データを、前記他の送信装置に送信する
請求項７に記載の通信装置。
【請求項１０】
前記通信制御手段により受信された前記データを記録媒体に記録する記録手段
をさらに備える請求項１に記載の通信装置。
【請求項１１】
前記記録手段は、前記データが所定のコーディックで符号化されている場合、前記データを復号して、前記記録媒体に応じたフォーマットに対応するコーディックで符号化し、符号化された前記データを、前記記録媒体に記録する
請求項１０に記載の通信装置。
【請求項１２】
所定の通信速度に応じた所定のフォーマットでデータを他の通信装置と授受する通信方法において、
前記他の通信装置の通信速度を検知する検知ステップと、
前記検知ステップの処理で検知された前記通信速度に応じた前記所定のフォーマットで、前記データを前記他の通信装置と授受する通信制御ステップと
を含む通信方法。
【請求項１３】
所定の通信速度に応じた所定のフォーマットでデータを他の通信装置と授受する通信を制御するプログラムにおいて、
前記他の通信装置の通信速度を検知する検知ステップと、
前記検知ステップの処理で検知された前記通信速度に応じた前記所定のフォーマットで、前記データを前記他の通信装置と授受する通信制御ステップと
を含む処理をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置および方法、並びにプログラムに関し、特に、複数の通信速度を有する通信インタフェースを介して、簡単にデータ転送することができる通信装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
USB（Universal Serial Bus）インタフェースを搭載するビデオカメラが増えてきているが、このUSBインタフェースでは、通信速度の高速化が進み、現在では、1.5Mbps（ロースピード）、12Mbps（フルスピード）、または480Mbps（ハイスピード）でのデータ転送が可能となっている。
【０００３】
またMPEG(Moving Picture Experts Group)-2、MPEG-4、Motion JPEG(Joint Photographic Experts Group)、DV(Digital Video)などの各種のビデオストリームをUSBで利用可能にするUSBビデオデバイスクラス（Video Device Class）規格に準拠したUSBインタフェースも普及している。
【０００４】
すなわちこれらの機能を有するUSBインタフェースを利用すれば、ビデオカメラと外部の装置（例えば、パーソナルコンピュータ）との間で、動画等のデータを高レートで授受することができる。
【０００５】
ところで、例えば、ビデオカメラ（USBビデオデバイスクラスにおけるデバイス）からパーソナルコンピュータ（USBビデオデバイスクラスにおけるホスト）へのUSBインタフェースによるデータ転送は、両者がUSBケーブルで接続されてUSB通信が確立されることで行われるが、両者のUSBインタフェースの通信速度が一致しない場合、その旨を表すメッセージがビデオカメラに表示されて、通信速度の切り換えをユーザに促すようになされている。
【０００６】
例えばビデオカメラおよびパーソナルコンピュータのUSBインタフェースがともにハイスピード対応USBインタフェースであるが、ビデオカメラのUSBインタフェースの通信速度がフルスピード（12Mbps）に設定されている状態で通信を開始すると、「High-speed接続してください」などのメッセージがビデオカメラに表示される。これにより、ユーザは、例えばビデオカメラの操作ボタン等を操作して、ビデオカメラのUSBインタフェースの通信速度をハイスピードに設定する必要がある。
【０００７】
なお通信相手の通信速度は、USBケーブルが接続されUSB通信が確立した後に検知される。そしてUSBケーブルとジャックの形状は、ハイスピード対応USBインタフェースとフルスピード対応USBインタフェースにおいては違いがない。すなわちユーザは、通信開始前（両者を接続する前）に、両者の通信速度の違いを把握することは容易ではない。
【０００８】
伝送路の状態から伝送量を自動的に調整する方法も存在するが（特許文献１参照）、この場合、フレームレートが変更されて伝送量が調整されるので、DV規格などのフレームレートが固定されたフォーマットには適用できない。すなわちその場合、ユーザは、通信速度に合った別のフォーマットを出力するモードにビデオカメラを切り換える必要がある。
【０００９】
【特許文献１】特開平０９−０７４５４８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
このように従来においては、USBインタフェースを利用してデータ通信を行う場合、通信相手同士の通信速度が異なるとき、ユーザは、その都度通信速度を切り換える必要があり、使い勝手が悪かった。
【００１１】
また近年ビデオカメラが記録するメディアもDVDディスク、ハードディスク、フラッシュメモリ、テープメディアなど多岐に渡るようになり、なかには複数のメディアを扱うような製品も発売されている。各メディアに記録されるストリームデータはメディアの特性や用途に合わせて決められている。USBビデオデバイスクラスではストリームの種類に依存する機能と依存しない共通の機能が定められているが、共通機能を機種ごとに開発すると開発のコストがかかる課題もある。
【００１２】
本発明は、例えば、このような状況に鑑みてなされたものであり、通信相手同士の通信速度が異なっても、簡単にUSBインタフェースを利用したデータ通信を行うことができるようにしたものである。
【課題を解決するための手段】
【００１３】
本発明の一側面は、前記他の通信装置の通信速度を検知する検知手段と、前記検知手段により検知された前記通信速度に応じた前記所定のフォーマットで、前記データを前記他の通信装置と授受する通信制御手段とを備える通信装置である。
【００１４】
前記通信制御手段は、USBインタフェースを含むようにすることができる。
【００１５】
前記USBインタフェースは、ハイスピード対応USBインタフェースであるようにすることができる。
【００１６】
前記検知手段は、前記通信装置と前記他の通信装置とのUSB通信が確立された後、前記通信速度を検知することができる。
【００１７】
データを授受できる通信速度毎に、その通信速度で授受できるデータのフォーマットに関する情報を保持する保持手段をさらに備え、前記通信制御手段は、前記保持手段により保持されている前記情報から、前記検知手段により検知された前記通信速度に対応するフォーマットを検出するとともに、検出した前記フォーマットで前記データを前記他の通信装置と授受することができる。
【００１８】
前記保持手段に保持される前記情報は、変更することができる。
【００１９】
前記通信制御手段は、前記データを、前記検知手段により検知された前記通信速度に応じたフォーマットで、前記他の通信送信に送信することができる。
【００２０】
前記データは、記録媒体に記録されているようにすることができる。
【００２１】
前記通信制御手段は、前記データが所定のコーディックで符号化されている場合、前記データを復号して、前記通信速度に応じたフォーマットに対応するコーディックで符号化し、符号化された前記データを、前記他の送信装置に送信することができる。
【００２２】
前記通信制御手段により受信された前記データを記録媒体に記録する記録手段をさらに設けることができる。
【００２３】
前記記録手段は、前記データが所定のコーディックで符号化されている場合、前記データを復号して、前記記録媒体に応じたフォーマットに対応するコーディックで符号化し、符号化された前記データを、前記記録媒体に記録することができる。
【００２４】
本発明の一側面は、前記他の通信装置の通信速度を検知する検知ステップと、前記検知ステップの処理で検知された前記通信速度に応じた前記所定のフォーマットで、前記データを前記他の通信装置と授受する通信制御ステップとを含む通信方法である。
【００２５】
本発明の一側面は、前記他の通信装置の通信速度を検知する検知ステップと、前記検知ステップの処理で検知された前記通信速度に応じた前記所定のフォーマットで、前記データを前記他の通信装置と授受する通信制御ステップとを含む処理をコンピュータに実行させるプログラムである。
【発明の効果】
【００２６】
以上のように、本発明の一側面によれば、簡単にUSBインタフェースを利用したデータ通信を行うことができる。
【発明を実施するための最良の形態】
【００２７】
以下に本発明の実施の形態を説明するが、請求項に記載の構成要件と、発明の実施の形態における具体例との対応関係を例示すると、次のようになる。この記載は、請求項に記載されている発明をサポートする実施の形態が、発明の実施の形態に記載されていることを確認するためのものである。従って、発明の実施の形態中には記載されているが、構成要件に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００２８】
本発明の一側面の通信装置は、第１に、前記他の通信装置の通信速度を検知する検知手段（例えば、図２のCPU１１およびUSBインタフェース２５）と、前記検知手段により検知された前記通信速度に応じた前記所定のフォーマットで、前記データを前記他の通信装置と授受する通信制御手段（例えば、図２のCPU１１およびUSBインタフェース２５）とを備える。
【００２９】
本発明の一側面の通信装置は、第２に、前記通信制御手段は、USBインタフェース（例えば、図２のUSBインタフェース２５）を含む。
【００３０】
本発明の一側面の通信装置は、第３に、前記USBインタフェースは、ハイスピード対応USBインタフェース（例えば、図２のUSBインタフェース２５）である。
【００３１】
本発明の一側面の通信装置は、第４に、前記検知手段は、前記通信装置と前記他の通信装置とのUSB通信が確立された後、前記通信速度を検知する（例えば、図４のステップＳ１）。
【００３２】
本発明の一側面の通信装置は、第５に、データを授受できる通信速度毎に、その通信速度で授受できるデータのフォーマットに関する情報を保持する保持手段（例えば、図２のデータベース１４Ａ）をさらに備え、前記通信制御手段は、前記保持手段により保持されている前記情報から、前記検知手段により検知された前記通信速度に対応するフォーマットを検出するとともに、検出した前記フォーマットで前記データを前記他の通信装置と授受する。
【００３３】
本発明の一側面の通信装置は、第６に、前記保持手段に保持される前記情報は、変更することができる。
【００３４】
本発明の一側面の通信装置は、第７に、前記通信制御手段は、前記データを、前記検知手段により検知された前記通信速度に応じたフォーマットで、前記他の通信送信に送信する（例えば、図４のステップＳ６）。
【００３５】
本発明の一側面の通信装置は、第８に、前記データは、記録媒体（例えば、図２の記録媒体１６）に記録されている。
【００３６】
本発明の一側面の通信装置は、第９に、前記通信制御手段は、前記データが所定のコーディックで符号化されている場合、前記データを復号して、前記通信速度に応じたフォーマットに対応するコーディックで符号化し、符号化された前記データを、前記他の送信装置に送信する（例えば、図２のコーディック部２４）。
【００３７】
本発明の一側面の通信装置は、第１０に、前記通信制御手段により受信された前記データを記録媒体に記録する記録手段（例えば、図２のCPU１１および記録媒体１６）をさらに備える。
【００３８】
本発明の一側面の通信装置は、第１１に、前記記録手段は、前記データが所定のコーディックで符号化されている場合、前記データを復号して、前記記録媒体に応じたフォーマットに対応するコーディックで符号化し、符号化された前記データを、前記記録媒体に記録する（例えば、図２のコーディック部２４）。
【００３９】
本発明の一側面の通信方法およびプログラムは、前記他の通信装置の通信速度を検知する検知ステップ（例えば、図４のステップＳ１および図８のステップＳ３１）と、前記検知ステップの処理で検知された前記通信速度に応じた前記所定のフォーマットで、前記データを前記他の通信装置と授受する通信制御ステップ（例えば、図４のステップＳ２乃至ステップＳ６および図８のステップＳ３２乃至ステップＳ３６）とを含む。
【００４０】
図１は、本発明を適用したビデオカメラ１およびパーソナルコンピュータ３の利用例を示している。
【００４１】
ビデオカメラ１とPC３は、例えばUSBビデオデバイスクラス規格に準拠したUSBインタフェース（図２のUSBインタフェース２５、図３のUSBインタフェース１４１）を有しており、USBケーブル２を介してデータの授受を行う。
【００４２】
なおこの例の場合、ビデオカメラ１およびPC３のUSBインタフェースは、ともに、ハイスピード対応USBインタフェース（1.5Mbps（ロースピード）、12Mbps（フルスピード）、または480Mbps（ハイスピード）でデータ転送可能なUSBインタフェース）であるものとする。
【００４３】
図２は、ビデオカメラ１の構成例を示している。
【００４４】
CPU（Central Processing Unit）１１は、ROM（Read Only Memory）１２に記憶されているプログラムに従って各種の処理を実行する。RAM（Random Access Memory）１３には、CPU１１が各種の処理を実行する上において必要なデータなどが適宜記憶される。
【００４５】
記憶部１４には、ビデオカメラ１（USBインタフェース２５）が取り扱える通信速度毎に、その通信速度で取り扱えるデータの種類（フォーマット）に関する情報が設定されているデータベース１４Ａ（後述）が記憶されている。
【００４６】
ドライブ１５は、テープ、磁気ディスク、光ディスク、光磁気ディスク、ハードディスク、または半導体メモリなどよりなる記録媒体１６に、CPU１１から供給された画像データ等を記憶したり、記録媒体１６に記録されている画像データ等を読み出してCPU１１に供給する。
【００４７】
またドライブ１５は、記録媒体１６にビデオカメラ１で動作するプログラムが記録されている場合、記録媒体１６からそれを読み出し、CPU１１がそれを実行するようにすることもできる。
【００４８】
カメラ部２１は、レンズ、CCD（Charged Coupled Device）などから構成されており、撮像の結果得られた画像データを信号処理部２３に供給する。音声入力部２２は、マイクロフォン等で構成されており、集音の結果得られた音声データを信号処理部２３に供給する。
【００４９】
信号処理部２３は、カメラ部２１から供給された画像データに対してガンマ変換、色空間変換、ホワイトバランス等の画像処理を行い、また音声入力部２２から供給された音声データに対して所定の音声処理を行い、その結果得られた画像データと音声データ（以下、個々に区別する必要がない場合、両者をまとめてAVデータと称する）を、CPU１１に供給する。
【００５０】
コーディック部２４−１は、CPU１１から供給されたAVデータに対して、MPEG２規格に準拠したコーディック処理を行う。
【００５１】
コーディック部２４−２は、CPU１１から供給されたAVデータに対して、DV規格に準拠したコーディック処理を行う。
【００５２】
コーディック部２４−３は、CPU１１から供給されたAVデータに対して、MEPG１規格に準拠したコーディック処理を行う。
【００５３】
なお図２の例では、コーディック部２４が３個設けられているが、コーディック部２４が複数である必要はない。
【００５４】
USBインタフェース２５は、ハイスピードに対応したUSBビデオデバイスクラス規格に準拠したUSBインタフェースであり、USBのプロトコルを制御し、USBケーブル接続端子２６に接続されたUSBケーブル２を介して、PC３と通信する。
【００５５】
表示制御部２７は、CPU１１から供給された画像データ（YUVデジタル画像データ等）を、RGB信号に変換して、LCD等から構成される表示部２８に供給して表示させる。
【００５６】
音声出力部２９は、CPU１１から供給された音声データを、スピーカ３０を介して出力する。
【００５７】
操作部３１は、撮影開始ボタンや各種設定ボタンから構成されており、ユーザによる操作内容をCPU１１に通知する。
【００５８】
図３は、PC３の構成例を示している。
【００５９】
CPU１１１は、ROM１１２に記憶されているプログラム、またはハードディスク１１４からRAM１１３にロードされたプログラムに従って各種の処理を実行する。RAM１１３にはまた、CPU１１１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【００６０】
CPU１１１、ROM１１２、およびRAM１１３は、バス１１５を介して相互に接続されている。このバス１１５にはまた、入出力インタフェース１１６およびUSBインタフェース１４１も接続されている。
【００６１】
入出力インタフェース１１６には、キーボード、マウス、入力端子などよりなる入力部１１８、CRT(Cathode Ray Tube)，LCD(Liquid Crystal display)などよりなるディスプレイ、出力端子、並びにスピーカなどよりなる出力部１１７、ターミナルアダプタ、ADSL（Asymmetric Digital Subscriber Line）モデムや、LAN (Local Area Network)カード等より構成される通信部１１９が接続されている。通信部１１９は、インターネットなどの各種のネットワークを介しての通信処理を行う。
【００６２】
入出力インタフェース１１６にはまた、ドライブ１２０が接続され、磁気ディスク（フロッピディスクを含む）１３１、光ディスク（CD-ROM(Compact Disk-Read Only Memory) DVD Digital Versatile Disk）を含む）１３２、光磁気ディスク（MD（Mini Disk）を含む）１３３、或いは半導体メモリなどのリムーバブルメディア（記録媒体）１３４が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じてハードディスク１１４にインストールされる。
【００６３】
USBインタフェース１４１は、この例の場合、フルスピードに対応するビデオデバイスクラス規格に準拠するUSBインタフェースであり、USBケーブル接続端子１４２に接続されたUSBケーブル２を介して、ビデオカメラ１との通信を制御する。
【００６４】
次に、ビデオカメラ１（スレーブ）からPC３（ホスト）にデータを転送する場合の両者の動作を、図４のフローチャートを参照して説明する。
【００６５】
ビデオカメラ１とPC３がUSBケーブル２で接続されると、ビデオカメラ１のUSBインタフェース２５は、ステップＳ１において、PC３のUSBインタフェース１４１の通信速度を検知し、CPU１１に通知する。
【００６６】
この例の場合、PC３の通信速度は480Mbps（ハイスピード）であることが検知される。
【００６７】
通信速度は、例えばPC３のUSBケーブル接続端子１４２のアップストリームポートのプルアップ抵抗によって判別される。
【００６８】
なおここでビデオカメラ１のCPU１１は、表示制御部２７を制御して、検知されたPC３の通信速度を表示してユーザに提示することもできる。
【００６９】
ステップＳ２において、ビデオカメラ１のCPU１１は、ステップＳ１で検知されたPC３の通信速度に応じてフォーマットディスクリプタを生成するとともに、そのフォーマットディスクリプタを組み込んでコンフィグレーションディスクリプタを生成する。この処理の詳細は、図５に示されている。
【００７０】
ステップＳ２１において、ビデオカメラ１のCPU１１は、データベース１４Ａに、ステップＳ１で検知された通信速度に対応する情報が設定されているか否かを判定し、設定されていると判定した場合、ステップＳ２２に進む。
【００７１】
この例の場合、ビデオカメラ１のUSBインタフェース２５は、ハイスピードに対応するUSBインタフェースであり、ビデオカメラ１には、MPEG２規格に準拠したコーディック処理を行うコーディック部２４−１、DV規格に準拠したコーディック処理を行うコーディック部２４−２、およびMPEG1規格に準拠したコーディック処理を行うコーディック部２４−３が搭載されている。したがってデータベース１４Ａには、1.5Mbps（ロースピード）、12Mbps（フルスピード）、および480Mbps（ハイスピード）に対応して、各通信速度で授受可能なデータのフォーマットに関する情報（設定情報およびフォーマットディスクリプタ）が設定されている。
【００７２】
図６には、フルスピードで授受可能なデータのフォーマットとしてのMEPG１の設定情報（ビットレートやフレームサイズ等）およびそのフォーマットディスクリプタ、並びにハイスピードで授受可能なデータのフォーマットとしてのMPEG２およびDVそれぞれの設定情報およびフォーマットディスクリプタが示されている。
【００７３】
なおデータベース１４Ａの内容は、ユーザ操作やPC３からの要求に応じて変更することができるようにすることもできる。また変更できるものと変更できないものをそれぞれ分けて設けることもできる。
【００７４】
図５に戻りステップＳ２２において、ビデオカメラ１のCPU１１は、データベース１４Ａの、ステップＳ１で検知された通信速度に対応するフォーマットの設定情報とフォーマットディスクリプタを読み出す。
【００７５】
この例の場合、「ハイスピード（High speed）」に対応して設定されている「MEPG２」および「DV」の設定情報およびフォーマットディスクリプタがそれぞれ読み出される（図６）。
【００７６】
ステップＳ２３において、ビデオカメラ１のCPU１１は、ステップＳ２２で読み出したフォーマットディスクリプタからインプットヘッダディスクリプタを生成するとともに、生成したインプットディスクリプタ、および読み出したフォーマットディスクリプタを、コンフィグレーションディスクリプタに組み込んで、コンフィグレーションディスクリプタを生成する。
【００７７】
この例の場合、図７に示すように、MPEG２のフォーマットディスクリプタとDVのフォーマットディスクリプタから生成されたインプットヘッダディスクリプタ、およびMEPG２とDVのフォーマットディスクリプタが、コンフィグレーションディスクリプタに組み込まれる。
【００７８】
なおインプットヘッダディスクリプタは、ホスト側へデータが転送される場合に生成されるヘッダディスクリプタであり、Ｎ個（図７の例では、２個）のフォーマットディスクリプタが存在する場合、「bNumFormats」（図中の矢印Ａが付されているパラメータ）に、Ｎ個を示すデータ（図７の例の場合0x02）が設定され、Ｎ個の「bmaContorols」（図７の例の場合、「bmaContorols(1)」と「bmaContorols(2)」の２個の「bmaContorols」）（図中矢印Ｂ，Ｃが付されているパラメータ）が設けられる。
【００７９】
各「bmaContorols」には、必要に応じて、フォーマットディスクリプタに対応するフォーマットに対する制御内容を示すデータ（設定情報等）が設定される。
【００８０】
このようにしてコンフィグレーションディスクリプタが生成される。
【００８１】
図４に戻り、PC３のCPU１１１は、ビデオカメラ１との接続が確立されると、ステップＳ１１において、ディスクリプタの提供を、USBインタフェース１４１を介してビデオカメラ１に要求する。
【００８２】
この要求を受けるとビデオカメラ１のCPU１１は、ステップＳ３において、ステップＳ２で生成したコンフィグレーションディスクリプタを、USBインタフェース２５を制御して、PC３に送信させる。
【００８３】
ビデオカメラ１からコンフィグレーションディスクリプタが送信されると、PC３のUSBインタフェース１４１は、ステップＳ１２において、それを受信し、ビデオカメラ１はUSBビデオデバイスクラス規格に準拠したUSBインタフェースを有していると認識し、USBビデオデバイスクラス規格に準拠した通信をビデオカメラ１に要求する。すなわちこれ以降においては、USBビデオデバイスクラス規格に準拠した通信が行われる。
【００８４】
次にステップＳ１３において、PC３のCPU１１１は、ステップＳ１１で受信されたコンフィグレーションディスクリプタに組み込まれたフォーマットディスクリプタ（図７）を参照して、いまから受信するデータのフォーマットやその他の条件（例えば、MPEG１のデータを受信する場合は、フレームレート、画サイズ、画質等）（以下、これらの情報を、まとめてフォーマット情報と称する）を決定し、それを、USBインタフェース１４１を制御して、ビデオカメラ１に送信させる。
【００８５】
いまの場合、MPEG２に対応するフォーマット情報がビデオカメラ１に送信されるものとする。
【００８６】
PC３からフォーマット情報が送信されると、ビデオカメラ１のCPU１１は、ステップＳ４において、それを、USBインタフェース２５を介して受信し、そのフォーマット情報を検討するとともに、ステップＳ５において、その検討結果を、USBインタフェース２５を介して、PC３に送信する。
【００８７】
いまの例の場合、PC３から送信されてきたフォーマット情報は、受信したいデータはMEPG２データであることを示しているので、こらから転送するデータがMEPG２規格で圧縮されているか、MPEG２規格で圧縮されていなくても、コーディック部２４を利用していまなされている圧縮を伸張し、そしてMPEG２圧縮することができるかが検討される。
【００８８】
このようにしてMPEG２規格で圧縮されたデータを転送（ハイスピードで転送）できるかが検討される。
【００８９】
ビデオカメラ１から検討結果が送信されると、PC３のCPU１１１は、ステップＳ１４において、USBインタフェース１４１を介してそれを受信し、その検討結果に応じた応答を行う。
【００９０】
例えば、検討結果がステップＳ１３で送信されたフォーマット情報に応じたデータ転送が可能であることを示している場合、その条件によるデータ転送が、ビデオカメラ１に要求される。
【００９１】
また検討結果がフォーマット情報に応じたデータ転送ができないことを示している場合、他のフォーマット情報がビデオカメラ１に送信される。
【００９２】
図４の例の場合、ステップＳ１３で送信されたフォーマット情報に応じたデータ転送が可能であるとし、ステップＳ１４において、その条件によるデータ転送がビデオカメラ１に要求される。
【００９３】
PC３からデータ転送が要求されると、ビデオカメラ１のCPU１１は、ステップＳ６において、PC３からのフォーマット情報に応じた処理を行い、その結果得られたデータの転送を、USBインタフェース２５を制御して開始させる。
【００９４】
いまの例の場合、MPEG２圧縮データがハイスピードで転送されるので、例えば転送されるデータが、DV圧縮されている場合、コーディック部２４―２によりDV伸張処理が施された後、その結果得られたデータがコーディック部２４−１によりMPEG２圧縮処理が施され、その結果得られたデータが、USBインタフェース２５を介してハイスピードでPC３に転送される。
【００９５】
ビデオカメラ１からデータ転送が開始されると、PC３のCPU１１１は、ステップＳ１５において、USBインタフェース１４１を制御して、その受信を開始させる。
【００９６】
以上のようにしてビデオカメラ１からPC３へのデータ転送が行われる。
【００９７】
次に、ビデオカメラ１が、PC３からのデータ転送を受ける場合の両者の動作を、図８のフローチャートを参照して説明する。
【００９８】
ステップＳ３１乃至ステップＳ３３、およびステップＳ４１乃至ステップＳ４３においては、図４のステップＳ１乃至ステップＳ３、およびステップＳ１１乃至ステップＳ１３における場合と同様の処理が行われるので、その説明の詳細は省略するが、ステップＳ３２で生成されるコンフィグレーションディスクリプタには、いまの場合、基本的にはインプットディスクリプタと同様のディスクリプタが、アウトプットヘッダディスクリプタと称して組み込まれる。
【００９９】
ステップＳ３４において、ビデオカメラ１のCPU１１は、PC３から送信されてきたフォーマット情報を、USBインタフェース２５を介して受信し、そのフォーマット情報を検討するとともに、ステップＳ３５において、その検討結果を、USBインタフェース２５を介して、PC３に送信する。
【０１００】
PC３から送信されてきたフォーマット情報が、例えば転送したいデータはMEPG２データであることを示している場合、MEPG２圧縮データを記録する記録媒体１６が装着されているかや、そのような記録媒体１６が装着されていなくても、他のフォーマットのデータを記録できる記録媒体１６が装着されており、コーディック部２４を利用してMPEG２圧縮を伸張し、そしてその記録媒体１６に対応する圧縮方法で圧縮することができるかが検討される。
【０１０１】
このようにしてMPEG２規格で圧縮されたデータを受信できるかが検討される。
【０１０２】
ビデオカメラ１から検討結果が送信されると、PC３のCPU１１１は、ステップＳ４４において、USBインタフェース１４１を介してそれを受信し、その検討結果に応じた応答を行う。
【０１０３】
例えば、検討結果がステップＳ４３で送信されたフォーマット情報に応じたデータ受信が可能であることを示している場合、その条件によるデータ受信が、ビデオカメラ１に要求される。
【０１０４】
また検討結果がフォーマット情報に応じたデータ受信ができないことを示している場合、他のフォーマット情報がビデオカメラ１に送信される。
【０１０５】
図８の例の場合、ステップＳ４３で送信されたフォーマット情報に応じたデータ受信が可能であるものとし、ステップＳ４４において、その条件によるデータ受信がビデオカメラ１に要求される。
【０１０６】
次にPC３のCPU１１１は、ステップＳ４５において、例えばステップＳ４３で送信したフィーマット情報が示すフォーマットで所定のデータの転送を開始する。
【０１０７】
PC３からのデータ転送が開始されると、ビデオカメラ１のCPU１１は、ステップＳ３６において、USBインタフェース２５を制御して、その受信を開始させる。そしてCPU１１は、例えば受信したデータをそのまま、または上述したようにフォーマットを変換して記録媒体１６に記録する。
【０１０８】
以上のようにしてビデオカメラ１のデータ受信が行われる。
【０１０９】
以上のように、通信速度確定時にデータベース１４Ａを参照してフォーマットを決定するようにしたので、ユーザが後からモードを切り換える必要がなく、ビデオカメラ１のデータ転送における操作性を向上させることができる。
【０１１０】
またUSBインタフェース２５（USBビデオデバイスクラス制御のアプリケーション）とデータベース１４Ａを分離して構成することができるので、データベース１４Ａの内容を適宜変更するだけで、異なるフォーマットに対応する機器に対しても、同様に本発明を適用することができる。
【０１１１】
上述した一連の処理は、専用のハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。
【０１１２】
なお、本明細書において、フローチャートに記述されたステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【図面の簡単な説明】
【０１１３】
【図１】本発明を適用したビデオカメラ１およびPC３の利用例を示す図である。
【図２】図１のビデオカメラ１の構成例を示すブロック図である。
【図３】図１のPC３の構成例を示すブロック図である。
【図４】ビデオカメラ１からPC３にデータを転送する場合の両者の動作を説明するフローチャートである。
【図５】図４のステップＳ２の処理の詳細を示すフローチャートである。
【図６】図２のデータベース１４Ａの例を示す図である。
【図７】コンフィグレーションディスクリプタに組み込まれるフォーマットディスクリプタの例を示す図である。
【図８】図１のビデオカメラ１がPC３からのデータ転送を受ける場合の両者の動作を説明するフローチャートである。
【符号の説明】
【０１１４】
１  ビデオカメラ，  ２  USBケーブル，  ３  PC，  １１  CPU，  ２４  コーディック部，  ２５  USBインタフェース，  １４１  USBインタフェース
【図１】
2007060239.tif 000003
【図２】
2007060239.tif 000004
【図３】
2007060239.tif 000005
【図４】
2007060239.tif 000006
【図５】
2007060239.tif 000007
【図６】
2007060239.tif 000008
【図７】
2007060239.tif 000009
【図８】
2007060239.tif 000010