(57)【特許請求の範囲】
【請求項１】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法であって、カメラインターフェイスモジュールが、
単一のビデオカメラからのビデオコンテンツに対する要求を、前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求をビデオ処理オフロードモジュールに転送するステップと、
第１のビデオカメラ及び第２のビデオカメラを制御するステップと、
前記ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取るステップと、
前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取ったことに応答して、該統合した３Ｄビデオコンテンツを前記２Ｄビデオメッセンジャアプリケーションへ送るステップと、
を含み、
前記カメラインターフェイスモジュールが、前記単一のビデオカメラからのビデオコンテンツに対する前記要求を前記ビデオ処理オフロードモジュールに転送したことに応答して、前記要求を前記ビデオ処理オフロードモジュールから受け取るステップをさらに含み、
前記第１のビデオカメラ及び前記第２のビデオカメラを制御するステップが、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求を前記２Ｄビデオメッセンジャアプリケーションから受け取ったことに応答して前記第１のビデオカメラを制御するステップと、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求を前記ビデオ処理オフロードモジュールから受け取ったことに応答して前記第２のビデオカメラを制御するステップと、
を含むことを特徴とする方法。
【請求項２】
前記カメラインターフェイスモジュールが、
前記第１のビデオカメラからの第１のビデオコンテンツ、及び前記第２のビデオカメラからの第２のビデオコンテンツを受け取るステップと、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを前記ビデオ処理オフロードモジュールへ送るステップと、
をさらに含み、前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取るステップが、前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを前記ビデオ処理オフロードモジュールへ送ったことに応答して、前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取るステップを含む、
ことを特徴とする請求項１に記載の方法。
【請求項３】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法であって、カメラインターフェイスモジュールが、
単一のビデオカメラからのビデオコンテンツに対する要求を、前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求をビデオ処理オフロードモジュールに転送するステップと、
第１のビデオカメラ及び第２のビデオカメラを制御するステップと、
前記ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取るステップと、
前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取ったことに応答して、該統合した３Ｄビデオコンテンツを前記２Ｄビデオメッセンジャアプリケーションへ送るステップと、
を含み、
前記カメラインターフェイスモジュールが、前記第１のビデオカメラの送信キューに関連するデキュー要求を前記２Ｄビデオメッセンジャアプリケーションから受け取るステップをさらに含み、
前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取ったことに応答して、該統合した３Ｄビデオコンテンツを前記２Ｄビデオメッセンジャアプリケーションへ送るステップが、前記ビデオ処理オフロードモジュールから受け取った前記統合した３Ｄビデオコンテンツを、前記第１のビデオカメラの前記送信キューにコピーするステップを含む、
ことを特徴とする方法。
【請求項４】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法であって、カメラインターフェイスモジュールが、
単一のビデオカメラからのビデオコンテンツに対する要求を、前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求をビデオ処理オフロードモジュールに転送するステップと、
第１のビデオカメラ及び第２のビデオカメラを制御するステップと、
前記ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取るステップと、
前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取ったことに応答して、該統合した３Ｄビデオコンテンツを前記２Ｄビデオメッセンジャアプリケーションへ送るステップと、
を含み、
前記カメラインターフェイスモジュールが、
前記単一のビデオカメラを開く要求を、前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
前記第１のビデオカメラを開くための制御信号を生成するステップと、
前記単一のビデオカメラを開く前記要求を前記ビデオ処理オフロードモジュールに転送するステップと、
前記単一のビデオカメラを開く前記要求を前記ビデオ処理オフロードモジュールから受け取るステップと、
前記単一のビデオカメラを開く前記要求を前記ビデオ処理オフロードモジュールから受け取ったことに応答して、前記第２のビデオカメラを開くための制御信号を生成するステップと、
をさらに含むことを特徴とする方法。
【請求項５】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法であって、カメラインターフェイスモジュールが、
単一のビデオカメラからのビデオコンテンツに対する要求を、前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求をビデオ処理オフロードモジュールに転送するステップと、
第１のビデオカメラ及び第２のビデオカメラを制御するステップと、
前記ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取るステップと、
前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取ったことに応答して、該統合した３Ｄビデオコンテンツを前記２Ｄビデオメッセンジャアプリケーションへ送るステップと、
を含み、
前記カメラインターフェイスモジュールが、
前記単一のビデオカメラを閉じる要求を、前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
前記第１のビデオカメラを閉じるための制御信号を生成するステップと、
前記単一のビデオカメラを閉じる前記要求を前記ビデオ処理オフロードモジュールに転送するステップと、
前記単一のビデオカメラを閉じる前記要求を前記ビデオ処理オフロードモジュールから受け取るステップと、
前記単一のビデオカメラを閉じる前記要求を前記ビデオ処理オフロードモジュールから受け取ったことに応答して、前記第２のビデオカメラを閉じるための制御信号を生成するステップと、
をさらに含むことを特徴とする方法。
【請求項６】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法であって、カメラインターフェイスモジュールが、
単一のビデオカメラからのビデオコンテンツに対する要求を、前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求をビデオ処理オフロードモジュールに転送するステップと、
第１のビデオカメラ及び第２のビデオカメラを制御するステップと、
前記ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取るステップと、
前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取ったことに応答して、該統合した３Ｄビデオコンテンツを前記２Ｄビデオメッセンジャアプリケーションへ送るステップと、
を含み、
前記カメラインターフェイスモジュールが、
前記単一のビデオカメラに関連する出力フォーマットを設定する要求を、前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
前記単一のビデオカメラに関連する前記出力フォーマットを前記第１のビデオカメラに設定するための制御信号を生成するステップと、
前記単一のビデオカメラに関連する前記出力フォーマットを設定する前記要求を前記ビデオ処理オフロードモジュールに転送するステップと、
前記単一のビデオカメラに関連する前記出力フォーマットを設定する前記要求を前記ビデオ処理オフロードモジュールから受け取るステップと、
前記単一のビデオカメラに関連する前記出力フォーマットを設定する前記要求を前記ビデオ処理オフロードモジュールから受け取ったことに応答して、前記第２のビデオカメラに関連する前記出力フォーマットを前記第２のビデオカメラに設定するための制御信号を生成するステップと、
をさらに含むことを特徴とする方法。
【請求項７】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法であって、カメラインターフェイスモジュールが、
単一のビデオカメラからのビデオコンテンツに対する要求を、前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求をビデオ処理オフロードモジュールに転送するステップと、
第１のビデオカメラ及び第２のビデオカメラを制御するステップと、
前記ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取るステップと、
前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取ったことに応答して、該統合した３Ｄビデオコンテンツを前記２Ｄビデオメッセンジャアプリケーションへ送るステップと、
を含み、
前記カメラインターフェイスモジュールが、
前記単一のビデオカメラに関連する動作パラメータを設定する要求を、前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
前記第１のビデオカメラに関連する前記動作パラメータを設定するための制御信号を生成するステップと、
前記単一のビデオカメラに関連する前記動作パラメータを設定する前記要求を前記ビデオ処理オフロードモジュールに転送するステップと、
前記単一のビデオカメラに関連する前記動作パラメータを設定する前記要求を前記ビデオ処理オフロードモジュールから受け取るステップと、
前記単一のビデオカメラに関連する前記動作パラメータを設定する前記要求を前記ビデオ処理オフロードモジュールから受け取ったことに応答して、前記第２のビデオカメラに関連する前記動作パラメータを設定するための制御信号を生成するステップと、
をさらに含むことを特徴とする方法。
【請求項８】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法であって、カメラインターフェイスモジュールが、
単一のビデオカメラからのビデオコンテンツに対する要求を、前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求をビデオ処理オフロードモジュールに転送するステップと、
第１のビデオカメラ及び第２のビデオカメラを制御するステップと、
前記ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取るステップと、
前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取ったことに応答して、該統合した３Ｄビデオコンテンツを前記２Ｄビデオメッセンジャアプリケーションへ送るステップと、
を含み、
前記カメラインターフェイスモジュールが、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求を前記ビデオ処理オフロードモジュールに転送したことに応答してスリープ状態に入るステップと、
前記統合した３Ｄビデオコンテンツを前記ビデオ処理オフロードモジュールから受け取ったことに応答してアクティブ状態に入るステップと、
をさらに含むことを特徴とする方法。
【請求項９】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法であって、ビデオ処理オフロードモジュールが、
単一のビデオカメラからのビデオコンテンツに対する要求を、ビデオ処理オフロードモジュールにおいてカメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取るステップと、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合するステップと、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送るステップと、
を含み、
前記ビデオ処理オフロードモジュールが、前記第１のビデオカメラからの前記第１のビデオコンテンツ、及び前記第２のビデオカメラからの前記第２のビデオコンテンツを受け取ったことに応答して、前記第１のビデオコンテンツ及び前記第２のビデオコンテンツの３Ｄ較正及び３Ｄ矯正を行うステップをさらに含む、
ことを特徴とする方法。
【請求項１０】
前記ビデオ処理オフロードモジュールが、前記単一のビデオカメラからのビデオコンテンツに対する前記要求を、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取ったことに応答して、前記単一のビデオカメラからのビデオコンテンツに対する前記要求を前記カメラインターフェイスモジュールへ送るステップをさらに含み、
前記カメラインターフェイスモジュールが、前記単一のビデオカメラからのビデオコンテンツに対する前記要求を前記ビデオ処理モジュールから受け取ったことに応答して少なくとも１つのカメラを制御する、
ことを特徴とする請求項９に記載の方法。
【請求項１１】
前記ビデオ処理オフロードモジュールが、
前記２Ｄビデオメッセンジャアプリケーションにより発信された前記第１のビデオカメラの送信キューに関連するデキュー要求を、前記カメラインターフェイスモジュールを介して受け取るステップと、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツの前記３Ｄ較正及び前記３Ｄ矯正が完了したかどうかを判定するステップと、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツの前記３Ｄ較正及び前記３Ｄ矯正が完了していないと判定したことに応答して、前記第１のビデオカメラからの前記第１のビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送るステップと、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツの前記３Ｄ較正及び前記３Ｄ矯正が完了したと判定したことに応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送るステップと、
をさらに含むことを特徴とする請求項９に記載の方法。
【請求項１２】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法であって、ビデオ処理オフロードモジュールが、
単一のビデオカメラからのビデオコンテンツに対する要求を、ビデオ処理オフロードモジュールにおいてカメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取るステップと、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合するステップと、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送るステップと、
を含み、
前記ビデオ処理オフロードモジュールが、
前記単一のビデオカメラを開く要求を、前記ビデオ処理オフロードモジュールにおいて前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
前記第２のビデオカメラを開く要求を前記カメラインターフェイスモジュールへ送るステップと、
をさらに含むことを特徴とする方法。
【請求項１３】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法であって、ビデオ処理オフロードモジュールが、
単一のビデオカメラからのビデオコンテンツに対する要求を、ビデオ処理オフロードモジュールにおいてカメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取るステップと、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合するステップと、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送るステップと、
を含み、
前記ビデオ処理オフロードモジュールが、
前記単一のビデオカメラを閉じる要求を、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
前記第２のビデオカメラを閉じる要求を前記カメラインターフェイスモジュールへ送るステップと、
をさらに含むことを特徴とするの方法。
【請求項１４】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法であって、ビデオ処理オフロードモジュールが、
単一のビデオカメラからのビデオコンテンツに対する要求を、ビデオ処理オフロードモジュールにおいてカメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取るステップと、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合するステップと、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送るステップと、
を含み、
前記ビデオ処理オフロードモジュールが、
前記単一のビデオカメラに関連する出力フォーマットを設定する要求を、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
前記第２のビデオカメラに関連する出力フォーマットを設定する要求を前記カメラインターフェイスモジュールへ送るステップと、
をさらに含むことを特徴とする方法。
【請求項１５】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法であって、ビデオ処理オフロードモジュールが、
単一のビデオカメラからのビデオコンテンツに対する要求を、ビデオ処理オフロードモジュールにおいてカメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取るステップと、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合するステップと、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送るステップと、
を含み、
前記ビデオ処理オフロードモジュールが、
前記単一のビデオカメラに関連する動作パラメータを設定する要求を、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
前記第２のビデオカメラに関連する動作パラメータを設定する要求を前記カメラインターフェイスモジュールへ送るステップと、
をさらに含むことを特徴とする方法。
【請求項１６】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法であって、ビデオ処理オフロードモジュールが、
単一のビデオカメラからのビデオコンテンツに対する要求を、ビデオ処理オフロードモジュールにおいてカメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取るステップと、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合するステップと、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送るステップと、
を含み、
前記ビデオ処理オフロードモジュールが、
いくつかのフレームバッファを前記単一のビデオカメラに割り当てる要求を、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
同じ数のフレームバッファを前記第２のビデオカメラに割り当てる要求を前記カメラインターフェイスモジュールへ送るステップと、
をさらに含むことを特徴とする方法。
【請求項１７】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法であって、ビデオ処理オフロードモジュールが、
単一のビデオカメラからのビデオコンテンツに対する要求を、ビデオ処理オフロードモジュールにおいてカメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取るステップと、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合するステップと、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送るステップと、
を含み、
前記ビデオ処理オフロードモジュールが、
前記第１のビデオカメラ及び前記第２のビデオカメラの各々に関連するフレームバッファのインデックスに対する要求を前記カメラインターフェイスモジュールへ送るステップと、
前記第１のビデオカメラに関連する前記フレームバッファの前記インデックス、及び前記第２のビデオカメラに関連する前記フレームバッファの前記インデックスを前記カメラインターフェイスモジュールから受け取るステップと、
前記第１のビデオカメラに関連する前記フレームバッファの前記インデックス、及び前記第２のビデオカメラに関連する前記フレームバッファの前記インデックスを、前記ビデオ処理オフロードモジュールに関連するメモリにマッピングするステップと、
をさらに含むことを特徴とする方法。
【請求項１８】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法であって、ビデオ処理オフロードモジュールが、
単一のビデオカメラからのビデオコンテンツに対する要求を、ビデオ処理オフロードモジュールにおいてカメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取るステップと、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合するステップと、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送るステップと、
を含み、
前記ビデオ処理オフロードモジュールが、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求を前記２Ｄビデオメッセンジャアプリケーションから受け取ったことに応答してアクティブ状態に入るステップと、
前記統合した３Ｄビデオコンテンツを前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送り始めたことに応答してスリープ状態に入るステップと、
をさらに含むことを特徴とする方法。
【請求項１９】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法であって、ビデオ処理オフロードモジュールが、
単一のビデオカメラからのビデオコンテンツに対する要求を、ビデオ処理オフロードモジュールにおいてカメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取るステップと、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取るステップと、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合するステップと、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送るステップと、
を含み、
前記ビデオ処理オフロードモジュールが、
前記第１のビデオカメラから受け取った前記第１のビデオコンテンツ及び前記第２のビデオカメラから受け取った前記第２のビデオコンテンツの３Ｄ較正を行う要求を受け取るステップと、
前記第１のビデオカメラから受け取った前記第１のビデオコンテンツ及び前記第２のビデオカメラから受け取った前記第２のビデオコンテンツの前記３Ｄ較正を行うステップと、
をさらに含むことを特徴とする方法。
【請求項２０】
前記第１のビデオカメラから受け取った前記第１のビデオコンテンツ及び前記第２のビデオカメラから受け取った前記第２のビデオコンテンツの前記３Ｄ較正を行うステップが、
前記第１のビデオカメラと前記第２のビデオカメラの位置関係を推定するステップと、  前記第１のビデオカメラ及び前記第２のビデオカメラを矯正するステップと、
を含むことを特徴とする請求項１９に記載の方法。
【請求項２１】
前記第１のビデオカメラ及び前記第２のビデオカメラを矯正するステップが、
ワーピング行列を取得するステップと、
前記ワーピング行列を前記第１のビデオカメラ及び前記第２のビデオカメラに適用するステップと、
を含むことを特徴とする請求項２０に記載の方法。
【請求項２２】
前記第１のビデオカメラから受け取った前記第１のビデオコンテンツ及び前記第２のビデオカメラから受け取った前記第２のビデオコンテンツの前記３Ｄ較正を行うステップが、
画像の端部及び角部の少なくとも１つを検出するステップと、
前記第１のビデオカメラと前記第２のビデオカメラの位置関係を推定するステップと、  前記推定した前記第１のビデオカメラと前記第２のビデオカメラの位置関係に基づいて、前記第１のビデオコンテンツ及び前記第２のビデオコンテンツの少なくとも一方を調整するステップと、
を含むことを特徴とする請求項１９に記載の方法。
【請求項２３】
前記第１のビデオコンテンツと前記第２のビデオコンテンツを前記３Ｄビデオコンテンツに統合するステップが、前記３Ｄビデオコンテンツを、横並びの３Ｄビデオコンテンツ、縦並びの３Ｄビデオコンテンツ、及びフレームシーケンシャル方式の３Ｄビデオコンテンツのうちの１つとして形成するステップを含む、
ことを特徴とする請求項１９に記載の方法。
【請求項２４】
前記統合した３Ｄビデオコンテンツの一部を変更する要求を受け取るステップと、
前記第１のビデオカメラから受け取った前記第１のビデオコンテンツ及び前記第２のビデオカメラから受け取った前記第２のビデオコンテンツの各々において、前記統合した３Ｄビデオコンテンツの前記一部を検出するステップと、
前記第１のビデオカメラから受け取った前記第１のビデオコンテンツの一部、及び前記第２のビデオカメラから受け取った前記第２のビデオコンテンツの一部を変更するステップと、
をさらに含むことを特徴とする請求項１９に記載の方法。
【請求項２５】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する装置であって、
第１のビデオカメラと、
第２のビデオカメラと、
プロセッサと、
を備え、前記プロセッサが、
単一のビデオカメラからのビデオコンテンツに対する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求をビデオ処理オフロードモジュールに転送し、
第１のビデオカメラ及び第２のビデオカメラを制御し、
前記ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取り、
前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取ったことに応答して、前記統合した３Ｄビデオコンテンツを前記２Ｄビデオメッセンジャアプリケーションへ送る、
ようにプログラムされ、
前記プロセッサが、前記単一のビデオカメラからのビデオコンテンツに対する前記要求を前記ビデオ処理オフロードモジュールに転送したことに応答して、前記要求を前記ビデオ処理オフロードモジュールから受け取るようにさらにプログラムされ、
前記第１のビデオカメラ及び前記第２のビデオカメラを制御するようにプログラムされる際に、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求を前記２Ｄビデオメッセンジャアプリケーションから受け取ったことに応答して前記第１のビデオカメラを制御し、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求を前記ビデオ処理オフロードモジュールから受け取ったことに応答して前記第２のビデオカメラを制御する、
ようにプログラムされる、
ことを特徴とする装置。
【請求項２６】
前記プロセッサが、前記第１のビデオカメラ及び前記第２のビデオカメラを制御するようにプログラムされる際に、
前記第１のビデオカメラからのビデオ出力を制御するための制御信号を生成し、
前記第２のビデオカメラからのビデオ出力を制御するための制御信号を生成する、
ようにプログラムされることを特徴とする請求項２５に記載の装置。
【請求項２７】
前記プロセッサが、
前記第１のビデオカメラからの第１のビデオコンテンツ、及び前記第２のビデオカメラからの第２のビデオコンテンツを受け取り、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを前記ビデオ処理オフロードモジュールへ送る、
ようにさらにプログラムされ、前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取るようにプログラムされる際に、前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを前記ビデオ処理オフロードモジュールへ送ったことに応答して、前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取るようにプログラムされる、
ことを特徴とする請求項２５に記載の装置。
【請求項２８】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する装置であって、
第１のビデオカメラと、
第２のビデオカメラと、
プロセッサと、
を備え、前記プロセッサが、
単一のビデオカメラからのビデオコンテンツに対する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求をビデオ処理オフロードモジュールに転送し、
第１のビデオカメラ及び第２のビデオカメラを制御し、
前記ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取り、
前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取ったことに応答して、前記統合した３Ｄビデオコンテンツを前記２Ｄビデオメッセンジャアプリケーションへ送る、
ようにプログラムされ、
前記プロセッサが、前記第１のビデオカメラの送信キューに関連するデキュー要求を前記２Ｄビデオメッセンジャアプリケーションから受け取るようにさらにプログラムされ、  前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取ったことに応答して、該統合した３Ｄビデオコンテンツを前記２Ｄビデオメッセンジャアプリケーションへ送るようにプログラムされる際に、前記ビデオ処理オフロードモジュールから受け取った前記統合した３Ｄビデオコンテンツを、前記第１のビデオカメラの前記送信キューにコピーするようにプログラムされる、
ことを特徴とする装置。
【請求項２９】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する装置であって、
第１のビデオカメラと、
第２のビデオカメラと、
プロセッサと、
を備え、前記プロセッサが、
単一のビデオカメラからのビデオコンテンツに対する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求をビデオ処理オフロードモジュールに転送し、
第１のビデオカメラ及び第２のビデオカメラを制御し、
前記ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取り、
前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取ったことに応答して、前記統合した３Ｄビデオコンテンツを前記２Ｄビデオメッセンジャアプリケーションへ送る、
ようにプログラムされ、
前記プロセッサが、
前記単一のビデオカメラを開く要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
前記第１のビデオカメラを開くための制御信号を生成し、
前記単一のビデオカメラを開く前記要求を前記ビデオ処理オフロードモジュールに転送し、
前記単一のビデオカメラを開く前記要求を前記ビデオ処理オフロードモジュールから受け取り、
前記単一のビデオカメラを開く前記要求を前記ビデオ処理オフロードモジュールから受け取ったことに応答して、前記第２のビデオカメラを開くための制御信号を生成する、
ようにさらにプログラムされることを特徴とする装置。
【請求項３０】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する装置であって、
第１のビデオカメラと、
第２のビデオカメラと、
プロセッサと、
を備え、前記プロセッサが、
単一のビデオカメラからのビデオコンテンツに対する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求をビデオ処理オフロードモジュールに転送し、
第１のビデオカメラ及び第２のビデオカメラを制御し、
前記ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取り、
前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取ったことに応答して、前記統合した３Ｄビデオコンテンツを前記２Ｄビデオメッセンジャアプリケーションへ送る、
ようにプログラムされ、
前記プロセッサが、
前記単一のビデオカメラを閉じる要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
前記第１のビデオカメラを閉じるための制御信号を生成し、
前記単一のビデオカメラを閉じる前記要求を前記ビデオ処理オフロードモジュールに転送し、
前記単一のビデオカメラを閉じる前記要求を前記ビデオ処理オフロードモジュールから受け取り、
前記単一のビデオカメラを閉じる前記要求を前記ビデオ処理オフロードモジュールから受け取ったことに応答して、前記第２のビデオカメラを閉じるための制御信号を生成する、
ようにさらにプログラムされることを特徴とする装置。
【請求項３１】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する装置であって、
第１のビデオカメラと、
第２のビデオカメラと、
プロセッサと、
を備え、前記プロセッサが、
単一のビデオカメラからのビデオコンテンツに対する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求をビデオ処理オフロードモジュールに転送し、
第１のビデオカメラ及び第２のビデオカメラを制御し、
前記ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取り、
前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取ったことに応答して、前記統合した３Ｄビデオコンテンツを前記２Ｄビデオメッセンジャアプリケーションへ送る、
ようにプログラムされ、
前記プロセッサが、
前記単一のビデオカメラに関連する出力フォーマットを設定する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
前記単一のビデオカメラに関連する前記出力フォーマットを前記第１のビデオカメラに設定するための制御信号を生成し、
前記単一のビデオカメラに関連する前記出力フォーマットを設定する前記要求を前記ビデオ処理オフロードモジュールに転送し、
前記単一のビデオカメラに関連する前記出力フォーマットを設定する前記要求を前記ビデオ処理オフロードモジュールから受け取り、
前記単一のビデオカメラに関連する前記出力フォーマットを設定する前記要求を前記ビデオ処理オフロードモジュールから受け取ったことに応答して、前記第２のビデオカメラに関連する前記出力フォーマットを前記第２のビデオカメラに設定するための制御信号を生成する、
ようにさらにプログラムされることを特徴とする装置。
【請求項３２】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する装置であって、
第１のビデオカメラと、
第２のビデオカメラと、
プロセッサと、
を備え、前記プロセッサが、
単一のビデオカメラからのビデオコンテンツに対する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求をビデオ処理オフロードモジュールに転送し、
第１のビデオカメラ及び第２のビデオカメラを制御し、
前記ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取り、
前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取ったことに応答して、前記統合した３Ｄビデオコンテンツを前記２Ｄビデオメッセンジャアプリケーションへ送る、
ようにプログラムされ、
前記プロセッサが、
前記単一のビデオカメラに関連する動作パラメータを設定する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
前記第１のビデオカメラに関連する前記動作パラメータを設定するための制御信号を生成し、
前記単一のビデオカメラに関連する前記動作パラメータを設定する前記要求を前記ビデオ処理オフロードモジュールに転送し、
前記単一のビデオカメラに関連する前記動作パラメータを設定する前記要求を前記ビデオ処理オフロードモジュールから受け取り、
前記単一のビデオカメラに関連する前記動作パラメータを設定する前記要求を前記ビデオ処理オフロードモジュールから受け取ったことに応答して、前記第２のビデオカメラに関連する前記動作パラメータを設定するための制御信号を生成する、
ようにさらにプログラムされることを特徴とする装置。
【請求項３３】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する装置であって、
第１のビデオカメラと、
第２のビデオカメラと、
プロセッサと、
を備え、前記プロセッサが、
単一のビデオカメラからのビデオコンテンツに対する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求をビデオ処理オフロードモジュールに転送し、
第１のビデオカメラ及び第２のビデオカメラを制御し、
前記ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取り、
前記ビデオ処理オフロードモジュールから前記統合した３Ｄビデオコンテンツを受け取ったことに応答して、前記統合した３Ｄビデオコンテンツを前記２Ｄビデオメッセンジャアプリケーションへ送る、
ようにプログラムされ、
前記プロセッサが、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求を前記ビデオ処理オフロードモジュールに転送したことに応答してスリープ状態に入り、
前記統合した３Ｄビデオコンテンツを前記ビデオ処理オフロードモジュールから受け取ったことに応答してアクティブ状態に入る、
ようにさらにプログラムされることを特徴とする装置。
【請求項３４】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供するための装置であって、
第１のビデオカメラと、
第２のビデオカメラと、
プロセッサと、
を備え、前記プロセッサが、
単一のビデオカメラからのビデオコンテンツに対する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取り、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合し、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送る、
ようにプログラムされ、
前記プロセッサが、
前記２Ｄビデオメッセンジャアプリケーションにより発信された前記第１のビデオカメラの送信キューに関連するデキュー要求を、前記カメラインターフェイスモジュールを介して受け取り、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツの前記３Ｄ較正及び前記３Ｄ矯正が完了したかどうかを判定し、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツの前記３Ｄ較正及び前記３Ｄ矯正が完了していないと判定したことに応答して、前記第１のビデオカメラからの前記第１のビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送り、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツの前記３Ｄ較正及び前記３Ｄ矯正が完了したと判定したことに応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送る、
ようにさらにプログラムされる、
ことを特徴とする装置。
【請求項３５】
前記プロセッサが、前記単一のビデオカメラからのビデオコンテンツに対する前記要求を、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションからを受け取ったことに応答して、前記単一のビデオカメラからのビデオコンテンツに対する前記要求を前記カメラインターフェイスモジュールへ送るようにさらにプログラムされ、
前記カメラインターフェイスモジュールが、前記単一のビデオカメラからのビデオコンテンツに対する前記要求を前記ビデオ処理モジュールから受け取ったことに応答して少なくとも１つのカメラを制御する、
ことを特徴とする請求項３４に記載の装置。
【請求項３６】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供するための装置であって、
第１のビデオカメラと、
第２のビデオカメラと、
プロセッサと、
を備え、前記プロセッサが、
単一のビデオカメラからのビデオコンテンツに対する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取り、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合し、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送る、
ようにプログラムされ、
前記プロセッサが、
前記単一のビデオカメラを開く要求を、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取り、
前記第２のビデオカメラを開く要求を前記カメラインターフェイスモジュールへ送る、ようにさらにプログラムされることを特徴とする装置。
【請求項３７】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供するための装置であって、
第１のビデオカメラと、
第２のビデオカメラと、
プロセッサと、
を備え、前記プロセッサが、
単一のビデオカメラからのビデオコンテンツに対する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取り、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合し、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送る、
ようにプログラムされ、
前記プロセッサが、
前記単一のビデオカメラを閉じる要求を、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取り、
前記第２のビデオカメラを閉じる要求を前記カメラインターフェイスモジュールへ送る、
ようにさらにプログラムされることを特徴とする装置。
【請求項３８】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供するための装置であって、
第１のビデオカメラと、
第２のビデオカメラと、
プロセッサと、
を備え、前記プロセッサが、
単一のビデオカメラからのビデオコンテンツに対する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取り、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合し、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送る、
ようにプログラムされ、
前記プロセッサが、
前記単一のビデオカメラに関連する出力フォーマットを設定する要求を、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取り、
前記第２のビデオカメラに関連する出力フォーマットを設定する要求を前記カメラインターフェイスモジュールへ送る、
ようにさらにプログラムされることを特徴とする装置。
【請求項３９】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供するための装置であって、
第１のビデオカメラと、
第２のビデオカメラと、
プロセッサと、
を備え、前記プロセッサが、
単一のビデオカメラからのビデオコンテンツに対する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取り、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合し、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送る、
ようにプログラムされ、
前記プロセッサが、
前記単一のビデオカメラに関連する動作パラメータを設定する要求を、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取り、
前記第２のビデオカメラに関連する動作パラメータを設定する要求を前記カメラインターフェイスモジュールへ送る、
ようにさらにプログラムされることを特徴とする装置。
【請求項４０】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供するための装置であって、
第１のビデオカメラと、
第２のビデオカメラと、
プロセッサと、
を備え、前記プロセッサが、
単一のビデオカメラからのビデオコンテンツに対する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取り、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合し、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送る、
ようにプログラムされ、
前記プロセッサが、
いくつかのフレームバッファを前記単一のビデオカメラに割り当てる要求を、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションから受け取り、
同じ数のフレームバッファを前記第２のビデオカメラに割り当てる要求を前記カメラインターフェイスモジュールへ送る、
ようにさらにプログラムされることを特徴とする装置。
【請求項４１】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供するための装置であって、
第１のビデオカメラと、
第２のビデオカメラと、
プロセッサと、
を備え、前記プロセッサが、
単一のビデオカメラからのビデオコンテンツに対する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取り、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合し、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送る、
ようにプログラムされ、
メモリをさらに備え、
前記プロセッサが、
前記第１のビデオカメラ及び前記第２のビデオカメラの各々に関連するフレームバッファのインデックスに対する要求を前記カメラインターフェイスモジュールへ送り、
前記第１のビデオカメラに関連する前記フレームバッファの前記インデックス、及び前記第２のビデオカメラに関連する前記フレームバッファの前記インデックスを前記カメラインターフェイスモジュールから受け取り、
前記第１のビデオカメラに関連する前記フレームバッファの前記インデックス、及び前記第２のビデオカメラに関連する前記フレームバッファの前記インデックスを前記メモリにマッピングする、
ようにさらにプログラムされる、
ことを特徴とする装置。
【請求項４２】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供するための装置であって、
第１のビデオカメラと、
第２のビデオカメラと、
プロセッサと、
を備え、前記プロセッサが、
単一のビデオカメラからのビデオコンテンツに対する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取り、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合し、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送る、
ようにプログラムされ、
前記プロセッサが、
前記単一のビデオカメラからのビデオコンテンツに対する前記要求を前記２Ｄビデオメッセンジャアプリケーションから受け取ったことに応答してアクティブ状態に入り、
前記統合した３Ｄビデオコンテンツを前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送り始めたことに応答してスリープ状態に入る、
ようにさらにプログラムされることを特徴とする装置。
【請求項４３】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供するための装置であって、
第１のビデオカメラと、
第２のビデオカメラと、
プロセッサと、
を備え、前記プロセッサが、
単一のビデオカメラからのビデオコンテンツに対する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取り、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合し、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送る、
ようにプログラムされ、
前記プロセッサが、
前記第１のビデオカメラから受け取った前記第１のビデオコンテンツ及び前記第２のビデオカメラから受け取った前記第２のビデオコンテンツの３Ｄ較正を行う要求を受け取り、
前記第１のビデオカメラから受け取った前記第１のビデオコンテンツ及び前記第２のビデオカメラから受け取った前記第２のビデオコンテンツの前記３Ｄ較正を行う、
ようにさらにプログラムされることを特徴とする装置。
【請求項４４】
前記プロセッサが、前記第１のビデオカメラから受け取った前記第１のビデオコンテンツ及び前記第２のビデオカメラから受け取った前記第２のビデオコンテンツの前記３Ｄ較正を行うようにプログラムされる際に、
前記第１のビデオカメラと前記第２のビデオカメラの位置関係を推定し、
前記第１のビデオカメラ及び前記第２のビデオカメラを矯正する、
ようにプログラムされることを特徴とする請求項４３に記載の装置。
【請求項４５】
前記プロセッサが、前記第１のビデオカメラ及び前記第２のビデオカメラを矯正するようにプログラムされる際に、
ワーピング行列を取得し、
前記ワーピング行列を前記第１のビデオカメラ及び前記第２のビデオカメラに適用する、
ようにプログラムされることを特徴とする請求項４４に記載の装置。
【請求項４６】
前記プロセッサが、前記第１のビデオカメラから受け取った前記第１のビデオコンテンツ及び前記第２のビデオカメラから受け取った前記第２のビデオコンテンツの前記３Ｄ較正を行うようにプログラムされる際に、
画像の端部及び角部の少なくとも１つを検出し、
前記第１のビデオカメラと前記第２のビデオカメラの位置関係を推定し、
前記推定した前記第１のビデオカメラと前記第２のビデオカメラの位置関係に基づいて、前記第１のビデオコンテンツ及び前記第２のビデオコンテンツの少なくとも一方を調整する、
ようにプログラムされることを特徴とする請求項４３に記載の装置。
【請求項４７】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供するための装置であって、
第１のビデオカメラと、
第２のビデオカメラと、
プロセッサと、
を備え、前記プロセッサが、
単一のビデオカメラからのビデオコンテンツに対する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取り、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合し、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送る、
ようにプログラムされ、
前記プロセッサが、前記第１のビデオコンテンツと前記第２のビデオコンテンツを前記３Ｄビデオコンテンツに統合するようにプログラムされる際に、前記３Ｄビデオコンテンツを、横並びの３Ｄビデオコンテンツ、縦並びの３Ｄビデオコンテンツ、及びフレームシーケンシャル方式の３Ｄビデオコンテンツのうちの１つとして形成するようにプログラムされる、
ことを特徴とする装置。
【請求項４８】
レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供するための装置であって、
第１のビデオカメラと、
第２のビデオカメラと、
プロセッサと、
を備え、前記プロセッサが、
単一のビデオカメラからのビデオコンテンツに対する要求を前記２Ｄビデオメッセンジャアプリケーションから受け取り、
第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取り、
前記第１のビデオコンテンツ及び前記第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合し、
前記単一のビデオカメラからの前記ビデオコンテンツに対する前記要求に応答して、前記統合した３Ｄビデオコンテンツを、前記カメラインターフェイスモジュールを介して前記２Ｄビデオメッセンジャアプリケーションへ送る、
ようにプログラムされ、
前記プロセッサが、
前記統合した３Ｄビデオコンテンツの一部を変更する要求を受け取り、
前記第１のビデオカメラから受け取った前記第１のビデオコンテンツ及び前記第２のビデオカメラから受け取った前記第２のビデオコンテンツの各々において、前記統合した３Ｄビデオコンテンツの前記一部を検出し、
前記第１のビデオカメラから受け取った前記第１のビデオコンテンツの一部、及び前記第２のビデオカメラから受け取った前記第２のビデオコンテンツの一部を変更する、
ようにさらにプログラムされることを特徴とする装置。
【発明の詳細な説明】
【技術分野】
【０００１】
〔関連出願との相互参照〕
本出願は、２００９年１１月６日に出願された米国仮特許出願第６１／２５８，９９２号及び２０１０年３月１６日に出願された米国特許仮出願第１２／６６１，３７１号に関するとともに、これらの仮特許出願の優先権の利益を主張するものであり、この仮特許出願は、いずれも引用により本明細書に組み入れられる。
【０００２】
〔著作権及び商標表示〕
本特許文書の開示部分は、著作権保護の対象内容を含む。著作権の権利所有者は、合衆国特許商標庁の特許ファイル又は記録内に表されるとおりに特許文書又は特許開示を複製することには異議を唱えないが、それ以外は全ての著作権を留保する。商標は、これらのそれぞれの所有者の所有物である。
【背景技術】
【０００３】
Ｙａｈｏｏ（登録商標）Ｍｅｓｓｅｎｇｅｒ、Ｇｏｏｇｌｅ  Ｔａｌｋ（登録商標）及びＳｋｙｐｅ（登録商標）などの２次元（２Ｄ）ビデオメッセンジャアプリケーションは、ネットワーク化されたコンピュータ装置間で通信を行うための相互接続能力を提供する。これらの２Ｄビデオメッセンジャアプリケーションは、ネットワーク化されたコンピュータ装置の各々に付随するウェブカメラなどの単一のビデオカメラを使用することにより、このネットワーク化されたコンピュータ装置間の２Ｄビデオ通信を実現する。
【発明の概要】
【課題を解決するための手段】
【０００４】
添付の図面と併せて行う以下の詳細な説明を参照することにより、構成及び動作方法を示す特定の例示的な実施形態、並びに目的及び利点を最も良く理解することができる。
【図面の簡単な説明】
【０００５】
【図１】本発明のいくつかの実施形態による、２次元（２Ｄ）ビデオメッセンジャアプリケーションのための自動３次元（３Ｄ）ビデオを提供するシステムの実施構成例のブロック図である。
【図２】本発明のいくつかの実施形態による、２Ｄビデオメッセンジャアプリケーションのための自動３Ｄビデオを提供するコンピュータ装置の実施構成例のブロック図である。
【図３】本発明のいくつかの実施形態による、２Ｄビデオメッセンジャアプリケーションのための自動３Ｄビデオを提供するメッセージ及びビデオコンテンツメッセージフローの実施構成例のメッセージフロー図である。
【図４】本発明のいくつかの実施形態によるコンピュータ装置のアーキテクチャ内における、図３のメッセージ及びビデオコンテンツフローの実施構成例のメッセージ及びビデオコンテンツフローのアーキテクチャ図である。
【図５】本発明のいくつかの実施形態による、２Ｄビデオメッセンジャアプリケーションのための自動３Ｄビデオの状態指向処理の実施構成例のアーキテクチャ状態図である。
【図６】本発明のいくつかの実施形態による、２Ｄビデオメッセンジャアプリケーションのための自動３Ｄビデオのシステムスタックの実施構成例のアーキテクチャ図である。
【図７】本発明のいくつかの実施形態による、カメラインターフェイスモジュールにおいて２Ｄビデオメッセンジャアプリケーションのための自動３Ｄビデオを提供する処理の実施構成例のフロー図である。
【図８】本発明のいくつかの実施形態による、ビデオ処理オフロードモジュールにおいて２Ｄビデオメッセンジャアプリケーションのための自動３Ｄビデオを提供する処理の実施構成例のフロー図である。
【図９】本発明のいくつかの実施形態による、カメラインターフェイスモジュールにおいて２Ｄビデオメッセンジャアプリケーションのための自動３Ｄビデオを提供する処理の実施構成例のフロー図である。
【図１０】本発明のいくつかの実施形態による、ビデオ処理オフロードモジュールにおいて２Ｄビデオメッセンジャアプリケーションのための自動３Ｄビデオを提供する処理の実施構成例のフロー図である。
【発明を実施するための形態】
【０００６】
本発明は、多くの異なる形の実施形態が可能であるが、このような実施形態の開示は原理の一例として見なすべきであり、図示及び説明する特定の実施形態に本発明を限定することを意図するものではないという理解の下、図面に特定の実施形態を示し本明細書で詳細に説明する。以下の説明では、図面のいくつかの図における同様の、類似の又は一致する部分については同じ参照番号を使用して説明する。
【０００７】
本明細書で使用する「１つの（英文不定冠詞）」という用語は、１又は１よりも多くの、と定義される。本明細書で使用する「複数の」という用語は、２又は２よりも多い、と定義される。本明細書で使用する「別の」という用語は、少なくとも第２の又はそれ以上の、と定義される。本明細書で使用する「含む（ｉｎｃｌｕｄｉｎｇ）」及び／又は「有する（ｈａｖｉｎｇ）」という用語は、「備える（ｃｏｍｐｒｉｓｉｎｇ）」（すなわち包括的な用語）と定義される。本明細書で使用する「結合される」という用語は、「接続される」と定義されるが、必ずしも直接的な、また必ずしも機械的な接続ではない。本明細書で使用する「プログラム」又は「コンピュータプログラム」という用語又は類似の用語は、コンピュータシステム上での実行を意図された一連の命令であると定義される。「プログラム」又は「コンピュータプログラム」は、実行可能アプリケーション、アプレット、サーブレット、ソースコード、オブジェクトコード、共有ライブラリ／ダイナミックロードライブラリ、及び／又は１又はそれ以上のプロセッサを有するコンピュータシステム上で実行するように設計されたその他の一連の命令におけるサブルーチン、関数、手順、オブジェクト方法、オブジェクト実装を含むことができる。
【０００８】
本明細書を通じて、「１つの実施形態」、「いくつかの実施形態」、「ある実施形態」、「ある実施構成」、「ある例」、又は同様の用語への言及は、実施例に関連して説明する特定の特徴、構造又は特性が、本発明の少なくとも１つの実施形態に含まれることを意味する。従って、本明細書を通じて至るところに出現するこのような語句は、必ずしも全てが同じ実施形態について言及するものではない。さらに、上記の特定の特徴、構造又は特性を、本発明を限定することなく１又はそれ以上の実施形態にあらゆる好適な態様で組み合わせることができる。
【０００９】
本明細書で使用する「又は」という用語は包括的なものとして解釈すべきであり、すなわちいずれか１つ又はあらゆる組み合わせを意味する。従って、「Ａ、Ｂ又はＣ」は、「Ａ、Ｂ、Ｃ、ＡとＢ、ＡとＣ、ＢとＣ、ＡとＢとＣ、のいずれか」を意味する。この定義に対する例外は、要素、機能、ステップ又は行為の組み合わせが何らかの点で本質的に互いに相容れない場合にのみ生じる。
【００１０】
本主題は、２次元（２Ｄ）ビデオメッセンジャアプリケーションのための自動３次元（３Ｄ）ビデオを提供するものである。本主題は、レガシーな（例えば、既存の）２Ｄビデオメッセンジャアプリケーションを介して３Ｄビデオの生成、伝送及び表示をサポートする処理プラットフォームを提供するものである。
【００１１】
説明上、レガシーな２Ｄビデオメッセンジャアプリケーションは、ネットワーク化されたコンピュータ装置に付随するウェブカメラなどの単一のカメラ装置に対して行われる要求を送るものであると理解されたい。これらの要求には、カメラを開く要求、カメラを閉じる要求、フォーマット設定要求、パラメータ設定要求、フレームバッファクエリ要求、デキュービデオ要求、及び単一のカメラ装置に対して行われるその他の要求などの要求がある。さらに、インスタントメッセンジャアプリケーションに関連するプログラムコードは専用のものであり、変更することができない。本主題は、この専用プログラムコードの変更を必要とせずに、既存のレガシーな２Ｄビデオメッセンジャアプリケーションを介して２次元（２Ｄ）ビデオメッセンジャアプリケーションのための自動３次元（３Ｄ）ビデオを提供するものである。
【００１２】
既存のレガシーな２Ｄビデオメッセンジャアプリケーションは、それ自体が単一のビデオカメラ装置に関連する要求を変化なく生成し続けることができる。ネットワーク化されたコンピュータ装置では、カメラインターフェイスモジュール（デバイスドライバソフトウェア又はハードウェアモジュールなど）が、このレガシーな２Ｄビデオメッセンジャアプリケーションから単一のビデオカメラに関連する要求を受け取るように構成される。カメラインターフェイスモジュールは、レガシーなビデオメッセンジャアプリケーションが予想するような単一のカメラではなく、２つのビデオカメラとインターフェイス接続するようにも構成される。カメラインターフェイスモジュールは、このようなレガシーなビデオメッセンジャアプリケーションから要求を受け取ると、２つのビデオカメラの各々のためのカメラ制御信号を生成する。両ビデオカメラからビデオコンテンツを受け取り、３Ｄビデオコンテンツに統合して、これをレガシーなビデオメッセンジャアプリケーションから受け取った単一のビデオカメラからのビデオコンテンツに対する要求に応答して戻す。レガシーなビデオメッセンジャアプリケーションは、この３Ｄビデオコンテンツを、２Ｄビデオコンテンツを配信しているのではないと認識することなく別のネットワーク化されたコンピュータ装置に配信する。この３Ｄビデオコンテンツを受け取るネットワーク化されたコンピュータ装置では、ここでも既存のレガシーな２Ｄビデオメッセンジャアプリケーションを変更せずに、３Ｄビデオコンテンツをレンダリングするための後処理が行われる。
【００１３】
３Ｄビデオコンテンツの生成に関与するネットワーク化されたコンピュータ装置上のカーネルコード空間又は実行占有期間が限られている実施構成では、ビデオ処理オフロードモジュールを利用して、３Ｄ処理及び計算の負荷をユーザ空間アプリケーション及び／又はハードウェアモジュールに移行する。カーネルコードを動かすプロセッサに関するカーネルコード空間及び実行占有期間の制約は、３Ｄ処理モジュールにオフロードされる３Ｄ処理負荷能力が増加することで観察することができる。
【００１４】
このような実施構成では、カメラインターフェイスモジュールが、単一のビデオカメラからのビデオコンテンツに対する要求を受け取ると、この単一のビデオカメラからのビデオコンテンツに対する要求に基づいて、第１のビデオカメラからのビデオコンテンツを生成するためのカメラ制御信号を生成し、この要求をビデオ処理オフロードモジュールに転送し、ビデオ処理オフロードモジュールが要求を受け取ったことに応答して、第２のビデオカメラからのビデオコンテンツを生成するためのカメラ制御信号を生成する。従って、カメラインターフェイスモジュールは、この要求を単一のビデオカメラからのビデオコンテンツに対する要求であると見なし、ビデオ処理オフロードモジュールを介してこの要求を処理し、両ビデオカメラからのビデオコンテンツの生成を制御する。
【００１５】
ビデオ処理オフロードモジュールは、単一のビデオカメラからのビデオコンテンツに対する要求を受け取り、第２のビデオカメラからのビデオコンテンツの要求をカメラインターフェイスモジュールへ送る。カメラインターフェイスモジュールは、この要求を受け取り、この第２のビデオカメラに対する要求に基づいてカメラ制御信号を生成する。カメラインターフェイスモジュールは、各ビデオカメラからのビデオコンテンツを受け取り、受け取った両ビデオカメラからのビデオコンテンツをビデオ処理オフロードモジュールへ転送する。ビデオ処理オフロードモジュールは、第１のビデオカメラから受け取ったビデオコンテンツと第２のビデオカメラから受け取ったビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合する。ビデオ処理オフロードモジュールは、単一のビデオカメラからのビデオコンテンツに対する要求に応答して、この統合した３Ｄビデオコンテンツを、カメラインターフェイスモジュールを介してレガシーな２Ｄビデオメッセンジャアプリケーションへ送る。レガシーな２Ｄビデオメッセンジャアプリケーションは、この３Ｄビデオコンテンツを受信側のネットワーク化されたコンピュータ装置へ転送する。この受信側のネットワーク化されたコンピュータ装置は、この受け取ったビデオコンテンツを３Ｄビデオコンテンツと見なし、この受け取った３Ｄビデオコンテンツを、受信側のネットワーク化されたコンピュータ装置に関連するディスプレイ上にレンダリングできるように後処理する。
【００１６】
本主題では、現在いくつかの形式の３Ｄコンテンツが利用可能であると理解されたい。例えば、３Ｄビデオコンテンツを、偏光方式、フレームシーケンシャル方式、又は３Ｄ対応表示方式の出力装置向けに符号化することができる。偏光符号化では、ビデオコンテンツの各フレーム上で、左右の画像を横並び又は縦並びのフォーマットで統合することにより、３Ｄビデオコンテンツを生成することができる。レンダリング時には、これらの画像を、個々の表示されるビデオフレームの奇数ライン及び偶数ライン上にそれぞれ逆回転偏光することによりスケーリングしてフォーマットする。パッシブな偏光３Ｄメガネを使用して、視聴者に左右の目の画像を示す。或いは、偏光符号化の２倍のフレームレートで動作するフレームシーケンシャル方式を使用して、左右の画像が各々順番にレンダリングされるようにすることもできる。アクティブな３Ｄメガネを使用して各連続フレームに同期し、これらのフレームに対していずれのレンズがアクティブであるかを選択する。説明した３Ｄ符号化及びレンダリングのオプションのいずれかを使用して、３Ｄ画像の解像度を折り合わせることができる。或いは、３Ｄビデオコンテンツを３Ｄ表現出力に変換し、パッシブメガネ又はアクティブメガネを使用する方法よりも３Ｄコンテンツのレンダリング解像度を高くすることができる３Ｄ対応ディスプレイを利用することができる。本主題は、上述した及びその他のいずれかの３Ｄビデオコンテンツの符号化及びレンダリングフォーマットに当てはまると理解されたい。また、当業者であれば、本説明に基づいて本主題を実施することもできる。従って、本明細書では、３Ｄ符号化及びレンダリングのさらなる詳細については説明しない。
【００１７】
また、３Ｄ較正及び３Ｄ矯正動作を行って、統合した左右の画像を調整することもできる。３Ｄ較正は、左右の画像を生成するカメラの正面に保持される画像の端部及び角部を検出することによって行うことができる。３Ｄ矯正は、左右の画像を生成するカメラ間の位置関係を推定することによって行うことができる。画像に適用すべきワーピング行列を取得し、２つのビデオカメラから受け取った左右の画像にこのワーピング行列を適用することにより、カメラ間の推定される位置関係に基づいて、左右の画像の少なくとも一方を調整することができる。当業者であれば、本明細書に含まれる本主題の説明に基づいて、本明細書で説明するように画像を較正及び矯正できると理解されたい。
【００１８】
ここで図１を参照するが、図１は、２次元（２Ｄ）ビデオメッセンジャアプリケーションのための自動３次元（３Ｄ）ビデオを提供するシステム１００の実施構成例のブロック図である。コンピュータ装置１０２は、ネットワーク１０４を介してコンピュータ装置１０６及びビデオアプリケーションサーバ１０８と相互接続する。ビデオアプリケーションサーバ１０８は、レガシーな２Ｄビデオメッセンジャアプリケーションのための記憶及びダウンロードアクセス能力を有する。コンピュータ装置１０２及びコンピュータ装置１０６の各々がレガシーな２Ｄビデオメッセンジャアプリケーションをダウンロードしてインストールすると、この２Ｄビデオメッセンジャアプリケーションは、所与の実施構成に基づいて、コンピュータ装置１０２とコンピュータ装置１０６の間のテレビ会議のためのピアツーピア相互接続又はサーバ制御方式の相互接続能力を提供する。ピアツーピアの実施構成では、コンピュータ装置１０２及び１０６のいずれかにインストールされた２Ｄビデオメッセンジャアプリケーションがテレビ会議セッションを開始し、ネットワーク１０４を介して他方のコンピュータ装置にメッセージを転送することができる。サーバ制御方式の実施構成では、ビデオアプリケーションサーバ１０８が、インストールされた２Ｄビデオメッセンジャアプリケーションと通信して、テレビ会議に関連する全てのメッセージをコンピュータ装置１０２とコンピュータ装置１０６の間で受信及び転送することができる。
【００１９】
コンピュータ装置１０２には、カメラ＿１  １１０及びカメラ＿２  １１２が付随する。コンピュータ装置１０６には、カメラ＿３  １１４及びカメラ＿４  １１６が付随する。この例では、コンピュータ装置１０２及びコンピュータ装置１０６が、いずれも２Ｄビデオメッセンジャアプリケーションのための３Ｄビデオを生成するように構成される。また、コンピュータ装置１０２及びコンピュータ装置１０６は、いずれも受け取った３Ｄコンテンツを識別し、この３Ｄコンテンツをそれぞれのコンピュータ装置のユーザに対してレンダリングするように構成することができる。さらに、コンピュータ装置１０２又はコンピュータ装置１０６は、発信ビデオを生成するためのカメラを１つしか有していないコンピュータ装置と通信することもできる。このような状況では、このような装置を、受け取った３Ｄビデオを本主題に関連する２Ｄビデオメッセンジャアプリケーション向けに処理するように構成することができる。
【００２０】
コンピュータ装置１０２及び１０６は、セットトップボックス（ＳＴＢ）、パーソナルコンピュータ（ＰＣ）、携帯情報端末（ＰＤＡ）、携帯電話又はその他のモバイル機器（全て図示せず）、或いは２Ｄビデオメッセンジャアプリケーションをダウンロードし、これをインストールして実行できるその他の装置などの装置を含むことができる。カメラ＿１  １１０、カメラ＿２  １１２、カメラ＿３  １１４及びカメラ＿４  １１６は、意図する実施構成に適したいずれの形式のカメラであってもよい。例えば、カメラ１１０〜１１６は、ウェブカメラ、又はそれぞれのコンピュータ装置において画像を取り込むために使用するのに適したその他のカメラを含むことができる。
【００２１】
ビデオアプリケーションサーバ１０８は、ネットワーク１０４を介してアクセスできるいずれのネットワークベースのサーバであってもよい。現在市販されているウェブベースのサーバの例には、Ｙａｈｏｏ（登録商標）Ｍｅｓｓｅｎｇｅｒサーバ、Ｇｏｏｇｌｅ  Ｔａｌｋ（登録商標）サーバ、及びＳｋｙｐｅ（登録商標）サーバがある。ネットワークアクセス可能なウェブベースのサーバは他にも多く存在し、本主題では他にも多くが想定される。従って、このようなネットワークアクセス可能なウェブベースのサーバは、全て本主題の範囲に含まれると考えられる。
【００２２】
ネットワーク１０４は、それぞれイントラネット又はインターネットなどの私的ネットワーク又は公的ネットワーク、直接モジュール間相互接続、ダイアルアップ接続、無線、又は装置間の通信を可能にできるその他のいずれかの相互接続メカニズムを含む、意図する目的に適したあらゆる形の相互接続を含むことができる。ネットワーク１０４を介して通信するのに適したウェブベースのプロトコルの例には、インターネットプロトコル（ＴＣＰ／ＩＰ）を介した送信制御プロトコルがある。ネットワーク１０４を通じてアクセスできる装置とのＴＣＰ／ＩＰ接続を介したメッセージ通信には、ハイパーテキスト転送プロトコル（ＨＴＴＰ）及び拡張マークアップ言語（ＸＭＬ）フォーマットなどのマークアップ言語フォーマットを使用することができる。他のウェブプロトコルも存在し、これらは全て本主題の範囲に含まれると考えられる。
【００２３】
本説明では、「リアルタイム」という用語は、説明する主題のユーザに受け入れられる、オンデマンド情報処理に適した応答時間を提供することに関して（例えば、２、３秒以内、又はシステムによっては１０秒未満ほどの）十分に短い持続時間のあらゆる時間枠を一般的に意味する、一般に「準リアルタイム」と呼ばれるものを含むものとする。これらの用語は、正確に定義するのは困難であるが、当業者には十分に理解されている。さらに、本明細書で説明する主題は、リアルタイム及び／又は準リアルタイムで実行できると理解されたい。
【００２４】
図２は、２Ｄビデオメッセンジャアプリケーションのための自動３Ｄビデオを提供するコンピュータ装置１０２の実施構成例のブロック図である。このコンピュータ装置１０２の説明は、コンピュータ装置１０６にも当てはまると理解されたい。しかしながら、上述したように、コンピュータ装置１０２又はコンピュータ装置１０６は、発信ビデオを生成するためのカメラを１つしか有していないコンピュータ装置と通信することができる。このような状況では、このような装置を、受け取った３Ｄビデオを本主題に関連する２Ｄビデオメッセンジャアプリケーション向けに処理するように構成することができる。
【００２５】
プロセッサ２００は、コンピュータ命令の実行、計算、及びコンピュータ装置１０２内のその他の能力を提供する。ディスプレイ装置２０２は、コンピュータ装置１０２のユーザに視覚情報及び／又はその他の情報を提供する。ディスプレイ装置２０２は、ブラウン管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）、発光ダイオード（ＬＥＤ）、投影又はその他のディスプレイ要素又はパネルなどのあらゆる種類のディスプレイ装置を含むことができる。入力装置２０４は、コンピュータ装置１０２のユーザに入力能力を提供する。入力装置２０４は、マウス、ペン、トラックボール又はその他の入力装置を含むことができる。入力装置２０４などの１又はそれ以上の入力装置を使用することができる。
【００２６】
音声出力装置２０６は、上述したように、及び以下でより詳細に説明するように、テレビ会議に関連する口頭での通信などの音声出力能力をコンピュータ装置１０２に提供する。音声出力装置２０６は、所与の実施構成に応じて、スピーカ、ドライバ回路及びインターフェイス回路を含むことができる。
【００２７】
通信モジュール２０８は、コンピュータ装置１０６及びビデオアプリケーションサーバ１０８と相互作用するための、２Ｄビデオメッセンジャアプリケーションをダウンロードしてインストールするための、及びテレビ会議中にネットワーク１０４を介してそれぞれの装置と通信するための通信能力を提供する。
【００２８】
なお、図示及び説明を簡単にするために、通信モジュール２０８を構成要素レベルのモジュールとして示している。また、通信モジュール２０８は、通信モジュール２０８の機能を実施するために使用するいずれかのハードウェア、（単複の）プログラムされたプロセッサ、及びメモリを含むことも理解されたい。例えば、通信モジュール２０８は、通信モジュール２０８に関連する電気制御動作を行うための、特定用途向け集積回路（ＡＳＩＣ）の形の追加のコントローラ回路、プロセッサ、及び／又は個別集積回路及び構成要素を含むことができる。また、通信モジュール２０８は、必要に応じて、割り込みレベル、スタックレベル及びアプリケーションレベルモジュールを含むことができる。さらに、通信モジュール２０８は、通信モジュール２０８に関連する処理動作を行うための、これらのモジュールによる記憶、実行、及びデータ処理に使用するいずれかのメモリ構成要素を含むことができる。通信モジュール２０８は、本主題の範囲から逸脱することなく、以下で説明する他の回路の一部を成すこともできる。
【００２９】
メモリ２１０は、２Ｄビデオメッセンジャアプリケーション２１２及びカメラインターフェイスモジュール２１４を含む。２Ｄビデオメッセンジャアプリケーション２１２は、上述したような、ビデオアプリケーションサーバ１０８からダウンロードされてインストールされる、２Ｄビデオメッセージングのためのアプリケーションを表す。カメラインターフェイスモジュール２１４は、コンピュータ装置１０２をカメラ＿１  １１０及びカメラ＿２  １１２とインターフェイス接続するドライバ及び通信能力を含む。
【００３０】
メモリ２１０は、必要に応じて分散又は局所化した、意図する目的に適した揮発性及び非揮発性メモリのあらゆる組み合わせを含むことができ、本例では図を簡単にするために図示していないその他のメモリセグメントを含むこともできると理解されたい。例えば、メモリ２１０は、必要に応じて、コード記憶領域、コード実行領域、及び情報の記憶、及びコンピュータ装置１０２に関連する他の構成要素の一部を成すプログラムされたプロセッサに関連するそれぞれのアプリケーション及びいずれかのファームウェアの記憶及び実行に適したデータ領域を含むことができる。メモリ２１０には、本主題の範囲から逸脱することなく、所与の実施構成に応じてその他の情報も記憶できると理解されたい。
【００３１】
以下でより詳細に説明するように、カメラインターフェイスモジュール２１４は、２Ｄビデオメッセンジャアプリケーション２１２にもインターフェイス接続して、２Ｄビデオメッセンジャアプリケーション２１２に適したインターフェイスシグナリングを行う。カメラインターフェイスモジュール２１４は、単一のビデオカメラに対して行われる２Ｄビデオメッセンジャアプリケーション２１２からのシグナリング及び／又は要求を受け取ると、この単一のビデオカメラに対して行われるシグナリング及び／又は要求に基づいて制御信号を生成し、以下でより詳細に説明するように、これらの制御信号をカメラ＿１  １１０及びカメラ＿２  １１２の両方へ送って、コンピュータ装置１０２に２カメラインターフェイスを提供する。カメラ＿１  １１０及びカメラ＿２  １１２の両方から受け取ったビデオコンテンツを組み合わせて、３Ｄビデオコンテンツを形成する。この３Ｄビデオコンテンツは、単一のビデオカメラに対して行われるシグナリング及び／又は要求に応答して２Ｄビデオメッセンジャアプリケーション２１２に戻される。従って、カメラインターフェイスモジュール２１４は、コンピュータ装置１０２が、既存の２Ｄビデオメッセンジャアプリケーション２１２を変更する必要なく既存の２Ｄビデオメッセンジャアプリケーション２１２を介して３Ｄビデオを提供できるようにするインターフェイスを提供する。
【００３２】
カメラインターフェイスモジュール２１４は、これらの及びその他の機能を実行するための、プロセッサ２００により実行可能な命令を含む。カメラインターフェイスモジュール２１４は、本主題の範囲から逸脱することなく、割り込みサービスルーチン（ＩＳＲ）の一部、オペレーティングシステムの一部、又は別個のアプリケーションの一部を成すことができる。
【００３３】
なお、本例では、動作中のカメラインターフェイスモジュール２１４を低水準ドライバとして説明する。従って、カメラインターフェイスモジュール２１４はドライバと見なすことができ、プロセッサ２００が行う動作のためのカーネル空間の一部と見なすことができる。プロセッサ２００のカーネル空間に加わる処理負荷を制限するために、コンピュータ装置１０２の３Ｄビデオ処理は、プロセッサ２００のカーネル空間外で行われる。
【００３４】
ビデオ処理オフロードモジュール２１６は、コンピュータ装置１０２に、本主題に関連する３Ｄビデオ処理能力を提供する。以下でより詳細に説明するように、カメラインターフェイスモジュール２１４は、２Ｄビデオメッセンジャアプリケーション２１２が発信したいくつかのシグナリング及び／又は要求をビデオ処理オフロードモジュール２１６に転送する。ビデオ処理オフロードモジュール２１６は、これらの要求に応答して、これらをカメラ＿１  １１０及びカメラ＿２  １１２へ送る。ビデオ処理オフロードモジュール２１６は、ビデオ出力、及びシグナリング及び／又は要求に対する応答をカメラ＿１  １１０及びカメラ＿２  １１２から受け取り、シグナリング及び／又は要求に対する３Ｄビデオ又は組み合わせた応答を生成し、これらをカメラインターフェイスモジュール２１４を介して２Ｄビデオメッセンジャアプリケーション２１２に戻す。
【００３５】
上述した、及び以下でより詳細に説明する本例では、説明を簡単にするためにいくつかのシグナリングの相互接続を示しているが、本発明の範囲から逸脱することなく、異なるシグナリングの相互接続を使用できると理解されたい。例えば、本例では、カメラインターフェイスモジュール２１４について、２Ｄビデオメッセンジャアプリケーション２１２からの要求を受け取り、第１のカメラ＿１  １１０のための制御信号を生成し、ビデオ処理オフロードモジュール２１６に要求を転送するものとして説明する。ビデオ処理オフロードモジュール２１６は、この要求をカメラインターフェイスモジュール２１４に転送し、カメラインターフェイスモジュール２１４は、第２のカメラ＿２  １１２のための制御信号を生成する。しかしながら、これを限定と見なすべきでない。本例では、ビデオ処理オフロードモジュール２１６について、全てのシグナリングをカメラインターフェイスモジュール２１４を通じてカメラ＿１  １１０及びカメラ＿２  １１２に転送するものとして説明しているが、ビデオ処理オフロードモジュール２１６は、本主題の範囲から逸脱することなく、カメラ＿１  １１０及びカメラ＿２  １１２と直接インターフェイス接続することもできる。他にも多くの変形例が考えられ、これらは全て本主題の範囲に含まれると考えられる。
【００３６】
なお、図示及び説明を簡単にするために、ビデオ処理オフロードモジュール２１６を構成要素レベルモジュールとして示している。また、上述したように、及び以下でより詳細に説明するように、ビデオ処理オフロードモジュール２１６は、ビデオ処理オフロードモジュール２１６の機能を実施するために使用するいずれかのハードウェア、（単複の）プログラムされたプロセッサ及びメモリも含むと理解されたい。例えば、ビデオ処理オフロードモジュール２１６は、ビデオ処理オフロードモジュール２１６に関連する電気制御動作を行うための、特定用途向け集積回路（ＡＳＩＣ）の形のさらなるコントローラ回路、プロセッサ、及び／又は個別集積回路及び構成要素を含むことができる。また、ビデオ処理オフロードモジュール２１６は、必要に応じて、割り込みレベル、スタックレベル及びアプリケーションレベルモジュールを含むことができる。さらに、ビデオ処理オフロードモジュール２１６は、ビデオ処理オフロードモジュール２１６に関連する処理動作を行うための、これらのモジュールによる記憶、実行、及びデータ処理に使用するいずれかのメモリ構成要素を含むことができる。
【００３７】
なお、ビデオ処理オフロードモジュール２１６は、本主題の範囲から逸脱することなく、以下で説明する他の回路の一部を成すこともできる。さらに、別の方法として、ビデオ処理オフロードモジュール２１６を、メモリ２１０に記憶されたアプリケーションとして実現することもできる。このような実施構成では、ビデオ処理オフロードモジュール２１６が、本明細書で説明する機能を実行するための、プロセッサ２００により実行される命令を含むことができる。プロセッサ２００は、これらの命令を実行して、上述した、及び以下でより詳細に説明するコンピュータ装置１０２の処理能力を提供することができる。ビデオ処理オフロードモジュール２１６は、本主題の範囲から逸脱することなく、割り込みサービスルーチン（ＩＳＲ）の一部、オペレーティングシステムの一部、又は別個のアプリケーションの一部を成すことができる。
【００３８】
プロセッサ２００、ディスプレイ装置２０２、入力装置２０４、音声出力装置２０６、通信モジュール２０８、メモリ２１０、ビデオ処理オフロードモジュール２１６、カメラ＿１  １１０及びカメラ＿２  １１２は、図を簡単にするために相互接続部２１８として示す１又はそれ以上の相互接続部を介して相互接続される。相互接続部２１８は、システムバス、ネットワーク、又はそれぞれの構成要素にそれぞれの目的に適した相互接続を提供できる他のいずれかの相互接続部を含むことができる。
【００３９】
さらに、本主題の範囲から逸脱することなく、コンピュータ装置１０２内の構成要素をネットワーク内の同じ位置に配置し、又は分散することができる。例えば、コンピュータ装置１０２内の構成要素は、（デスクトップ又はラップトップなどの）パーソナルコンピュータ又は（携帯電話、携帯情報端末（ＰＤＡ）、電子メール装置、音楽録音又は再生装置などの）ハンドヘルド装置などの独立型装置内に存在することができる。分散配置では、ディスプレイ装置２０２及び入力装置２０４をキオスクに配置する一方で、プロセッサ２００及びメモリ２１０をローカル又は遠隔サーバに配置することができる。コンピュータ装置１０２の構成要素に関しては他の多くの構成が考えられ、これらは全て本主題の範囲に含まれると考えられる。
【００４０】
図３は、２Ｄビデオメッセンジャアプリケーションのための自動３Ｄビデオを提供するための、メッセージ及びビデオコンテンツメッセージフロー３００の実施構成例のメッセージフロー図である。２Ｄビデオメッセンジャアプリケーション２１２が、単一のビデオカメラからのビデオコンテンツに対する要求をカメラインターフェイスモジュール２１４へ送る（ライン１）。カメラインターフェイスモジュール２１４は、単一のビデオカメラからのビデオコンテンツに対する要求を受け取ったことに応答して、この要求をビデオ処理オフロードモジュール２１６に転送する（ライン２）。ビデオ処理オフロードモジュール２１６は、この要求を受け取ったことに応答して、第２のカメラに対する同じ要求をカメラインターフェイスモジュール２１４に戻す（ライン３）。
【００４１】
カメラインターフェイスモジュール２１４は、ビデオ処理オフロードモジュール２１６から要求を受け取ったことに応答して、制御情報及びコマンド（制御信号など）を生成し、この生成した制御情報及びコマンドをカメラ＿１  １１０及びカメラ＿２  １１２へ送る（それぞれライン４及びライン５）。カメラ＿１  １１０及びカメラ＿２  １１２は、それぞれの制御情報及びコマンドを処理して、カメラインターフェイスモジュール２１４にビデオコンテンツを戻す（それぞれライン６及びライン７）。
【００４２】
カメラインターフェイスモジュール２１４は、カメラ＿１  １１０及びカメラ＿２  １１２から受け取ったビデオコンテンツを処理するようにビデオ処理オフロードモジュール２１６へ戻す（それぞれライン８及びライン９）。ビデオ処理オフロードモジュール２１６は、ビデオコンテンツを受け取ったことに応答して３Ｄビデオコンテンツを形成し、ブロック３０２においていずれかの追加処理を実行する。
【００４３】
上述したように、及び以下でより詳細に説明するように、ビデオ処理オフロードモジュール２１６は、所与の実施構成に適したいずれかの３Ｄフォーマット化を行うことができる。また、ビデオ処理オフロードモジュール２１６は、視覚効果を実行して、結果として得られる統合した３Ｄビデオコンテンツを変更することができる。このビデオコンテンツの変更は、第１のビデオカメラ、すなわちカメラ＿１  １１０から受け取った第１のビデオコンテンツの一部、及び第２のビデオカメラ、すなわちカメラ＿２  １１２から受け取った第２のビデオコンテンツの一部を変更することを含むことができる。従って、各々のカメラから受け取った個々のビデオコンテンツの部分を変更することにより、３Ｄビデオコンテンツの変更を行うことができる。ビデオコンテンツを変更する要求は、ユーザインターフェイスから、又はネットワーク接続を介して別のコンピュータ装置から受け取ることができる。統合した３Ｄビデオコンテンツの一部を変更する要求は、人物画像の顔の特徴を滑らかにする要求、人物の顔又は身体の画像を細くする要求、いずれかの画像の一部を引き伸ばす要求、又は統合した３Ｄビデオコンテンツの他のいずれかの変更を含むことができる。従って、ビデオ処理オフロードモジュール２１６は、統合した３Ｄビデオコンテンツに、実用及び娯楽目的で画像強調及び画像変更を行うことができる。
【００４４】
ビデオ処理オフロードモジュール２１６は、統合した３Ｄビデオコンテンツの一部を変更する要求を受け取ったことに応答して、第１のビデオカメラ、すなわちカメラ＿１  １１０から受け取った第１のコンテンツの各々において、この統合した３Ｄビデオコンテンツの一部を検出することができ、第２のビデオカメラ、すなわちカメラ＿２  １１２から受け取った第２のコンテンツの各々において、この統合した３Ｄビデオコンテンツの一部を検出することができる。ビデオ処理オフロードモジュール２１６は、それぞれのビデオコンテンツの各々において、統合した３Ｄビデオコンテンツの変更すべき部分を検出したことに応答して、要求されるビデオコンテンツの一部を変更することができる。なお、この統合した３Ｄビデオコンテンツの変更は、所与の実施構成に応じて、２つのビデオコンテンツ要素を統合する前に又は統合した後に行うことができる。
【００４５】
ブロック３０４において、統合した３Ｄビデオコンテンツを形成するための戻されたビデオコンテンツの処理及びいずれかのさらなる処理が完了すると、ビデオ処理オフロードモジュール２１６は、統合した３Ｄビデオコンテンツをカメラインターフェイスモジュール２１４に戻す（ライン１０）。その後、カメラインターフェイスモジュール２１４は、この統合した３Ｄビデオコンテンツを２Ｄメッセンジャアプリケーション２１２に戻す（ライン１１）。このようにして、カメラインターフェイスモジュール２１４及びビデオ処理オフロードモジュール２１６は、２Ｄビデオメッセンジャアプリケーションのための自動３Ｄビデオを提供する。さらに、既存の２Ｄビデオメッセンジャアプリケーション２１２を変更する必要はない。
【００４６】
図４は、コンピュータ装置１０２のアーキテクチャ内における図３のメッセージ及びビデオコンテンツフロー４００の実施構成例のメッセージ及びビデオコンテンツフローのアーキテクチャ図である。図４からわかるように、表現を簡単にするために、図４では、図３のメッセージ及びコンテンツの戻り経路を参照するライン番号を保持している。上述したように、メッセージ及びコンテンツの戻り経路の説明は、図４の説明に関しても組み入れている。なお、図４では、カメラ＿１  １１０及びカメラ＿２  １１２を、カメラインターフェイスモジュール２１４に戻されるビデオコンテンツについて、左右のビデオコンテンツをそれぞれ戻す形で表現している点に留意されたい。さらに、この左右のビデオコンテンツは、ビデオ処理オフロードモジュール２１６に戻される（図３及び図４においてそれぞれライン８及びライン９）。統合した３Ｄビデオについては、カメラインターフェイスモジュール２１４を介して２Ｄビデオメッセンジャアプリケーション２１２に戻されるように示している（図３及び図４においてそれぞれライン１０及びライン１１）。このように、メッセージ及びビデオコンテンツフローのアーキテクチャ図４００は、図３のメッセージフローをコンピュータ装置１０２のアーキテクチャ上に対応付けたものである。
【００４７】
図５は、２Ｄビデオメッセンジャアプリケーションのための自動３Ｄビデオの状態指向処理５００の実施構成例のアーキテクチャ状態図である。図５には、２Ｄビデオメッセンジャアプリケーション２１２、カメラインターフェイスモジュール２１４、及びビデオ処理オフロードモジュール２１６も示している。なお、図５のメッセージング及び状態遷移の連続番号は、必ずしも図３及び図４のライン番号に対応するわけではない。
【００４８】
カメラインターフェイスモジュール２１４は、２Ｄビデオメッセンジャアプリケーション２１２からのビデオコンテンツ要求を受け取ると、５０２においてアクティブ状態に入る。上述したように、カメラインターフェイスモジュール２１４は、この要求をビデオ処理オフロードモジュール２１６に転送する（ライン２）。カメラインターフェイスモジュール２１４は、５０２におけるアクティブ状態から５０４におけるスリープ状態に遷移して３Ｄビデオコンテンツが戻ってくるのを待つ（カメラインターフェイスモジュール２１４内の破線３）。
【００４９】
ビデオ処理オフロードモジュール２１６は、転送された要求を受け取ったことに応答して、５０６におけるスリープ状態から５０８におけるアクティブ状態（例えば、起動）に遷移して、この受け取った要求を処理する（ビデオ処理オフロードモジュール２１６内の破線３）。ビデオ処理オフロードモジュール２１６は、カメラ＿１  １１０及びカメラ＿２  １１２から受け取った左右のビデオコンテンツを（図４に示すように）それぞれ処理し、この２つのビデオコンテンツを３Ｄビデオコンテンツに統合する。
【００５０】
ビデオ処理オフロードモジュール２１６は、この３Ｄビデオコンテンツをカメラインターフェイスモジュール２１４に戻す（ライン４）。ビデオ処理オフロードモジュール２１６は、５０８におけるアクティブ状態から５０６におけるスリープ状態に遷移して新たな要求を待つ（ビデオ処理モジュール２１６内の破線５）。
【００５１】
カメラインターフェイスモジュール２１４は、戻された要求を受け取ったことに応答して、５０４におけるスリープ状態から５０２におけるアクティブ状態に遷移する（例えば、起動する、カメラインターフェイスモジュール２１４内の破線５）。カメラインターフェイスモジュール２１４は、この３Ｄビデオコンテンツを２Ｄビデオメッセンジャアプリケーション２１２に戻す（ライン６）。
【００５２】
このように、カメラインターフェイスモジュール２１４とビデオ処理オフロードモジュール２１６の間におけるビデオコンテンツ要求の処理は、各モジュールがそれぞれの処理を完了するとスリープ状態に入り、戻された３Ｄビデオコンテンツ又はビデオコンテンツ要求の転送を受け取るとアクティブ状態に戻れるようにステートフル（例えば、状態指向）とすることができる。
【００５３】
なお、説明を簡単にするために、他の例における上述したいくつかの追加処理については、図５の説明から省略した。しかしながら、所与の実施構成に応じて、本主題の範囲から逸脱することなく、このような追加処理を行うこともできると理解されたい。
【００５４】
上述したメッセージフロー及びアーキテクチャ図に基づいて、ビデオ処理オフロードモジュール２１６及びカメラインターフェイスモジュール２１４による以下のメッセージフロー及びイベントの追加例を適用することができる。例えば、カメラインターフェイスモジュール２１４が、単一のビデオカメラを開く要求を受け取った場合、ビデオ処理オフロードモジュール２１６は第２のビデオカメラを開く。同様に、カメラインターフェイスモジュール２１４が、単一のビデオカメラを閉じる要求を受け取った場合、ビデオ処理オフロードモジュール２１６は第２のビデオカメラを閉じる。カメラインターフェイスモジュール２１４が、単一のビデオカメラに関連する出力フォーマットを設定する要求を受け取った場合、ビデオ処理オフロードモジュール２１６は、第２のビデオカメラに関連する出力フォーマットを設定する。カメラインターフェイスモジュール２１４が、単一のビデオカメラに関連する動作パラメータを設定する要求を受け取った場合、ビデオ処理オフロードモジュール２１６は、第２のビデオカメラに関連する動作パラメータを設定する。他の多くの要求が考えられ、これらは全て本主題の範囲に含まれると考えられる。
【００５５】
カメラインターフェイスモジュール２１４が、単一のカメラに関していくつかのフレームバッファを割り当てる要求を受け取った場合、ビデオ処理オフロードモジュール２１６は、第２のカメラに関して割り当てるべき同数のフレームバッファを要求する。カメラインターフェイスモジュール２１４が、単一のカメラに関連するフレームバッファのインデックスを得る要求を受け取った場合、ビデオ処理オフロードモジュール２１６は、第２のカメラに関連するフレームバッファのインデックス要求を送ることもできる。カメラインターフェイスモジュール２１４は、要求されたインデックスを戻すことができ、このインデックスを、３Ｄビデオコンテンツを処理するためにビデオ処理オフロードモジュール２１６がアクセスできるメモリ空間にマッピングすることができる。
【００５６】
さらに、単一のビデオカメラに関連する送信キューをデキューする要求を２Ｄビデオメッセンジャアプリケーション２１２から受け取った場合、ビデオ処理オフロードモジュール２１６は、カメラ＿１  １１０及びカメラ＿２  １１２からそれぞれ受け取った第１のビデオコンテンツ及び第２のビデオコンテンツの３Ｄ較正及び３Ｄ矯正が完了しているかどうかを判定することができる。ビデオ処理オフロードモジュール２１６は、第１のビデオコンテンツ及び第２のビデオコンテンツの３Ｄ較正及び３Ｄ矯正が完了していないと判定したことに応答して、カメラ＿１  １１０からの第１のビデオコンテンツを、カメラインターフェイスモジュール２１４を介して２Ｄビデオメッセンジャアプリケーション２１２へ送ることができる。或いは、ビデオ処理オフロードモジュール２１６は、第１のビデオコンテンツ及び第２のビデオコンテンツの３Ｄ較正及び３Ｄ矯正が完了していると判定したことに応答して、統合した３Ｄビデオコンテンツを、カメラインターフェイスモジュール２１４を介して２Ｄビデオメッセンジャアプリケーション２１２へ送ることができる。このように、ビデオ処理オフロードモジュール２１６は、２つのカメラ装置からのビデオコンテンツの較正及び矯正の完了に基づいて、３Ｄビデオコンテンツを２Ｄビデオメッセンジャアプリケーション２１２に戻すかどうかを制御することができる。
【００５７】
なお、２Ｄビデオメッセンジャアプリケーション２１２がカメラインターフェイスモジュール２１４から受け取るビデオコンテンツは、もはや１つのビデオカメラから取り込まれた画像ではない点にさらに留意されたい。むしろ、このビデオコンテンツは、２つの接続されたウェブカメラ（カメラ＿１  １１０とカメラ＿２  １１２など）からの、横並びの３Ｄフォーマット又は縦並びの３Ｄフォーマットの矯正され統合された画像である。
【００５８】
この統合した画像を、受信側装置において、３Ｄ視覚効果が得られるように後処理することができる。３Ｄディスプレイによっては、３Ｄビデオコンテンツを後処理するハードウェアが、コンテンツのスケーリング及び統合を行うことができるものもある。或いは、２Ｄビデオメッセンジャアプリケーションとともに実行する後処理モジュール（図示せず）を実装することもできる。この後処理モジュールは、ディスプレイ装置のフレームバッファへのポインタ又はその他の基準を取得する。従って、ディスプレイ画面内の統合した画像の位置から、統合した画像へのポインタを導出することができる。横並びのフォーマットでは、画像の左半分及び右半分を、画像の全幅まで水平にスケーリングすることができる。縦並びのフォーマットでは、画像の上半分及び下半分を、画像の全高まで垂直にスケーリングすることができる。この結果、この場合も既存の２Ｄビデオメッセンジャアプリケーションを変更せずに、３Ｄコンテンツの左視野及び右視野を取得することができる。その後、奇数ラインと偶数ラインの交互配置を行うことにより、或いは３Ｄビデオコンテンツをフレームシーケンシャル方式でレンダリングするためのアルファ平面を設定することにより、この左視野及び右視野を統合することができる。
【００５９】
図６は、２Ｄビデオメッセンジャアプリケーションのための自動３Ｄビデオのシステムスタック６００の実施構成例のアーキテクチャ状態図である。動作プラットフォーム６０２は、Ｉｎｔｅｌ（登録商標）メディアプロセッサＣＥ３１００又はその他のメディアプロセッサなどのメディアプロセッサにより実現することができる。Ｌｉｎｕｘカーネル６０４が、動作プラットフォーム６０２上にオペレーティングシステムプラットフォームを提供する。カメラインターフェイスモジュール２１４は、システムスタック６００のカーネル層内のＬｉｎｕｘカーネル６０４に関連するように示している。Ｉｎｔｅｌ（登録商標）ＳＤＫ、ＧＤＬなどのソフトウェア開発キット及びグラフィックデバイスライブラリ６０６が、開発プラットフォーム及びグラフィックライブラリモジュールを提供する。Ｘ１１などのＸ  Ｗｉｎｄｏｗシステム６０８が、ソフトウェア開発キット及びグラフィックデバイスライブラリ６０６上にグラフィカルユーザインターフェイスを提供する。クロスプラットフォームアプリケーション、及びＱＴなどのユーザインターフェイス（ＵＩ）フレームワーク６１０が、２Ｄビデオメッセンジャアプリケーション２１２のためのユーザインターフェイスクラスライブラリを提供する。Ｄバスなどのメッセージバスシステム６１２が、コンピュータ装置１０２及びコンピュータ装置１０６などのクライアント装置において分散されたアプリケーション間のメッセージングインターフェイスを提供する。後処理モジュール６１４が、このようなコンピュータ装置において２Ｄビデオメッセンジャプリケーション２１２が受け取った３Ｄビデオコンテンツのための上述した後処理を行う。ビデオ処理オフロードモジュール２１６及びカメラインターフェイスモジュール２１４は、２Ｄビデオメッセンジャプリケーション２１２が配信するための３Ｄビデオコンテンツをこのようなコンピュータ装置に提供する。従って、システムスタック６００は、２Ｄビデオメッセンジャプリケーションのための自動３Ｄビデオを提供し、このシステムスタック６００をコンピュータ装置１０２及びコンピュータ装置１０６の各々に実装して、カメラインターフェイスモジュール２１４及びビデオ処理オフロードモジュール２１６によってそれぞれ３Ｄビデオコンテンツの作成を行うことができる。２Ｄビデオメッセンジャプリケーション２１２が３Ｄビデオコンテンツを受け取ると、後処理モジュール６１４は、このビデオコンテンツが３Ｄビデオコンテンツであると判断し、この３Ｄビデオコンテンツを後処理して、これを上述したようにレンダリングすることができる。
【００６０】
以下の図７〜図１０には、コンピュータ装置１０２などのこのような装置によって実行できる、本主題に関連する２Ｄビデオメッセンジャプリケーションのための自動３Ｄビデオを提供するための処理例を示す。処理例には他にも多くの変形が考えられ、これらは全て本主題の範囲に含まれると考えられる。これらの処理例は、カメラインターフェイスモジュール２１４、ビデオオフロード処理モジュール２１６などのモジュールにより、及び／又はこのような装置に関連するプロセッサ２００により実行することができる。なお、図を簡単にするために、以下で説明する処理例にはタイムアウト手順及びその他の誤り制御手順は示していない。しかしながら、このような手順は全て本発明の範囲に含まれると考えられる。
【００６１】
図７は、カメラインターフェイスモジュール２１４などのカメラインターフェイスモジュールにおいて２Ｄビデオメッセンジャプリケーションのための自動３Ｄビデオを提供する処理７００の実施構成例のフロー図である。処理７００及び以下で説明するその他の処理を、コンピュータ装置１０２及び／又はコンピュータ装置１０６などのいずれかのクライアント装置が実行して、本主題の２Ｄビデオメッセンジャプリケーションのための自動３Ｄビデオを提供することができる。処理７００は、７０２から開始する。処理７００は、ブロック７０４において、単一のビデオカメラからのビデオコンテンツに対する要求を、カメラインターフェイスモジュールにおいて２Ｄビデオメッセンジャプリケーションから受け取る。処理７００は、ブロック７０６において、この単一のビデオカメラからのビデオコンテンツに対する要求をビデオ処理オフロードモジュールに転送する。処理７００は、ブロック７０８において、第１のビデオカメラ及び第２のビデオカメラを制御する。処理７００は、ブロック７１０において、ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取る。処理７００は、ブロック７１２において、ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取ったことに応答して、この統合した３Ｄビデオコンテンツを２Ｄビデオメッセンジャアプリケーションへ送る。
【００６２】
図８は、ビデオオフロード処理モジュール２１６などのビデオ処理オフロードモジュールにおいて２Ｄビデオメッセンジャプリケーションのための自動３Ｄビデオを提供する処理８００の実施構成例のフロー図である。処理８００及び以下で説明するその他の処理を、コンピュータ装置１０２及び／又はコンピュータ装置１０６などの任意のクライアント装置が実行して、本主題の２Ｄビデオメッセンジャプリケーションのための自動３Ｄビデオを提供することができる。処理８００は、８０２から開始する。処理８００は、ブロック８０４において、単一のビデオカメラからのビデオコンテンツに対する要求を、ビデオ処理オフロードモジュールにおいて、カメラインターフェイスモジュールを介して２Ｄビデオメッセンジャプリケーションから受け取る。処理８００は、ブロック８０６において、第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取る。処理８００は、ブロック８０８において、この第１のビデオコンテンツと第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合する。処理８００は、ブロック８１０において、単一のビデオカメラからのビデオコンテンツに対する要求に応答して、この統合した３Ｄビデオコンテンツを、カメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションへ送る。
【００６３】
図９は、カメラインターフェイスモジュール２１４などのカメラインターフェイスモジュールにおいて２Ｄビデオメッセンジャプリケーションのための自動３Ｄビデオを提供する処理９００の実施構成例のフロー図である。処理９００は、９０２から開始する。処理９００は、判定ポイント９０４において、単一のビデオカメラに関連するコンテンツ要求を受け取ったかどうかを判定する。上述したように、単一のビデオカメラに関連するコンテンツ要求は、２Ｄビデオメッセンジャプリケーション２１２などの２Ｄビデオメッセンジャプリケーションから受け取ることができる。処理９００は、コンテンツ要求を受け取ったことに応答して、ブロック９０６において、カメラ＿１  １１０などの第１のビデオカメラのための制御信号を生成する。処理９００は、ブロック９０８において、この要求をビデオ処理オフロードモジュール２１６などのビデオ処理オフロードモジュールへ転送する。処理９００は、判定ポイント９１０において、ビデオ処理オフロードモジュール２１６から要求を受け取るのを待つ。上述したように、ビデオ処理オフロードモジュール２１６は、この要求をカメラインターフェイスモジュール２１４に戻して第２のビデオカメラに対して同じ動作を行うことができる。
【００６４】
処理９００は、ビデオ処理オフロードモジュール２１６から要求を受け取ったことに応答して、ブロック９１２において、カメラ＿２  １１２などの第２のカメラのための制御信号を生成する。処理９００は、判定ポイント９１４において、両方のカメラからビデオコンテンツを受け取ったかどうかを判定する。処理９００は、いずれかのカメラからビデオコンテンツを受け取ったことに応答して、ブロック９１６において、このカメラからのコンテンツをビデオ処理オフロードモジュール２１６に送り始める。２つのカメラのうちの第２のカメラからのビデオコンテンツを受け取ると、ブロック９１６において、このコンテンツもビデオ処理オフロードモジュール２１６へ送られる。
【００６５】
処理９００は、判定ポイント９１８において、ビデオ処理オフロードモジュール２１６から処理済みのビデオコンテンツを受け取ったかどうかを判定する。上述したように、較正が完了する前には、単一のカメラからのコンテンツを戻すことができる。較正後に、この処理済みのビデオコンテンツを、ビデオ処理オフロードモジュール２１６により生成された統合した３Ｄコンテンツとすることができる。このコンテンツは、顔の特徴を滑らかにし、又はビデオ画像を細く及び／又は引き伸ばすように変更したコンテンツなどの変更したコンテンツとすることができる。第１及び第２のカメラから受け取ったビデオコンテンツの変更は他にも多く考えられ、これらは全て本主題の範囲に含まれると考えられる。
【００６６】
判定ポイント９１８においてビデオ処理オフロードモジュール２１６から処理済みのビデオコンテンツを受け取ったことに応答して、処理９００は、ブロック９２０において、この処理済みのビデオコンテンツを２Ｄビデオメッセンジャプリケーション２１２などの２Ｄビデオメッセンジャプリケーションへ送り始める。処理９００は、判定ポイント９２２において、処理済みのコンテンツを２Ｄビデオメッセンジャプリケーション２１２へ送るのを停止すべきかどうかを判定する。上述したように、処理９００は、カメラを閉じる要求又はその他のイベントに応答して、処理済みのコンテンツの送信を停止するように決定することができる。処理９００は、処理済みのコンテンツの送信を停止するように決定したことに応答して、判定ポイント９０４に戻って新たなコンテンツ要求を受け取るのを待つ。
【００６７】
従って、処理９００は、カメラドライバモジュールなどのカメラインターフェイスモジュールのための処理を行い、レガシーな２Ｄビデオメッセンジャプリケーションから単一のビデオカメラに関連する要求を受け取ったことに応答して、２つのビデオカメラとインターフェイス接続するためのドライバレベルの機能を提供する。処理９００は、計算集約的な３Ｄ及びその他の画像処理を行うビデオ処理オフロードモジュールとも通信する。
【００６８】
図１０は、ビデオオフロード処理モジュール２１６などのビデオ処理オフロードモジュールにおいて２Ｄビデオメッセンジャプリケーションのための自動３Ｄビデオを提供する処理１０００の実施構成例のフロー図である。処理１０００は、１００２から開始する。処理１０００は、判定ポイント１００４において、カメラインターフェイスモジュール２１４などのカメラインターフェイスモジュールからのコンテンツ要求を待つ。上述したように、このコンテンツ要求は、単一のビデオカメラに関連することができ、ビデオ処理オフロードモジュール２１６がカメラインターフェイスモジュール２１４から受け取ることができる。コンテンツ要求を受け取ったと判定したことに応答して、処理１０００は、ブロック１００６において、この要求をカメラインターフェイスモジュール２１４などのカメラインターフェイスモジュールへ送る。上述したように、カメラインターフェイスモジュール２１４は、両方のビデオカメラ（カメラ＿１  １１０及びカメラ＿２  １１２など）を制御することができる。処理１０００は、判定ポイント１００８において、２つのビデオコンテンツストリームを受信中であるかどうかを判定する。
【００６９】
２つのビデオコンテンツストリームを受け取ったと判定したことに応答して、処理１０００は、ブロック１０１０において、この２つのビデオコンテンツストリームの較正及び矯正動作を開始する。処理１０００は、ビデオコンテンツの較正及び矯正を行うために、例えば、カメラの正面に保持された画像の端部及び角部を検出することができる。処理１０００は、第１のビデオカメラと第２のビデオカメラの間の位置関係を推定することができる。処理１０００は、画像に適用すべきワーピング行列を取得して、このワーピング行列を２つのビデオカメラから受け取った左右の画像に適用することにより、第１のビデオカメラと第２のビデオカメラの間の推定された位置関係に基づいて第１のビデオコンテンツ及び第２のビデオコンテンツの少なくとも一方を調整することができる。
【００７０】
処理１０００は、判定ポイント１０１２において、較正及び矯正動作が完了したかどうかを判定する。処理１０００は、較正及び矯正が完了していないと判定したことに応答して、ブロック１０１４において、一方のカメラからのビデオコンテンツをカメラインターフェイスモジュール２１４へ送る。処理１０００は、判定ポイント１０１２において較正及び矯正動作が完了したと判定したことに応答して、ブロック１０１６において、２つのカメラから受け取ったビデオコンテンツを３Ｄビデオコンテンツに統合する。
【００７１】
処理１０００は、ブロック１０１８において、この統合した３Ｄビデオコンテンツをカメラインターフェイスモジュール２１４へ送る。処理１０００は、判定ポイント１０２０において、統合した３Ｄビデオコンテンツの送信を停止すべきかどうかを判定する。上述したように、処理１０００は、カメラを閉じる要求又はその他のイベントに応答して、処理済みのコンテンツの送信を停止する決定を行うことができる。さらなるコンテンツを３Ｄビデオコンテンツに統合することができ、かつ、統合した３Ｄビデオコンテンツの送信を停止する要求を受け取っていないと判定したことに応答して、処理１０００は、判定ポイント１０２２において、ビデオコンテンツの少なくとも一部を変更すべきかどうかを判定する。上述したように、統合した３Ｄビデオコンテンツの一部を変更する要求は、ネットワークを介して別の装置から受け取ることができ、或いはコンピュータ装置１０２に関連するユーザインターフェイスを介して受け取ることができる。判定ポイント１０２２において、統合した３Ｄビデオコンテンツの少なくとも一部を変更する要求を受け取ったと判定したことに応答して、処理１０００は、ブロック１０２４において、第１のビデオカメラから受け取った第１のビデオコンテンツ及び第２のビデオカメラから受け取った第２のビデオコンテンツの各々における統合した３Ｄビデオコンテンツの変更すべき部分を検出する。
【００７２】
処理１０００は、ブロック１０２６において、要求通りに第１のビデオコンテンツ及び第２のビデオコンテンツの一部を変更する。やはり上述したように、統合した３Ｄビデオコンテンツの一部を変更する要求は、例えば、統合した３Ｄビデオコンテンツ内に表される人物画像の顔の特徴を滑らかにする要求を含むことができる。従って、ブロック１０２６における個々のカメラからのビデオコンテンツの一部の変更は、第１及び第２のビデオコンテンツの各々に表される人物画像の顔の特徴を滑らかにすることを含むことができる。統合した３Ｄビデオコンテンツの一部を変更する要求は、統合した３Ｄビデオコンテンツ内に表される人物の身体図を細くする要求を含むこともできる。従って、統合した３Ｄビデオコンテンツの一部の変更は、第１及び第２のビデオコンテンツの各々に表される人物の身体図を細くすることを含むことができる。ビデオコンテンツの一部を変更する要求は、統合した３Ｄビデオコンテンツ内に表される画像の一部を引き伸ばす要求をさらに含むことができる。従って、統合した３Ｄビデオコンテンツの一部の変更は、第１及び第２のビデオコンテンツの各々に表される画像の一部を引き伸ばすことを含むことができる。３Ｄビデオコンテンツの統合に関連するビデオコンテンツの変更の可能性は他にも多く存在し、これらは全て本主題の範囲に含まれると考えられる。
【００７３】
処理１０００は、ブロック１０２８において、変更したビデオコンテンツを統合する。ブロック１０２８における変更したビデオコンテンツの統合が完了したことに応答して、又は判定ポイント１０２２におけるビデオコンテンツを変更しないという判定に応答して、処理１０００は、ブロック１０１８に戻って上述したとおりに繰り返す。判定ポイント１０２０の説明に戻ると、処理１０００は、統合したコンテンツの送信を停止する決定を行ったことに応答して、判定ポイント１００４に戻って新たなコンテンツ要求を待つ。
【００７４】
このように、処理１０００は、ビデオ処理オフロードモジュールにおいて、２Ｄビデオメッセンジャプリケーションのための自動３Ｄビデオを提供する。較正及び矯正動作が行われる。２つのビデオコンテンツストリームを統合して３Ｄビデオコンテンツを形成し、この統合した３Ｄビデオコンテンツ内の画像の変更を行うことができる。この３Ｄビデオコンテンツをカメラインターフェイスモジュールに戻し、レガシーな２Ｄビデオメッセンジャプリケーションに転送する。
【００７５】
なお、図を簡単にするために、また上述したスリープ状態及びアクティブ状態の遷移を伴わない処理を示すために、処理９００及び処理１０００に関連するさらなるスリープ状態及びアクティブ状態の遷移は示していない。しかしながら、これらの処理は、本主題の範囲から逸脱することなく、上記図５に関連して説明したようなそれぞれのスリープ及びアクティブ状態の遷移を含むように修正できると理解されたい。従って、ビデオオフロード処理モジュール２１６は、（処理１０００の判定ポイント１００４などにおいて）カメラインターフェイスモジュール２１４からの要求を待っている間、スリープ状態に入ることができ、要求を受け取ったときに起動し、アクティブ状態に遷移して、説明した処理を行うことができる。同様に、カメラインターフェイスモジュール２１４は、（処理９００の判定ポイント９１８などにおいて）統合した３Ｄビデオコンテンツを待っている間、スリープ状態に入ることができ、統合した３Ｄビデオコンテンツを受け取ったときに起動し、アクティブ状態に遷移して、説明したさらなる処理を行うことができる。説明した処理の変形例は他にも多く考えられ、これらは全て本主題の範囲に含まれると考えられる。
【００７６】
従って、いくつかの実施構成によれば、レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法が、単一のビデオカメラからのビデオコンテンツに対する要求を、カメラインターフェイスモジュールにおいて２Ｄビデオメッセンジャアプリケーションから受け取るステップと、この単一のビデオカメラからのビデオコンテンツに対する要求をビデオ処理オフロードモジュールに転送するステップと、第１のビデオカメラ及び第２のビデオカメラを制御するステップと、ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取るステップと、ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取ったことに応答して、この統合した３Ｄビデオコンテンツを２Ｄビデオメッセンジャアプリケーションへ送るステップとを含む。
【００７７】
いくつかの実施構成では、レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法が、単一のビデオカメラからのビデオコンテンツに対する要求をビデオ処理オフロードモジュールに転送したことに応答して、この要求をビデオ処理オフロードモジュールから受け取るステップをさらに含み、第１のビデオカメラ及び第２のビデオカメラを制御するステップが、単一のビデオカメラからのビデオコンテンツに対する要求を２Ｄビデオメッセンジャアプリケーションから受け取ったことに応答して第１のビデオカメラを制御するステップと、単一のビデオカメラからのビデオコンテンツに対する要求をビデオ処理オフロードモジュールから受け取ったことに応答して第２のビデオカメラを制御するステップとを含む。いくつかの実施構成では、第１のビデオカメラ及び第２のビデオカメラを制御する方法が、第１のビデオカメラからのビデオ出力を制御するための制御信号を生成するステップと、第２のビデオカメラからのビデオ出力を制御するための制御信号を生成するステップとを含む。いくつかの実施構成では、この方法が、第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取るステップと、第１のビデオコンテンツ及び第２のビデオコンテンツをビデオ処理オフロードモジュールへ送るステップとをさらに含み、ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取るステップが、第１のビデオコンテンツ及び第２のビデオコンテンツをビデオ処理オフロードモジュールへ送ったことに応答して、ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取るステップを含む。いくつかの実施構成では、この方法が、第１のビデオカメラの送信キューに関連するデキュー要求を２Ｄビデオメッセンジャアプリケーションから受け取るステップをさらに含み、ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取ったことに応答して、この統合した３Ｄビデオコンテンツを２Ｄビデオメッセンジャアプリケーションへ送るステップが、ビデオ処理オフロードモジュールから受け取った統合した３Ｄビデオコンテンツを、第１のビデオカメラの送信キューにコピーするステップを含む。いくつかの実施構成では、この方法が、単一のビデオカメラを開く要求を、カメラインターフェイスモジュールにおいて２Ｄビデオメッセンジャアプリケーションから受け取るステップと、第１のビデオカメラを開くための制御信号を生成するステップと、単一のビデオカメラを開く要求をビデオ処理オフロードモジュールに転送するステップと、単一のビデオカメラを開く要求をビデオ処理オフロードモジュールから受け取るステップと、単一のビデオカメラを開く要求をビデオ処理オフロードモジュールから受け取ったことに応答して、第２のビデオカメラを開くための制御信号を生成するステップとをさらに含む。いくつかの実施構成では、この方法が、単一のビデオカメラを閉じる要求を、カメラインターフェイスモジュールにおいて２Ｄビデオメッセンジャアプリケーションから受け取るステップと、第１のビデオカメラを閉じるための制御信号を生成するステップと、単一のビデオカメラを閉じる要求をビデオ処理オフロードモジュールに転送するステップと、単一のビデオカメラを閉じる要求をビデオ処理オフロードモジュールから受け取るステップと、単一のビデオカメラを閉じる要求をビデオ処理オフロードモジュールから受け取ったことに応答して、第２のビデオカメラを閉じるための制御信号を生成するステップとをさらに含む。いくつかの実施構成では、この方法が、単一のビデオカメラに関連する出力フォーマットを設定する要求を、カメラインターフェイスモジュールにおいて２Ｄビデオメッセンジャアプリケーションから受け取るステップと、単一のビデオカメラに関連する出力フォーマットを第１のビデオカメラに設定するための制御信号を生成するステップと、単一のビデオカメラに関連する出力フォーマットを設定する要求をビデオ処理オフロードモジュールに転送するステップと、単一のビデオカメラに関連する出力フォーマットを設定する要求をビデオ処理オフロードモジュールから受け取るステップと、単一のビデオカメラに関連する出力フォーマットを設定する要求をビデオ処理オフロードモジュールから受け取ったことに応答して、第２のビデオカメラに関連する出力フォーマットを第２のビデオカメラに設定するための制御信号を生成するステップとをさらに含む。いくつかの実施構成では、この方法が、単一のビデオカメラに関連する動作パラメータを設定する要求を、カメラインターフェイスモジュールにおいて２Ｄビデオメッセンジャアプリケーションから受け取るステップと、第１のビデオカメラに関連する動作パラメータを設定するための制御信号を生成するステップと、単一のビデオカメラに関連する動作パラメータを設定する要求をビデオ処理オフロードモジュールに転送するステップと、単一のビデオカメラに関連する動作パラメータを設定する要求をビデオ処理オフロードモジュールから受け取るステップと、単一のビデオカメラに関連する動作パラメータを設定する要求をビデオ処理オフロードモジュールから受け取ったことに応答して、第２のビデオカメラに関連する動作パラメータを設定するための制御信号を生成するステップとをさらに含む。いくつかの実施構成では、この方法が、カメラインターフェイスモジュールにおいて、単一のビデオカメラからのビデオコンテンツに対する要求をビデオ処理オフロードモジュールに転送したことに応答してスリープ状態に入るステップと、カメラインターフェイスモジュールにおいて、統合した３Ｄビデオコンテンツをビデオ処理オフロードモジュールから受け取ったことに応答してアクティブ状態に入るステップとをさらに含む。いくつかの実施構成では、統合した３Ｄビデオコンテンツが、フレームシーケンシャル方式の３Ｄビデオコンテンツ及び偏光方式の３Ｄビデオコンテンツの一方を含む。
【００７８】
別の実施構成では、コンピュータ可読記憶媒体が、１又はそれ以上のプログラムされたプロセッサ上で実行されたときに、レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する処理を実行する命令を記憶することができ、このプロセッサは、単一のビデオカメラからのビデオコンテンツに対する要求を、カメラインターフェイスモジュールにおいて２Ｄビデオメッセンジャアプリケーションから受け取り、この単一のビデオカメラからのビデオコンテンツに対する要求をビデオ処理オフロードモジュールに転送し、第１のビデオカメラ及び第２のビデオカメラを制御し、ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取り、ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取ったことに応答して、この統合した３Ｄビデオコンテンツを２Ｄビデオメッセンジャアプリケーションへ送るようにプログラムされる。
【００７９】
別の実施構成では、レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法が、単一のビデオカメラからのビデオコンテンツに対する要求を、ビデオ処理オフロードモジュールにおいてカメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションから受け取るステップと、第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取るステップと、この第１のビデオコンテンツ及び第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合するステップと、単一のビデオカメラからのビデオコンテンツに対する要求に応答して、この統合した３Ｄビデオコンテンツを、カメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションへ送るステップとを含む。
【００８０】
いくつかの実施構成では、レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する方法が、単一のビデオカメラからのビデオコンテンツに対する要求を、カメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションから受け取ったことに応答して、この単一のビデオカメラからのビデオコンテンツに対する要求をカメラインターフェイスモジュールへ送るステップをさらに含み、このカメラインターフェイスモジュールが、単一のビデオカメラからのビデオコンテンツに対する要求をビデオ処理モジュールから受け取ったことに応答して少なくとも１つのカメラを制御する。いくつかの実施構成では、この方法が、第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取ったことに応答して、この第１のビデオコンテンツ及び第２のビデオコンテンツの３Ｄ較正及び３Ｄ矯正を行うステップをさらに含む。いくつかの実施構成では、この方法が、２Ｄビデオメッセンジャアプリケーションにより発信された第１のビデオカメラの送信キューに関連するデキュー要求を、ビデオ処理オフロードモジュールにおいてカメラインターフェイスモジュールを介して受け取るステップと、第１のビデオコンテンツ及び第２のビデオコンテンツの３Ｄ較正及び３Ｄ矯正が完了したかどうかを判定するステップと、第１のビデオコンテンツ及び第２のビデオコンテンツの３Ｄ較正及び３Ｄ矯正が完了していないと判定したことに応答して、第１のビデオカメラからの第１のビデオコンテンツを、カメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションへ送るステップと、第１のビデオコンテンツ及び第２のビデオコンテンツの３Ｄ較正及び３Ｄ矯正が完了したと判定したことに応答して、統合した３Ｄビデオコンテンツを、カメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションへ送るステップとをさらに含む。いくつかの実施構成では、この方法が、単一のビデオカメラを開く要求を、ビデオ処理オフロードモジュールにおいてカメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションから受け取るステップと、第２のビデオカメラを開く要求をカメラインターフェイスモジュールへ送るステップとをさらに含む。いくつかの実施構成では、この方法が、単一のビデオカメラを閉じる要求を、ビデオ処理オフロードモジュールにおいてカメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションから受け取るステップと、第２のビデオカメラを閉じる要求をカメラインターフェイスモジュールへ送るステップとをさらに含む。いくつかの実施構成では、この方法が、単一のビデオカメラに関連する出力フォーマットを設定する要求を、ビデオ処理オフロードモジュールにおいてカメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションから受け取るステップと、第２のビデオカメラに関連する出力フォーマットを設定する要求をカメラインターフェイスモジュールへ送るステップとをさらに含む。いくつかの実施構成では、この方法が、単一のビデオカメラに関連する動作パラメータを設定する要求を、ビデオ処理オフロードモジュールにおいてカメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションから受け取るステップと、第２のビデオカメラに関連する動作パラメータを設定する要求をカメラインターフェイスモジュールへ送るステップとをさらに含む。いくつかの実施構成では、この方法が、いくつかのフレームバッファを単一のビデオカメラに割り当てる要求を、ビデオ処理オフロードモジュールにおいてカメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションから受け取るステップと、同じ数のフレームバッファを第２のビデオカメラに割り当てる要求をカメラインターフェイスモジュールへ送るステップとをさらに含む。いくつかの実施構成では、この方法が、第１のビデオカメラ及び第２のビデオカメラの各々に関連するフレームバッファのインデックスに対する要求をカメラインターフェイスモジュールへ送るステップと、第１のビデオカメラに関連するフレームバッファのインデックス、及び第２のビデオカメラに関連するフレームバッファのインデックスをカメラインターフェイスモジュールから受け取るステップと、この第１のビデオカメラに関連するフレームバッファのインデックス、及び第２のビデオカメラに関連するフレームバッファのインデックスを、ビデオ処理オフロードモジュールに関連するメモリにマッピングするステップとをさらに含む。いくつかの実施構成では、この方法が、ビデオ処理オフロードモジュールにおいて、単一のビデオカメラからのビデオコンテンツに対する要求を２Ｄビデオメッセンジャアプリケーションから受け取ったことに応答してアクティブ状態に入るステップと、ビデオ処理オフロードモジュールにおいて、統合した３Ｄビデオコンテンツをカメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションへ送り始めたことに応答してスリープ状態に入るステップとをさらに含む。いくつかの実施構成では、この方法が、第１のビデオカメラから受け取った第１のビデオコンテンツ及び第２のビデオカメラから受け取った第２のビデオコンテンツの３Ｄ較正を行う要求を受け取るステップと、この第１のビデオカメラから受け取った第１のビデオコンテンツ及び第２のビデオカメラから受け取った第２のビデオコンテンツの３Ｄ較正を行うステップとをさらに含む。いくつかの実施構成では、第１のビデオカメラから受け取った第１のビデオコンテンツ及び第２のビデオカメラから受け取った第２のビデオコンテンツの３Ｄ較正を行う方法が、第１のビデオカメラと第２のビデオカメラの位置関係を推定するステップと、第１のビデオカメラ及び第２のビデオカメラを矯正するステップとを含む。いくつかの実施構成では、第１のビデオカメラ及び第２のビデオカメラを矯正する方法が、ワーピング行列を取得するステップと、このワーピング行列を第１のビデオカメラ及び第２のビデオカメラに適用するステップとを含む。いくつかの実施構成では、第１のビデオカメラから受け取った第１のビデオコンテンツ及び第２のビデオカメラから受け取った第２のビデオコンテンツの３Ｄ較正を行う方法が、画像の端部及び角部の少なくとも１つを検出するステップと、第１のビデオカメラと第２のビデオカメラの位置関係を推定するステップと、この推定した第１のビデオカメラと第２のビデオカメラの位置関係に基づいて、第１のビデオコンテンツ及び第２のビデオコンテンツの少なくとも一方を調整するステップとを含む。いくつかの実施構成では、第１のビデオコンテンツと第２のビデオコンテンツを３Ｄビデオコンテンツに統合する方法が、３Ｄビデオコンテンツを、横並びの３Ｄビデオコンテンツ、縦並びの３Ｄビデオコンテンツ、フレームシーケンシャル方式の３Ｄビデオコンテンツのうちの１つとして形成するステップを含む。いくつかの実施構成では、この方法が、統合した３Ｄビデオコンテンツの一部を変更する要求を受け取るステップと、第１のビデオカメラから受け取った第１のビデオコンテンツ及び第２のビデオカメラから受け取った第２のビデオコンテンツの各々において、統合した３Ｄビデオコンテンツの一部を検出するステップと、第１のビデオカメラから受け取った第１のビデオコンテンツの一部、及び第２のビデオカメラから受け取った第２のビデオコンテンツの一部を変更するステップとをさらに含む。いくつかの実施構成では、統合した３Ｄビデオコンテンツの一部を変更する要求が、統合した３Ｄビデオコンテンツ内に表される人物画像の顔の特徴を滑らかにする要求を含み、第１のビデオカメラから受け取った第１のビデオコンテンツの一部及び第２のビデオカメラから受け取った第２のビデオコンテンツの一部を変更する方法が、第１のビデオカメラから受け取った第１のビデオコンテンツ内に表される人物画像の顔の特徴を滑らかにするステップと、第２のビデオカメラから受け取った第２のビデオコンテンツ内に表される人物画像の顔の特徴を滑らかにするステップとを含む。いくつかの実施構成では、統合した３Ｄビデオコンテンツの一部を変更する要求が、統合した３Ｄビデオコンテンツ内に表される人物の身体図を細くする要求を含み、第１のビデオカメラから受け取った第１のビデオコンテンツの一部及び第２のビデオカメラから受け取った第２のビデオコンテンツの一部を変更する方法が、第１のビデオカメラから受け取った第１のビデオコンテンツ内に表される人物の身体図を細くするステップと、第２のビデオカメラから受け取った第２のビデオコンテンツ内に表される人物の身体図を細くするステップとを含む。いくつかの実施構成では、統合した３Ｄビデオコンテンツの一部を変更する要求が、統合した３Ｄビデオコンテンツ内に表される画像の一部を引き伸ばす要求を含み、第１のビデオカメラから受け取った第１のビデオコンテンツの一部及び第２のビデオカメラから受け取った第２のビデオコンテンツの一部を変更する方法が、第１のビデオカメラから受け取った第１のビデオコンテンツ内に表される画像の一部を引き伸ばすステップと、第２のビデオカメラから受け取った第２のビデオコンテンツ内に表される画像の一部を引き伸ばすステップとを含む。
【００８１】
別の実施構成では、コンピュータ可読記憶媒体が、１又はそれ以上のプログラムされたプロセッサ上で実行されたときに、レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供する処理を実行する命令を記憶することができ、このプロセッサは、単一のビデオカメラからのビデオコンテンツに対する要求を、ビデオ処理オフロードモジュールにおいてカメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションから受け取り、第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取り、この第１のビデオコンテンツ及び第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合し、単一のビデオカメラからのビデオコンテンツに対する要求に応答して、この統合した３Ｄビデオコンテンツを、カメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションへ送るようにプログラムされる。
【００８２】
別の実施構成によれば、レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供するための装置が、第１のビデオカメラと、第２のビデオカメラと、プロセッサとを備え、このプロセッサが、単一のビデオカメラからのビデオコンテンツに対する要求を２Ｄビデオメッセンジャアプリケーションから受け取り、この単一のビデオカメラからのビデオコンテンツに対する要求をビデオ処理オフロードモジュールに転送し、第１のビデオカメラ及び第２のビデオカメラを制御し、ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取り、ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取ったことに応答して、この統合した３Ｄビデオコンテンツを２Ｄビデオメッセンジャアプリケーションへ送るようにプログラムされる。
【００８３】
いくつかの実施構成では、レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供するための装置がプロセッサを有し、このプロセッサが、単一のビデオカメラからのビデオコンテンツに対する要求をビデオ処理オフロードモジュールに転送したことに応答して、この要求をビデオ処理オフロードモジュールから受け取るようにさらにプログラムされ、第１のビデオカメラ及び第２のビデオカメラを制御するようにプログラムされる際に、単一のビデオカメラからのビデオコンテンツに対する要求を２Ｄビデオメッセンジャアプリケーションから受け取ったことに応答して第１のビデオカメラを制御し、単一のビデオカメラからのビデオコンテンツに対する要求をビデオ処理オフロードモジュールから受け取ったことに応答して第２のビデオカメラを制御するようにプログラムされる。いくつかの実施構成では、プロセッサが、第１のビデオカメラ及び第２のビデオカメラを制御するようにプログラムされる際に、第１のビデオカメラからのビデオ出力を制御するための制御信号を生成し、第２のビデオからのビデオ出力を制御するための制御信号を生成するようにプログラムされる。いくつかの実施構成では、プロセッサが、第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取り、この第１のビデオコンテンツ及び第２のビデオコンテンツをビデオ処理オフロードモジュールへ送るようにさらにプログラムされ、ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取るようにプログラムされる際に、第１のビデオコンテンツ及び第２のビデオコンテンツをビデオ処理オフロードモジュールへ送ったことに応答して、このビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取るようにプログラムされる。いくつかの実施構成では、プロセッサが、第１のビデオカメラの送信キューに関連するデキュー要求を２Ｄビデオメッセンジャアプリケーションから受け取るようにさらにプログラムされ、ビデオ処理オフロードモジュールから統合した３Ｄビデオコンテンツを受け取ったことに応答して、この統合した３Ｄビデオコンテンツを２Ｄビデオメッセンジャアプリケーションへ送るようにプログラムされる際に、ビデオ処理オフロードモジュールから受け取った統合した３Ｄビデオコンテンツを、第１のビデオカメラの送信キューにコピーするようにプログラムされる。いくつかの実施構成では、プロセッサが、プロセッサが、単一のビデオカメラを開く要求を２Ｄビデオメッセンジャアプリケーションから受け取り、第１のビデオカメラを開くための制御信号を生成し、単一のビデオカメラを開く要求をビデオ処理オフロードモジュールに転送し、単一のビデオカメラを開く要求をビデオ処理オフロードモジュールから受け取り、この単一のビデオカメラを開く要求をビデオ処理オフロードモジュールから受け取ったことに応答して、第２のビデオカメラを開くための制御信号を生成するようにさらにプログラムされる。いくつかの実施構成では、プロセッサが、単一のビデオカメラを閉じる要求を２Ｄビデオメッセンジャアプリケーションから受け取り、第１のビデオカメラを閉じるための制御信号を生成し、単一のビデオカメラを閉じる要求をビデオ処理オフロードモジュールに転送し、単一のビデオカメラを閉じる要求をビデオ処理オフロードモジュールから受け取り、この単一のビデオカメラを閉じる要求をビデオ処理オフロードモジュールから受け取ったことに応答して、第２のビデオカメラを閉じるための制御信号を生成するようにさらにプログラムされる。いくつかの実施構成では、プロセッサが、単一のビデオカメラに関連する出力フォーマットを設定する要求を２Ｄビデオメッセンジャアプリケーションから受け取り、単一のビデオカメラに関連する出力フォーマットを第１のビデオカメラに設定するための制御信号を生成し、単一のビデオカメラに関連する出力フォーマットを設定する要求をビデオ処理オフロードモジュールに転送し、単一のビデオカメラに関連する出力フォーマットを設定する要求をビデオ処理オフロードモジュールから受け取り、この単一のビデオカメラに関連する出力フォーマットを設定する要求をビデオ処理オフロードモジュールから受け取ったことに応答して、第２のビデオカメラに関連する出力フォーマットを第２のビデオカメラに設定するための制御信号を生成するようにさらにプログラムされる。いくつかの実施構成では、プロセッサが、単一のビデオカメラに関連する動作パラメータを設定する要求を２Ｄビデオメッセンジャアプリケーションから受け取り、第１のビデオカメラに関連する動作パラメータを設定するための制御信号を生成し、単一のビデオカメラに関連する動作パラメータを設定する要求をビデオ処理オフロードモジュールに転送し、単一のビデオカメラに関連する動作パラメータを設定する要求をビデオ処理オフロードモジュールから受け取り、この単一のビデオカメラに関連する動作パラメータを設定する要求をビデオ処理オフロードモジュールから受け取ったことに応答して、第２のビデオカメラに関連する動作パラメータを設定するための制御信号を生成するようにさらにプログラムされる。いくつかの実施構成では、プロセッサが、単一のビデオカメラからのビデオコンテンツに対する要求をビデオ処理オフロードモジュールに転送したことに応答してスリープ状態に入り、統合した３Ｄビデオコンテンツをビデオ処理オフロードモジュールから受け取ったことに応答してアクティブ状態に入るようにさらにプログラムされる。いくつかの実施構成では、統合した３Ｄビデオコンテンツが、フレームシーケンシャル方式の３Ｄビデオコンテンツ及び偏光方式の３Ｄビデオコンテンツの一方を含む。
【００８４】
別の実施構成によれば、レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供するための装置が、第１のビデオカメラと、第２のビデオカメラと、プロセッサとを備え、このプロセッサが、単一のビデオカメラからのビデオコンテンツに対する要求を２Ｄビデオメッセンジャアプリケーションから受け取り、第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラからの第２のビデオコンテンツを受け取り、この第１のビデオコンテンツ及び第２のビデオコンテンツを３次元（３Ｄ）ビデオコンテンツに統合し、単一のビデオカメラからのビデオコンテンツに対する要求に応答して、統合した３Ｄビデオコンテンツを、カメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションへ送るようにプログラムされる。
【００８５】
いくつかの実施構成では、レガシーな２次元（２Ｄ）ビデオメッセンジャアプリケーションに３次元（３Ｄ）ビデオを提供するための装置がプロセッサを有し、このプロセッサが、単一のビデオカメラからのビデオコンテンツに対する要求を、カメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションからを受け取ったことに応答して、この単一のビデオカメラからのビデオコンテンツに対する要求をカメラインターフェイスモジュールへ送るようにさらにプログラムされ、このカメラインターフェイスモジュールは、単一のビデオカメラからのビデオコンテンツに対する要求をビデオ処理モジュールから受け取ったことに応答して少なくとも１つのカメラを制御する。いくつかの実施構成では、プロセッサが、第１のビデオカメラからの第１のビデオコンテンツ、及び第２のビデオカメラから第２のビデオコンテンツを受け取ったことに応答して、この第１のビデオコンテンツ及び第２のビデオコンテンツの３Ｄ較正及び３Ｄ矯正を行うようにさらにプログラムされる。いくつかの実施構成では、プロセッサが、２Ｄビデオメッセンジャアプリケーションにより発信された第１のビデオカメラの送信キューに関連するデキュー要求を、カメラインターフェイスモジュールを介して受け取り、第１のビデオコンテンツ及び第２のビデオコンテンツの３Ｄ較正及び３Ｄ矯正が完了したかどうかを判定し、第１のビデオコンテンツ及び第２のビデオコンテンツの３Ｄ較正及び３Ｄ矯正が完了していないと判定したことに応答して、第１のビデオカメラからの第１のビデオコンテンツを、カメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションへ送り、第１のビデオコンテンツ及び第２のビデオコンテンツの３Ｄ較正及び３Ｄ矯正が完了したと判定したことに応答して、統合した３Ｄビデオコンテンツを、カメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションへ送るようにさらにプログラムされる。いくつかの実施構成では、プロセッサが、単一のビデオカメラを開く要求を、カメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションから受け取り、第２のビデオカメラを開く要求をカメラインターフェイスモジュールへ送るようにさらにプログラムされる。いくつかの実施構成では、プロセッサが、単一のビデオカメラを閉じる要求を、カメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションから受け取り、第２のビデオカメラを閉じる要求をカメラインターフェイスモジュールへ送るようにさらにプログラムされる。いくつかの実施構成では、プロセッサが、単一のビデオカメラに関連する出力フォーマットを設定する要求を、カメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションから受け取り、第２のビデオカメラに関連する出力フォーマットを設定する要求をカメラインターフェイスモジュールへ送るようにさらにプログラムされる。いくつかの実施構成では、プロセッサが、単一のビデオカメラに関連する動作パラメータを設定する要求を、カメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションから受け取り、第２のビデオカメラに関連する動作パラメータを設定する要求をカメラインターフェイスモジュールへ送るようにさらにプログラムされる。いくつかの実施構成では、プロセッサが、いくつかのフレームバッファを単一のビデオカメラに割り当てる要求を、カメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションから受け取り、同じ数のフレームバッファを第２のビデオカメラに割り当てる要求をカメラインターフェイスモジュールへ送るようにさらにプログラムされる。いくつかの実施構成では、装置がメモリを有し、プロセッサが、第１のビデオカメラ及び第２のビデオカメラの各々に関連するフレームバッファのインデックスに対する要求をカメラインターフェイスモジュールへ送り、第１のビデオカメラに関連するフレームバッファのインデックス、及び第２のビデオカメラに関連するフレームバッファのインデックスをカメラインターフェイスモジュールから受け取り、この第１のビデオカメラに関連するフレームバッファのインデックス、及び第２のビデオカメラに関連するフレームバッファのインデックスをメモリにマッピングするようにさらにプログラムされる。いくつかの実施構成では、プロセッサが、単一のビデオカメラからのビデオコンテンツに対する要求を２Ｄビデオメッセンジャアプリケーションから受け取ったことに応答してアクティブ状態に入り、統合した３Ｄビデオコンテンツをカメラインターフェイスモジュールを介して２Ｄビデオメッセンジャアプリケーションへ送り始めたことに応答してスリープ状態に入るようにさらにプログラムされる。いくつかの実施構成では、プロセッサが、第１のビデオカメラから受け取った第１のビデオコンテンツ及び第２のビデオカメラから受け取った第２のビデオコンテンツの３Ｄ較正を行う要求を受け取り、第１のビデオカメラから受け取った第１のビデオコンテンツ及び第２のビデオカメラから受け取った第２のビデオコンテンツの３Ｄ較正を行うようにさらにプログラムされる。いくつかの実施構成では、プロセッサが、第１のビデオカメラから受け取った第１のビデオコンテンツ及び第２のビデオカメラから受け取った第２のビデオコンテンツの３Ｄ較正を行うようにプログラムされる際に、第１のビデオカメラと第２のビデオカメラの位置関係を推定し、第１のビデオカメラ及び第２のビデオカメラを矯正するようにプログラムされる。いくつかの実施構成では、プロセッサが、第１のビデオカメラ及び第２のビデオカメラを矯正するようにプログラムされる際に、ワーピング行列を取得し、このワーピング行列を第１のビデオカメラ及び第２のビデオカメラに適用するようにプログラムされる。いくつかの実施構成では、プロセッサが、第１のビデオカメラから受け取った第１のビデオコンテンツ及び第２のビデオカメラから受け取った第２のビデオコンテンツの３Ｄ較正を行うようにプログラムされる際に、画像の端部及び角部の少なくとも１つを検出し、第１のビデオカメラと第２のビデオカメラの位置関係を推定し、この推定した第１のビデオカメラと第２のビデオカメラの位置関係に基づいて、第１のビデオコンテンツ及び第２のビデオコンテンツの少なくとも一方を調整するようにプログラムされる。いくつかの実施構成では、プロセッサが、第１のビデオコンテンツと第２のビデオコンテンツを３Ｄビデオコンテンツに統合するようにプログラムされる際に、３Ｄビデオコンテンツを、横並びの３Ｄビデオコンテンツ、縦並びの３Ｄビデオコンテンツ、及びフレームシーケンシャル方式の３Ｄビデオコンテンツのうちの１つとして形成するようにプログラムされる。いくつかの実施構成では、プロセッサが、統合した３Ｄビデオコンテンツの一部を変更する要求を受け取り、第１のビデオカメラから受け取った第１のビデオコンテンツ及び第２のビデオカメラから受け取った第２のビデオコンテンツの各々において、統合した３Ｄビデオコンテンツの一部を検出し、第１のビデオカメラから受け取った第１のビデオコンテンツの一部、及び第２のビデオカメラから受け取った第２のビデオコンテンツの一部を変更するようにさらにプログラムされる。いくつかの実施構成では、統合した３Ｄビデオコンテンツの一部を変更する要求が、統合した３Ｄビデオコンテンツ内に表される人物画像の顔の特徴を滑らかにする要求を含み、プロセッサが、第１のビデオカメラから受け取った第１のビデオコンテンツの一部及び第２のビデオカメラから受け取った第２のビデオコンテンツの一部を変更するようにプログラムされる際に、第１のビデオカメラから受け取った第１のビデオコンテンツ内に表される人物画像の顔の特徴を滑らかにし、第２のビデオカメラから受け取った第２のビデオコンテンツ内に表される人物画像の顔の特徴を滑らかにするようにプログラムされる。いくつかの実施構成では、統合した３Ｄビデオコンテンツの一部を変更する要求が、統合した３Ｄビデオコンテンツ内に表される人の身体図を細くする要求を含み、プロセッサが、第１のビデオカメラから受け取った第１のビデオコンテンツの一部及び第２のビデオカメラから受け取った第２のビデオコンテンツの一部を変更するようにプログラムされる際に、第１のビデオカメラから受け取った第１のビデオコンテンツ内に表される人物の身体図を細くし、第２のビデオカメラから受け取った第２のビデオコンテンツ内に表される人物の身体図を細くするようにプログラムされる。いくつかの実施構成では、統合した３Ｄビデオコンテンツの一部を変更する要求が、統合した３Ｄビデオコンテンツ内に表される画像の一部を引き伸ばす要求を含み、プロセッサが、第１のビデオカメラから受け取った第１のビデオコンテンツの一部及び第２のビデオカメラから受け取った第２のビデオコンテンツの一部を変更するようにプログラムされる際に、第１のビデオカメラから受け取った第１のビデオコンテンツ内に表される画像の一部を引き伸ばし、第２のビデオカメラから受け取った第２のビデオコンテンツ内に表される画像の一部を引き伸ばすようにプログラムされる。
【００８６】
本明細書では、説明した機能を実施する特定の回路に関連していくつかの実施形態を説明したが、１又はそれ以上のプログラムされたプロセッサ上で実行される同等の要素を使用して回路機能を実施する他の実施形態も想定される。汎用コンピュータ、マイクロプロセッサベースのコンピュータ、マイクロコントローラ、光コンピュータ、アナログコンピュータ、専用プロセッサ、アプリケーション専用回路及び／又は専用有線論理、及びアナログ回路を使用して別の同等の実施形態を構築することもできる。専用ハードウェア、専用プロセッサ又はこれらの組み合わせなどのハードウェア構成要素の同等物を使用して他の実施形態を実現することもできる。
【００８７】
（ディスクストレージ、読み出し専用メモリ（ＲＯＭ）装置、ランダムアクセスメモリ（ＲＡＭ）装置、ネットワークメモリ装置、光学記憶素子、磁気記憶素子、磁気光学記憶素子、フラッシュメモリ、コアメモリ、及び／又はその他の同等の揮発性及び不揮発性記憶技術などの）いずれかの適当な電子又はコンピュータ可読記憶媒体上に記憶できる、いくつかの例においてフロー図の形で広く上述したプログラミング命令を実行する１又はそれ以上のプログラムプロセッサを使用していくつかの実施形態を実現することもできる。しかしながら、当業者であれば、本教示を検討する際に、本発明の実施形態から逸脱することなく、上述の処理をあらゆる数の変形例で、及び多くの適当なプログラミング言語で実施できることを理解するであろう。例えば、多くの場合、本発明のいくつかの実施形態から逸脱することなく、実行されるいくつかの動作の順序を変更することができ、さらなる動作を追加することができ、或いは動作を削除することもできる。本発明のいくつかの実施形態から逸脱することなく、エラー捕捉を追加及び／又は増強することができ、ユーザインターフェイス及び情報提示の変形例を作成することもできる。このような変形例は想定されており、同等物と見なされる。
【００８８】
いくつかの例示的な実施形態について説明したが、当業者には、上述の説明に照らして多くの代替、修正、置換、及び変形が明らかになることが明白である。
【符号の説明】
【００８９】
１００：システム
１０２：コンピュータ装置
１０４：ネットワーク
１０６：コンピュータ装置
１０８：ビデオアプリケーションサーバ
１１０：カメラ＿１
１１２：カメラ＿２
１１４：カメラ＿３
１１６：カメラ＿４
【図１】
0005500513.tif 000002
【図２】
0005500513.tif 000003
【図３】
0005500513.tif 000004
【図４】
0005500513.tif 000005
【図５】
0005500513.tif 000006
【図６】
0005500513.tif 000007
【図７】
0005500513.tif 000008
【図８】
0005500513.tif 000009
【図９】
0005500513.tif 000010
【図１０】
0005500513.tif 000011