(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023126832
(43)【公開日】2023-09-12
(54)【発明の名称】ミーティングの参加者が機能デバイスを利用できるようにするための方法およびシステム
(51)【国際特許分類】
H04N 7/15 20060101AFI20230905BHJP
【FI】
H04N7/15 150
【審査請求】有
【請求項の数】24
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2023103481
(22)【出願日】2023-06-23
(62)【分割の表示】P 2020536065の分割
【原出願日】2018-12-21
(31)【優先権主張番号】15/858,668
(32)【優先日】2017-12-29
(33)【優先権主張国・地域又は機関】US
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.FIREWIRE
2.TWITTER
3.AIM
4.iMessage
5.IMVU
(71)【出願人】
【識別番号】500251180
【氏名又は名称】バルコ・ナムローゼ・フエンノートシャップ
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】ルナール,ゴーティエ
(72)【発明者】
【氏名】デグラエフ,ヨハン・ピーター・フランス
(57)【要約】 (修正有)
【課題】通信ネットワークの親機に接続されたまたは親機の中にある機能デバイスに処理デバイスを接続するためのシステム、方法、周辺デバイス及びプログラムを提供する。
【解決手段】親機100は送信機を有し、処理デバイス160はメモリとディスプレイとオペレーティングシステムと、を有する。第1の周辺デバイス130が、ジェネリック通信プロトコルを介して処理デバイス160に結合され、第1の周辺デバイス130上に露出された、機能デバイス99の固定されるか又は設定可能なエンドポイント139を有する。親機100及び第1の周辺デバイス130は、それぞれ処理デバイス160と第1の周辺デバイス130との間の通信のためのジェネリック通信プロトコルを用いて、エンドポイント139を介して機能デバイス99から処理デバイス160への通信ネットワークを通してデータを送信及び受信する。
【選択図】
図8
【特許請求の範囲】
【請求項1】
通信ネットワークの親機に接続されたまたは前記親機の中にある機能デバイスに処理デバイスを接続するためのシステムであって、前記処理デバイスは、メモリと、ディスプレイと、オペレーティングシステムとを有し、前記システムは、
ジェネリック通信プロトコルを介して前記処理デバイスに結合されるように構成された第1の周辺デバイスを備え、前記親機は送信機を有し、前記第1の周辺デバイスは、受信機と、前記第1の周辺デバイス上に露出された、前記機能デバイスの少なくとも1つの固定されたまたは設定可能なエンドポイントとを有し、
前記親機および前記第1の周辺デバイスは、それぞれ、前記処理デバイスと前記第1の周辺デバイスとの間の通信のための前記ジェネリック通信プロトコルを用いて、前記少なくとも1つの固定されたまたは設定可能なエンドポイントを介し、前記機能デバイスから前記処理デバイスへの前記通信ネットワークを通して、データを送信および受信するように、構成されている、システム。
【請求項2】
送信または受信されるデータ、任意で画像、音声などを運ぶストリーミングデータは、生のまたは変更されていないフォーマットであることが可能である、請求項1に記載のシステム。
【請求項3】
前記機能デバイスは、無線通信ネットワークの親機に接続されているまたは前記親機の中にある、請求項1または2に記載のシステム。
【請求項4】
露出はディスクリプタフィールドで実現される、先行する請求項のいずれか1項に記載のシステム。
【請求項5】
前記機能デバイスは、ベンダ固有のドライバのみで動作させることが可能である、先行する請求項のいずれか1項に記載のシステム。
【請求項6】
少なくとも2つの第1の周辺デバイスを用いて前記データを前記機能デバイスから少なくとも2つの処理デバイスに送信するように構成されている、先行する請求項のいずれか1項に記載のシステム。
【請求項7】
2つのエンドポイントが組み合わされて1つのエンドポイントとして前記処理デバイスに対して露出される、先行する請求項のいずれか1項に記載のシステム
【請求項8】
前記機能デバイスは、マイクロホン、スピーカーホン、スピーカー、ディスプレイ、タッチスクリーン、プロジェクタ、カメラ、ビデオカメラ、ウェブカメラのうちのいずれか1つ以上である、先行する請求項のいずれか1項に記載のシステム。
【請求項9】
前記第1の周辺デバイス上に露出された、前記機能デバイスの前記少なくとも1つの固定されたまたは設定可能なエンドポイントは、ヒューマンインターフェイスデバイス、マスストレージデバイス、複合デバイス、マイクロホン、スピーカーホン、スピーカー、ディスプレイ、タッチスクリーン、プロジェクタ、カメラ、ビデオカメラ、またはウェブカメラのうちの1つである、先行する請求項のいずれか1項に記載のシステム。
【請求項10】
データをエンコードする、任意で暗号化するための手段をさらに備える、先行する請求項のいずれか1項に記載のシステム。
【請求項11】
前記処理デバイスは、2つ以上の他の処理デバイス間の統一通信をホストするように構成されている、先行する請求項のいずれか1項に記載のシステム。
【請求項12】
前記第1の周辺デバイスは、2つ以上の処理デバイス間の前記統一通信に対して機能デバイスを提供するように構成されている、請求項11に記載のシステム。
【請求項13】
前記親機に接続されているものと同じタイプの機能デバイスを前記処理デバイスに対して露出するように構成され、前記処理デバイスにインストールされた前記機能デバイスのための少なくとも1つのドライバをさらに備える、先行する請求項のいずれか1項に記載のシステム。
【請求項14】
前記機能デバイスは第2の周辺デバイスである、先行する請求項のいずれか1項に記載のシステム。
【請求項15】
前記機能デバイスはデータキャプチャデバイスである、先行する請求項のいずれか1項に記載のシステム。
【請求項16】
通信ネットワークの親機に接続されたまたは前記親機の中にある機能デバイスに処理デバイスを接続するための方法であって、前記処理デバイスは、メモリと、ディスプレイと、オペレーティングシステムとを有し、前記親機は送信機を有し、第1の周辺デバイスが受信機を有し、前記方法は、
ジェネリック通信プロトコルを介して第1の周辺デバイスを前記処理デバイスに結合し、前記第1の周辺デバイス上に露出された、前記機能デバイスの少なくとも1つの固定されたまたは設定可能なエンドポイントを提供するステップと、
前記処理デバイスと前記第1の周辺デバイスとの間の通信のための前記ジェネリック通信プロトコルを用いて、前記少なくとも1つの固定されたまたは設定可能なエンドポイントを介し、前記機能デバイスから前記処理デバイスへの前記通信ネットワークを通して、前記親機からデータを送信し、前記データを前記第1の周辺デバイスで受信するステップとを含む、方法。
【請求項17】
送信または受信されるデータ、すなわち画像、音声などを運ぶストリーミングデータは、生のまたは変更されていないフォーマットであることが可能である、請求項16に記載の方法。
【請求項18】
前記機能デバイスは、無線通信ネットワークの親機に接続されているまたは前記親機の中にある、請求項16または17に記載の方法。
【請求項19】
前記機能デバイスを、ベンダ固有のドライバのみで動作させる、請求項16~18のいずれか1項に記載の方法。
【請求項20】
露出はディスクリプタフィールドで実現可能である、請求項16~19のいずれか1項に記載の方法。
【請求項21】
少なくとも2つの第1の周辺デバイスを用いて前記データを前記機能デバイスから少なくとも2つの処理デバイスに送信するステップを含む、請求項16~20のいずれか1項に記載の方法。
【請求項22】
2つのエンドポイントが組み合わされて1つのエンドポイントとして前記処理デバイスに対して露出される、請求項16~21のいずれか1項に記載の方法。
【請求項23】
前記機能デバイスは、マイクロホン、スピーカーホン、スピーカー、ディスプレイ、タッチスクリーン、プロジェクタ、カメラ、ビデオカメラ、ウェブカメラのうちのいずれか
1つ以上を提供する、請求項16~22のいずれか1項に記載の方法。
【請求項24】
前記第1の周辺デバイス上に露出された、前記機能デバイスの前記少なくとも1つの固定されたまたは設定可能なエンドポイントを、ヒューマンインターフェイスデバイス、マスストレージデバイス、複合デバイス、マイクロホン、スピーカーホン、スピーカー、ディスプレイ、タッチスクリーン、プロジェクタ、カメラ、ビデオカメラ、またはウェブカメラのうちの1つとして、提供するステップをさらに含む、請求項16~23のいずれか1項に記載の方法。
【請求項25】
前記データをエンコードし、および/または任意で暗号化するステップをさらに含む、請求項16~24のいずれか1項に記載の方法。
【請求項26】
前記処理デバイス上で2つ以上の他の処理デバイス間の統一通信をホストするステップをさらに含む、請求項16~25のいずれか1項に記載の方法。
【請求項27】
前記第1の周辺デバイスが、2つ以上の処理デバイス間の前記統一通信に対して機能デバイスを提供するステップをさらに含む、請求項26に記載の方法。
【請求項28】
前記親機に接続されているものと同じタイプの機能デバイスを前記処理デバイスに対して露出し、前記処理デバイスにインストールされた前記機能デバイスのために少なくとも1つのドライバを使用するステップを含む、請求項16~27のいずれか1項に記載の方法。
【請求項29】
ジェネリック通信プロトコルを介して処理デバイスに結合されるように構成された周辺デバイスであって、前記周辺デバイスは、受信機と、前記第1の周辺デバイス上に露出された、機能デバイスの少なくとも1つの固定されたまたは設定可能なエンドポイントとを有し、
前記第1の周辺デバイスの前記受信機は、前記処理デバイスと前記周辺デバイスとの間の通信のための前記ジェネリック通信プロトコルを用いて、前記少なくとも1つの固定されたまたは設定可能なエンドポイントを介し、前記機能デバイスから通信ネットワークを通してデータを受信し、前記データを前記処理デバイスに送信するように、構成されている、周辺デバイス。
【請求項30】
前記通信ネットワークは無線通信ネットワークである、請求項29に記載の周辺デバイス。
【請求項31】
送信または受信されるデータ、すなわち画像、音声などを運ぶストリーミングデータは、生のまたは変更されていないフォーマットであることが可能である、請求項29または30に記載の周辺デバイス。
【請求項32】
前記機能デバイスは、ベンダ固有のドライバのみで動作させることが可能である、請求項29~31のいずれか1項に記載の周辺デバイス。
【請求項33】
前記第1の周辺デバイス上に露出された、前記機能デバイスの前記少なくとも1つの固定されたまたは設定可能なエンドポイントは、ヒューマンインターフェイスデバイス、マスストレージデバイス、複合デバイス、マイクロホン、スピーカーホン、スピーカー、ディスプレイ、タッチスクリーン、プロジェクタ、カメラ、ビデオカメラ、またはウェブカメラのうちの1つである、請求項29~32のいずれか1項に記載の周辺デバイス。
【請求項34】
プロセッサ上での実行時に請求項16~28のいずれか1項に記載の方法のステップの
うちのいずれかを実行するためのコンピュータプログラムプロダクト。
【請求項35】
請求項34に記載のコンピュータプログラムプロダクトを格納する非一時的な信号ストレージ手段。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ミーティングの参加者が機能デバイスを利用できるようにするための方法、デバイス、およびシステム、ならびにこのような方法を実行するためのソフトウェアに関する
【背景技術】
【0002】
背景
特定目的のための人々のグループの相互のコミュニケーションを可能にすることは、コラボレーション、問題解決、交渉、教授、教育などの基本的な側面のうちの1つである。コミュニケーションを支援するための、電子会議ツール、たとえば同期および非同期会議、オンラインチャット、インスタントメッセージング、音声会議、ビデオ会議、データ会議、アプリケーション共有、リモートデスクトップ共有、電子ミーティングシステム、共同管理(調整)ツール、プロジェクト管理システム、知識管理システム、およびソーシャルソフトウェアシステム等の、電子コミュニケーションツールが急増している。
【0003】
ある典型的な方式として、プレゼンテーションソフトウェアを用いるプレゼンテーションを伴うことが多いレクチャーまたはセミナーがある。多くの場合、従来の一人の人物によるプレゼンテーションまたはレクチャーは、提示される情報の決定、組立、増強または修正に関する限り、どちらかと言えば受動モードの聴衆に対して行われてきた。
【0004】
他のビジネスプロセスと同様、ミーティングはデジタル化に向かっている。人々がコンピュータ技術を単独で利用しブロードバンドネットワークと組み合わせることで、実際のミーティングの前または実際のミーティング中にそのミーティングの目的をサポートすることが増えている。たとえば、電子メールを用いてファイルを配布することで、人々はミーティングの前にそれを読んでおくことができる。
【0005】
しかしながら、マイクおよびスピーカーのような特定の機能は、ラップトップおよび携帯電話等のポータブルデバイスから提供されると品質が落ちる傾向がある。ミーティングの規模が大きくなるほど、高品質の音声および視覚信号をミーティングの参加者が利用できるようにする必要が生じる。
【発明の概要】
【課題を解決するための手段】
【0006】
発明の概要
本発明の実施形態は、ミーティングの参加者が機能デバイスを利用できるようにするための方法、デバイス、およびシステム、ならびにこのような方法を実行するためのソフトウェアに関する。
【0007】
本発明の実施形態は、通信ネットワークの親機に接続されたまたは当該親機の中にある機能デバイスに処理デバイスを接続するためのシステムを提供し、上記処理デバイスは、メモリと、ディスプレイと、オペレーティングシステムとを有し、上記システムは、
ジェネリック通信プロトコルを介して上記処理デバイスに結合されるように構成された第1の周辺デバイスを備え、上記親機は送信機を有し、上記第1の周辺デバイスは、受信機と、上記第1の周辺デバイス上に露出された、上記機能デバイスの少なくとも1つの固定されたまたは設定可能なエンドポイントとを有し、
上記親機および上記第1の周辺デバイスは、それぞれ、上記処理デバイスと上記第1の
周辺デバイスとの間の通信のための上記ジェネリック通信プロトコルを用いて、上記少なくとも1つの固定されたまたは設定可能なエンドポイントを介し、上記機能デバイスから上記処理デバイスへの上記通信ネットワークを通して、データを送信および受信するように構成されている。
【0008】
上記通信ネットワークは好ましくは無線ネットワークである。そうすると、第2の周辺デバイスの機能/エンドポイントの少なくとも選択を「共有するまたは組み合わせること」、すなわち1対多のシナリオが可能になる。
【0009】
送信または受信されるデータ、すなわち画像、音声などを運ぶストリーミングデータは、生のまたは変更されていないフォーマットであってもよい。
【0010】
2つ以上の第1の周辺デバイスがあってもよい。たとえば、少なくとも2つの第1の周辺デバイスを用いてデータを機能デバイスから少なくとも2つの処理デバイスに送信することができる。
【0011】
機能デバイスは、ベンダ固有のドライバのみで動作させてもよい。
上記機能デバイスは、マイクロホン、スピーカーホン、スピーカー、ディスプレイ、タッチスクリーン、プロジェクタ、カメラ、ビデオカメラ、ウェブカメラのうちのいずれか1つ以上等のデータ生成デバイスであってもよい。
【0012】
上記第1の周辺デバイス上に露出された、上記機能デバイスの上記少なくとも1つの固定されたまたは設定可能なエンドポイントは、ヒューマンインターフェイスデバイスであってもよい。
【0013】
上記処理デバイスは、ヒューマンインターフェイスデバイスドライバである、予めインストールされているジェネリックドライバで、上記少なくとも1つの固定されたまたは設定可能なエンドポイントと通信するように構成されていてもよい。
【0014】
上記第1の周辺デバイス上に露出された、上記機能デバイスの上記少なくとも1つの固定されたまたは設定可能なエンドポイントは、マスストレージデバイスであってもよい。
【0015】
上記処理デバイスは、マスストレージデバイスドライバである、予めインストールされているジェネリックドライバで、上記少なくとも1つの固定されたまたは設定可能なエンドポイントと通信するように構成されていてもよい。
【0016】
上記第1の周辺デバイス上に露出された、上記機能デバイスの上記少なくとも1つの固定されたまたは設定可能なエンドポイントは、複合デバイスであってもよい。
【0017】
上記処理デバイスは、複合デバイスドライバである、予めインストールされているジェネリックドライバで、上記少なくとも1つの固定されたまたは設定可能なエンドポイントと通信するように構成されていてもよい。
【0018】
本発明の実施形態は、エンドポイントを組み合わせることを含み、本発明は、2つのエンドポイントが組み合わされて1つのエンドポイントとして上記処理デバイスに対して露出されるシステムを含む。
【0019】
「露出(exposure)」または「列挙(enumeration)」という特徴は、第1の周辺機器
(たとえばボタン)がどのエンドポイントを見るかを決める。「露出」に関しては、これは「ディスクリプタフィールド(descriptor field)」で実現することができる。特定の
デバイスが周辺デバイスまたはその他のデバイスを露出させることができるということは、当該特定のデバイスが、1つ以上のエンドポイントを、特定のディスクリプタフィールドまたは「記述的フィールド(descriptive field)」で構成することを意味する。エン
ドポイントは複数の記述的フィールドによって定められる。
【0020】
記述的フィールドの基本的な形態は「USB over IP」であり、変更されていないデータの実際の転送はトンネリングによって実施することができる。
【0021】
露出は「ディスクリプタフィールド」で実現されてもよい。エンドポイントは、「物理デバイス」(第2の周辺機器、または機能デバイス)の能力/機能であり、たとえば、電話機が第2の周辺機器である場合、これは数個のエンドポイント、たとえばマイクロホンまたはラウドスピーカーまたはIP接続などを有し得る。
【0022】
エンドポイントと第2の周辺機器/機能デバイスとの「区別」がエンドポイントを定義する。
【0023】
「本発明の実施形態」は、たとえばミラーリングの文脈において、機能デバイス(および関連するエンドポイント)ごとに元のベンダのドライバを使用することを可能にするシステムを「提供する」。よって、機能デバイスはベンダ固有のドライバのみで動作させることができる。
【0024】
本システムは、データをエンコードする、任意で暗号化するための手段を含み得る。よって、本システムは、データをエンコードする、任意で暗号化するためのエンコーダを含んでいてもよい。
【0025】
処理デバイスは、2つ以上の処理デバイス間の統一通信をホストするように構成されていてもよい。統一通信は、Skype(登録商標)コールまたはSkype(登録商標)
for Businessコールであってもよい。第1の周辺デバイスは、2つ以上の処理デバイス間の統一通信に対して機能デバイスを提供するように構成されていてもよい。たとえば、機能デバイスは、スピーカーホン、マイクロホン、スピーカー、ビデオカメラ、ウェブカム、カメラ、またはその他の音声ソースであってもよい。
【0026】
本システムは、当該コールにおけるミーティングで他の処理デバイスからのデータを共有するように構成されていてもよい。マニュアルアクションを用いることにより、共有する人物またはホストが実施するこの共有を、ローカルビューウィンドウを介して有効にしてもよい。
【0027】
本システムは、たとえばUCクライアントにおけるマニュアルアクションを介してカメラを選択するように構成されていてもよい。本システムは、第1の周辺デバイスの共有状態をUCクライアントの共有状態と同期させるように構成されていてもよい。
【0028】
機能/エンドポイントの共有は、ルームディスプレイの共有であってもよい。リソースを組み合わせることは、(たとえば品質を高めるために)2つのルームラウドスピーカーを用いることであってもよく、しかしながら、この場合、ユーザは「1つのルームラウドスピーカー」しか見ることができない。後者の場合、室内に参加者/ユーザが2人以上いれば上記組み合わせるという特徴も含む。共有は、特定の機能デバイスの機能/エンドポイントの選択とも考えられる。
【0029】
本発明の実施形態は複数のエンドポイントを使用することができ、そのうちの少なくとも1つは固定されたまたは設定可能なエンドポイントであり、共有は、複数の処理デバイ
スに対するものである、すなわち、「複数の第1の周辺機器」(たとえばボタン)の使用もサポートされる。
【0030】
本システムは、マルチユーザ無線スピーカーホンを提供するように構成されていてもよい。第1の周辺装置を処理デバイスの各々に接続しておいて、ミーティングにおいてすべての処理デバイスがこのスピーカーホンにアクセスできるようにすることができる。このデバイスへのアクセスするためには調整もアクションの実行も不要である。
【0031】
本システムは別々の制御を提供するように構成されていてもよく、たとえば、周辺デバイスに制御を提供することにより、親機の音声出力のボリュームを制御し、室内マイクロホンをミュートしてもよい。あるマイクロホンを、ミュートすると、ミーティングにおいて処理デバイスに接続されているその他すべての周辺デバイスに対してもミュートすることができる。
【0032】
音声信号はマイクロホンによってピックアップされねばならない、または、親機が、処理デバイスに接続された第1の周辺デバイスに、マイクロホン信号のように任意の音声フィードにおいて音声信号を注入しなければならないように、構成されていてもよい。
【0033】
本システムは、親機に接続されたものと同じタイプの機能デバイスをユーザに対して露出し、ユーザが、処理デバイスにインストールされた機能デバイスのベンダが提供するドライバを使用できるように、構成されていてもよい。
【0034】
本システムは、複数の処理デバイスが親機と通信する場合に、親機に接続されている機能デバイスが上記複数の周辺デバイスすべてに対して露出されるように、構成されていてもよい。この機能デバイスは元々露出されていてもよい。
【0035】
露出は、ディスクリプタフィールドで実現されてもよい。
本システムは、第1の周辺デバイスを通して通信ネットワークに接続された任意の処理デバイスが、ミーティングルームにおいて、「ローカルビュー」と呼ばれるその処理デバイス上に表示、提供、または投影された任意の視聴覚コンテンツを見ることを可能にするように、構成されていてもよい。
【0036】
ローカルビューの受信機である処理デバイスは、以下の機能を有し得るが、これらに限定される訳ではない。
〇ウィンドウを開いてそこにあるミーティングルームコンテンツを見る機能。
〇コンテンツをズームインする機能。
〇ローカルビューは、ユーザが、自身の処理デバイスから黒板セッションまたはアノテーションセッションに参加することを可能にする。
【0037】
本システムは、特定のミーティングルーム内の第1の周辺デバイスが少なすぎる場合、代替方法およびシステムを提供するように構成されていてもよい。
【0038】
本システムは、第1の周辺デバイスが間違った親機に接続しようとしている場合に警告を与えるように構成されていてもよい。
【0039】
別の局面において、本発明は、通信ネットワークの親機に接続されたまたは当該親機の中にある機能デバイスに処理デバイスを接続するための方法を提供し、上記処理デバイスは、メモリと、ディスプレイと、オペレーティングシステムとを有し、上記親機は送信機を有し、上記第1の周辺デバイスは受信機を有し、上記方法は、
ジェネリック通信プロトコルを介して上記処理デバイスに第1の周辺デバイスを結合し
、上記第1の周辺デバイス上に露出された、上記機能デバイスの少なくとも1つの固定されたまたは設定可能なエンドポイントを提供するステップと、
上記処理デバイスと上記第1の周辺デバイスとの間の通信のための上記ジェネリック通信プロトコルを用いて、上記少なくとも1つの固定されたまたは設定可能なエンドポイントを介し、上記機能デバイスから上記処理デバイスへの上記通信ネットワークを通して、上記親機からデータを送信し、上記第1の周辺デバイスで当該データを受信するステップとを含む。
【0040】
上記通信ネットワークは好ましくは無線ネットワークである。そうすると、第2の周辺デバイスの機能/エンドポイントの少なくとも選択を共有するまたは組み合わせること、すなわち1対多のシナリオが可能になる。
【0041】
送信または受信される上記データ、すなわち画像、音声などを運ぶストリーミングデータは、生のまたは変更されていないフォーマットであってもよい。
【0042】
2つ以上の第1の周辺デバイスがあってもよい。少なくとも2つの第1の周辺デバイスを用いて機能デバイスから少なくとも2つの処理デバイスにデータを送信することができる。
【0043】
機能デバイスは、ベンダ固有のドライバのみで動作させてもよい。
上記機能デバイスは、マイクロホン、スピーカーホン、スピーカー、ディスプレイ、タッチスクリーン、プロジェクタ、カメラ、ビデオカメラ、ウェブカメラのうちのいずれか1つ以上を提供し得る。
【0044】
上記方法は、上記第1の周辺デバイス上に露出された上記機能デバイスの上記少なくとも1つの固定されたまたは設定可能なエンドポイントを、ヒューマンインターフェイスデバイス、マスストレージデバイス、複合デバイス、マイクロホン、スピーカーホン、スピーカー、ディスプレイ、タッチスクリーン、カメラ、ビデオカメラ、またはウェブカメラのうちの1つとして提供することを含み得る。
【0045】
データは、エンコードされてもよく、および/または任意で暗号化されてもよい。
2つ以上のその他の処理デバイス間の統一通信が上記処理デバイス上でホストされてもよい。
【0046】
第1の周辺デバイスは、2つ以上の処理デバイス間の上記統一通信に対して機能デバイスを提供してもよい。
【0047】
上記方法は、親機に接続されたものと同じタイプの機能デバイスを上記処理デバイスに対して露出し、上記処理デバイスにインストールされている上記機能デバイスのための少なくとも1つのドライバを使用するステップを含み得る。
【0048】
露出は「ディスクリプタフィールド」で実現されてもよい。
別の局面において、ジェネリック通信プロトコルを介して処理デバイスに結合されるように構成された周辺デバイスが提供され、当該周辺デバイスは、受信機と、第1の周辺デバイス上に露出された、機能デバイスの少なくとも1つの固定されたまたは設定可能なエンドポイントとを有し、
上記第1の周辺デバイスの上記受信機は、上記処理デバイスと前記周辺デバイスとの間の通信のための上記ジェネリック通信プロトコルを用いて、上記少なくとも1つの固定されたまたは設定可能なエンドポイントを介し、上記機能デバイスから通信ネットワークを通してデータを受信し、データを上記処理デバイスに送信するように、構成されている。
【0049】
上記通信ネットワークは好ましくは無線ネットワークである。そうすると、第2の周辺デバイスの機能/エンドポイントの少なくとも選択を「共有するまたは組み合わせること」、すなわち1対多のシナリオが可能になる。
【0050】
上記第1の周辺デバイス上に露出された上記機能デバイスの上記少なくとも1つの固定されたまたは設定可能なエンドポイントは、ヒューマンインターフェイスデバイス、マスストレージデバイス、複合デバイス、マイクロホン、スピーカーホン、スピーカー、ディスプレイ、タッチスクリーン、プロジェクタ、カメラ、ビデオカメラ、またはウェブカメラのうちの1つであってもよい。上記露出は「ディスクリプタフィールド」で実現されてもよい。
【0051】
機能デバイスは、ベンダ固有のドライバのみで動作させてもよい。
別の局面において、プロセッサ上での実行時に請求項10の方法のステップのうちのいずれかを実行するためのコンピュータプログラムプロダクトが提供される。非一時的な信号ストレージ手段を用いることにより上記コンピュータプログラムを格納してもよい。上記非一時的な信号ストレージ手段は、CD-ROMまたはDVD-ROM等の光ディスク、ハードディスク等の磁気ディスク、フラッシュメモリ等のソリッドステートメモリ、磁気テープまたはそれに類似するものであってもよい。
【図面の簡単な説明】
【0052】
【
図2】本発明の実施形態において如何にして周辺デバイスが処理デバイスに接続されるかについてのメッセージフローを示す図である。
【
図3】本発明の実施形態において如何にして周辺デバイスが処理デバイスに接続されるかについてのメッセージフローを示す図である。
【
図4】本発明の実施形態において使用可能な構成要素の構成を示す図であり、本図面は「Electronic tools and methods with audio for meetings」と題されたWO2013/037980の
図11であり、この出願を、その
図11に関してかつその全体も本明細書に引用により援用する。
【
図5】本発明のある実施形態に係る、進行中の、統一通信によるミーティングで使用される処理デバイスの構成を示す図である。
【
図6】周辺デバイスが処理デバイスに結合される本発明の実施形態を示す図である。
【
図7】周辺デバイスが処理デバイスに結合される本発明の実施形態を示す図である。
【
図8】周辺デバイスが処理デバイスに結合される本発明の実施形態を示す図である。
【
図9】周辺デバイスが処理デバイスに結合される本発明の実施形態を示す図である。
【
図10】周辺デバイスが処理デバイスに結合される本発明の実施形態を示す図である。
【
図11】周辺デバイスが処理デバイスに結合される本発明の実施形態を示す図である。
【
図12】周辺デバイスが処理デバイスに結合されない本発明の実施形態を示す図である。
【
図13】周辺デバイスが処理デバイスに結合されない本発明の実施形態を示す図である。
【
図14】周辺デバイスが処理デバイスに結合されない本発明の実施形態を示す図である。
【
図15】本発明のある実施形態に係る、実施形態1~11および17のうちのいずれかに使用されるメッセージフローを示す図である。
【
図16】本発明のある実施形態に係る、実施形態12~14のうちのいずれかに使用されるメッセージフローを示す図である。
【
図17】本発明のさらに他の実施形態を示す図である。
【発明を実施するための形態】
【0053】
定義
「プラグアンドプレイ(plug and play)」は、コンピュータバスまたはデバイス仕様
の特徴を記述するために使用される用語であり、これは、システムにおけるハードウェアコンポーネントを発見し易くし、リソースコンフリクトの解消において物理デバイス構成またはユーザの介入を必要としない。プラグアンドプレイデバイスは、(実行中にまたはシャットダウン時に)コンピューティングシステムのバスに追加することが可能であり、新たに追加されたデバイス、および、場合によってはコンピューティングシステムの残りは、新たに追加されたデバイスがハードウェアの観点およびソフトウェアの観点双方から機能するように、自動的に設定される。
【0054】
プラグアンドプレイインターフェイスは、たとえば以下を含む(網羅的リストではない):Firewire(IEEE-1394)、PCI、ミニPCI、PCIエクスプレス、ミニPCIエクスプレス、PCMCIA、PCカード、ユニバーサルシリアルバル(USB)、SDIOカード、HDMI(登録商標)、DisplayPort、Bluetooth(登録商標)など。
【0055】
「自動設定(auto-configuration)」は、手動介入なし、任意のスイッチまたはジャンパのセッティングなし、かつ、ソフトウェア設定の必要なしの、自動設定である。自動設定デバイスの一例は、USBデバイスである。自動設定プロトコルの例は、DHCP、Zeroconf、Bonjourである。
【0056】
プラグアンドプレイデバイスは、デフォルトで、プラグアンドプレイにするための自動設定ソフトウェアを有する。例として、USBデバイスは、正しい自動設定ソフトウェア(たとえば、ホストドライバ、ホストスタック、アプリケーションソフトウェア)を含むことにより、プラグアンドプレイになる。自動設定は、ソフトウェア単独の場合もあり、物理デバイスに限定されない。
【0057】
「ホットスワップおよびホットプラグ」は、コンピュータシステムのコンポーネントを、システムをシャットダウンせずに交換する機能を記述するために使用される用語である。より具体的には、ホットスワップは、システムに対する大きな割り込みなしでコンポーネントを交換することを記述するものであり、ホットプラグは、システムを拡張するコンポーネントを、システムの動作に対する大きな割り込みなしで追加することを記述するものである。この機能の周知の例は、マウス、キーボード、またはプリンタ等の周辺コンポーネントをユーザが追加するまたは取り除くことを可能にするユニバーサルシリアルバス(USB)である。その他の例は、たとえば、eSATA、PCIe、FireWireである。
【0058】
しばしばスタンドアロンとも呼ばれる「ポータブルアプリケーション」(ポータブルアプリ)は、ターゲットマシンにインストールされずに動作するように設計されたコンピュータソフトウェアプログラムである。この種のアプリケーションは、CD、USBフラッシュドライブ、フラッシュカード、またはフロッピー(登録商標)ディスク等のリムーバ
ブルストレージデバイスに格納され、これは、そのプログラムファイル、設定情報およびデータを、ストレージ媒体のみに格納する。これは、USBフラッシュドライブ、iPod(登録商標)、メモリカード、ポータブルハードドライブまたはその他のポータブル電子デバイス等の電子デバイス上に格納することができるプログラムであり、ホストコンピュータに対して永続的な設定変更を行うことなく電子デバイスに結合されたコンピュータまたはその他の処理デバイス上で実行される。このようなプログラムはすべてフットプリントがゼロである。これは、すべての一時ファイル、レジストリエントリ、およびマシンに対するその他任意の変更が、プログラムの実行中にのみ存在することを意味する。
【0059】
本発明のために、ポータブルアプリケーションとみなされるためには、ソフトウェアプログラムは、
コンピュータの永続的なストレージデバイス上へのいかなる種類の正式インストールの実行も要求せず、USBフラッシュドライブ、iPod、メモリカード、ポータブルハードドライブ、またはその他のポータブル電子ストレージデバイス等のリムーバブルストレージデバイス上に格納することができ、したがって数のコンピュータ上で使用することが可能でなければならない。
【0060】
セッティングは、ソフトウェアとともに格納され、好ましくはソフトウェアとともに携行される(すなわち、これらはUSBドライブ等の電子デバイスに書き込まれる)。セッティングは、レジストリまたはコンピュータのその他任意の中央システムデータベースには格納されない。
【0061】
任意のPC上の「フットプリント」をゼロ(またはほぼゼロ)にすることにより、これは使用後に実行される、すなわち、すべての一時ファイル/レジストリセッティングは、回避されねばならない、または、一旦プログラムから出たら少なくとも削除されねばならない。また、ユーザが作成したファイルは、アプリケーションが格納されるときに、同じリムーバブル媒体に直接保存することができる。
【0062】
ポータブルアプリケーションは、自身が実行されるホストコンピュータ上に、そのファイルまたはセッティングを残さない。たとえば、アプリケーションは、ウィンドウズ(登録商標)のレジストリに書き込まない、または、その設定ファイル(INIファイル等)をユーザのプロファイルに格納しない。これは、代わりに、その設定ファイルをプログラムのディレクトリに格納する。別の要件として、ファイル経路はウィンドウズドライブレター割り当ての違いにより変化するコンピュータ上で異なることが多いので、アプリケーションがこれらを関連フォーマットで格納する必要がある。好ましくは、このようなプログラムは、ランチャプログラムが、必要な設定およびファイルを、アプリケーションがスタートするときにホストコンピュータにコピーすること、および、アプリケーションが閉じるときにアプリケーションのディレクトリに戻すことを必要としない。なぜなら、そうすると停電の場合にハードドライブ上に残りのものが置き忘れられる可能性があるからである。
【0063】
「電子ミーティングシステム(Electronic meeting systems)」(EMS)は、一方では典型的なグループウェアと、他方ではウェブ会議システムと区別する必要がある。実際、上記カテゴリの製品の、重要でない特徴間にはいくらかの重複がある。グループウェアとの主な違いは、コラボレーションの強さである。EMSは、複数のユーザが同時にリモートディスプレイ上に個々のコンピュータ画面のコンテンツを示すことが可能なシステムと、区別しなければならない。
【0064】
「グループウェア」は、個々の寄与を特定可能な状態が保たれるグループ内のコラボレーションをサポートする。これに対し、EMSは、グループが、そのグループ全体として
責任を負うべき結果を協力して生み出すことを可能にする。ビジネスプロセスにおいて、グループウェアと電子ミーティングシステムとは補完し合うものであり、グループウェアは、EMSセッションの前における、または、このようなセッションの結果を実現するときの、リサーチおよび文書作成において、チームをサポートする。
【0065】
「ウェブ会議システム」と「電子ミーティングシステム」とは、オンラインミーティングまたはワークショップにおいて補完し合うものであり、EMSは、グループ結果を生成し文書化するための対話ツールを提供することによってウェブ会議システムを拡張する。一方、「ウェブ会議システム」は、同期オンラインミーティングでは必要であるがEMSにはない画面共有および音声会議機能でEMSを補完する。
【0066】
「データ会議」とは、コンピュータデータを共有する2人以上の参加者間でのリアルタイムの通信セッションを意味する。スクリーン、キーボード、マウス、カメラなどのような、対話およびプレゼンテーションデバイスを共有できる。これは、ビデオ会議および音声会議と区別するために使用される用語である。データは、ミーティングの参加者が見ることが可能な、スクリーン、文書、ブラフィックス、図面、およびアプリケーションを含み得る。
【0067】
「アプリケーション共有」は、2人以上のユーザが、それぞれのコンピュータから同時にリアルタイムで共有アプリケーションまたは文書にアクセスすることを可能にする、共同ソフトウェアという傘の下における、リモートアクセスの要素である。一般的に、共有アプリケーションまたは文書はホストコンピュータ上で実行され、共有コンテンツに対するリモートアクセスは、ホストコンピュータから他のユーザに提供される。アプリケーション共有は、アプリケーションについて異なるユーザ間のコラボレーションは可能ではないが複数のユーザが同時にリモートディスプレイ上に個々のコンピュータ画面のコンテンツを投影することが可能なシステムと、区別する必要がある。
【0068】
「任意のメディアコンテンツ」という用語は、ユーザが、表示に適した何らかのメディアコンテンツを生成、作成、または選択できることを意味する。これは、クライアントが、ミーティングまたはプレゼンテーションにおいて他人が表示したメディアコンテンツの投票または選択を行うこととは異なる。この用語は、ミーティングのメンバーに対して提供されるコンテンツを中心となる発表者が提供するのではなく、コンテンツの表示に対する、クライアント志向の、クライアントに与えられる権利および特権を意味する。
【0069】
「統一通信システムまたはツール」は、「Skype(登録商標)」または「Skype(登録商標) for Business」が提供するような音声または音声視覚コンテンツ通信を意味する。このようなソフトウェアは、ホスト処理デバイスが提供する音声および/または視覚データに取って代わることができる。統一通信ツールは、VOIP、(ウェブ)会議、共有ホワイトボード、メッセージ交換(たとえばチャット)、ファイル転送、または存在を実施するためのツールの集まりとして説明することができる。統一通信システムまたはツールは、ボイスオーバーインターネットプロトコル(Voice-Over-Internet-Protocol)(VoIP)、テキストまたはインスタントメッセージング(たとえば、AIM、Blauk、eBuddy、Gadu-Gadu、IBM Lotus Sametime、ICQ、iMessage、IMVU、Lync、MXit、Paltalk(登録商標)、Skype、Tencent QQ、Windows(登録商標)
Live Messenger(登録商標))またはMSN Messenger(登録商標)、Wireclub、Xfire、およびYahoo! Messenger(登録商標)電子メール、Twitter(たとえばツイート)、Digital Service Protocol (DSP)など)。統一通信システムまたはツールは、ビデオ会議ノードを含むビデオ会議クラウドサービスを利用することにより、ビデオ会議にお
いて第1のビデオ会議エンドポイントに位置する1人以上のユーザと第2のビデオ会議エンドポイントに位置する1人以上のユーザとの通信を可能にする。
【0070】
本発明の意味における「スクリーンスクレイピング(screen scraping)」は、ビデオ
フレームバッファを読み出し、ディスプレイ上にレンダリングするだけではなく、処理することを意味する。プレゼンテーションのためのスクリーンスクレイピングは、本明細書に引用により援用するSlobodin他へのUS2002/0196378に記載されている。
【0071】
「自動コンポジション」または「自動レイアウト」は、複数のグラフィックス/ビデオソースが、ユーザの介入なしで、ユーザがそうなると直観的に予想するように中央ディスプレイにレンダリングされる、自動という性質を意味する。
【0072】
「無線」または「無線通信ネットワーク」は、ノード間のケーブルリンクを使用しない任意のネットワークであればよく、たとえば、通信のためにRF、光、もしくはIrDA、拡散赤外線等の赤外線、WLAN、WiMax(登録商標)、WiFi(登録商標)、WiFiダイレクト、LiFi、超音波、ZigBee(登録商標)、もしくはBluetooth、または、当業者には周知のその他任意の無線通信ネットワークを使用する。以下に開示する任意の通信ネットワークは、好ましくは、無線ネットワークであってもよい。そうすると、第2の周辺デバイスの機能/エンドポイントの少なくとも選択を「共有するまたは組み合わせること」、すなわち1対多のシナリオが可能になる。
【0073】
「コンピュータ」は、一般的に処理デバイスを意味する、すなわち、表示のためのグラフィック画像のレンダリング等の各種のデジタル処理が可能な処理エンジンを有する。コンピュータは、ワークステーション、パーソナルコンピュータ、ラップトップ、パームトップ、PDA、スマートフォン、タブレットなどの形態であってもよい。一般的に、コンピュータは、揮発性RAM等のメモリを有する。ハードディスク、光ディスクまたはソリッドステートメモリ等の不揮発性メモリが、コンピュータに含まれていてもよい、または、周辺デバイスであってもよい。現在、ほとんどのコンピュータは電子コンピュータであるが、「コンピュータ」という用語は、光ベースのコンピューティングデバイスも含む。
【0074】
「予めインストールされているジェネリックドライバ」という用語は、標準ドライバとしてコンピュータ等の処理デバイスにインストールされている、たとえばオペレーティングシステムがインストールされてインストールされている、ドライバを意味することを意図している。このようなドライバは、オペレーティングシステムの標準であり、当該処理デバイスに結合または接続された標準クラスの周辺デバイスを駆動することができる。このような周辺デバイスのために特定のドライバをインストールする必要はない。このようなジェネリックドライバは、マスストレージ、CD-ROM、キーボードなど、またはこれらを組み合わせたものを駆動するように構成された予め定められたソフトウェアコンポーネントを有する、ヒューマンインターフェイスドライバ(human interface driver)(HID)またはマスストレージデバイスドライバであってもよい。このようなデバイスは、USBメモリスティック、フラッシュメモリ、外部ハードドライブ等の読出可能かつ書込可能なコンピュータ周辺メモリデバイスであってもよい。
【0075】
「ホストデバイス」は、第1の周辺デバイスまたはドングルを用いた共有を所望する処理デバイスである。
【0076】
「機能デバイス」は、何らかの方法で親機に接続された第2の周辺デバイスである。本システムは、親機に接続された第2の周辺デバイスを、第1の周辺デバイスに対し、第1の周辺デバイスが接続されている処理デバイスに装着されているかのようにトランスペアレントに露出させる機能を有する。この露出は「ディスクリプタフィールド」で実現する
ことができる。機能デバイスは、ベンダ固有のドライバのみで動作させることができる。
【0077】
「エンドポイント」は、データソースまたはシンクとして説明することができ、物理デバイスまたは仮想デバイスであってもよいUSBデバイスに対して規定される。本発明において、エンドポイントはデータソースまたはシンクとして広く解釈されねばならない。よって、データは、あるエンドポイントにおいて格納するまたは放出することができる。エンドポイントは、一種のバッファとして機能することができ、物理デバイスまたは仮想デバイスに対して規定することができる。エンドポイントに格納されるデータは、USBホスト等のホストから受けたものであってもよく、または、当該ホストに送られるのを待っているものであってもよい。エンドポイントはディスクリプティブフィールドの数によって規定される。たとえば、あるエンドポイントは4つの転送タイプ等の異なる転送タイプをサポートするように構成されていてもよい。これらの転送は、USB仕様において、たとえば、制御転送、割り込み転送、等時性(isochronous)転送、およびバルク転送と
して定義されてもよい。当業者は、これらの転送タイプを本発明において必要に応じて使用することができる。ハードウェアの制限範囲内で、エンドポイントを、ミドルウェア、たとえばUSBミドルウェアを用いて構成することができる。エンドポイントは、特定の転送タイプに限定されてもよい。
【0078】
USBホストのクライアントは、たとえばエンドポイント1にデータを送信することができる。USBホストからのデータはOUTエンドポイント1に送信される。実行されているソフトウェアは次に準備が整い次第データを読み出す。データを戻すときはINエンドポイント1に書き込む必要がある。なぜなら、USBバスはUSBホストによって制御されるので、ソフトウェアは自由にUSBバスにアクセスできないからである。INエンドポイント1内のデータは、データを要求しているエンドポイント1にホストがINパケットを送信するまで、そこに留まる。
【0079】
エンドポイントの数に制限を課してもよい。各エンドポイントは1つの転送方向を有することができる。特定のエンドポイントを、たとえば制御転送のみに対して規定し、その他いずれの機能にも割り当てられないようにしてもよい。
【0080】
制御転送は、ホストが特定のINおよびOUTエンドポイントを用いて設定情報をあるデバイスに、およびあるデバイスから送信し要求するために確保される双方向転送であってもよい。
【0081】
各制御転送は複数のトランザクションを含み得る。制御転送はいくつかの段階を有し得る。
1.セットアップ(SETUP)段階は、セットアップパケットを送り、要求を規定し、データ段階で転送すべきデータの数を指定する。
2.データ(DATA)段階は任意である。データ段階がある場合、データ段階は常にDATA1パケットを含むトランザクションから始まる。そうすると、トランザクションの種類は、必要なすべてのデータが転送されるまで、DATA0とDATA1とが交互になる。
3.ステータス(STATUS)段階は、長さゼロのDATA1パケットを含むトランザクションである。データ段階がINの場合、ステータス段階はOUTであり、逆も同様である。
【0082】
割り込み転送には、あるデバイスへのまたはあるデバイスからの限定されたレイテンシがある。USBにおいて、割り込み転送または割り込みパイプは、規定されたポーリングレートを有する。典型的に、割り込み転送データは、イベント通知、文字、またはポインティングデバイスからの座標からなる。
【0083】
等時性転送は、音声およびビデオデータ等のリアルタイムの情報を送信するために使用され、一定のレートで送信することができる。USB等時性データストリームには、USB帯域幅の専用部分が割り当てられ、確実にデータを所望のレートで配信できるようにする。等時性パイプは、最後のパケットが成功か失敗かに関係なくすべてのフレームで新たなデータパケットを送信する。等時性転送にエラー検出は不要である。電気的送信におけるいかなるエラーも訂正されない。
【0084】
バルク転送は、タイプが制御、割り込み、または等時性でないデータに使用される。確実なデータ交換がハードウェアレベルでエラー検出を用いて保証される。
【0085】
バルク転送は、他の転送の終了後に利用できるすべての帯域幅を使用する。バスが非常にビジーである場合、バルク転送は遅延する場合がある。
【0086】
「特定のデバイスが周辺デバイスまたはその他のデバイスを露出する」は、当該特定のデバイスが、1つ以上のエンドポイントを特定のディスクリプタフィールドで構成することを意味する。
【0087】
好ましい実施形態の説明
本発明の実施形態は、ラップトップ、コンピュータ、PDA、スマートフォンなどのようなユーザ処理デバイスと、無線ネットワークの親機との間の無線接続を可能にする。この無線接続は、ラップトップ、コンピュータ、PDA、またはスマートフォンなどのようなユーザ処理デバイスにおける一体化された無線トランシーバによって行われてもよい。これに代えて、本発明のいくつかの実施形態において、無線接続は、何らかの方法でユーザ処理デバイスにプラグイン、結合、接続、もしくは装着された第1の周辺デバイスを介して行われる、またはその他のハードウェアもしくはソフトウェアによって提供される。
【0088】
本発明の実施形態は、ユーザ、たとえばミーティングルーム内の参加者が、親機に装着された少なくとも1つの機能デバイス、いくつかの機能デバイス、またはすべての機能機器を利用できるようにし、当該少なくとも1つの機能デバイスは、デジタル電子出力等の電子出力を有し、何らかの方法で親機にプラグイン、結合、接続、もしくは装着された他のデバイスと協働することができるか、または、他のハードウェアもしくはソフトウェアによって提供される。上記少なくとも1つの機能デバイスは、第2の周辺デバイス、たとえばドングルにプラグインすることにより、または、無線接続された第2の周辺デバイスにより、または、ダウンロードまたは予めインストールすることができる何らかのソフトウェアで上記少なくとも1つの機能デバイスに接続することにより、提供され得る。上記少なくとも1つの機能デバイスは、タッチスクリーン、マイクロホン、スピーカーホン、カメラから与えられる電子出力を有することができ、ディスプレイまたはスピーカー等の電子入力を有するデバイスで機能することができる。本発明の実施形態は、教室またはミーティングルーム内の参加者による共同使用のための機能デバイスを提供する。
【0089】
たとえばシリアルプラグアンドプレイ接続等のシリアル接続、たとえばUSBを介して、または、近距離無線通信(Near Field Communication)(NFC)接続等の無線接続、たとえばBluetooth接続、IR接続などを介して、親機に結合または接続または装着された上記少なくとも1つの機能デバイスは、ミーティングルームまたは教室内の1人以上のユーザがアクセスおよび使用できるようにされている。好ましくは、これはトランスペアレントな標準的方法で行われる。さまざまな場合において、当該システムは無線(たとえばUSB)ハブとして機能することができ、別の場合において、第1の周辺デバイスまたはその他のハードウェアもしくはソフトウェアは、機能デバイスの、たとえば親機に結合もしくは接続もしくは装着された第2の周辺機器の組み合わされた機能として同
一の機能を有する仮想デバイスを、露出する。
【0090】
本発明の実施形態は親機を利用し、親機は、少なくとも送信機能を含み、通常はトランシーバ機能のような送受信機能を含む。この親機は、無線ネットワーク等のネットワークの親機であり、よって、送信機、受信機、またはトランシーバを有し得る。この親機は、FPGA、CPU、GPUなどのようなデジタル処理エンジンと、メモリおよび入出力ポートとを含み、たとえばプラグインにより、ミーティングルームまたは教室内で使用できる視覚または音声機能を有するまたは有しない1つ以上の第2の周辺デバイス等の任意の機能デバイスに、接続することができる。親機に使用する、上記1つ以上の第2の周辺デバイス等の機能デバイスは、たとえばHDMI、DVI、USBもしくはその他の接続を通してビデオ等の画像を提供するテレビもしくはその他のビデオプロバイダ、たとえばUSBもしくはHDMIもしくはその他の接続を通してキャプチャされたビデオのような画像を提供するカメラ等の画像キャプチャデバイス、USB接続もしくはその他の接続を通して音もしくは音楽等の音声を提供するスピーカーホンまたはUSB接続によるたとえば3.5mmの音声ジャック、SPDIFもしくはその他の接続を利用するスピーカーまたは3.5mmのジャック、USBもしくはその他の接続を利用する1つ以上のマイクロホン等の、音声デバイス、たとえばUSBもしくはその他の接続、USB接続を通して一体化されたものを利用する、タッチスクリーン等のディスプレイデバイス、および、親機等の第1のデバイスに接続、たとえばプラグインすることができ、たとえばデジタル電子出力等の電子出力を有する、その他任意の機能デバイスもしくは第1の周辺デバイスのうちの、1つ、いくつか、またはすべてを含み得る。
【0091】
本発明の実施形態は、少なくとも受信機能を含み通常はトランシーバ機能のような送受信機能を含む第1の周辺デバイス等のデバイスを含む。(少なくとも受信機デバイスである)第1の周辺デバイスは、Wi-Fi、Bluetooth、Wi-Gig、Li-Fi、NFCもしくは同様の接続等の無線接続を通して、もしくは、有線リンク、たとえばUSB、Ethernet(登録商標)などの接続を通して親機に接続可能な、たとえば無線もしくは有線接続機能を有するハードウェアであってもよく、ソフトウェアであってもよく、またはこれらの組み合わせであってもよい。よって、親機は、親機に接続された第2の周辺デバイス等の任意の機能デバイスを、1つ以上の第1の周辺デバイス(たとえば受信機デバイス)に対して露出し利用できるようにすることができ、たとえば、以下の方法のうちの1つの方法で、複数の第1の周辺デバイス(たとえば受信機デバイス)と同時に、露出し利用できるようにすることができる。
1.親機に接続された上記または各々の機能デバイス(上記または各々の第2の周辺デバイス等)を、たとえば1つ以上の第1の周辺デバイスまたはユーザ処理デバイスに、第1の周辺デバイスまたはユーザ処理デバイスに対して1対1の関係または1対多の関係で、好ましくは各機能デバイスから、たとえば第2の周辺デバイスからの電子信号を解釈または処理することなく、たとえば、親機から上記第1の周辺デバイスまたはユーザ処理デバイスのうちの1つ以上のエンドポイントにパケットをトンネリングすることにより、露出する。
2.上記少なくとも1つの機能デバイス、たとえば第2の周辺デバイスからの電子信号を、解釈、処理、および変換し、たとえば、上記少なくとも1つの機能デバイス、たとえば第2の周辺デバイスを、第1の周辺機器の端部(たとえば受信機デバイスの端部)で、ソフトウェア、ハードウェア、またはこれら双方で、模倣する。模倣は、親機に接続された第2の周辺デバイスと同一のデバイスがエンドポイントで露出されることを意味するが、通信は上記第1および第2の方法のように単純にトンネリングされる訳ではない。
3.1つ以上の機能デバイス、たとえば第2の周辺デバイスまたは第2の周辺デバイスの一部を組み合わせ、これを、1つ以上の第1の周辺デバイスに、たとえば受信機デバイスに、ハードウェア、ソフトウェア、またはこれら双方のカスタムデバイスを通して露出する。
4.1つ以上の機能デバイス、たとえば第2の周辺デバイスまたは第2の周辺デバイスの一部を組み合わせ、その機能をプロプライエタリソフトウェアを通してエンドユーザに露出する。
5.上記方法のうちのいずれかを組み合わせることにより、機能デバイスの、たとえば第2の周辺デバイスの機能を、受信機デバイス等の1つ以上の第1の周辺デバイスに与える。
【0092】
機能デバイス、たとえば第2の周辺デバイスが、元々露出されている、またはこのようなデバイスのハードウェアの模倣として露出されている場合、(ハブの場合と同様に)親機に接続またはプラグインされたUSBデバイス等の対応する第2の周辺デバイスを露出することができる、第1の周辺デバイスまたはユーザ処理デバイス上のUSBエンドポイント等のエンドポイントを、利用することができ、そうすると、これをサポートするためにプロプライエタリソフトウェアまたはドライバをインストールする必要はない。
【0093】
カスタムデバイス、すなわち本発明の用途において機能するように特別に開発されたデバイスを、露出する場合、受信機のハードウェア等の第1の周辺デバイスのこれらの同じエンドポイントを利用することができる、または、これをドライバを用いてソフトウェアで行うことができる。
【0094】
第1の周辺デバイスを用いることにより、第1の周辺デバイスと親機との間の無線または有線接続等の接続を、たとえば、無線USBハブがその一例である無線ハブ等のハブとして機能することによってセットアップすることができる。どのような第2の周辺デバイスが親機に接続またはプラグインされていても、たとえば、上記TV、ビデオデバイス、音声デバイス、スピーカーホン、カメラ、ディスプレイ…の非網羅的リストから選択された第2の周辺デバイスが、上記5つの方法のうちのいずれかで、第1の周辺デバイスに対して露出される。
【0095】
本発明の実施形態の利点は、以下のうちの1つ、いくつか、またはすべてである可能性がある。
【0096】
・ある実装例において、USBデバイスであってもよい第2の周辺デバイスのすべてが、第2の周辺機器のベンダのドライバ以外、ユーザの処理デバイスにインストールされる追加のドライバまたはソフトウェアを必要とすることなく、1対1でミラーリングされる。第2の周辺デバイスは、ユーザの処理デバイスに対して、第1の周辺デバイスのハードウェアによって直接、または、第1の周辺デバイス上またはユーザの処理デバイス上のソフトウェア仮想ハブを用いることにより、露出することができる。
【0097】
・別の実装例において、異なる第2の周辺デバイス(たとえば電子出力および/または入力を有する、たとえばスピーカー、マイクロホン)を組み合わせて同一の親機に接続することができる。エコー除去、変換、エンコード/デコードなどのような追加機能を親機に与えることができる。第1の周辺デバイスを通してユーザの処理デバイスに露出する必要があるのは1つの第2の周辺機器のみである。
【0098】
・上記2つの方法の組み合わせを、デバイスまたは機能のうちの1つまたは組み合わせに対して提供することができる。デバイスまたは機能を一度に複数のユーザが利用できるようにする必要があるか否かに応じて、1つの最終ソリューションにおいて異なる手法を用いることができ、デバイスの単純なミラーリング等の技術的実現可能性がある。
【0099】
・いくつかのソフトウェアを、ユーザ処理デバイス上で実行しているクライアントソフトウェアに追加することにより、これらのデバイスの設定を容易にすることができる(た
とえばデフォルトデバイスとして設定)。また、いくつかのカスタム制御(ミュート、パン/チルト/ズーム…)を追加することができる。
〇いくつかの制御を第1の周辺デバイスに追加することができる。
〇いくつかの処理を親機上で実施することによってこのような制御を廃止することができる(たとえば音声信号に対する自動ゲイン制御、PTZを不要にするための参加者のフレーミング)。
【0100】
・通常のハブと異なり、複数のユーザが機能デバイスを使用することができ、1人だけがたった1つのケーブルにプラグインすることができる。第1の周辺デバイスがプラグインされた各ユーザ処理デバイスは、これらの機能デバイスを使用することができ、親機は、すべてのストリームが、正しくキャプチャされ、再生され、処理され、組み合わされ、および/または向上されたことを確認する。
【0101】
・異なるストリームに異なる優先度(速度、スループット、…)を与えることにより、無線通信チャネルの予測不能性に対して調整を行うことができる。たとえば、音声ストリームをビデオストリームよりも優先してコール体験を向上させる。
【0102】
・ミーティングにおいてSkype(登録商標)コール等のVOIPコールがある場合、第1の周辺デバイスは、ユーザ処理デバイスに接続、たとえばプラグインされ、親機に接続されたすべての機能デバイスを使用することができ、これは、たとえば、広いルームビューを与えるより高度なカメラ、より高度なマイクロホンおよびより高度なスピーカーである。これは、VOIPまたはSkype(登録商標)コール等の会議のコールに応じることを所望する複数の人々が室内にいるときに、とりわけ有益である。
【0103】
図1を参照して、グループ90は、親機100に接続する、たとえばプラグインすることができる1つ以上の周辺デバイス91~93を含むマイクロプロセッサまたはFPGAベースのデバイスである。周辺デバイス91~93は、Firewire(IEEE-1394)、PCI、ミニPCI、PCIエクスプレス、ミニPCIエクスプレス、PCMCIA、PCカード、ユニバーサルシリアルバス(USB)、SDIOカード、HDMI、DisplayPort、Bluetoothなどのシリアル接続等の標準接続により、親機100に接続することができる。
【0104】
グループ90を用いることにより、たとえば周辺デバイス
・ウェブカム91
・スピーカーホン92
・複数のHIDエンドポイント93
を露出することができる。
【0105】
親機100は、マイクロプロセッサまたはFPGAベースのデバイス等の電子デジタルプロセッサを有し、たとえば以下を含む。
・それによってシステムを設定することができる、親機100のためのインターフェイスであるウェブインターフェイス110。
・1つ以上のドライバ111であって、たとえば、グループ90およびUSB周辺機器91~93からデータを受信/にデータを送信するために親機100上で実行される、ウェブカム91およびスピーカーホン92のための2つの特定のドライバ。
・音声およびウェブカム双方のエンコード、ミキシング、多重(分離)およびその他の処理に対する追加処理が、ブロック112、114、115で実施される。
・データは、無線リンク127を通して第1の周辺デバイス130に送信される前に、復号器/暗号化器113、116で暗号化または復号することができる。
・親機100の制御モジュール117および第1の周辺デバイス130の37は、親機1
00と第1の周辺デバイス130との間の制御チャネル128を用いることにより、キープアライブ(keep alive)、識別、クリプトキー(crypto key)交換等の各種機能を実行する。
・統一プロトコルブロック118は、システムの主要な機能:画面共有およびその他の非媒体ストリーミング(たとえばマウスポインタ)を抽出する機能ブロックである。
・暗号化および復号モジュール119、120は、第1の周辺デバイス130およびその他のアプリケーションとの主な通信のために設けられている。
・H264エンコーダ121等のエンコーダは、(親機100からユーザ処理デバイス160に向けて信号を放出する1つまたは複数の機能デバイスである)ローカルビューブロック123を提供し、メインディスプレイ126上のレンダリングされた画像をキャプチャし、エンコードし、第1の周辺デバイス130およびその他のクライアントに戻す。
・音声処理ブロック124が音声コンテンツ用に設けられる。
・ビデオデコーダ125がディスプレイ126に対する画面コンテンツをデコードしレンダリングするために設けられる。
【0106】
第1の周辺デバイス130は、たとえば以下を含む、マイクロプロセッサまたはFPGAベースのデバイスである。
・親機100のウェブカム91からのウェブカムビデオが、ブロック30で復号され、USBビデオを介したUSBビデオエンドポイントおよびH264ドライバ31等のドライバを通して処理デバイス160に対して露出される。
・親機100に接続されたスピーカーホン92からの音声信号が、ブロック32で復号され、USBスピーカーホンエンドポイント92からのマイクロホン信号として処理され露出される。
・スピーカーホンUSBエンドポイントを通して届いた処理デバイス160からの音声信号は、ブロック35で暗号化され、無線接続127を介して親機100に送信される。
・制御HID(ヒューマンインターフェイスデバイス)51は、グループ90および第2の周辺デバイス91~93が親機100に対して露出した追加のHID USBエンドポイントのミラーである。
・データポンプ42として示されるベンダ固有HIDエンドポイントが、チャネル52に対して使用され、このチャネルは、第1の周辺デバイス130を介した、処理デバイス160上で実行されるソフトウェア70等のベンダ固有ソフトウェアと親機100との間の、高帯域幅データチャネルであってもよい。ディスプレイ126のためのスクリーンビデオおよび音声信号は、このチャネル52を通して送信できる。これは、第1の周辺デバイス130における制御HIDエンドポイントを通したものよりも好ましい。また、親機100においてキャプチャされ(ブロック123)エンコードされる(ブロック121)ディスプレイ126のスクリーン入力も、処理デバイス160上で実行されるベンダ固有ソフトウェアに送信されて、各々がプラグインされた処理デバイス160および任意で第1の周辺デバイス130を所有している複数のユーザまたはミーティングの参加者等のその他のユーザが、自身の処理デバイス160のディスプレイ(図示せず)においてディスプレイ126にあるものを見ることができる。
・オペレーティングシステム(OS)および第1の周辺デバイス130上のLEDリング等の光インジケータを制御するためのドライバのような複数の基本コンポーネント、帯域幅測定モジュールおよびたとえば無線のその他のwi-fiモジュール、アップデート/アップグレードモジュール、セキュアブートモジュール、セキュアキーストレージ、デバッグおよびテストモジュールなどが、ブロック45~50に設けられている。
・音声キャプチャモジュール43は、スピーカーのエンドポイントを処理デバイス160に対して露出する。モジュール43はこの音声をキャプチャし、処理デバイス160で実行されているベンダソフトウェア70に戻し、そこで、タイムスタンプされ(ブロック69)、ビデオデータとのアライメント後に、たとえばデータポンプ42を通して親機100に送信される。これにより、向上したタイムスタンピングおよびリップシンクが実現で
きる。
・それほど好ましくない実施形態では、音声を第1の周辺デバイス130上でキャプチャして処理し、直ちに親機100に送信することができる。
【0107】
コンピュータ、ラップトップ、スマートフォン、パーソナルアシスタント(PDA)などのようなマイクロプロセッサまたはFPGA処理デバイス160は、たとえばサードパーティソフトウェア(たとえばSkype)60を含むプロプライエタリソフトウェア60、70を実行する。
・サードパーティソフトウェア60は処理デバイス160(たとえばSkype(登録商標)等の通信ソフトウェア)上で実行され、処理デバイスは、少なくとも1つの機能デバイス91~93(たとえば親機100に装着されたウェブカム91)からのビデオエンドポイントおよび/またはスピーカーホンエンドポイント(スピーカーホンマイクロホンおよびスピーカーホンスピーカー双方)を使用する。
・ブロック70は、本発明のために開発された専用のソフトウェアを含み、このソフトウェアは、
-パイプラインを復号(61)およびデコード(62)するためのソフトウェアであり、これは次に、親機100からのディスプレイ126の画面データをソフトウェアのウィンドウに示す。最終段(ローカルビュー63)からの、矢印71に従うデータは、Skype(登録商標)クライアントソフトウェア60等の通信ソフトウェアによってキャプチャされる。
-統一プロトコルブロック64は、制御層を扱い、媒体経路、第1の周辺デバイス130への接続および親機100への接続を(間接的に)制御するモジュールである。
-パイプライン65~67は、親機100に対する画面共有のための、スクリーンキャプチャ(67)、エンコード(66)および暗号化(65)のためのものである。
-パイプライン68、69は、第1の周辺デバイス130から戻ってきたスピーカーの音声信号を受信し(ブロック68)、処理を実行し(たとえばタイムスタンピング、ブロック69)、これをHIDエンドポイントを通して送出する(「データポンプ52」)。
・この場合にソフトウェアが使用しないエンドポイントは、第2の周辺デバイスからの制御HIDである。何らかのソフトウェアが第2の周辺デバイスのベンダから実行される場合、このソフトウェアは関連する第2の周辺デバイスとこれらのHIDエンドポイントを通して通信することができる(たとえばカメラのパン/チルト/ズーム)。
・スピーカーエンドポイント(コンテンツ音声の矢印53)は、処理デバイス160のオペレーティングシステム(OS)により、すべての(非スピーカーホン)サウンド/音声信号を送信するために使用される。
【0108】
第1の周辺デバイスをユーザ処理デバイスに接続
第1の周辺デバイス130は、
図2に示される方法300によってユーザ処理デバイス160に接続することができる。この接続は、たとえばUSB1、2、3または-CなどのようなUSB接続等のシリアル接続であってもよく、周辺デバイス130は、たとえばUSB接続のために設けられたプラグアンドプレイシリアルポートに接続、たとえばプラグインされる。第1の周辺デバイス130は、ユーザ入力デバイス、たとえばアクチュエータを含み得る。第1の周辺デバイス130は、接続ユニットとして構成されてもよく、ユーザ処理デバイスのプラグアンドプレイインターフェイスのためのコネクタの形態の物理デバイスであってもよい。これは、ベースと、ベースに装着されたフレキシブルなデータおよびパワー接続とを有していてもよい。ベースは、アクチュエータを、たとえばユーザが起動できる入力デバイスとなるように構成されたボタンを、有していてもよい。
【0109】
フレキシブルなデータおよびパワー接続は、プラグアンドプレイインターフェイスに挿入する必要があるコネクタの向きとは関係なくベースがミーティングテーブル上で平らになるように、構成されなければならない。好ましくは、ベースは、電子機器を含み、任意
でポータブルアプリケーション等のアプリケーションを格納するための永続ストレージを有する。親機100に対するWiFi接続のためのネットワーク設定パラメータもメモリに格納することができる。第1の周辺ユニットは、処理エンジン(たとえばCPU、GPU、FPGA)、WiFiまたはLiFi等のための無線送信機/受信機、USBインターフェイス等のプラグアンドプレイインターフェイス、視覚インジケータとしてのLEDリングまたはストリップ等の光リングを、有し得る。ポータブルアプリケーションは、第1の周辺デバイス160に、すなわちベースに格納されてもよい、または、フラッシュドライブのような別のプラガブルデバイスからダウンロードされて得られてもよく、親機100などからダウンロードされてもよい。視覚インジケータは、何らかのアクティビティの状態の、接続ユニットからのユーザフィードバックを可能にするためのものである。
【0110】
本発明の実施形態のうちのいずれかに使用できるアクチュエータの起動のいくつかの例は、音声起動(ハンドクラップ、音声認識、コンピュータサウンド、音楽、…)、無線接続されたデバイスを介したリモート制御(IR、Bluetooth、WiFi、LiFi…)、光起動、圧力起動、たとえば指または手による押下、タッチ起動、接近(アクチュエータに対する「ニアタッチ」またはアクチュエータを何らかの物体に近づけること)、指紋リーダー等のバイオメトリックリーダー、虹彩スキャナ、DNA解析器、例としてキーコードたとえばパスワードを入力するためのキーパッド、である。
【0111】
方法300は、ステップ301において、たとえばプラグインによって第1の周辺デバイス130を処理デバイス160に接続することを含む。その結果、カーネルブートステップ302およびステップ303における初期化スクリプトの交換が行われる。第1の周辺デバイス130は、ステップ306においてUSBデバイスであることが発見され、ステップ304においてUSBプロトコルスタックがロードされ、続いてステップ305において無線接続プロトコルスタックがロードされる。無線接続のためのパラメータが、たとえば第1の周辺デバイス130上のメモリから、またはユーザによって入力され、無線接続の対応付けがステップ307で終了する。処理デバイス160にロードする必要があるクライアントソフトウェアが次にロードされ、ステップ308において、たとえばユーザアクションによって起動される。ステップ310において、第1の周辺デバイス130は、親機100に装着されたディスプレイ画面126とデータを共有する準備ができている。
【0112】
図3に示されるように、ランチャプログラムを利用できる、たとえば第1の周辺デバイス130に格納されているかもしくは処理デバイス160に格納されているかまたはインターネット上のURL等の遠隔場所からもしくはLANサーバから取り出すことが可能である場合、これは、ステップ328において自動的にクライアントソフトウェアを起動することができる。ステップ321~327、329、および330は、
図2のステップ301~307、309、および310と同一である。
【0113】
たとえば、クライアントソフトウェアは、処理デバイス160上で実行される
図1のソフトウェア70であってもよい。通信ソフトウェア60、たとえばSkype(登録商標)等のその他のソフトウェアを、処理デバイス160に予めインストールしておいてもよい。クライアントソフトウェア70は、処理デバイス160からのビデオデータの処理用であってもよく、このクライアントソフトウェアは、たとえばCPU、GPUまたはFPGA等の処理エンジンを用いて処理デバイス160上で実行される。クライアントソフトウェア60は、処理デバイス160の画面を画面スクレイピングする画面スクレイピングソフトウェアであってもよい。このクライアントソフトウェア60は、第1の周辺デバイス130上のマスストレージ等のメモリにソフトウェアプログラムとして格納されてもよい。このソフトウェアプログラムは、処理デバイス160に結合されると処理デバイス160にロードされるなどして先に述べたように自動的にまたはユーザアクションによって
実行される。ソフトウェア60が処理デバイス160上で実行されているとき、終了時に残すフットプリントがゼロであることが好ましい。ソフトウェア60は、処理デバイス160上で実行されるときに、たとえば、処理デバイス160上で実行されているプレゼンテーションまたはビデオからの、処理デバイス160上で利用できるビデオデータをキャプチャする。たとえば、ソフトウェア70は、処理デバイス160上で実行されると、スクリーンスクレイピングして、たとえば処理デバイス160におけるグラフィックカードからの1つ以上のビデオフレームバッファを読み出すように構成される。一般的に、処理デバイス160は、自身のディスプレイを有し、したがって、グラフィックカード、または、ビデオデータを格納するためのバッファと等価のものを有する。この読み出されたビデオ情報を、クロック時間でタイムスタンプし(ブロック69)、後に、キャプチャされたビデオ信号を関連する音声信号と同期させることができる。次に、ビデオ信号は、ビデオエンコーダにおいてエンコードされ(ブロック66)、これは、ジェネリックドライバを用いてプラグアンドプレイインターフェイスを通して、たとえば予めインストールされたジェネリックドライバ、たとえば予めインストールされたジェネリックヒューマンインターフェイスデバイス(HID)を用いてUSBインターフェイスを通して転送するためのものである(矢印53)。データは、WiFiまたはLiFiネットワーク等の無線通信ネットワーク127に送信され、通信ネットワーク127を通して親機100にルーティングされ、ディスプレイデバイス126上で表示するためにコンポジタにおけるOpenGLベースのコンポジション等の好適なコンポジションに挿入される。
【0114】
処理デバイスから親機にデータを送信
図4を参照して、コンピュータ、ラップトップ、スマートフォン、PDA、タブレットなどのような処理デバイス160上の音声データ、音声は、ジェネリックドライバ用いてポートを介して送信される、たとえば、UACドライバ7等の標準的な内蔵型ジェネリック音声ドライバを用いてUSBポート8を通して送信される。第1の周辺デバイス130において、音声パケットは、専用音声デバイス14によってジェネリックポート、たとえばUSBポート11から読み出される。これらのパケットは、次に、ミキサ、レートコンバータ、エコーキャンセラ、ノイズキャンセラなどのうちのいずれかによって処理される。混合、レート変換、エコー除去、ノイズ除去のうちのいずれかは、ALSAドライバ18を使用して実行することができる。ALSAドライバは、音声スクレーパー等のダミー音声デバイス16にパケットを与える。この音声デバイス16において、音声パケットは、処理デバイス31のクロック9と同期させることができるクロック15からタイムスタンプされてもよい。この情報は次に、エンコーダ17においてエンコードされ、パケタイザ19においてパケット化され、その後、第1の周辺デバイス130と親機100との間の通信ネットワークに転送される。ネットワークは、WiFiまたはLiFiネットワーク等の無線ネットワークであってもよい。この目的のために、適切な送信機21が第1の周辺デバイス130に設けられる。親機100において、音声情報ストリームは、WiFiアクセスポイント22等の適切な通信インターフェイスにおいて復元される。次に、音声は、音声ミキサ28に供給される前に、アンパック装置23でアンパックされ、デコーダ24でデコードされる。音声およびビデオストリームを同期させるために、これらはともに同期装置27に送られ、同期装置27において、2つのストリームは同期され、したがってリップシンクが保たれる。
【0115】
処理デバイスから親機にデータを送信
本発明の実施形態は、視覚または音声信号等のデータをキャプチャし、このキャプチャしたデータを他の参加者と共有できるように、1つ以上の処理デバイス160に与えることができる。これらの視覚または音声信号は、ウェブカム91、スピーカーホン92等の機能デバイスからキャプチャされ、与えられ、取得されるが、ディスプレイ126からもキャプチャされる。たとえば、機能デバイスは、ミーティングにおいて適切な位置に置かれることによって音声データを良好に受信するマイクロホンであってもよい。これを、ミ
ーティング参加者の処理デバイス160よりも高品質であってもよい中央スピーカーシステムとともに使用してもよい。このようなスピーカーシステムは、たとえば、4チャネルサラウンドスピーカーシステムであってもよい。これは煩わしいポジティブフィードバックになり得る複数のマイクロホンおよびスピーカーに伴う難点を回避することもできる。
【0116】
本発明の実施形態は、たとえば、任意でプラグイン第1周辺デバイス130とともに処理デバイス160を有するミーティングのすべての参加者が共有できる追加機能を提供するための、
図1~
図4に関して説明した特徴を含み得る。本発明の実施形態において、第1の周辺デバイス130上の固定されたUSBエンドポイントは、基本機能のために設けられている。これらは、固定されており、ベンダ固有のエンドポイントと複数の標準エンドポイントとの組み合わせであり、カスタムドライバ、デフォルトOSドライバ、および/または、画面共有および音声について
図4を参照して説明したホストアプリケーションとして、解釈または理解することができる。
【0117】
設定可能なUSBエンドポイントは、第1の周辺デバイス130を親機100とペアにするとき、または、処理デバイス160と親機100との間の無線接続127を通して、設定される。USBエンドポイントは、一旦設定されると、カスタムドライバ、ベンダ固有ドライバまたはデフォルトOSドライバとして解釈できる、第2の周辺デバイス91~93を露出する。これらは、ホストアプリケーションまたはサードパーティアプリケーションのいずれかが使用できる。これらのエンドポイントは、親機100に接続された第2の周辺デバイス91~93のうちの周辺デバイスの正確なコピーであってもよく、または、専用の指定エンドポイントであってもよい。
【0118】
これらのUSBエンドポイントと処理デバイス160との通信は、第1の周辺デバイス130を処理デバイス160に接続する、たとえばプラグインするときに、USBエンドポイントの標準的な列挙を通して行うことができる。親機100との通信方法および露出させるエンドポイントに関するすべての情報は、第1の周辺デバイス130に格納することができ、第1の周辺デバイス130のファームウェアによってセットアップすることができる。
【0119】
第1の周辺デバイス130のどのエンドポイントを露出させるべきかに関する判断は、親機100が行うことができ、親機は、どの第2の周辺デバイスが親機100に接続されるか(どの接続をUSB接続その他を通して実現できるか)を解析し第1の周辺デバイス130上の関連するUSBエンドポイントに対する設定を作成するように、構成されていてもよい。
【0120】
上述のように、本発明の実施形態において、動作中、データは、両方向に、すなわち処理デバイス160にまたは処理デバイス160から流れる可能性がある。
1.親機100に接続された第2の周辺デバイスからのデータは、親機100の中へと流れることができる、または、ディスプレイ126用のデータのように親機100にキャプチャされることができる。任意のこのようなデータは、親機100のファームウェアを用いて解釈することができ、場合によっては処理、エンハンス、エンコード、および/または暗号化することにより、処理済みのデータを生成することができる。いくつかの実施形態において、この処理済みのデータは次に、無線リンク127を通して第1の周辺デバイス130に送信される。この第1の周辺デバイス130は、必要であれば、このデータを、デコード、復号、処理、および/または解釈し、この第1の周辺デバイス130のUSBエンドポイント(たとえば固定されたまたは設定されたエンドポイント)のうちの1つ以上を通して利用できるようにすることができる。このデータは次に処理デバイス160のオペレーティングシステムによってキャプチャされ、カスタムまたは標準ドライバを通して、処理デバイス160上で実行されているホストアプリケーションもしくはサードパ
ーティアプリケーションが、または、ミーティングの他の参加者の他の処理デバイス160が、利用できるようにされる。
2.処理デバイス160上で実行されているホストアプリケーションおよび/または1つ以上のサードパーティアプリケーションからのものである可能性があるデータは、システムによって利用できるようにされたハンドルを通して送信することができる。このデータは次に、システム(標準ジェネリック)ドライバおよびUSBポートを通して第1の周辺デバイス130の適切なUSBエンドポイントに送信される。第1の周辺デバイス130は次にこのデータを第1の周辺デバイス130のファームウェアを介して受信し、このデータを処理、エンハンス、エンコードおよび/または暗号化し、無線リンク127を通して親機100に送信する。親機100は、親機100上のファームウェアを介してこのデータを受信し、復号、処理、デコード、および/またはエンハンスし、USB、HDMIまたはその他のインターフェイス等のシリアル接続を通して親機100に接続または装着できる、適切な第1の周辺デバイスに転送する。
【0121】
複数参加者のこのようなミーティングを、
図6において、ラップトップであってもよい4つの処理デバイス160(160-1、160-2、160-3、160-4)とともに、概略的に示す。処理デバイスのうちの3つ(160-1、160-2、160-3)の各々は、たとえばUSB接続部の挿入により、第1の周辺デバイス130に接続される。1つの処理デバイス160-4は、SkypeコールまたはSkype for Businessコール等の統一通信(Unified Communication)(UC)コールのホストで
あってもよい。処理デバイスのうちの2つである第1の処理デバイス(160-1、160-2)は、親機100に対するWiFi接続が完了しており、主画面126への媒体を共有している。処理デバイス160-3および160-4は、SkypeコールまたはSkype for Businessコール等の統一通信(UC)コールを共有している。
【0122】
親機100に接続されるのは以下のうちのいずれか1つ以上である。
・ウェブカム91
・4Kタッチスクリーン94
・USBまたはHDMI経由で接続されたカメラ95
・USBスピーカーホン92
・USBマイクロホン96およびスピーカーセット97(オーディオジャック、s/pdif、USB、HDMIなどを通して接続)
ホスト処理デバイス160-4は、予めインストールされているUCクライアントソフトウェアを有する。このソフトウェアは、ホストに接続された、たとえばプラグインされた第1の周辺デバイス130上のUSBエンドポイントとやり取りする。この種のクライアントソフトウェアは、スピーカーホンUSBエンドポイントを、デフォルト音声デバイス(たとえばマイクロホンプラススピーカー)として使用する。本発明の実施形態は、処理デバイス160から送出される、および処理デバイス160に注入されるすべての音声または視覚信号の制御下にある。
【0123】
スピーカーホン92は、ユーザのうちのいずれかのユーザが、少なくとも、接続されて機能する第1の周辺デバイス130とともに使用することができる。このデバイスにアクセスするためのアクションを実行する必要はない。たとえば親機100の音声出力のボリュームを制御するため、および必要であればルームマイクロホン96をミュートにするために、第1の周辺デバイス上で別々の制御を使用できるようにしてもよい。ミュートにされると、マイクロホン96は、このデバイスを使用するその他すべてのボタンまたはアプリに対してもミュートにされる。
【0124】
ホスト処理デバイス160-4上で実行されているUCクライアントソフトウェア60
は、音声コンテンツを注入しない。マイクロホン96がこの信号をピックアップすることができる、または、親機100が、これを、ホスト160-4に接続された第1の周辺デバイス130へのマイクロホン信号に注入することができる。レイテンシが低いので、(たとえ共有していても)コンテンツビデオとリップシンクする必要はない。
【0125】
親機100にプラグインされているのと同一種類の第2の周辺デバイスが、ユーザに対して露出され、したがって、ユーザはベンダが提供するドライバを使用できる。処理デバイス130のうちの1つが室内で共有している場合、コンテンツ音声は室内でも共有される。
【0126】
機能している第1の周辺デバイスを有する処理デバイスはルームカメラ96に無線でアクセスできる。親機100に接続されているその他すべてのデバイス(たとえばHID制御デバイス93)は本質的に露出される。
【0127】
たとえば第1の周辺デバイスを通してシステムに接続されているどのユーザも、ミーティングルームにおいてユーザの処理デバイスのディスプレイに投影されたコンテンツを見る、すなわち「ローカルビュー」が可能になる。ローカルビューの受信機は、以下の機能のうちの1つ、いくつか、またはすべてを有し得るが、これらに限定される訳ではない。
【0128】
ウィンドウを開いてこのウィンドウ内のミーティングルームコンテンツを、これがストリームそのものであるか、アノテーションであるか、または黒板セッションであるかに関係なく、見る機能。
【0129】
コンテンツをズームインする機能。
ズームイン時に画質を保証する追加の方策を特徴に追加することができる。
【0130】
ローカルビューは、ユーザが、自身のデバイスから黒板もしくはアノテーションセッションを開始するおよび/または当該セッションに参加することを可能にする。
【0131】
スクリーンショットを撮る、および/または、ローカルビューを一時停止する機能。
図6~
図15および
図17は、室内の、たとえばミーティングの参加者が各種機能を利用できるようにする方法を示す。基本的な方法は4つあり、その各々が本発明の実施形態である。
a)ホスト処理デバイス160のOS164のジェネリックドライバおよびマスストレージまたはHIDエンドポイントのようなエンドポイントを使用することにより、ホスト処理デバイス160上で実行されているクライアントソフトウェアを用いて、最終デバイスが親機100内にまたは親機100に接続されたカメラ、タッチスクリーン、マイクロホン、ラウドスピーカー、スピーカーホンなどのような機能デバイスであることにホスト処理デバイス160が気付かない状態で、データを転送できるようにする。
b)機能デバイスの第1の周辺デバイス上のエンドポイントを親機100にまたは親機100内に接続させる。これは、ホスト処理デバイス160が、機能デバイスに接続されていることを検出し、機能デバイスと、あたかもそのようなデバイスであるかのようにやり取りすることを、意味する。
c)機能デバイスの第1の周辺デバイス上のエンドポイントを親機100にまたは親機100内に接続させる。これは、ホスト処理デバイス160が、機能デバイスに接続されていることを検出することを意味するが、クライアントソフトウェアは、ベンダ固有のドライバが機能デバイスとやり取りできるようにする必要がある。
d)機能デバイスの第1の周辺デバイス上のエンドポイントを親機100にまたは親機100内に接続させる。これは、ホスト処理デバイス160が、機能デバイスに接続されていることを検出することを意味するが、処理デバイス160が機能デバイスとやり取りす
ることができるよう、親機100上で前処理が行われる。1つの方法は、第1の周辺デバイス上に共通エンドポイントを作成し処理デバイスが、親機100における前処理の対象であるいずれかの機能デバイスと協働できるようにすることである。
【0132】
図6は、自身に接続されている第1の周辺デバイス130と通信する処理デバイス160、および、第1の周辺デバイス130と無線通信127を行う親機100を示す。ディスプレイ126、スピーカーホン92(またはマイクロホンおよびスピーカーセット96、97)およびビデオカム91(またはその他のカメラ95)等の各種機能デバイスが、親機100に接続される。
【0133】
ジェネリックドライバにより、クライアントソフトウェア70は、USBインターフェイス131を介して第1の周辺デバイス130上のマスストレージデバイス132にデータを送信しそこからデータを受信することができる。クライアントソフトウェア70はまた、USB HIDエンドポイントであってもよく必要であればベンダ固有エンドポイントであってもよいUSBエンドポイント134を有する。このエンドポイント134は、クライアントソフトウェア70がディスプレイ126用のデータを親機100に送信するためのエンドポイントであり、このデータは、たとえばHDMI接続などを介してグループ90に送信する前に画像処理(
図1のブロック124、125)されてもよい。このように、HIDエンドポイント134は、ミーティングルーム内にあるときに、第1の周辺デバイスが装着されたいずれかの処理デバイス160が、HDMIディスプレイ126およびその音声視覚信号を、利用できるようにする。しかしながら、ディスプレイ126は処理デバイス160に対して露出されない、すなわち、ディスプレイとしてではなくHIDエンドポイントとして提供される。ビデオカム91は、(
図1について説明したやり方で)エンドポイントとして第1の周辺デバイス130に対して露出させることができ、ビデオデータは
図1のブロック122でエンコードされる。これに代えて、
図6に示されるように、ビデオデータは、親機100でエンコードされ、第1の周辺デバイス130を介して処理デバイス60のオペレーティングシステム164のドライバ162に送信される。処理デバイス60は、ビデオカム91からのエンコードされたデータを処理デバイス160に対して露出し、ビデオデータをUCコール、たとえばSkype(登録商標)が利用できるようにする。
【0134】
スピーカーホン92からのデータは、親機100でおよび/または第1の周辺デバイス130で処理され処理デバイス160に対して模倣されてもよい。スピーカーホン92のマイクロホンは、第1の周辺デバイス上のUSBスピーカーホンエンドポイント136を介して処理デバイス160に送信される信号を生成し、それにより、
図1に関して述べたように親機100においてノイズ低減またはエコー除去を実施することができる(ブロック115)。処理デバイス160が、スピーカーホンエンドポイント136を、あたかもスピーカーホンが処理デバイス160にプラグインされているように、スピーカーホンとして認識したときに、UCコールがマイクロホンデータを利用できるようにする。また、第1の周辺デバイスが接続されている処理デバイス160を有するその他すべてのユーザがマイクロホンデータを利用できるようにする。本実施形態において、スピーカーホンのスピーカーは、第1の周辺デバイス130上にUSBエンドポイント136を有する。
【0135】
図7は、それぞれスピーカーホンおよびスピーカーのための2つのUSBエンドポイント136および138があることを除いて、
図6の構成と同様の構成を示す。先に述べたように、HIDエンドポイント134は、音声視覚信号をディスプレイ126に提供するために、ミーティングルーム内にあるときに、第1の周辺デバイス130が装着されたいずれかの処理デバイス160が、HDMIディスプレイ126を利用できるようにする。しかしながら、ディスプレイ126は処理デバイス160に対して露出されない、すなわち、ディスプレイとしてではなくHIDエンドポイントとして提供される。
【0136】
2つのエンドポイント136、138は、音声信号を2つの異なるソースから受信する。USコールからの音声は、
図6に関して述べたように、スピーカーホンエンドポイント136を介して扱い、親機で処理することができる。しかしながら、UCコールの一部ではない追加の音声データがある場合、このデータはスピーカーエンドポイント138を介して送信される。グループ90には、スタンドアロンスピーカーである第2の周辺デバイスはないので、親機100は、スピーカーホンおよびスピーカーに対する音声信号を、すべての音声データをスピーカーホン92のスピーカーに送信する前に、混合する。グループ90内に別個のスピーカー97がある場合、親機100はこの音声データをこのスピーカーに送信することができる。結果として、仮想スピーカーが処理デバイス160に対して露出されることになる。
【0137】
図8~
図11および
図17は、本発明の各種実施形態を、ミーティングルームにおいてタッチスクリーン99を利用できるようにする方法の例とともに説明する。タッチスクリーンは、タッチされると、タッチ位置の座標に関連する信号を生成する。ミーティングでは、これを処理デバイス160に送る必要があり、そうすることで、実際の信号は、処理デバイス160上の異なる画面に与えられるのであれば、解釈されなければならない。参加者が多様な処理デバイスを使用するミーティングの場合、タッチ座標をこれらの異なる処理デバイスすべてに対して提供する方法を発見する必要がある。
図8~
図11は、上記4つの基本的な方法を開示している。
【0138】
図8の実施形態では、グループ90と、親機100と、第1の周辺デバイス130と、処理デバイス160とがある。親機100に接続されているまたは親機100内にある、2つの機能デバイス、すなわちディスプレイ126とタッチスクリーン99とがある。タッチスクリーン99は、第1の周辺デバイス130においてタッチスクリーンエンドポイント139を有する。タッチスクリーン99は、第1の周辺デバイス130においてタッチスクリーンエンドポイント139を有する。処理デバイス160は、このエンドポイントを認識し、OS164が関連するドライバ162を有する場合は、このエンドポイントとやり取りすることができる。必要に応じてこのドライバをダウンロードすることができる。この実施形態では、各処理デバイス160が、関連のドライバ162を、ミーティングにおいてダウンロードする、または既にインストールしている必要がある。
【0139】
図9の実施形態では、グループ90と、親機100と、第1の周辺デバイス130と、処理デバイス160とがある。親機100に接続されているまたは親機100内にある、2つの機能デバイス、すなわちディスプレイ126とタッチスクリーン99とがある。タッチスクリーン99は、第1の周辺デバイス130においてタッチスクリーンエンドポイント139を有する。処理デバイス160は、このエンドポイントを認識し、親機100がタッチの座標を処理デバイス160が使用できる座標に変換するように構成されている場合、すなわちOS164が関連するドライバ162を有する場合、このエンドポイントとやり取りすることができる。必要に応じてこのドライバをダウンロードすることができる。この実施形態では、各処理デバイス160が、ミーティングにおいて、関連のドライバ162をダウンロードするまたは既にインストールしている必要があるが、親機100の変換機能により、必要であろうさまざまなドライバの数を減じることができる。
【0140】
図10の実施形態では、グループ90と、親機100と、第1の周辺デバイス130と、処理デバイス160とがある。親機100に接続されているまたは親機100内にある、2つの機能デバイス、すなわちディスプレイ126とタッチスクリーン99とがある。タッチスクリーン99は、第1の周辺デバイス130においてタッチスクリーンエンドポイント139を有する。処理デバイス160は、このエンドポイントを認識し、親機100がタッチの座標を処理デバイス160が使用できる座標に変換するように構成されてい
る場合、すなわちOS164が関連するドライバ162を有する場合、このエンドポイントとやり取りすることができる。このドライバは配信できる標準ドライバである、たとえば、このドライバは必要に応じてダウンロードできる。この実施形態では、各処理デバイス160が、ミーティングにおいて、関連のドライバ162をダウンロードするまたは既にインストールしている必要があるが、親機100の変換機能により、
図9の実施形態よりもさらに、必要であろうさまざまなドライバの数を減じることができる。
【0141】
図11の実施形態では、グループ90と、親機100と、第1の周辺デバイス130と、処理デバイス160とがある。親機100に接続されているまたは親機100内にある、2つの機能デバイス、すなわちディスプレイ126とタッチスクリーン99とがある。タッチスクリーン99は、先に述べたようにクライアントソフトウェア70によって扱われる、すなわち、第1の周辺デバイス130上で実行されているクライアントソフトウェアは、USBインターフェイス131を通してタッチスクリーン99とやり取りするように、かつ、処理デバイス160のOS 164とやり取りするように、構成されている。これは、タッチスクリーン99が処理デバイス160に対して露出されないことを意味する。クライアントソフトウェア70は、タッチイベントをシミュレートし正しい座標を処理デバイス160のOS 164に提供するように構成されている。したがって、これは、クライアントソフトウェア70がUSBインターフェイス131を通して各タイプのタッチスクリーン99とやり取りするように構成されていることを必要とする、プロプライエタリソリューションである。
【0142】
図12~
図14は、複数のユーザが存在する本発明の実施形態に関する。第一に、ミーティングの各参加者は、
図8~
図11に記載の実施形態のうちのいずれかを利用することができる。よって、本発明はマルチユーザソリューションを提供する。
【0143】
図12において、処理デバイス60’は第1の周辺デバイス130を有しておらず、たとえば利用できるものはない。このような場合、クライアントソフトウェア70’が無線接続127’を通して親機100と直接やり取りするように構成されてもよく、クライアントソフトウェア70’は必要に応じて任意のシミュレーションまたは変換を提供することにより、ディスプレイデバイス126を処理ユニット160’に対して提供するとともにその間のやり取りを可能にするように構成される。クライアントソフトウェア70’は、
図1~
図11に関して説明した実施形態のうちのいずれかを、第1の周辺デバイス130を使用せずにシミュレートするように構成されてもよい。クライアントソフトウェア70’は、たとえば
図1~
図11の実施形態のうちのいずれかで使用されるタイプのUBインターフェイスをシミュレートしてもよい。処理デバイス160については
図1~
図11のうちのいずれかに関して説明した方法を使用することができる。
【0144】
図13において、処理デバイス60’は第1の周辺デバイス130を有しておらず、たとえば利用できるものはない。このような場合、クライアントソフトウェア70’が無線接続127’を通して親機100と直接やり取りするように構成されてもよく、クライアントソフトウェア70’は必要に応じて任意のシミュレーションまたは変換を提供することにより、ディスプレイデバイス126を処理ユニット160’に対して提供するとともにその間のやり取りを可能にするように構成される。これは
図12に関して説明した通りである。しかしながら、グループ90は、スピーカーホン92またはマイクロホンとスピーカーとの組み合わせ96、97のようなマイクロホンとスピーカーとの組み合わせを有する。処理デバイス160は、
図1~
図11の実施形態のうちのいずれかを利用することができる。処理デバイス160’のクライアントソフトウェア70’は、ビデオデータを親機100に直接与えるように構成されてもよく、ビデオデータはそこで処理され、たとえばデコードおよび合成され、HDMI接続等の好適な接続を通してディスプレイ126に提供される。
【0145】
処理デバイス160’ではクライアントソフトウェア70’およびドライバ127’がシミュレートされたスピーカーホン92をOS164’に対して提供することにより、仮想マイクロホンおよび仮想スピーカーを生成することができる。Skype(登録商標)コール等の統一通信のためのサードパーティソフトウェア60’がこれらの仮想デバイスとともに提供され、これは次にコールに使用される。
【0146】
図14において、処理デバイス60’は第1の周辺デバイス130を有しておらず、たとえば利用できるものはない。このような場合、クライアントソフトウェア70’が無線接続127’を通して親機100と直接やり取りするように構成されてもよく、クライアントソフトウェア70’は必要に応じて任意のシミュレーションまたは変換を提供することにより、ディスプレイデバイス126を処理ユニット160’に対して提供するとともにその間のやり取りを可能にするように構成される。これは
図13に関して述べた通りである。しかしながら、グループ90は、たとえばUSB接続を介して親機100に接続されたビデオカム91を有する。処理デバイス160は
図1~
図11の実施形態のうちのいずれかを利用することができる。処理デバイス160’のクライアントソフトウェア70’は、親機100がビデオデータを直接受けるように構成されてもよい。
【0147】
処理デバイス160’ではクライアントソフトウェア70’およびドライバ162’がシミュレートされたビデオカム91をOS164’に対して提供することにより、仮想ビデオカムデバイスを生成することができる。Skype(登録商標)コール等の統一通信のためのサードパーティソフトウェア60’が、仮想デバイスすべてとともに提供され、これは次にコールに使用される。
【0148】
図15は、
図1~
図11に関して説明した実施形態のうちのいずれかに適用可能なメッセージングフロー図を示す。
【0149】
図16は、第1の周辺デバイスが使用されない
図12~
図14に関して説明した実施形態のうちのいずれかに適用可能なメッセージングフローを示す。
【0150】
図17は、処理デバイス160を含む本発明のさらに他の実施形態を示し、処理デバイス160は、プロセッサおよびメモリを有し、ホストアプリケーションも含むクライアントソフトウェア70だけでなく、Skype(登録商標)コールまたはSkype(登録商標) for Businessコール等の統一通信コールを実行するように構成し得るサードパーティアプリケーション60を、実行し、任意で格納する。処理デバイス160は、USBポート等のシリアルポートと、このポートを介して第1の周辺デバイス130と通信するためのジェネリックまたはカスタムドライバとを有する。周辺デバイス130は、プロセッサおよびメモリを有し、無線リンク127を親機100に提供し、かつ、親機100に接続されたまたは親機100内にある機能デバイス90の少なくとも1つの設定可能なまたは固定されたエンドポイントを提供する、ファームウェアを実行し、任意で格納する。親機は、無線リンク127への接続を提供し、また、機能デバイス90にポートを提供するための、ファームウェアを実行し任意で格納するためのプロセッサおよびメモリを有する。機能デバイス90は、プロセッサおよびメモリを有し、親機100にリンクおよびインターフェイスを提供するため、かつ、周辺デバイス130上の上記少なくとも1つの設定可能なまたは固定されたエンドポイントに送信するデータを提供するための、ファームウェアを実行し、任意で格納する。
【0151】
本発明に係る方法は、コンピュータシステムによって実行することができる。本発明は、処理エンジンを用いて機能を実行することができる。処理エンジンは、好ましくは、1つ以上のマイクロプロセッサ、FPGA、または中央処理装置(CPU)および/または
グラフィック処理装置(GPU)が提供するようなデジタル処理機能を有し、ソフトウェア、すなわち1つ以上のコンピュータプログラムでプログラミングされることによってそれぞれの機能を果たすように構成される。ソフトウェアへの言及は、コンパイルされたまたは解釈可能な言語のいずれかを介してプロセッサが直接または間接的に実行可能な任意の言語の任意のタイプのプログラムを包含し得る。本発明の方法のうちのいずれの方法の実現も、論理回路、電子ハードウェア、プロセッサ、または、回路によって実行することが可能であり、これは、いずれの種類の論理またはアナログ回路も包含し得るものであり、任意の程度で一体化が可能であり、汎用プロセッサ、デジタル信号プロセッサ、ACIS、FPGA、離散コンポーネントまたはトランジスタ論理ゲートなどに限定されない。
【0152】
処理デバイスは、(非一時的なコンピュータ読取可能媒体、RAMおよび/またはROM等の)メモリ、オペレーティングシステム、任意で固定フォーマットディスプレイ等のディスプレイ、キーボード等のデータ入力デバイスのためのポート、「マウス」等のポインタデバイス、他のデバイスと通信するためのシリアルまたはパラレルポート、ネットワークカード、およびネットワークのうちのいずれかに接続するための接続を、有し得る。
【0153】
ソフトウェアは、当該ソフトウェアがコンピュータにロードされマイクロプロセッサ、ASIC、FPGAなどのような1つ以上の処理エンジン上で実行されると、たとえば以下で箇条書きにする本発明の方法のうちのいずれかの方法の機能を実行するように構成されたコンピュータプログラムプロダクトにおいて、実現することができる。よって、本発明の実施形態のうちのいずれも、コンピュータソフトウェアの形態の1つ以上のコンピュータアプリケーションを実行することが可能なコンピュータシステムを組み込むことができる。
【0154】
本発明の実施形態に関して先に説明した方法は、メモリにロードされ米国のマイクロソフト社から提供されるWindows(登録商標)、Linux(登録商標)、Android(登録商標)などのようなオペレーティングシステム上でまたはそれに関連して実行されることによってコンピュータシステム上で実行される1つ以上のコンピュータアプリケーションプログラムにより、実行することができる。コンピュータシステムは、メインメモリ、好ましくはランダムアクセスメモリ(RAM)を含んでいてもよく、また、非一時的なハードディスクドライブおよび/またはリムーバブルな非一時的なメモリ、および/または非一時的なソリッドステートメモリも含み得る。非一時的なリムーバブルメモリは、適切なリーダーによって読み出され書き込まれるコンパクトディスク等の光ディスク(CD-ROMまたはDVD-ROM)、磁気テープであってもよい。リムーバブルな非一時的なメモリは、コンピュータソフトウェアおよび/またはデータが格納されているコンピュータ読取可能媒体であってもよい。不揮発性ストレージメモリを用いることにより、コンピュータシステムの電源が落ちたとしても失われてはならない永続的(persistent)情報を格納するために使用できる。アプリケーションプログラムは、情報を使用し非一時的なメモリに格納することができる。
【0155】
コンピュータプログラムプロダクトにおいて実現されるソフトウェアは、当該ソフトウェアが対応する1つまたは複数のデバイスにロードされマイクロプロセッサ、ASIC、FPGAなどの1つ以上の処理エンジン上で実行されると以下の機能を実行するように、構成されており、これらの機能は、
通信ネットワークの親機に接続されたまたは親機の中にある機能デバイスに処理デバイスを接続することであり、処理デバイスは、メモリと、ディスプレイと、オペレーティングシステムとを有し、親機は送信機を有し、第1の周辺デバイスは受信機を有し、
ジェネリック通信プロトコルを介して第1の周辺デバイスを処理デバイスに結合し、第1の周辺デバイス上に露出された機能デバイスの少なくとも1つの固定されたまたは設定可能なエンドポイントを提供すること、
処理デバイスと第1の周辺デバイスとの間の通信のためのジェネリック通信プロトコルを用いて、少なくとも1つの固定されたまたは設定可能なエンドポイントを介し、機能デバイスから処理デバイスへの通信ネットワークを通して、データを親機から送信し、データを第1の周辺デバイスで受信すること、である。
【0156】
コンピュータプログラムプロダクトにおいて実現されるソフトウェアは、このソフトウェアが対応する1つまたは複数のデバイスにロードされマイクロプロセッサ、ASIC、FPGAなどのような1つ以上の処理エンジン上で実行されると、以下の機能を実行するように構成されており、これらの機能は、
生のまたは変更されていないフォーマットの、データを、すなわち、画像、音声などを運ぶストリーミングデータを、送信または受信すること、
無線通信ネットワークの親機にまたはこの親機の中に機能デバイスを接続すること、
ベンダ固有のドライバのみで機能デバイスを実行すること、である。
【0157】
コンピュータプログラムプロダクトにおいて実現されるソフトウェアは、このソフトウェアが対応する1つまたは複数のデバイスにロードされマイクロプロセッサ、ASIC、FPGAなどのような1つ以上の処理エンジン上で実行されると、以下の機能を実行するように構成されており、これらの機能は、
ディスクリプタフィールドで実現される露出、
少なくとも2つの第1の周辺デバイスを用いてデータを機能デバイスから少なくとも2つの処理デバイスに送信すること、
2つのエンドポイントを組み合わせて1つのエンドポイントとして処理デバイスに対して露出させること、である。
【0158】
コンピュータプログラムプロダクトにおいて実現されるソフトウェアは、このソフトウェアが対応する1つまたは複数のデバイスにロードされマイクロプロセッサ、ASIC、FPGAなどのような1つ以上の処理エンジン上で実行されると、以下の機能を実行するように構成されており、これらの機能は、
機能デバイスが、マイクロホン、スピーカーホン、スピーカー、ディスプレイ、タッチスクリーン、プロジェクタ、カメラ、ビデオカメラ、ウェブカメラのうちの1つ以上を、可能にすること、
第1の周辺デバイス上に露出された機能デバイスの少なくとも1つの固定されたまたは設定可能なエンドポイントを、ヒューマンインターフェイスデバイス、マスストレージデバイス、複合デバイス、マイクロホン、スピーカーホン、スピーカー、ディスプレイ、タッチスクリーン、プロジェクタ、カメラ、ビデオカメラ、またはウェブカメラのうちの1つとして、示すこと、である。
【0159】
コンピュータプログラムプロダクトにおいて実現されるソフトウェアは、このソフトウェアが対応する1つまたは複数のデバイスにロードされマイクロプロセッサ、ASIC、FPGAなどのような1つ以上の処理エンジン上で実行されると、以下の機能を実行するように構成されており、これらの機能は、
データをエンコードし、および/または任意で暗号化すること、
処理デバイス上で2つ以上の他の処理デバイス間の統一通信をホストすること、
第1の周辺デバイスが、2つ以上の処理デバイス間の統一通信に対して機能デバイスを提供すること、または、
親機に接続されているものと同じタイプの機能デバイスを処理デバイスに対して露出し、処理デバイスにインストールされた機能デバイスのために少なくとも1つのドライバを使用すること、である。
【0160】
上記ソフトウェアのうちのいずれかを、ネットワークのサーバまたはノードのうちのい
ずれかにおいて処理エンジンのためにコンパイルされているコンピュータプログラムプロダクトとして、実現することができる。コンピュータプログラムプロダクトは、光ディスク(CD-ROMまたはDVD-ROM)、デジタル磁気テープ、磁気ディスク、USBフラッシュメモリ等のソリッドステートメモリ、ROMなどのような、非一時的な信号ストレージ媒体に、格納することができる。
【手続補正書】
【提出日】2023-07-21
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
通信ネットワークの親機に接続されたまたは前記親機の中にある機能デバイスに処理デバイスを接続するためのシステムであって、前記処理デバイスは、メモリと、ディスプレイと、オペレーティングシステムとを有し、前記システムは、
ジェネリック通信プロトコルを介して前記処理デバイスに結合されるように構成された第1の周辺デバイスを備え、前記親機は送信機を有し、前記第1の周辺デバイスは、受信機と、前記第1の周辺デバイス上に露出された、前記機能デバイスの少なくとも1つの固定されたまたは設定可能なエンドポイントとを有し、
前記親機および前記第1の周辺デバイスは、それぞれ、前記処理デバイスと前記第1の周辺デバイスとの間の通信のための前記ジェネリック通信プロトコルを用いて、前記少なくとも1つの固定されたまたは設定可能なエンドポイントを介し、前記機能デバイスから前記処理デバイスへの前記通信ネットワークを通して、データを送信および受信するように、構成されている、システム。
【手続補正書】
【提出日】2023-08-23
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
処理デバイスを、通信ネットワークの親機に接続、結合、またはプラグインされた機能デバイスに接続するためのシステムであって、前記親機は、送信機および受信機またはトランシーバを有し、前記処理デバイスは、メモリと、ディスプレイと、オペレーティングシステムとを有し、前記システムは、
前記処理デバイスに結合、接続、装着、またはプラグインされるよう構成される1つ以上の第1の周辺デバイスを備え、前記1つ以上の第1の周辺デバイスは、受信機、送信機、またはトランシーバを有し、
前記親機は、前記親機に接続、結合、またはプラグインされた前記機能デバイスから電子信号を受信するよう構成され、
前記親機は、前記親機に接続、結合、またはプラグインされた前記機能デバイスから来る電子音声信号を含む電子信号を受信すると、前記電子音声信号を、他の電子信号データとは別個の処理された音声データとして、解釈、処理、および変換することを含むよう構成され、前記親機は、前記親機に接続、結合、またはプラグインされた前記機能デバイスから来る電子画像/ビデオ信号を含む電子信号を受信すると、前記電子画像/ビデオ信号を、他の電子信号データとは別個の処理された画像/ビデオデータとして、解釈、処理、および変換することを含むよう構成され、
前記親機および前記1つ以上の第1の周辺デバイスは、それぞれ、前記通信ネットワークを介して、処理されたデータを、前記親機に接続、結合、またはプラグインされた前記機能デバイスとの間で、送信および受信して、前記処理されたデータを、前記親機に接続、結合、またはプラグインされた前記機能デバイスの少なくとも1つの固定されたまたは設定可能なエンドポイントを介して、前記処理デバイスに利用できるようにするよう構成され、
前記1つ以上の第1の周辺デバイスは、前記1つ以上の第1の周辺デバイスの端部において前記機能デバイスを模倣することによって、前記親機に接続、結合、またはプラグインされた前記機能デバイスを前記処理デバイスに露出し、
模倣によって、同じデバイスが、前記少なくとも1つの固定されたまたは設定可能なエンドポイントにおいて、前記親機に接続、結合、またはプラグインされた前記機能デバイスとして露出され、前記機能デバイスが、前記親機に接続、結合、またはプラグインされた前記機能デバイスの模倣として露出されるとき、前記システムは、前記1つ以上の第1の周辺デバイス上で、前記少なくとも1つの固定されたまたは設定可能なエンドポイントを利用するよう構成される、システム。
【請求項2】
前記システムは、前記親機に接続、結合、またはプラグインされた前記機能デバイスを、前記親機に接続、結合、またはプラグインされた前記機能デバイスと同じ機能を有する仮想デバイスとして露出するよう構成され、プロプライエタリソフトウェアまたはインストールされる必要がある機能デバイス固有のドライバの必要性を回避する、請求項1に記載のシステム。
【請求項3】
前記親機が構成される電子音声信号の処理は、暗号化、復号化、エンコード、ミキシング、多重化、多重分離、デコード、エンハンス、エコー除去、ノイズ低減、再サンプリングのいずれかを含み、前記親機が構成される電子ビデオ/画像信号の処理は、暗号化、復号化、エンコード、ミキシング、多重化、多重分離、デコード、エンハンス、圧縮、圧縮解除のいずれかを含む、請求項1または2に記載のシステム。
【請求項4】
前記親機に接続、結合、またはプラグインされた前記機能デバイスの前記少なくとも1つの固定されたまたは設定可能なエンドポイントは、前記1つ以上の第1の周辺デバイスに露出し、利用できるようにするよう構成され、複数の第1の周辺デバイスと同時に露出し、利用できるようになどするよう構成される、請求項1~3のいずれか1項に記載のシステム。
【請求項5】
前記1つ以上の第1の周辺デバイスは、ジェネリック通信プロトコルを介して前記処理デバイスに結合、接続、装着またはプラグインされるようにされる、請求項1~4のいずれか1項に記載のシステム。
【請求項6】
前記システムは、前記処理デバイスと前記1つ以上の第1の周辺デバイスとの間の通信のために前記ジェネリック通信プロトコルを使用するよう構成される、請求項5に記載のシステム。
【請求項7】
前記1つ以上の第1の周辺デバイスは、無線または有線接続によって前記親機に接続される、請求項1~6のいずれか1項に記載のシステム。
【請求項8】
2つのエンドポイントが組み合わされて1つのエンドポイントとして前記処理デバイスに対して露出される、請求項1~7のいずれか1項に記載のシステム。
【請求項9】
前記機能デバイスは、TV、ビデオデバイス、音声デバイス、スピーカーホン、カメラ、ディスプレイのいずれかである、請求項1~8のいずれか1項に記載のシステム。
【請求項10】
前記システムは、前記処理デバイスを、前記親機に接続、結合、またはプラグインされた1つ以上のさらなる機能デバイスに接続するよう構成され、前記1つ以上の第1の周辺デバイスは、当該機能デバイスの機能と前記親機に接続、結合、またはプラグインされた前記1つ以上のさらなる機能デバイスの機能とを組み合わせた仮想デバイスを露出するよう構成される、請求項1~9のいずれか1項に記載のシステム。
【請求項11】
処理デバイスを、通信ネットワークの親機に接続、結合、またはプラグインされた1つ以上の機能デバイスに接続するためのシステムであって、前記親機は、送信機および受信機またはトランシーバを有し、前記処理デバイスは、メモリと、ディスプレイと、オペレーティングシステムとを有し、前記システムは、
前記処理デバイスに結合、接続、装着、またはプラグインされるよう構成される1つ以上の第1の周辺デバイスを備え、前記1つ以上の第1の周辺デバイスは、受信機、送信機、またはトランシーバを有し、
前記親機は、前記親機に接続、結合、またはプラグインされた前記1つ以上の機能デバイスから電子信号を受信するよう構成され、
前記親機は、前記親機に接続、結合、またはプラグインされた前記1つ以上の機能デバイスから来る電子音声信号を含む電子信号を受信すると、前記電子音声信号を、他の電子信号データとは別個の処理された音声データとして、解釈、処理、および変換することを含むよう構成され、前記親機は、前記親機に接続、結合、またはプラグインされた前記1つ以上の機能デバイスから来る電子画像/ビデオ信号を含む電子信号を受信すると、前記電子画像/ビデオ信号を、他の電子信号データとは別個の処理された画像/ビデオデータとして、解釈、処理、および変換することを含むよう構成され、
前記親機および前記1つ以上の第1の周辺デバイスは、それぞれ、前記通信ネットワークを介して、処理されたデータを、前記親機に接続、結合、またはプラグインされた前記1つ以上の機能デバイスとの間で、送信および受信して、前記処理されたデータを、前記親機に接続、結合、またはプラグインされた前記1つ以上の機能デバイスの少なくとも1つの固定されたまたは設定可能なエンドポイントを介して、前記処理デバイスに利用できるようにするよう構成され、
前記1つ以上の第1の周辺デバイスは、前記親機に接続、結合、またはプラグインされた前記1つ以上の機能デバイスの機能を有する仮想デバイスを露出するよう構成される、システム。
【請求項12】
処理デバイスを、通信ネットワークの親機に接続、結合、またはプラグインされた機能デバイスに接続するための方法であって、前記親機は、送信機および受信機またはトランシーバを有し、前記処理デバイスは、メモリと、ディスプレイと、オペレーティングシステムとを有し、前記方法は、
1つ以上の第1の周辺デバイスを前記処理デバイスに結合、接続、装着、またはプラグインすることを含み、前記1つ以上の第1の周辺デバイスは、受信機、送信機、またはトランシーバを有し、前記方法はさらに、
前記親機が、前記親機に接続、結合、またはプラグインされた前記機能デバイスから来る電子信号を受信することと、
前記親機が、前記親機に接続、結合、またはプラグインされた前記機能デバイスから来る電子音声信号を含む電子信号を受信すると、前記電子音声信号を、他の電子信号データとは別個の処理された音声データとして、解釈、処理、および変換することと、前記親機が、前記親機に接続、結合、またはプラグインされた前記機能デバイスから来る電子画像/ビデオ信号を含む電子信号を受信すると、前記電子画像/ビデオ信号を、他の電子信号データとは別個の処理された画像/ビデオデータとして、解釈、処理、および変換することと、
前記親機および前記1つ以上の第1の周辺デバイスにおいて、それぞれ、前記通信ネットワークを介して、前記処理されたデータを、送信および受信し、前記処理されたデータを、前記親機に接続、結合、またはプラグインされた前記機能デバイスの少なくとも1つの固定されたまたは設定可能なエンドポイントを介して、前記処理デバイスに利用できるようにすることと、
前記1つ以上の第1の周辺デバイスが、前記1つ以上の第1の周辺デバイスの端部において前記機能デバイスを模倣することによって、前記親機に接続、結合、またはプラグインされた前記機能デバイスを前記処理デバイスに露出することとを含み、
模倣によって、同じデバイスが、前記少なくとも1つのエンドポイントにおいて、前記親機に接続、結合、またはプラグインされた前記機能デバイスとして露出され、前記機能デバイスが、前記親機に接続、結合、またはプラグインされた前記機能デバイスの模倣として露出されるとき、前記方法は、前記1つ以上の第1の周辺デバイス上または前記処理デバイス上で、前記少なくとも1つの固定されたまたは設定可能なエンドポイントを利用する、方法。
【請求項13】
前記方法は、前記親機に接続、結合、またはプラグインされた前記機能デバイスを、前記親機に接続、結合、またはプラグインされた前記機能デバイスと同じ機能を有する仮想デバイスとして露出することを含み、プロプライエタリソフトウェア、またはこれをサポートするよう機能デバイス固有のドライバをインストールする必要性を回避する、請求項12に記載の方法。
【請求項14】
前記親機による電子音声信号の処理は、暗号化、復号化、エンコード、ミキシング、多重化、多重分離、デコード、エンハンス、エコー除去、ノイズ低減、再サンプリングのいずれかを含み、前記親機による電子画像/ビデオ信号の処理は、暗号化、復号化、エンコード、ミキシング、多重化、多重分離、デコード、エンハンス、圧縮、圧縮解除のいずれかを含む、請求項12または13に記載の方法。
【請求項15】
前記親機に接続、結合、またはプラグインされた前記機能デバイスの前記少なくとも1つの固定されたまたは設定可能なエンドポイントを、前記1つ以上の第1の周辺デバイスに露出し、利用できるようにし、複数の第1の周辺デバイスと同時に露出し、利用できるようになどする、請求項12~14のいずれか1項に記載の方法。
【請求項16】
ジェネリック通信プロトコルを介して、前記1つ以上の第1の周辺デバイスを前記処理デバイスに結合、接続、装着、またはプラグインすることを含む、請求項12~15のいずれか1項に記載の方法。
【請求項17】
前記処理デバイスと前記1つ以上の第1の周辺デバイスとの間の通信のために前記ジェネリック通信プロトコルを使用することを含む、請求項16に記載の方法。
【請求項18】
前記1つ以上の第1の周辺デバイスを無線または有線接続によって前記親機に接続することを含む、請求項12~17のいずれか1項に記載の方法。
【請求項19】
2つのエンドポイントを組み合わせて1つのエンドポイントとして前記処理デバイスに露出することを含む、請求項12~18のいずれか1項に記載の方法。
【請求項20】
前記機能デバイスは、TV、ビデオデバイス、音声デバイス、スピーカーホン、カメラ、またはディスプレイのいずれかである、請求項12~19のいずれか1項に記載の方法。
【請求項21】
前記処理デバイスを、前記親機に接続、結合、またはプラグインされた1つ以上のさらなる機能デバイスに接続することと、前記1つ以上の第1の周辺デバイスが、当該機能デバイスの機能と前記親機に接続、結合、またはプラグインされた前記1つ以上のさらなる機能デバイスの機能とを組合わせた仮想デバイスを露出することとを含む、請求項12~20のいずれか1項に記載の方法。
【請求項22】
処理デバイスを、通信ネットワークの親機に接続、結合、またはプラグインされた1つ以上の機能デバイスに接続するための方法であって、前記親機は、送信機および受信機またはトランシーバを有し、前記処理デバイスは、メモリと、ディスプレイと、オペレーティングシステムとを有し、前記方法は、
1つ以上の第1の周辺デバイスを前記処理デバイスに結合、接続、装着、またはプラグインすることを含み、前記1つ以上の第1の周辺デバイスは、受信機、送信機、またはトランシーバを有し、前記方法はさらに、
前記親機が、前記親機に接続、結合、またはプラグインされた前記1つ以上の機能デバイスから来る電子信号を受信することと、
前記親機が、前記親機に接続、結合、またはプラグインされた前記1つ以上の機能デバイスから来る電子音声信号を含む電子信号を受信すると、前記電子音声信号を、他の電子信号データとは別個の処理された音声データとして、解釈、処理、および変換することと、前記親機が、前記親機に接続、結合、またはプラグインされた前記1つ以上の機能デバイスから来る電子画像/ビデオ信号を含む電子信号を受信すると、前記電子画像/ビデオ信号を、他の電子信号データとは別個の処理された画像/ビデオデータとして、解釈、処理、および変換することと、
前記親機および前記1つ以上の第1の周辺デバイスにおいて、それぞれ、前記通信ネットワークを介して、前記処理されたデータを、送信および受信し、前記処理されたデータを、前記親機に接続、結合、またはプラグインされた前記1つ以上の機能デバイスの少なくとも1つの固定されたまたは設定可能なエンドポイントを介して、前記処理デバイスに利用できるようにすることと、
前記親機が、前記親機に接続、結合、またはプラグインされた前記1つ以上の機能デバイスの前記少なくとも1つの固定されたまたは設定可能なエンドポイントを、前記1つ以上の第1の周辺デバイスに露出し、利用できるようにすることとを含み、
前記1つ以上の第1の周辺デバイスは、前記親機に接続、結合、またはプラグインされた前記1つ以上の機能デバイスの機能を有する仮想デバイスを露出する、方法。
【請求項23】
コンピュータのプロセッサによって実行されると、請求項12~22のいずれか1項に記載の方法を当該コンピュータに実施させるコンピュータプログラム。
【請求項24】
請求項23に記載のコンピュータプログラムを格納する非一時的な信号ストレージ手段。
【外国語明細書】