(57)【要約】  仮想ビデオ・キャプチャ・デバイスをセットアップおよび実行させるためのシステムおよび方法が、ここに説明される。仮想ビデオ・キャプチャ・デバイスは、画像データを受信して、このデータをビデオ・キャプチャ・デバイスと同様のフォーマットで出力することができる。仮想ビデオ・キャプチャ・デバイスは、物理ビデオ・キャプチャ・デバイスからのデータを受信するように構成されたアプリケーションで動作しうる。【選択図】      図４
2013542649.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサと、
前記プロセッサと通信状態にあるメモリと、
を備えるビデオ表示装置であって、
前記メモリは命令を備え、前記命令は、前記プロセッサによって実行されるとき、前記プロセッサに、
少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムを実行させ、
仮想ビデオ・キャプチャ・デバイスを実行させ、なお、前記仮想ビデオ・キャプチャ・デバイスは、
前記画像データを取得し、
前記取得された画像データをトランスコードし、
前記プログラムによる使用のために、前記トランスコードされた画像データを出力する、ように構成され、
前記仮想ビデオ・キャプチャ・デバイスを第１の物理ビデオ・キャプチャ・デバイスとしてオペレーティングシステムに登録させる、なお、前記オペレーティングシステムは、前記プログラムの実行を制御する、ビデオ表示装置。
【請求項２】
第２の物理ビデオ・キャプチャ・デバイスをさらに備え、なお、前記メモリは、前記プロセッサによって実行されるとき、前記プロセッサに、前記プログラムが前記トランスコードされた画像データを受信することおよび前記第２の物理ビデオ・キャプチャ・デバイスからのビデオデータを受信することの間で選択させる命令をさらに備える、請求項１に記載の装置。
【請求項３】
前記第２の物理ビデオ・キャプチャ・デバイスは、ビデオカメラを備える、請求項２に記載の装置。
【請求項４】
ネットワークインタフェースをさらに備え、なお、前記プログラムは、前記受信されたビデオ入力を前記ネットワークインタフェース上で送信するように構成される、請求項１に記載の装置。
【請求項５】
前記ネットワークインタフェースは、インターネット上で前記ビデオ入力を送信する、請求項４に記載の装置。
【請求項６】
前記仮想ビデオ・キャプチャ・デバイスは、前記画像データに基づいて、前記画像データを拡張データと組み合わせるようにさらに構成される、請求項１に記載の装置。
【請求項７】
前記仮想ビデオ・キャプチャ・デバイスは、デバイス・ドライバを備える、請求項１に記載の装置。
【請求項８】
前記メモリは、前記プロセッサによって実行されるとき、前記プロセッサに、複数の仮想ビデオ・キャプチャ・デバイスを作成させる命令をさらに備え、なお、各仮想ビデオ・キャプチャ・デバイスは、前記画像データの特定の部分と関連づけられる、請求項１に記載の装置。
【請求項９】
第１の仮想ビデオ・キャプチャ・デバイスと関連づけられた前記画像データの第１の部分は、アプリケーションウィンドウを備える、請求項１に記載の装置。
【請求項１０】
前記画像データを表示するように構成されたディスプレイをさらに備える、請求項１に記載の装置。
【請求項１１】
少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムのために、データを処理する方法であって、
少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムを実行することと、
仮想ビデオ・キャプチャ・デバイスを実行することと、なお、前記仮想ビデオ・キャプチャ・デバイスを実行することは、
前記画像データを取得することと、
前記取得された画像データをトランスコードすることと、
前記プログラムによる使用のために、前記トランスコードされた画像データを出力することと、を備え、
前記仮想ビデオ・キャプチャ・デバイスを第１の物理ビデオ・キャプチャ・デバイスとしてオペレーティングシステムに登録することと、なお、前記オペレーティングシステムは、前記プログラムの実行を制御する、
を備える方法。
【請求項１２】
前記プログラムが前記トランスコードされた画像データを受信することおよび第２の物理ビデオ・キャプチャ・デバイスからのビデオデータを受信することの間で選択することをさらに備える、請求項１１に記載の方法。
【請求項１３】
前記第２の物理ビデオ・キャプチャ・デバイスは、ビデオカメラを備える、請求項１２に記載の方法。
【請求項１４】
前記受信されたビデオ入力をネットワーク上で送信することをさらに備える、請求項１１に記載の方法。
【請求項１５】
前記ネットワークは、インターネットを備える、請求項１４に記載の方法。
【請求項１６】
前記仮想ビデオ・キャプチャ・デバイスは、前記画像データに基づいて、前記画像データを拡張データと組み合わせるようにさらに構成される、請求項１１に記載の方法。
【請求項１７】
前記仮想ビデオ・キャプチャ・デバイスは、デバイス・ドライバを備える、請求項１１に記載の方法。
【請求項１８】
複数の仮想ビデオ・キャプチャ・デバイスを作成することをさらに備え、なお、各仮想ビデオ・キャプチャ・デバイスは、前記画像データの特定の部分と関連づけられる、請求項１１に記載の方法。
【請求項１９】
第１の仮想ビデオ・キャプチャ・デバイスと関連づけられる前記画像データの第１の部分は、アプリケーションウィンドウを備える、請求項１１に記載の方法。
【請求項２０】
前記画像データを表示することをさらに備える、請求項１１に記載の方法。
【請求項２１】
少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムを実行する手段と、
仮想ビデオ・キャプチャ・デバイスを実行する手段と、なお、前記仮想ビデオ・キャプチャ・デバイスは、
前記画像データを取得し、
前記取得された画像データをトランスコードし、
前記プログラムによる使用のために、前記トランスコードされた画像データを出力する、ように構成され、
前記仮想ビデオ・キャプチャ・デバイスを第１の物理ビデオ・キャプチャ・デバイスとしてオペレーティングシステムに登録する手段と、なお、前記オペレーティングシステムは、前記プログラムの実行を制御する、
を備えるビデオ表示装置。
【請求項２２】
前記プログラムが前記トランスコードされた画像データを受信することおよび第２の物理ビデオ・キャプチャ・デバイスからのビデオデータを受信することの間で選択する手段をさらに備える、請求項２１に記載の装置。
【請求項２３】
前記第２の物理ビデオ・キャプチャ・デバイスは、ビデオカメラを備える、請求項２２に記載の装置。
【請求項２４】
前記受信されたビデオ入力をネットワーク上で送信する手段をさらに備える、請求項２１に記載の装置。
【請求項２５】
前記ネットワークは、インターネットを備える、請求項２４に記載の装置。
【請求項２６】
前記仮想ビデオ・キャプチャ・デバイスは、前記画像データに基づいて、前記画像データを拡張データと組み合わせるようにさらに構成される、請求項２１に記載の装置。
【請求項２７】
前記仮想ビデオ・キャプチャ・デバイスは、デバイス・ドライバを備える、請求項２１に記載の装置。
【請求項２８】
複数の仮想ビデオ・キャプチャ・デバイスを作成する手段をさらに備え、なお、各仮想ビデオ・キャプチャ・デバイスは、前記画像データの特定の部分と関連づけられる、請求項２１に記載の装置。
【請求項２９】
第１の仮想ビデオ・キャプチャ・デバイスと関連づけられる前記画像データの第１の部分は、アプリケーションウィンドウを備える、請求項２１に記載の装置。
【請求項３０】
前記画像データを表示する手段をさらに備える、請求項２１に記載の装置。
【請求項３１】
少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムのために、データを処理するコンピュータプログラム製品であって、
コンピュータに、少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムを実行させるためのコードと、
コンピュータに、仮想ビデオ・キャプチャ・デバイスを実行させるためのコードと、なお、前記仮想ビデオ・キャプチャ・デバイスは、前記コンピュータに、
前記画像データを取得させ、
前記取得された画像データをトランスコードさせ、
前記プログラムによる使用のために、前記トランスコードされた画像データを出力させる、ように構成され、
コンピュータに、前記仮想ビデオ・キャプチャ・デバイスを第１の物理ビデオ・キャプチャ・デバイスとしてオペレーティングシステムに登録させるためのコードと、なお、前記オペレーティングシステムは、前記プログラムの実行を制御する、
をその上に記憶された非一時的なコンピュータ読み取り可能媒体、
を備えるコンピュータプログラム製品。
【請求項３２】
前記非一時的なコンピュータ読み取り可能媒体は、コンピュータに、前記プログラムが前記トランスコードされた画像データを受信することおよび第２の物理ビデオ・キャプチャ・デバイスからのビデオデータを受信することの間で選択させるためのコードをその上にさらに記憶される、請求項３１に記載のコンピュータプログラム製品。
【請求項３３】
前記第２の物理ビデオ・キャプチャ・デバイスは、ビデオカメラを備える、請求項３２に記載のコンピュータプログラム製品。
【請求項３４】
前記非一時的なコンピュータ読み取り可能媒体は、コンピュータに、前記受信されたビデオ入力をネットワーク上で送信させるためのコードをその上にさらに記憶される、請求項３１に記載のコンピュータプログラム製品。
【請求項３５】
前記ネットワークは、インターネットを備える、請求項３４に記載のコンピュータプログラム製品。
【請求項３６】
前記仮想ビデオ・キャプチャ・デバイスは、前記画像データに基づいて、前記画像データを拡張データと組み合わせるようにさらに構成される、請求項３１に記載のコンピュータプログラム製品。
【請求項３７】
前記仮想ビデオ・キャプチャ・デバイスは、デバイス・ドライバを備える、請求項３１に記載のコンピュータプログラム製品。
【請求項３８】
前記非一時的なコンピュータ読み取り可能媒体は、コンピュータに、複数の仮想ビデオ・キャプチャ・デバイスを作成させるためのコードをその上にさらに記憶され、なお、各仮想ビデオ・キャプチャ・デバイスは、前記画像データの特定の部分と関連づけられる、請求項３１に記載のコンピュータプログラム製品。
【請求項３９】
第１の仮想ビデオ・キャプチャ・デバイスと関連づけられる前記画像データの第１の部分は、アプリケーションウィンドウを備える、請求項３１に記載のコンピュータプログラム製品。
【請求項４０】
前記非一時的なコンピュータ読み取り可能媒体は、コンピュータに、前記画像データを表示させるためのコードをその上にさらに記憶される、請求項３１に記載のコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]  本願は、一般的にはビデオ・キャプチャ・デバイスに関し、より具体的には仮想ビデオ・キャプチャ・デバイスをインプリメントする（implementing）ためのシステムおよび方法に関する。
【背景技術】
【０００２】
[0002]  多くのアプリケーションは、ビデオおよび／またはオーディオを１つのデバイスから別のデバイスへネットワーク上でストリームする（stream）ために、ウェブカメラのような標準のビデオ・キャプチャ・デバイスと連動して動作するように設計される。したがって、これらデバイスのユーザは、ビデオ通話またはビデオ会議に参加できる。これらアプリケーションは、特に、ウェブカメラからビデオを撮影して、このビデオを送信するように典型的にセットアップされる。言い換えれば、これらアプリケーションは、ビデオを送信するために、特にウェブカメラのドライバと、ウェブカメラによって使用されるビデオフォーマットとで動作するように設計される。したがって、これらアプリケーションは、ウェブカメラのユーザのリアルタイムビデオのような、ウェブカメラによってキャプチャされるビデオ入力を送信することに限定される。
【発明の概要】
【０００３】
[0003]  本発明のシステム、方法、およびデバイスは、いくつかの態様をそれぞれ有し、これらのうちの何れも、単独でその好ましい属性を担うものではない。後続する特許請求の範囲によって示される本発明の範囲を限定することなく、ここでいくつかの特徴が簡潔に説明される。この説明を考慮した後に、また、特に「発明を実施するための形態」と題されたセクションを読んだ後に、当業者であれば、どのように本発明の特徴が、仮想ビデオ・キャプチャ・デバイスをインプリメントするためのシステムおよび方法を含む利点を提供するかを理解するであろう。
【０００４】
[0004]  本開示の一実施形態は、プロセッサを備えるビデオ表示装置を提供する。ビデオ表示装置は、プロセッサと通信状態にあるメモリをさらに備える。メモリは、命令を備える。これら命令は、プロセッサによって実行されるとき、プロセッサに、少なくとも１つの物理（physical）ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムを実行させる。これら命令は、プロセッサによって実行されるとき、さらにプロセッサに、仮想ビデオ・キャプチャ・デバイスを実行させる。仮想ビデオ・キャプチャ・デバイスは、画像データを取得する（retrieve）ように構成される。仮想ビデオ・キャプチャ・デバイスは、取得された画像データをトランスコード（transcode）するようにさらに構成される。仮想ビデオ・キャプチャ・デバイスは、プログラムによる使用のために、トランスコードされた画像データを出力するように構成される。これら命令は、プロセッサによって実行されるとき、さらにプロセッサに、仮想ビデオ・キャプチャ・デバイスを第１の物理ビデオ・キャプチャ・デバイスとしてオペレーティングシステムに登録させ、なお、このオペレーティングシステムは、プログラムの実行を制御する。
【０００５】
[0005]  本開示の別の実施形態は、少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムのためにデータを処理する方法を提供する。この方法は、少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムを実行することを備える。この方法は、仮想ビデオ・キャプチャ・デバイスを実行することをさらに備える。仮想ビデオ・キャプチャ・デバイスを実行することは、画像データを取得することを備える。仮想ビデオ・キャプチャ・デバイスを実行することは、取得された画像データをトランスコードすることをさらに備える。仮想ビデオ・キャプチャ・デバイスを実行することは、プログラムによる使用のために、トランスコードされた画像データを出力することをさらに備える。この方法は、仮想ビデオ・キャプチャ・デバイスを第１の物理ビデオ・キャプチャ・デバイスとしてオペレーティングシステムに登録することをさらに備え、なお、このオペレーティングシステムは、プログラムの実行を制御する。
【０００６】
[0006]  本開示のなお別の実施形態は、少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムを実行する手段を備えるビデオ表示装置を提供する。ビデオ表示装置は、仮想ビデオ・キャプチャ・デバイスを実行する手段をさらに備える。仮想ビデオ・キャプチャ・デバイスは、画像データを取得するように構成される。仮想ビデオ・キャプチャ・デバイスは、取得された画像データをトランスコードするようにさらに構成される。仮想ビデオ・キャプチャ・デバイスは、プログラムによる使用のために、トランスコードされた画像データを出力するように構成される。ビデオ表示装置は、仮想ビデオ・キャプチャ・デバイスを第１の物理ビデオ・キャプチャ・デバイスとしてオペレーティングシステムに登録する手段をさらに備え、なお、このオペレーティングシステムは、プログラムの実行を制御する。
【０００７】
[0007]  本開示の別の実施形態は、少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムのために、データを処理するためのコンピュータプログラム製品を提供する。コンピュータプログラム製品は、非一時的なコンピュータ読み取り可能媒体を備える。非一時的なコンピュータ読み取り可能媒体は、コンピュータに、少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムを実行させるためのコードをその上に記憶されている。非一時的なコンピュータ読み取り可能媒体は、コンピュータに、仮想ビデオ・キャプチャ・デバイスを実行させるためのコードをその上にさらに記憶されている。仮想ビデオ・キャプチャ・デバイスは、コンピュータに、画像データを取得させるように構成される。仮想ビデオ・キャプチャ・デバイスは、コンピュータに、取得された画像データをトランスコードさせるようにさらに構成される。仮想ビデオ・キャプチャ・デバイスは、コンピュータに、プログラムによる使用のために、トランスコードされた画像データを出力させるようにさらに構成される。非一時的なコンピュータ読み取り可能媒体は、コンピュータに、仮想ビデオ・キャプチャ・デバイスを第１の物理ビデオ・キャプチャ・デバイスとしてオペレーティングシステムに登録させるためのコードをその上にさらに記憶され、なお、このオペレーティングシステムは、プログラムの実行を制御する。
【図面の簡単な説明】
【０００８】
【図１Ａ】図１Ａは、典型的なコンピューティングデバイスを例示する。
【図１Ｂ】図１Ｂは、別の典型的なコンピューティングデバイスを例示する。
【図２】図２は、コンピューティングデバイスの機能ブロック図である。
【図３】図３は、ビデオ・キャプチャ・デバイスの機能ブロック図である。
【図４】図４は、仮想ビデオ・キャプチャ・デバイスを備えたコンピューティングシステムの機能ブロック図である。
【図５】図５は、仮想ビデオ・キャプチャ・デバイス・ドライバを制御するための典型的なユーザインタフェースである。
【図６】図６は、ビデオ・キャプチャ・デバイスの補助入力を介してビデオをキャプチャするための典型的な処理のフローチャートである。
【図７】図７は、仮想ビデオ・キャプチャ・デバイスをインストールして、ビデオデータを送信するための典型的な処理のフローチャートである。
【図８】図８は、仮想ビデオ・キャプチャ・デバイスにおける画像データをトランスコードするための典型的な処理のフローチャートである。
【図９】図９は、オペレーティングシステムから、仮想ビデオ・キャプチャ・デバイスによって画像データを取得する典型的な処理のフローチャートである。
【図１０】図１０は、オペレーティングシステムから、仮想ビデオ・キャプチャ・デバイスによって画像データを取得する別の典型的な処理のフローチャートである。
【発明を実施するための形態】
【０００９】
[0019]  「典型的（exemplary）」という用語は、ここで、「例、実例、または例示を提供する」という意味で用いられる。ここで「典型的」であると説明される任意の実施形態は、他の実施形態に対して、必ずしも好ましいまたは有利であるようには解釈されない。以下の説明は、いかなる当業者であっても、本発明の製造または使用を可能にするために示される。詳細は、説明目的で、以下の説明において記載される。当業者であれば、本発明がこれら特定の詳細を使用することなく実現されうることを理解するであろうことが認識されるべきである。他の事例では、本発明の説明を不必要な詳細により不明瞭にしないように、周知の構造および処理は、詳しくは述べられない。したがって、本発明は、示される実施形態によって限定されるようには意図されず、ここに開示される原理および特徴と一致する最も広い範囲を与えられることとなる。
【００１０】
[0020]  ここに説明されるシステムおよび方法は、仮想ビデオ・キャプチャ・デバイスをインプリメントすることに関する。一実施形態では、仮想ビデオ・キャプチャ・デバイスは、ウェブカメラのような物理カメラとしてシステムに現れる、コンピューティングシステム上で実行中の仮想デバイスである。ウェブカメラと同様に、仮想ビデオ・キャプチャ・デバイスは、ビデオ・チャット・アプリケーションのような、コンピューティングシステム上で実行中のアプリケーションによって使用されうるビデオデータを出力する。しかしながら、ウェブカメラとは異なり、仮想ビデオ・キャプチャ・デバイスは、必ずしもカメラのセンサを通じて画像を物理的にキャプチャするのではなく、むしろ物理カメラの出力と同様のフォーマットで、様々な異なるソースからのビデオを出力する。例えば、仮想ビデオ・キャプチャ・デバイスは、コンピュータ上に存在しているビデオファイルを取得して、それを物理カメラによって使用される出力フォーマットにフォーマットしうる。その後、アプリケーションが、仮想ビデオ・キャプチャ・デバイスからのこの出力を使用しうる。これは、例えば、物理カメラからの入力を予期しているビデオ・チャット・アプリケーションが、代わりに、仮想ビデオ・キャプチャ・デバイスを介して異なるソースからの入力を受信することを可能にする。従来、このようなアプリケーションは、物理カメラ以外のソースからの入力を受け取るために、変更または再設計される必要があった。しかしながら、ここに説明される教示を使用すると、このようなアプリケーションは、変更または再設計を必要とせずに、追加のソースからの入力を受信しうる。
【００１１】
[0021]  ここに説明されるシステムおよび方法はさらに、補助入力を備えたネットワークカメラのようなビデオ・キャプチャ・デバイスに関する。これは、ネットワークカメラが、ネットワークカメラのセンサ以外のソースからの補助ビデオ入力を受信し、ネットワーク接続上でこの入力ビデオをエンコード、フォーマット、および送信するために、ネットワークカメラのハードウェアおよび／またはソフトウェアのリソースを共有することを可能にする。従来、ユーザが、ＤＶＤプレーヤのような補助ソースからの画像またはオーディオを、ネットワークカメラを通じて共有することを望んだ場合、ネットワークカメラは、このネットワークカメラに内蔵されたセンサを介して入力を受信するようにのみ構成されているので、ユーザはそうすることができなかった。しかしながら、ここに説明される教示を使用すると、ユーザは、補助ソースからの画像またはオーディオを、共有のためにネットワークカメラの補助入力に供給できる。
【００１２】
[0022]  図１Ａは、ここに説明される実施形態で使用されうる典型的なコンピューティングデバイスを例示する。コンピューティングデバイス１００ａは、任意の周知のコンピューティングシステムでありうる。周知のコンピューティングシステム、環境、および／または構成の例は、それに限定されるものではないが、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドまたはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、プログラマブル民生用電子機器、ネットワークＰＣｓ、ミニコンピュータ、メインフレームコンピュータ、任意の上記システムまたはデバイスを含む分散コンピューティング環境、およびそれに類するものを含む。示されるように、コンピューティングデバイス１００ａは、カメラ１０５ａを含む。カメラ１０５ａは、コンピューティングデバイス１００ａのハウシングに内蔵された内蔵カメラ（integrated camera）として示されている。カメラ１０５ａは、ウェブカメラのようなビデオ・キャプチャ・デバイスを備えうる。さらに、ビデオソース１１０ａが、コンピューティングデバイス１００ａに接続（attached）されている。ビデオソース１１０ａは、ＤＶＤプレーヤ、ブルーレイ（登録商標）プレーヤ、カムコーダ等のような任意のビデオソースを備えうる。ビデオソース１１０ａは、コンピューティングデバイス１００ａ上のインタフェースを介してコンピューティングデバイス１００ａに接続されうる。ポートは、ＵＳＢ、ＤＶＩ、ＶＧＡ、コンポーネントビデオ等のうちの少なくとも１つを備えうる。
【００１３】
[0023]  図１Ｂは、ここに説明される実施形態で使用されうる別の典型的なコンピューティングデバイスを例示する。コンピューティングデバイス１００ｂもまた、任意の周知のコンピューティングシステムでありうる。示されるように、コンピューティングデバイス１００ｂは、カメラ１０５ｂを含む。カメラ１０５ｂは、コンピューティングデバイス１００ｂに接続する外付けカメラとして示されている。カメラ１０５ｂは、ＵＳＢインタフェースを介してコンピューティングデバイス１００ｂに接続する。カメラ１０５ｂは、ウェブカメラのようなビデオ・キャプチャ・デバイスを備えうる。さらに、ビデオソース１１０ｂが、カメラ１０５ｂに接続されている。ビデオソース１１０ｂは、ＤＶＤプレーヤ、ブルーレイプレーヤ、カムコーダ等のような任意のビデオソースを備えうる。ビデオソース１１０ｂは、カメラ１０５ｂ上のインタフェースを介してカメラ１０５ｂに接続されうる。インタフェースは、ＵＳＢ、ＤＶＩ、ＶＧＡ、コンポーネントビデオ等のうちの少なくとも１つを備えうる。
【００１４】
[0024]  図２は、コンピューティングデバイスの機能ブロック図である。コンピューティングデバイス１００は、コンピューティングデバイス１００ａ、コンピューティングデバイス１００ｂ、または別の同様のコンピューティングデバイスのうちの任意の１つに対応しうる。コンピューティングデバイス１００は、入力／出力インタフェース２３０、およびメモリ２２０とデータ通信状態にあるプロセッサ２１０を含む。入力／出力インタフェース２３０はさらに、ディスプレイ２４０とデータ通信状態にある。プロセッサ２１０はさらに、ネットワークインタフェース２６０とデータ通信状態にある。別々に説明されているが、コンピューティングデバイス１００について説明される機能ブロックは、個別の構造要素である必要がないことが理解されるべきである。例えば、プロセッサ２１０およびメモリ２２０は、単一チップ内に組み込まれうる。同様に、２つ以上のプロセッサ２１０、およびネットワークインタフェース２６０も、単一チップ内に組み込まれうる。
【００１５】
[0025]  プロセッサ２１０は、汎用プロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）またはその他のプログラマブル論理デバイス、ディスクリートゲートまたはトランジスタロジック、ディスクリート・ハードウェア・コンポーネント、あるいはここに説明される機能を実行するように設計されたこれらの任意の適切な組み合わせでありうる。プロセッサはまた、例えば、ＤＳＰとマイクロプロセッサの組み合わせ、複数のマイクロプロセッサ、ＤＳＰコアと連携した１つ以上のマイクロプロセッサ、あるいはその他任意のこのような構成であるコンピューティングデバイスの組み合わせとしてインプリメントされうる。
【００１６】
[0026]  プロセッサ２１０は、１つ以上のバスを介して、メモリ２２０から情報を読み取り、またはこのメモリに情報を書き込むように結合されうる。プロセッサは、これに加えて、あるいはその代わりに、プロセッサレジスタのようなメモリを含みうる。メモリ２２０は、異なるレベルが異なる容量およびアクセス速度を有するマルチレベル階層キャッシュを含むプロセッサキャッシュを含みうる。メモリ２２０はまた、ランダムアクセスメモリ（ＲＡＭ）、その他の揮発性記憶デバイス、または不揮発性記憶デバイスを含みうる。記憶装置は、ハードドライブ、コンパクトディスク（ＣＤｓ）またはデジタルビデオディスク（ＤＶＤｓ）などの光ディスク、フラッシュメモリ、フロッピー（登録商標）ディクス、磁気テープ、およびＺｉｐ（登録商標）ドライブを含みうる。
【００１７】
[0027]  プロセッサ２１０はまた、コンピューティングデバイス１００に接続されたデバイスからの入力を受信し、またそれらデバイスに出力を提供するための入力／出力インタフェース２３０に結合される。このようなデバイスの例は、それに限定されるものではないが、キーボード、ボタン、キー、スイッチ、ポインティングデバイス、マウス、ジョイスティック、リモコン、赤外線検出器、ビデオカメラ（例えば、ウェブカメラ）、ＤＶＤプレーヤ、ブルーレイプレーヤ、動き検出器、（例えば、音声コマンドを検出するために、場合によっては、オーディオ処理ソフトウェアに結合される）マイクロホン、ディスプレイおよびプリンタを含む視覚的出力デバイス（例えば、ディスプレイ２４０）、スピーカ、ヘッドホン、イヤホン、およびアラームを含むオーディオ出力デバイス、ならびにフォースフィードバック・ゲーム・コントローラおよび振動デバイスを含む触覚出力デバイスを含む。
【００１８】
[0028]  プロセッサ２１０はさらに、ネットワークインタフェース２６０に結合される。ネットワークインタフェース２６０は、１つ以上のモデムを備えうる。ネットワークインタフェース２６０は、ネットワークへの送信のために、プロセッサ２１０によって生成されたデータを用意する。トランシーバ２６０はまた、ネットワークを介して受信されたデータを復調する。ネットワークインタフェース２６０は、送信機、受信機、またはその両方を含みうる。他の実施形態では、送信機および受信機は、２つの個別のコンポーネントである。ネットワークインタフェース２６０は、汎用プロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）またはその他のプログラマブル論理デバイス、ディスクリートゲートまたはトランジスタロジック、ディスクリート・ハードウェア・コンポーネント、あるいはここに説明される機能を実行するように設計されたこれらの任意の適切な組み合わせとして具現化されうる。
【００１９】
[0029]  図３は、ビデオ・キャプチャ・デバイスの機能ブロック図である。ビデオ・キャプチャ・デバイス１０５は、カメラ１０５ａ、カメラ１０５ｂ、または別の同様のビデオ・キャプチャ・デバイスのうちの任意の１つに対応しうる。ビデオ・キャプチャ・デバイス１０５は、入力／出力インタフェース３３０、およびメモリ３２０とデータ通信状態にあるプロセッサ３１０を含む。プロセッサ３１０はさらに、補助入力３４０およびセンサ３５０とデータ通信状態にある。別々に説明されているが、ビデオ・キャプチャ・デバイス１０５について説明される機能ブロックは、個別の構造要素である必要がないことが理解されるべきである。例えば、プロセッサ３１０およびメモリ３２０は、単一チップ内に組み込まれうる。
【００２０】
[0030]  プロセッサ３１０は、汎用プロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）またはその他のプログラマブル論理デバイス、ディスクリートゲートまたはトランジスタロジック、ディスクリート・ハードウェア・コンポーネント、あるいはここに説明される機能を実行するように設計されたこれらの任意の適切な組み合わせでありうる。プロセッサはまた、例えば、ＤＳＰとマイクロプロセッサの組み合わせ、複数のマイクロプロセッサ、ＤＳＰコアと連携した１つ以上のマイクロプロセッサ、あるいはその他任意のこのような構成であるコンピューティングデバイスの組み合わせとしてインプリメントされうる。
【００２１】
[0031]  プロセッサ３１０は、１つ以上のバスを介して、メモリ３２０から情報を読み取り、またはこのメモリに情報を書き込むように結合されうる。プロセッサは、これに加えて、あるいはその代わりに、プロセッサレジスタのようなメモリを含みうる。メモリ３２０は、異なるレベルが異なる容量およびアクセス速度を有するマルチレベル階層キャッシュを含むプロセッサキャッシュを含みうる。メモリ３２０はまた、ランダムアクセスメモリ（ＲＡＭ）、その他の揮発性記憶デバイス、または不揮発性記憶デバイスを含みうる。記憶装置は、ハードドライブ、コンパクトディスク（ＣＤｓ）またはデジタルビデオディスク（ＤＶＤｓ）などの光ディスク、フラッシュメモリ、フロッピーディクス、磁気テープ、およびＺｉｐドライブを含みうる。
【００２２】
[0032]  プロセッサ３１０はまた、コンピューティングデバイス１００のようなコンピューティングデバイスからの入力を受信し、またコンピューティングデバイスに出力を提供するための入力／出力インタフェース３３０に結合される。入力／出力インタフェース３３０は、ＵＳＢインタフェース、ＦｉｒｅＷｉｒｅ（登録商標）インタフェース等を備えうる。
【００２３】
[0033]  プロセッサ３１０はまた、ＤＶＤプレーヤ、ブルーレイプレーヤ、カムコーダ等のようなビデオソース（例えば、ビデオソース１１０ａ／１１０ｂ）からの入力を受信するための補助入力３４０に結合される。補助入力３４０は、ＤＶＩ、ＨＤＭＩ（登録商標）、ＶＧＡ、ＲＣＡ、コンポーネントビデオ等のような入力インタフェースを備えうる。
【００２４】
[0034]  プロセッサ３１０はまた、画像／ビデオをキャプチャするためのセンサ３５０に結合される。センサ３５０は、ＣＣＤ、ＣＭＯＳ、またはその他の適切なタイプのセンサを備えうる。
【００２５】
[0035]  図４は、仮想ビデオ・キャプチャ・デバイスを有するコンピューティングシステムの機能ブロック図である。システム４００は、オペレーティングシステム４０５、アプリケーション４１０、ビデオドライバ４１５、仮想キャプチャ・デバイス・ドライバ４２０、ネットワークドライバ４２５、およびカメラドライバ４３０を含み、これらは、個別にあるいは集合的に、コンピューティングデバイス１００のメモリ２２０のようなメモリに記憶され、かつプロセッサ２１０のようなプロセッサによって実行されうる１つ以上のソフトウェアモジュールを備えうる。
【００２６】
[0036]  アプリケーション４１０は、スカイプ、Ｗｉｎｄｏｗｓ（登録商標） Ｌｉｖｅメッセンジャ、Ｇチャット（GChat）等のようなビデオアプリケーションを備えうる。アプリケーション４１０は、例えば、ドライバのような、標準のビデオ・キャプチャ・デバイスからのビデオデータを受信するように構成される。具体的には、アプリケーション４１０は、ウェブカメラ用のカメラドライバからのビデオデータを受信するように構成されうる。
【００２７】
[0037]  ネットワークドライバ４２５は、ネットワーク・インタフェース・カード（ＮＩＣ）４５０からの入力を受信するように構成されることができ、これはさらに、インターネット４５５などのインターネットプロトコルネットワークのようなネットワークと通信するように構成されることができる。例えば、オペレーティングシステム４０５は、アプリケーション４１０の実行を容易にするように機能しうる。アプリケーション４１０は、ビデオデータを生成し、ＡＰＩｓなどを通じて、オペレーティングシステム４０５と相互作用して（interact）、このビデオデータを、インターネット４５５に接続された別のデバイスにインターネット４５５上で送信しうる。オペレーティングシステム４０５は、ビデオデータをネットワークドライバ４２５に送ることができ、それは、ＮＩＣ ４５０を制御して、このデータをインターネット４５５上で送信する。同様に、ＮＩＣ ４５０、ネットワークドライバ４２５、オペレーティングシステム４０５、およびアプリケーション４１０は、例えば、アプリケーション４１０において、インターネット４５５からビデオを受信するように機能しうる。
【００２８】
[0038]  ビデオドライバ４１５は、ビデオカード４６０と通信するように構成されることができ、それはさらに、ディスプレイ４６５と通信する。例えば、アプリケーション４１０は、ディスプレイ４６５上で表示するためのビデオデータを受信または生成しうる。アプリケーション４１０は、ビデオデータをディスプレイ４６５上に表示するために、ＡＰＩｓなどを通じて、オペレーティングシステム４０５と相互作用しうる。オペレーティングシステム４０５は、ビデオデータをビデオドライバ４１５に送ることができ、それは、ビデオカード４６０を制御して、ビデオデータをディスプレイ４６５に送信する。その後、ディスプレイ４６５は、ビデオデータを表示する。
【００２９】
[0039]  ビデオ・キャプチャ・デバイス・ドライバ４３０は、例えば、ビデオ・キャプチャ・デバイス１０５のような、ビデオ・キャプチャ・デバイス４７０と通信するように構成されうる。例えば、アプリケーション４１０は、ビデオ・キャプチャ・デバイス４７０を通じてビデオデータをキャプチャしうる。アプリケーション４１０は、ビデオデータをキャプチャするために、ＡＰＩｓなどを通じて、オペレーティングシステム４０５と相互作用しうる。オペレーティングシステム４０５は、ビデオ・キャプチャ・デバイス４７０と通信して、ビデオ・キャプチャ・デバイス４７０上のセンサからのビデオ、またはビデオ・キャプチャ・デバイス４７０上の補助入力からのビデオなどの、ビデオ・キャプチャ・デバイス４７０からのビデオを受信するために、ビデオ・キャプチャ・デバイス・ドライバ４３０を利用しうる。その後、オペレーティングシステム４０５は、受信されたビデオをアプリケーション４１０に導きうる（direct）。
【００３０】
[0040]  上述されたシステム４００の様々なモジュール／コンポーネントを利用して、システム４００は、ビデオデータをキャプチャし、ビデオデータをディスプレイ上に表示し、さらに、ビデオデータをインターネット上で別のデバイスに送信しうる。システム４００は、ビデオ・キャプチャ・デバイス４６０以外のソースからのビデオデータを受信するようにさらに構成されうる。上述されたように、アプリケーション４１０は、標準のビデオ・キャプチャ・デバイス・ドライバを通じて、標準のビデオ・キャプチャ・デバイスからのビデオデータを受信するように構成される。したがって、仮想ビデオ・キャプチャ（ＶＶＣ：virtual video capture）・ドライバ４２０は、標準のビデオ・キャプチャ・デバイス以外のソースからのビデオをキャプチャする標準のビデオ・キャプチャ・デバイス・ドライバとして機能するように構成される。ＶＶＣドライバ４２０は、このようなソースから受信されるビデオデータを、標準のビデオ・キャプチャ・デバイスと同じフォーマットでフォーマットする。ＶＣＣドライバ４２０の機能により、標準のビデオ・キャプチャ・デバイスとしてアプリケーション４１０に現れるソースは、「仮想ビデオ・キャプチャ・デバイス」と称される。
【００３１】
[0041]  一実施形態では、仮想ビデオ・キャプチャ・デバイスは、コンピューティングデバイス１００の入力／出力インタフェース２３０を通じて通信するＤＶＤプレーヤ、ブルーレイプレーヤ、カムコーダ等のようなビデオソースを備える。別の実施形態では、仮想ビデオ・キャプチャ・デバイスは、ビデオ・キャプチャ・デバイス４６０の補助入力（例えば、補助入力３４０）を通じて通信するビデオソースを備える。
【００３２】
[0042]  なお別の実施形態では、仮想ビデオ・キャプチャ・デバイスは、ディスプレイ４６５に出力される画像を備える。例えば、１つ以上の画像が、ビデオドライバ４１５およびビデオカード４６０を介して、ディスプレイ４６５に出力されうる。これら画像は、ＯＳ Ｘ（登録商標）、Ｗｉｎｄｏｗｓ等のようなオペレーティングシステムで見られるウィンドウのような、１つ以上の「ウィンドウ（windows）」で表示されうる。これら画像は、例えば、Ｗｉｄｏｗｓ Ｍｅｄｉａ Ｐｌａｙｅｒ、ｉＴｕｎｅｓ（登録商標）、ＱｕｉｃｋＴｉｍｅ（登録商標） Ｐｌａｙｅｒ、Ａｄｏｂｅ（登録商標） Ｆｌａｓｈ Ｐｌａｙｅｒ等のようなビデオプログラムからのビデオデータ、またはワード編集プログラム、ウェブブラウザ、Ａｄｏｂｅ Ａｃｒｏｂａｔ（登録商標）等からの表示のような何らかの他の画像データを備えうる。この実施形態では、ＶＶＣドライバ４２０は、ビデオドライバ４１５に出力される画像データを受信するために、オペレーティングシステムと相互作用するように構成される。ＶＶＣドライバ４２０は、ディスプレイ４６５に出力される画像のすべて、またはこれら画像の一部のみを受信しうる。ＶＶＣドライバ４２０は、これら画像データを、標準のビデオ・キャプチャ・デバイス・ドライバにより出力されるのと同じフォーマットにさらにフォーマットする。その後、フォーマットされた画像データは、アプリケーション４１０によって利用されうる。図５−図９は、ＶＶＣドライバ４２０およびシステム４００の機能についてさらに詳述する。
【００３３】
[0043]  なお別の実施形態では、仮想ビデオ・キャプチャ・デバイスは、画像ファイル、ビデオファイル、Ａｄｏｂｅ Ａｃｒｏｂａｔファイル、ウェブページ等のようなファイルを備える。
【００３４】
[0044]  仮想ビデオ・キャプチャ・デバイスは、ビデオ・キャプチャ・デバイス４７０および／または１つ以上の上述された仮想ビデオ・キャプチャ・デバイスの組み合わせをさらに備えうる。例えば、ＶＶＣドライバ４２０は、オペレーティングシステム４０５を介して、ビデオ・キャプチャ・デバイス・ドライバ４２０からの画像データを受信するように構成されうる。ＶＶＣドライバ４２０は、ディスプレイ４６５に出力される画像、ファイル、別のビデオソース等のような上述された別のソースからの入力を、ビデオ・キャプチャ・デバイス・ドライバ４３０からの画像データの上にオーバレイ（overlay）するようにさらに構成されうる。これら画像は、オーバラップされ（overlapped）、異なる透明度を有し、分割スクリーンフォーマットで配置される（arranged）等が行われうる。さらに、２つ以上の様々な仮想ビデオ・キャプチャ・デバイスおよび／またはビデオ・キャプチャ・デバイスが、説明されたように組み合わされうる。ＶＶＣドライバ４２０の出力のために使用される仮想ビデオ・キャプチャの選択は、図５について以下に説明されるもののようなユーザインタフェースを経由して行われうる。
【００３５】
[0045]  ＶＶＣドライバ４２０は、仮想ビデオ・キャプチャ・デバイスの画像に拡張現実感特徴（augmented reality features）を組み込むために、オペレーティングシステム４０５と相互作用するようにさらに構成されうる。例えば、ＶＶＣドライバ４２０は、画像に対してオーバレイされる仮想ビデオ・キャプチャ・デバイスの画像を説明する情報を追加する、ファイル、ウェブソース、またはその他のソースからの拡張現実感情報をオーバレイするように構成されうる。
【００３６】
[0046]  図５は、図４の仮想ビデオ・キャプチャ・デバイス・ドライバを制御するための典型的なユーザインタフェースである。ユーザインタフェース５００は、システム４００のディスプレイ４６５上に表示されうる。ユーザインタフェース５００は、キーボード、マウス、およびまたは当該技術において周知であるその他の入力システムを使用して制御されうる。ユーザインタフェース５００は、どの入力がＶＶＣドライバ４２０によって選択されるべきかを選択するための１つ以上の入力ボックス５０５を含む。入力ボックス５０５は、ドロップダウンボックス、およびまたはテキスト入力ボックスを備えうる。図４に示されるように、第１の入力は、ウェブアドレスを備え、第２の入力は、ビデオ・キャプチャ・デバイス４７０を備える。ユーザインタフェース５００は、各入力と関連する除去ボタン５１０をさらに備える。除去ボタン５１０を選択すると、関連する入力が、ＶＶＣドライバ４２０の出力から除去される。各入力は、参照ボタン（browse button）５２０とさらに関連する。参照ボタン５３０を選択すると、ダイアログボックスが開き、ユーザが、入力として使用するために、ファイルまたは特定の入力を検索（search）することを可能にする。ユーザインタフェース５００は、追加ボタン５２５をさらに備える。追加ボタン５２５は、入力ボックス５０５、除去ボタン５１０、および参照ボタン５２０と関連する追加入力を追加する。
【００３７】
[0047]  ユーザインタフェース５００は、プレビューフレーム５３０をさらに備える。プレビューフレーム５３０は、ユーザインタフェース５００において行われたユーザ選択に基づいて、ＶＶＣドライバ４２０の出力のビューを表示する。示されるように、入力１は、入力ウィンドウ１としてフレーム全体を占める（taking）ように示され、一方、入力２は、入力ウィンドウ２として入力１の上にオーバレイされている。ユーザは、入力ウィンドウを選択して移動することによって、あるいは当該技術において周知であるように、入力ウィンドウの縁（side）またはコーナーを選択して、入力ウィンドウのサイズを変更することによって、入力をサイズ変更および移動しうる。さらに、現在の選択ボックス５３５が、現在選択されている入力ウィンドウを示す。特定の入力の透明度レベルは、透明度の入力５４０を使用して変更されうる。現在の選択ボックス５３５において示される入力が、透明度の入力５４０を使用した場合に変更される入力である。さらに、ユーザは、選択ボタン５５０を使用して、情報を追加「Ｙ」するべきか、あるいは情報を除去「Ｎ」するべきかを選択することにより、入力に対して拡張現実感情報を追加または除去しうる。拡張現実感情報のファイルまたはソースは、入力ボックス５４５に入力されうる。現在の選択ボックス５３５に示される入力が、拡張現実感選択ボタン５５０および現在の選択ボックス５３５を使用して変更される入力である。
【００３８】
[0048]  図６は、ビデオ・キャプチャ・デバイスの補助入力を介してビデオをキャプチャするための典型的な処理のフローチャートである。上述されたように、図１Ｂについて、ビデオ・キャプチャ・デバイスは、ビデオ・キャプチャ・デバイスのセンサに加えて、外部ソースからの画像データを受信するための補助入力を有しうる。処理６００は、どのようにこのような入力が送信のためのアプリケーション４１０に出力されるかを説明する。最初のステップ６１０では、システム４００は、ビデオ・キャプチャ・デバイス４７０の画像センサを介して、ビデオ・キャプチャ・デバイス４７０において第１の入力を受信する。次のステップ６２０では、ビデオ・キャプチャ・デバイス４７０は、ビデオ・キャプチャ・デバイス４７０の補助入力ポートにおいて第２の入力を受信する。続いて、ステップ６３０では、第１の入力および第２の入力のうちの少なくとも１つが出力のために選択される。例えば、ビデオ・キャプチャ・デバイス４７０は、入力を選択するための物理スイッチを有しうる。別の実施形態では、アプリケーション４１０は、入力を選択するために、オペレーティングシステム４０５およびビデオ・キャプチャ・デバイス・ドライバ４３０と相互作用しうる。さらに、ステップ６４０では、ビデオ・キャプチャ・デバイス４７０は、選択された入力を、アプリケーション４１０によって利用されるビデオフォーマットにフォーマットする。次に、ステップ６５０では、ビデオ・キャプチャ・デバイス４７０は、フォーマットされた入力をビデオ・キャプチャ・デバイス４３０に出力し、それは、この入力を、オペレーティングシステム４０５を介してアプリケーション４１０に送る。
【００３９】
[0049]  図７は、仮想ビデオ・キャプチャ・デバイスをインストールして、ビデオデータを送信するための典型的な処理のフローチャートである。上述されたように、図４について、仮想ビデオ・キャプチャ・デバイスは、送信用のビデオデータを提供するために、オペレーティングシステム４０５およびアプリケーション４１０と相互作用しうる。したがって、ＶＶＣドライバ４２０は、システム４００上でインストールおよびセットアップされている必要がある。処理７００は、どのようにＶＶＣドライバ４２０がセットアップされるかを説明する。ステップ７１０では、システム４００は、物理ビデオ・キャプチャ・デバイス（例えば、ビデオ・キャプチャ・デバイス４７０）からのビデオ入力を受信するように構成されたプログラム（例えば、アプリケーション４１０）を実行する。続いて、ステップ７２０では、システム４００は、ディスプレイデータのようなソースからの画像データを受信するように構成されたビデオ・キャプチャ・デバイス・アプリケーションを実行して、このデータを物理ビデオ・キャプチャ・デバイスと同じフォーマットで出力する。ステップ７３０では、仮想ビデオ・キャプチャ・デバイスは、オペレーティングシステム４０５に登録される。したがって、ＶＶＣドライバ４２０が、仮想ビデオ・キャプチャ・デバイスのためにセットアップされる。さらに、ステップ７４０では、ＶＶＣドライバ４２０は、画像データを物理ビデオ・キャプチャ・デバイスと同じフォーマットでアプリケーション４１０に出力する。
【００４０】
[0050]  図８は、仮想ビデオ・キャプチャ・デバイスにおける画像データをトランスコードするための典型的な処理のフローチャートである。図４について上述されたように、ＶＶＣドライバ４２０へ入力される画像データは、ビデオがアプリケーション４１０と互換性があるように、ビデオ・キャプチャ・デバイスによって使用されるフォーマットにフォーマットされるべきである。したがって、処理７００によるＶＶＣドライバ４２０のセットアップ後、画像データは、処理８００で説明されるように、適切なフォーマットにトランスコードされる必要がある。ステップ８１０では、ＶＶＣドライバ４２０は、画像データを取得する。例えば、ＶＶＣドライバ４２０は、ディスプレイ４６５上で表示するために、ビデオドライバ４１５へ送られる画像データの少なくとも一部分を取得する。続いて、ステップ８２０では、ＶＶＣドライバ４２０は、取得された画像データを物理ビデオ・キャプチャ・デバイス（例えば、ビデオ・キャプチャ・デバイス４７０）と同じフォーマットにトランスコードする。図４および図５について上述されたように、ＶＶＣドライバ４２０は、複数のソースからの画像データを取得しうる。したがって、上述されたように、ＶＶＣドライバ４２０は、複数のソースからの画像データを、出力用の単一の画像データへとさらにフォーマットしうる。どのように複数のソースからの画像データをまとめて、出力用の単一の画像データにするかの制御は、例えば、図５について上述されたユーザインタフェース５００のようなユーザインタフェースによって制御される。さらに、ステップ８３０では、ＶＶＣドライバ４２０は、オペレーティングシステム４０５およびアプリケーション４１０による使用のために、トランスコードされた画像データを出力する。
【００４１】
[0051]  図９は、オペレーティングシステムから、仮想ビデオ・キャプチャ・デバイスによって画像データを取得する典型的な処理のフローチャートである。図４について上述されたように、アプリケーション４１０は、インターネット４５５への送信のために、ＶＶＣドライバ４２０からの画像データを受信する。処理９００は、どのように画像データが、ＶＶＣドライバ４２０から受信されて、ネットワーク上に出力されるかを説明する。ステップ９１０では、アプリケーション４１０は、ＶＶＣドライバ４２０から画像データを取得するためにオペレーティングシステム４０５と通信する。次に、ステップ９２０では、アプリケーション４１０は、オペレーティングシステム４０５からの画像データを受信し、それは、ＶＶＣドライバ４２０からこの画像データを受信する。続いて、ステップ９３０では、アプリケーション４１０は、別のデバイスへの通信のために画像データを処理する。さらに、ステップ９４０では、アプリケーション４１０は、オペレーティングシステム４０５に、インターネット４５５上での転送のために、処理されたデータをネットワークドライバ４２５に送るように指示する。続いて、ステップ９５０では、ネットワークドライバ２３５は、処理されたデータを、ネットワーク・インタフェース・カード４５０を介してネットワーク（例えば、インターネット４５５）上で送信する。
【００４２】
[0052]  図１０は、オペレーティングシステムから、仮想ビデオ・キャプチャ・デバイスによって画像データを取得する別の典型的な処理のフローチャートである。図４について上述されたように、ＶＶＣドライバ４２０は、ディスプレイ４６５上に表示される画像に対応するビデオデータを出力しうる。処理１０００は、どのようにＶＶＣドライバ４２０が、このような画像を受信して、対応するビデオデータを出力するかの一実施形態を説明している。ステップ１０１０では、ＶＶＣドライバ４２０は、オペレーティングシステム４０５からのシステム呼についてシステム４００をモニタする、および／または、画像表示要求についてアプリケーション４１０のようなアプリケーションをモニタする。例えば、ＶＶＣドライバ４２０は、ビデオドライバ４１５を介して表示のために表示データをディスプレイ４６５に送るための呼についてシステム４００をモニタする。続いて、ステップ１０２０では、ＶＶＣドライバ４２０は、どの画像表示要求が、別のデバイスに送信される画像データに対応するかを決定する。例えば、ＶＶＣドライバ４２０は、特定のファイル、ウィンドウ等に対応する画像データを送るように構成されうる。さらに、ステップ１０３０では、ＶＶＣドライバは、画像表示データをビデオ・キャプチャ・デバイスと同じフォーマットで出力する。
【００４３】
[0053]  当業者であれば、処理６００−１０００は、単に例示的であるにすぎないことを理解すべきである。処理６００−１０００のステップは、ここに開示された原理および新規な特徴と依然として一致しながらも、除去されることができ、追加のステップが加えられることができ、および／またはステップの順序が変更される。
【００４４】
[0054]  （例えば、１つ以上の添付図面に関して）ここに説明された機能は、添付された特許請求の範囲において同様に示される「〜する手段」の機能に、いくつかの態様において対応しうる。図２−図４のモジュールの機能は、ここでの教示と一致する様々な方法でインプリメントされうる。いくつかの態様では、これらモジュールの機能は、１つ以上の電気的コンポーネントとしてインプリメントされうる。いくつかの態様では、これらブロックの機能は、１つ以上のプロセッサコンポーネントを含む処理システムとしてインプリメントされうる。いくつかの態様では、これらモジュールの機能は、例えば、１つ以上の集積回路（例えば、ＡＳＩＣ）の少なくとも一部を用いてインプリメントされうる。ここで説明されたように、集積回路は、プロセッサ、ソフトウェア、その他の関連するコンポーネント、またはこれらの何らかの組み合わせを含みうる。これらモジュールの機能は、ここで教示されたようなその他いくつかの方式でもインプリメントされうる。
【００４５】
[0055]  本明細書において、例えば、「第１の」、「第２の」等のような指定を用いた、要素に対するいずれの参照も、一般に、これら要素の数も順序も限定しないことが理解されるべきである。むしろ、これらの指定は、２つ以上の要素または要素の事例の間で区別する便利な方法としてここで使用されうる。したがって、第１の要素および第２の要素への参照は、そこで２つだけの要素しか適用できないことも、何らかの方法で第１の要素が第２の要素に先行しなければならないことも、意味していない。また、特に明記されていない限り、要素のセットは、１つ以上の要素を備えうる。さらに、明細書または特許請求の範囲において使用されている「Ａ、Ｂ、またはＣのうちの少なくとも１つ」の形式をとる記述は、「ＡまたはＢまたはＣ、または、これら要素の任意の組み合わせ」を意味する。
【００４６】
[0056]  当業者であれば、情報および信号は、様々な異なる技術および技法のうちの何れかを用いて表されうることを理解するであろう。例えば、上記説明の全体にわたって参照されうるデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁場または磁性粒子、光場または光粒子、あるいはこれらの任意の組み合わせによって表されうる。
【００４７】
[0057]  当業者であれば、ここに開示された例に関連して説明された様々な例示的な論理ブロック、モジュール、回路、方法、およびアルゴリズムは、電子ハードウェア、コンピュータソフトウェア、または両方の組み合わせとしてインプリメントされうることをさらに理解するであろう。ハードウェアとソフトウェアとのこの互換性を明確に例示するために、様々な例示的なコンポーネント、ブロック、モジュール、回路、方法およびアルゴリズムが、概してそれらの機能の観点から上述された。このような機能が、ハードウェアとしてインプリメントされるか、あるいはソフトウェアとしてインプリメントされるかは、特定のアプリケーションおよびシステム全体に課せられている設計制約に依存する。当業者は、特定のアプリケーションごとに多様な方法で説明された機能をインプリメントしうるが、このようなインプリメンテーションの決定は、本発明の範囲から逸脱を引き起こしていると解釈されるべきでない。
【００４８】
[0058]  ここに開示された例に関連して説明された様々な例示的な論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）またはその他のプログラマブル論理デバイス、ディスクリートゲートまたはトランジスタロジック、ディスクリート・ハードウェア・コンポーネント、あるいはここに説明された機能を実行するように設計されたこれらの任意の組み合わせで、インプリメントまたは実行されうる。汎用プロセッサは、マイクロプロセッサでありうるが、代替において、このプロセッサは、任意の従来型のプロセッサ、コントローラ、マイクロコントローラ、またはステートマシン（state machine）でありうる。プロセッサはまた、例えば、ＤＳＰとマイクロプロセッサの組み合わせ、複数のマイクロプロセッサ、ＤＳＰ通信と連携した１つ以上のマイクロプロセッサ、あるいはその他任意のこのような構成であるコンピューティングデバイスの組み合わせとしてインプリメントされうる。
【００４９】
[0059]  ここに開示された例に関連して説明された方法またはアルゴリズムは、直接ハードウェアにおいて、プロセッサによって実行されるソフトウェアモジュールにおいて、またはこれら２つの組み合わせにおいて、具現化（embodied）されうる。ソフトウェアモジュールは、ＲＡＭメモリ、フラッシュメモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭメモリ、レジスタ、ハードディスク、リムーバルディスク、ＣＤ−ＲＯＭ、または当該技術分野において周知のその他任意の形状の記憶媒体内に存在しうる。記憶媒体は、プロセッサが記憶媒体から情報を読み取り、また記憶媒体に情報を書き込むことができるように、プロセッサに結合されうる。代替において、記憶媒体は、プロセッサと一体化されうる。プロセッサおよび記憶媒体は、ＡＳＩＣ内に存在しうる。
【００５０】
[0060]  １つ以上の典型的な実施形態では、説明された機能は、ハードウェア、プロセッサによって実行されるソフトウェアまたはファームウェア、あるいはこれらの任意の組み合わせでインプリメントされうる。ソフトウェアでインプリメントされる場合、これら機能は、コンピュータ読み取り可能媒体上で、１つ以上の命令またはコードとして送信または記憶されうる。コンピュータ読み取り可能媒体は、１つの場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む通信媒体とコンピュータ記憶媒体との両方を含む。記憶媒体は、コンピュータによってアクセスされうる任意の利用可能な媒体でありうる。限定ではなく例として、このようなコンピュータ読み取り可能媒体は、ＲＡＭ、ＲＯＭ、フラッシュメモリ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭまたはその他の光ディスク記憶装置、磁気ディスク記憶装置またはその他の磁気記憶デバイスなどの非一時的なコンピュータ読み取り可能記憶媒体、あるいは、データ構造または命令の形式で所望のプログラムコードを記憶または搬送するために使用可能であり、かつコンピュータによってアクセスされうるその他任意の媒体を備えうる。また、任意の接続は、厳密にはコンピュータ読み取り可能媒体と称される。例えば、ソフトウェアが、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、電波、およびマイクロ波のような無線技術を使用して、ウェブサイト、サーバ、またはその他の遠隔ソースから送信される場合には、この同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、電波、およびマイクロ波のような無線技術は、媒体の定義に含まれる。ここで使用される場合、ディスク（disk）およびディスク（disc）は、フラッシュメモリ記憶装置、コンパクトディスク（ＣＤ）、レーザーディスク（登録商標）、光ディスク、デジタル多目的ディスク（ＤＶＤ）、フロッピーディスクおよびブルーレイディスクを含み、ここでディスク（disks）は、通常磁気的にデータを再生し、一方ディスク（discs）は、レーザーを用いて光学的にデータを再生する。上記の組み合わせもまた、コンピュータ読み取り可能媒体の範囲内に含まれるべきである。
【００５１】
[0061]  開示された例の上記説明は、いかなる当業者であっても、本発明を製造または使用できるように提供される。これらの例への様々な修正は、当業者にとって容易に明らかになり、ここに定義された一般的な原理は、本発明の主旨または範囲から逸脱することなく、他の例にも適用されうる。したがって、本発明は、ここに示された例に限定されるようには意図されず、ここに開示される原理および新規な特徴と一致する最も広い範囲を与えられることとなる。
【図１Ａ】
2013542649.tif 000003
【図１Ｂ】
2013542649.tif 000004
【図２】
2013542649.tif 000005
【図３】
2013542649.tif 000006
【図４】
2013542649.tif 000007
【図５】
2013542649.tif 000008
【図６】
2013542649.tif 000009
【図７】
2013542649.tif 000010
【図８】
2013542649.tif 000011
【図９】
2013542649.tif 000012
【図１０】
2013542649.tif 000013
【手続補正書】
【提出日】平成25年5月21日(2013.5.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
プロセッサと、
前記プロセッサと通信状態にあるメモリと、
を備えるビデオ表示装置であって、
前記メモリは命令を備え、前記命令は、前記プロセッサによって実行されるとき、前記プロセッサに、
少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムを実行させ、
仮想ビデオ・キャプチャ・デバイスを実行させ、なお、前記仮想ビデオ・キャプチャ・デバイスは、
前記画像データを取得し、
前記取得された画像データをトランスコードし、
前記プログラムによる使用のために、前記トランスコードされた画像データを出力する、ように構成され、
前記仮想ビデオ・キャプチャ・デバイスを第１の物理ビデオ・キャプチャ・デバイスとしてオペレーティングシステムに登録させる、なお、前記オペレーティングシステムは、前記プログラムの実行を制御し、
複数の仮想ビデオ・キャプチャ・デバイスを作成させる、なお、各仮想ビデオ・キャプチャ・デバイスは、前記画像データの特定の部分と関連づけられる、ビデオ表示装置。
【請求項２】
第２の物理ビデオ・キャプチャ・デバイスをさらに備え、なお、前記メモリは、前記プロセッサによって実行されるとき、前記プロセッサに、前記プログラムが前記トランスコードされた画像データを受信することおよび前記第２の物理ビデオ・キャプチャ・デバイスからのビデオデータを受信することの間で選択させる命令をさらに備える、請求項１に記載の装置。
【請求項３】
前記第２の物理ビデオ・キャプチャ・デバイスは、ビデオカメラを備える、請求項２に記載の装置。
【請求項４】
ネットワークインタフェースをさらに備え、なお、前記プログラムは、前記受信されたビデオ入力を前記ネットワークインタフェース上で送信するように構成される、請求項１に記載の装置。
【請求項５】
前記ネットワークインタフェースは、インターネット上で前記ビデオ入力を送信する、請求項４に記載の装置。
【請求項６】
前記仮想ビデオ・キャプチャ・デバイスは、前記画像データに基づいて、前記画像データを拡張データと組み合わせるようにさらに構成される、請求項１に記載の装置。
【請求項７】
前記仮想ビデオ・キャプチャ・デバイスは、デバイス・ドライバを備える、請求項１に記載の装置。
【請求項８】
第１の仮想ビデオ・キャプチャ・デバイスと関連づけられた前記画像データの第１の部分は、アプリケーションウィンドウを備える、請求項１に記載の装置。
【請求項９】
前記画像データを表示するように構成されたディスプレイをさらに備える、請求項１に記載の装置。
【請求項１０】
少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムのために、データを処理する方法であって、
少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムを実行することと、
仮想ビデオ・キャプチャ・デバイスを実行することと、なお、前記仮想ビデオ・キャプチャ・デバイスを実行することは、
前記画像データを取得することと、
前記取得された画像データをトランスコードすることと、
前記プログラムによる使用のために、前記トランスコードされた画像データを出力することと、を備え、
前記仮想ビデオ・キャプチャ・デバイスを第１の物理ビデオ・キャプチャ・デバイスとしてオペレーティングシステムに登録することと、なお、前記オペレーティングシステムは、前記プログラムの実行を制御し、
複数の仮想ビデオ・キャプチャ・デバイスを作成することと、なお、各仮想ビデオ・キャプチャ・デバイスは、前記画像データの特定の部分と関連づけられる、
を備える方法。
【請求項１１】
前記プログラムが前記トランスコードされた画像データを受信することおよび第２の物理ビデオ・キャプチャ・デバイスからのビデオデータを受信することの間で選択することをさらに備える、請求項１０に記載の方法。
【請求項１２】
前記第２の物理ビデオ・キャプチャ・デバイスは、ビデオカメラを備える、請求項１１に記載の方法。
【請求項１３】
前記受信されたビデオ入力をネットワーク上で送信することをさらに備える、請求項１０に記載の方法。
【請求項１４】
前記ネットワークは、インターネットを備える、請求項１３に記載の方法。
【請求項１５】
前記仮想ビデオ・キャプチャ・デバイスは、前記画像データに基づいて、前記画像データを拡張データと組み合わせるようにさらに構成される、請求項１０に記載の方法。
【請求項１６】
前記仮想ビデオ・キャプチャ・デバイスは、デバイス・ドライバを備える、請求項１０に記載の方法。
【請求項１７】
第１の仮想ビデオ・キャプチャ・デバイスと関連づけられる前記画像データの第１の部分は、アプリケーションウィンドウを備える、請求項１０に記載の方法。
【請求項１８】
前記画像データを表示することをさらに備える、請求項１０に記載の方法。
【請求項１９】
少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムを実行する手段と、
仮想ビデオ・キャプチャ・デバイスを実行する手段と、なお、前記仮想ビデオ・キャプチャ・デバイスは、
前記画像データを取得し、
前記取得された画像データをトランスコードし、
前記プログラムによる使用のために、前記トランスコードされた画像データを出力する、ように構成され、
前記仮想ビデオ・キャプチャ・デバイスを第１の物理ビデオ・キャプチャ・デバイスとしてオペレーティングシステムに登録する手段と、なお、前記オペレーティングシステムは、前記プログラムの実行を制御し、
複数の仮想ビデオ・キャプチャ・デバイスを作成する手段と、なお、各仮想ビデオ・キャプチャ・デバイスは、前記画像データの特定の部分と関連づけられる、
を備えるビデオ表示装置。
【請求項２０】
前記プログラムが前記トランスコードされた画像データを受信することおよび第２の物理ビデオ・キャプチャ・デバイスからのビデオデータを受信することの間で選択する手段をさらに備える、請求項１９に記載の装置。
【請求項２１】
前記第２の物理ビデオ・キャプチャ・デバイスは、ビデオカメラを備える、請求項２０に記載の装置。
【請求項２２】
前記受信されたビデオ入力をネットワーク上で送信する手段をさらに備える、請求項１９に記載の装置。
【請求項２３】
前記ネットワークは、インターネットを備える、請求項２２に記載の装置。
【請求項２４】
前記仮想ビデオ・キャプチャ・デバイスは、前記画像データに基づいて、前記画像データを拡張データと組み合わせるようにさらに構成される、請求項１９に記載の装置。
【請求項２５】
前記仮想ビデオ・キャプチャ・デバイスは、デバイス・ドライバを備える、請求項１９に記載の装置。
【請求項２６】
第１の仮想ビデオ・キャプチャ・デバイスと関連づけられる前記画像データの第１の部分は、アプリケーションウィンドウを備える、請求項１９に記載の装置。
【請求項２７】
前記画像データを表示する手段をさらに備える、請求項１９に記載の装置。
【請求項２８】
少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムのために、データを処理するコンピュータプログラム製品であって、
コンピュータに、少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムを実行させるためのコードと、
コンピュータに、仮想ビデオ・キャプチャ・デバイスを実行させるためのコードと、なお、前記仮想ビデオ・キャプチャ・デバイスは、前記コンピュータに、
前記画像データを取得させ、
前記取得された画像データをトランスコードさせ、
前記プログラムによる使用のために、前記トランスコードされた画像データを出力させる、ように構成され、
コンピュータに、前記仮想ビデオ・キャプチャ・デバイスを第１の物理ビデオ・キャプチャ・デバイスとしてオペレーティングシステムに登録させるためのコードと、なお、前記オペレーティングシステムは、前記プログラムの実行を制御し、
コンピュータに、複数の仮想ビデオ・キャプチャ・デバイスを作成させるためのコードと、なお、各仮想ビデオ・キャプチャ・デバイスは、前記画像データの特定の部分と関連づけられる、
をその上に記憶された非一時的なコンピュータ読み取り可能媒体、
を備えるコンピュータプログラム製品。
【請求項２９】
前記非一時的なコンピュータ読み取り可能媒体は、コンピュータに、前記プログラムが前記トランスコードされた画像データを受信することおよび第２の物理ビデオ・キャプチャ・デバイスからのビデオデータを受信することの間で選択させるためのコードをその上にさらに記憶される、請求項２８に記載のコンピュータプログラム製品。
【請求項３０】
前記第２の物理ビデオ・キャプチャ・デバイスは、ビデオカメラを備える、請求項２９に記載のコンピュータプログラム製品。
【請求項３１】
前記非一時的なコンピュータ読み取り可能媒体は、コンピュータに、前記受信されたビデオ入力をネットワーク上で送信させるためのコードをその上にさらに記憶される、請求項２８に記載のコンピュータプログラム製品。
【請求項３２】
前記ネットワークは、インターネットを備える、請求項３１に記載のコンピュータプログラム製品。
【請求項３３】
前記仮想ビデオ・キャプチャ・デバイスは、前記画像データに基づいて、前記画像データを拡張データと組み合わせるようにさらに構成される、請求項２８に記載のコンピュータプログラム製品。
【請求項３４】
前記仮想ビデオ・キャプチャ・デバイスは、デバイス・ドライバを備える、請求項２８に記載のコンピュータプログラム製品。
【請求項３５】
第１の仮想ビデオ・キャプチャ・デバイスと関連づけられる前記画像データの第１の部分は、アプリケーションウィンドウを備える、請求項２８に記載のコンピュータプログラム製品。
【請求項３６】
前記非一時的なコンピュータ読み取り可能媒体は、コンピュータに、前記画像データを表示させるためのコードをその上にさらに記憶される、請求項２８に記載のコンピュータプログラム製品。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００５１
【補正方法】変更
【補正の内容】
【００５１】
[0061]  開示された例の上記説明は、いかなる当業者であっても、本発明を製造または使用できるように提供される。これらの例への様々な修正は、当業者にとって容易に明らかになり、ここに定義された一般的な原理は、本発明の主旨または範囲から逸脱することなく、他の例にも適用されうる。したがって、本発明は、ここに示された例に限定されるようには意図されず、ここに開示される原理および新規な特徴と一致する最も広い範囲を与えられることとなる。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］  プロセッサと、
前記プロセッサと通信状態にあるメモリと、
を備えるビデオ表示装置であって、
前記メモリは命令を備え、前記命令は、前記プロセッサによって実行されるとき、前記プロセッサに、
少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムを実行させ、
仮想ビデオ・キャプチャ・デバイスを実行させ、なお、前記仮想ビデオ・キャプチャ・デバイスは、
前記画像データを取得し、
前記取得された画像データをトランスコードし、
前記プログラムによる使用のために、前記トランスコードされた画像データを出力する、ように構成され、
前記仮想ビデオ・キャプチャ・デバイスを第１の物理ビデオ・キャプチャ・デバイスとしてオペレーティングシステムに登録させる、なお、前記オペレーティングシステムは、前記プログラムの実行を制御する、ビデオ表示装置。
［Ｃ２］  第２の物理ビデオ・キャプチャ・デバイスをさらに備え、なお、前記メモリは、前記プロセッサによって実行されるとき、前記プロセッサに、前記プログラムが前記トランスコードされた画像データを受信することおよび前記第２の物理ビデオ・キャプチャ・デバイスからのビデオデータを受信することの間で選択させる命令をさらに備える、Ｃ１に記載の装置。
［Ｃ３］  前記第２の物理ビデオ・キャプチャ・デバイスは、ビデオカメラを備える、Ｃ２に記載の装置。
［Ｃ４］  ネットワークインタフェースをさらに備え、なお、前記プログラムは、前記受信されたビデオ入力を前記ネットワークインタフェース上で送信するように構成される、Ｃ１に記載の装置。
［Ｃ５］  前記ネットワークインタフェースは、インターネット上で前記ビデオ入力を送信する、Ｃ４に記載の装置。
［Ｃ６］  前記仮想ビデオ・キャプチャ・デバイスは、前記画像データに基づいて、前記画像データを拡張データと組み合わせるようにさらに構成される、Ｃ１に記載の装置。
［Ｃ７］  前記仮想ビデオ・キャプチャ・デバイスは、デバイス・ドライバを備える、Ｃ１に記載の装置。
［Ｃ８］  前記メモリは、前記プロセッサによって実行されるとき、前記プロセッサに、複数の仮想ビデオ・キャプチャ・デバイスを作成させる命令をさらに備え、なお、各仮想ビデオ・キャプチャ・デバイスは、前記画像データの特定の部分と関連づけられる、Ｃ１に記載の装置。
［Ｃ９］  第１の仮想ビデオ・キャプチャ・デバイスと関連づけられた前記画像データの第１の部分は、アプリケーションウィンドウを備える、Ｃ１に記載の装置。
［Ｃ１０］  前記画像データを表示するように構成されたディスプレイをさらに備える、Ｃ１に記載の装置。
［Ｃ１１］  少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムのために、データを処理する方法であって、
少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムを実行することと、
仮想ビデオ・キャプチャ・デバイスを実行することと、なお、前記仮想ビデオ・キャプチャ・デバイスを実行することは、
前記画像データを取得することと、
前記取得された画像データをトランスコードすることと、
前記プログラムによる使用のために、前記トランスコードされた画像データを出力することと、を備え、
前記仮想ビデオ・キャプチャ・デバイスを第１の物理ビデオ・キャプチャ・デバイスとしてオペレーティングシステムに登録することと、なお、前記オペレーティングシステムは、前記プログラムの実行を制御する、
を備える方法。
［Ｃ１２］  前記プログラムが前記トランスコードされた画像データを受信することおよび第２の物理ビデオ・キャプチャ・デバイスからのビデオデータを受信することの間で選択することをさらに備える、Ｃ１１に記載の方法。
［Ｃ１３］  前記第２の物理ビデオ・キャプチャ・デバイスは、ビデオカメラを備える、Ｃ１２に記載の方法。
［Ｃ１４］  前記受信されたビデオ入力をネットワーク上で送信することをさらに備える、Ｃ１１に記載の方法。
［Ｃ１５］  前記ネットワークは、インターネットを備える、Ｃ１４に記載の方法。
［Ｃ１６］  前記仮想ビデオ・キャプチャ・デバイスは、前記画像データに基づいて、前記画像データを拡張データと組み合わせるようにさらに構成される、Ｃ１１に記載の方法。
［Ｃ１７］  前記仮想ビデオ・キャプチャ・デバイスは、デバイス・ドライバを備える、Ｃ１１に記載の方法。
［Ｃ１８］  複数の仮想ビデオ・キャプチャ・デバイスを作成することをさらに備え、なお、各仮想ビデオ・キャプチャ・デバイスは、前記画像データの特定の部分と関連づけられる、Ｃ１１に記載の方法。
［Ｃ１９］  第１の仮想ビデオ・キャプチャ・デバイスと関連づけられる前記画像データの第１の部分は、アプリケーションウィンドウを備える、Ｃ１１に記載の方法。
［Ｃ２０］  前記画像データを表示することをさらに備える、Ｃ１１に記載の方法。
［Ｃ２１］  少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムを実行する手段と、
仮想ビデオ・キャプチャ・デバイスを実行する手段と、なお、前記仮想ビデオ・キャプチャ・デバイスは、
前記画像データを取得し、
前記取得された画像データをトランスコードし、
前記プログラムによる使用のために、前記トランスコードされた画像データを出力する、ように構成され、
前記仮想ビデオ・キャプチャ・デバイスを第１の物理ビデオ・キャプチャ・デバイスとしてオペレーティングシステムに登録する手段と、なお、前記オペレーティングシステムは、前記プログラムの実行を制御する、
を備えるビデオ表示装置。
［Ｃ２２］  前記プログラムが前記トランスコードされた画像データを受信することおよび第２の物理ビデオ・キャプチャ・デバイスからのビデオデータを受信することの間で選択する手段をさらに備える、Ｃ２１に記載の装置。
［Ｃ２３］  前記第２の物理ビデオ・キャプチャ・デバイスは、ビデオカメラを備える、Ｃ２２に記載の装置。
［Ｃ２４］  前記受信されたビデオ入力をネットワーク上で送信する手段をさらに備える、Ｃ２１に記載の装置。
［Ｃ２５］  前記ネットワークは、インターネットを備える、Ｃ２４に記載の装置。
［Ｃ２６］  前記仮想ビデオ・キャプチャ・デバイスは、前記画像データに基づいて、前記画像データを拡張データと組み合わせるようにさらに構成される、Ｃ２１に記載の装置。
［Ｃ２７］  前記仮想ビデオ・キャプチャ・デバイスは、デバイス・ドライバを備える、Ｃ２１に記載の装置。
［Ｃ２８］  複数の仮想ビデオ・キャプチャ・デバイスを作成する手段をさらに備え、なお、各仮想ビデオ・キャプチャ・デバイスは、前記画像データの特定の部分と関連づけられる、Ｃ２１に記載の装置。
［Ｃ２９］  第１の仮想ビデオ・キャプチャ・デバイスと関連づけられる前記画像データの第１の部分は、アプリケーションウィンドウを備える、Ｃ２１に記載の装置。
［Ｃ３０］  前記画像データを表示する手段をさらに備える、Ｃ２１に記載の装置。
［Ｃ３１］  少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムのために、データを処理するコンピュータプログラム製品であって、
コンピュータに、少なくとも１つの物理ビデオ・キャプチャ・デバイスからのビデオ入力を受信するように構成されたプログラムを実行させるためのコードと、
コンピュータに、仮想ビデオ・キャプチャ・デバイスを実行させるためのコードと、なお、前記仮想ビデオ・キャプチャ・デバイスは、前記コンピュータに、
前記画像データを取得させ、
前記取得された画像データをトランスコードさせ、
前記プログラムによる使用のために、前記トランスコードされた画像データを出力させる、ように構成され、
コンピュータに、前記仮想ビデオ・キャプチャ・デバイスを第１の物理ビデオ・キャプチャ・デバイスとしてオペレーティングシステムに登録させるためのコードと、なお、前記オペレーティングシステムは、前記プログラムの実行を制御する、
をその上に記憶された非一時的なコンピュータ読み取り可能媒体、
を備えるコンピュータプログラム製品。
［Ｃ３２］  前記非一時的なコンピュータ読み取り可能媒体は、コンピュータに、前記プログラムが前記トランスコードされた画像データを受信することおよび第２の物理ビデオ・キャプチャ・デバイスからのビデオデータを受信することの間で選択させるためのコードをその上にさらに記憶される、Ｃ３１に記載のコンピュータプログラム製品。
［Ｃ３３］  前記第２の物理ビデオ・キャプチャ・デバイスは、ビデオカメラを備える、Ｃ３２に記載のコンピュータプログラム製品。
［Ｃ３４］  前記非一時的なコンピュータ読み取り可能媒体は、コンピュータに、前記受信されたビデオ入力をネットワーク上で送信させるためのコードをその上にさらに記憶される、Ｃ３１に記載のコンピュータプログラム製品。
［Ｃ３５］  前記ネットワークは、インターネットを備える、Ｃ３４に記載のコンピュータプログラム製品。
［Ｃ３６］  前記仮想ビデオ・キャプチャ・デバイスは、前記画像データに基づいて、前記画像データを拡張データと組み合わせるようにさらに構成される、Ｃ３１に記載のコンピュータプログラム製品。
［Ｃ３７］  前記仮想ビデオ・キャプチャ・デバイスは、デバイス・ドライバを備える、Ｃ３１に記載のコンピュータプログラム製品。
［Ｃ３８］  前記非一時的なコンピュータ読み取り可能媒体は、コンピュータに、複数の仮想ビデオ・キャプチャ・デバイスを作成させるためのコードをその上にさらに記憶され、なお、各仮想ビデオ・キャプチャ・デバイスは、前記画像データの特定の部分と関連づけられる、Ｃ３１に記載のコンピュータプログラム製品。
［Ｃ３９］  第１の仮想ビデオ・キャプチャ・デバイスと関連づけられる前記画像データの第１の部分は、アプリケーションウィンドウを備える、Ｃ３１に記載のコンピュータプログラム製品。
［Ｃ４０］  前記非一時的なコンピュータ読み取り可能媒体は、コンピュータに、前記画像データを表示させるためのコードをその上にさらに記憶される、Ｃ３１に記載のコンピュータプログラム製品。
【国際調査報告】
2013542649.tif 000014
2013542649.tif 000015