JP5961185B2 - リモート・セッションにおけるリアルタイム・メディア最適化 - Google Patents

リモート・セッションにおけるリアルタイム・メディア最適化 Download PDF

Info

Publication number
JP5961185B2
JP5961185B2 JP2013544511A JP2013544511A JP5961185B2 JP 5961185 B2 JP5961185 B2 JP 5961185B2 JP 2013544511 A JP2013544511 A JP 2013544511A JP 2013544511 A JP2013544511 A JP 2013544511A JP 5961185 B2 JP5961185 B2 JP 5961185B2
Authority
JP
Japan
Prior art keywords
real
computing device
server
media data
path
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2013544511A
Other languages
English (en)
Other versions
JP2014507697A5 (ja
JP2014507697A (ja
Inventor
シェイ,グオ−ウェイ
スリニビサン,スリバッサ・ケイ
ベラユサム,センティル・ケイ
マハジャン,ラジニーシュ
アイヤー,サブハシュリ
カーン,フマユン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2014507697A publication Critical patent/JP2014507697A/ja
Publication of JP2014507697A5 publication Critical patent/JP2014507697A5/ja
Application granted granted Critical
Publication of JP5961185B2 publication Critical patent/JP5961185B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/402Support for services or applications wherein the services involve a main real-time session and one or more additional parallel non-real time sessions, e.g. downloading a file in a parallel FTP session, initiating an email or combinational services
    • H04L65/4025Support for services or applications wherein the services involve a main real-time session and one or more additional parallel non-real time sessions, e.g. downloading a file in a parallel FTP session, initiating an email or combinational services where none of the additional parallel sessions is real time or time sensitive, e.g. downloading a file in a parallel FTP session, initiating an email or combinational services

Description

リモート・セッションにおけるリアルタイム・メディア最適化。
[001] ビデオ会議では、音声および映像の遠隔通信を用いて、異なる場所にいる人々を集めてミーティングを行う。これは、個人事務所の2人の人間の間(ポイント・ツー・ポイント)での会話や、別々の場所にある大きい部屋に1人より多くの人間がいる場合のような幾つかのサイト(マルチポイント)を含んだ会話と同様に、簡単なものである。ビデオ会議は、ミーティング活動の音声および映像の送信に加えて、文書や、コンピュータで表示される情報や、ホワイトボードを共有するために使用することができる。
[002] この概要は、概念を選択的に簡素な形で紹介するために提供されるものであり、それらの概念については「詳細な説明」の部分で更に説明する。この概要は、特許請求の範囲に記載する主題事項の鍵となる特徴や本質的な特徴を特定することを意図していない。また、この概要は、主題事項の範囲を限定するために使用することを意図したものでもない。
[003] リアルタイム・メディア最適化を提供する。最初に、リモート計算デバイスとのリモート・セッションを確立する。次に、リモート・セッション中に、非リアルタイム・メディア・データを、サーバ・パス(サーバ経路)を介してリモート計算デバイスと交換する。更に、リモート・セッション中に、リアルタイム・メディア・データを、メディア・パス(メディア経路)を介してリモート計算デバイスと交換する。
[004] 上記の概要的な説明および下記の詳細な説明の双方とも、単なる例を示すものであり、説明を目的とするものである。従って、上記の概要的な説明および下記の詳細な説明は、制限を加えるものとして考慮すべきではない。更に、ここで述べられる構成や変形形態に加えて、更なる構成や変形形態を提供することもできる。例えば、実施形態を、詳細な説明に記載した構成を組み合わせたものや、それらの構成を部分的に組み合わせたものとすることもできる。
[005] ここでの開示に含まれ且つ開示の一部を構成する添付の図面は、本発明の様々な実施形態を示す。
図1は、仮想化された環境のブロック図である。 図2は、リアルタイム・メディア・システムのブロック図である。 図3は、リアルタイム・メディア最適化を提供する方法のフローチャートである。 図4は、リアルタイム・メディア・システムのブロック図である。 図5は、計算デバイスを含むシステムのブロック図である。
[011] 以下の詳細な説明では、添付の図面を参照する。図面および以下の説明では、可能な範囲で、同じまたは類似のエレメントに関して同じ参照番号を使用している。以下に本発明の実施形態について説明するが、変形例、適応例、および他の実施例も可能である。例えば、図に示したエレメントに対しての代替や付加や変更を行うことができ、また、ここで説明する方法についても、段(工程)を代替したり、順を変更したり、更に段を加えたりすることにより、変更することもできる。従って、下記の説明は本発明を限定するものではない。本発明の適切な範囲は特許請求の範囲により定められる。
[012] デスクトップの仮想化は、センシティブなデータおよびアプリケーションを有する企業において使用されている。そのような企業は、センシティブなデータおよびアプリケーションをクライアント側マシンに駐在させることができない(例えば、セキュリティに関する問題があるため)。従って、デスクトップの仮想化では、シン・クライアント(thin client)がクライアント側マシン上で動作し、センシティブなデータおよびアプリケーションは、企業により制御されるサーバ上で実行される。この状況では、アプリケーションがサーバで自動的に実行され、ユーザが見ることができるのは、クライアント側マシン上のユーザ・インターフェース(UI)のみである。従って、企業のシステム管理者が、サーバ側イメージを更新する。そのため、ユーザがサーバへログインしたときには、ユーザは、システム管理者が押しつけたい最新のソフトウェアを得ることになる。
[013] 図1は、仮想化環境100のブロック図である。図1に示すように、デスクトップが仮想化されると、実際の処理は、クライアント側マシン110ではなくサーバ105で行われる。このようなアプリケーション(即ち、仮想化環境100で実行されるアプリケーション)は、「仮想化アプリケーション」と呼ばれることもある。例えば、第1アプリケーション115および第2アプリケーション120は、実際にはサーバ105で実行されている。クライアント側マシン110は、第1アプリケーション115および第2アプリケーション120にそれぞれ対応する第1ユーザ・インターフェース125および第2ユーザ・インターフェース130を、レンダリングして表示する。仮想化アプリケーションは、非リアルタイムのアプリケーション(例えば、ワード・プロセッシングやスプレッドシートなど)に関して許容することができ、その場合、生のデータ(例えば、キー入力など)は、クライアント側マシンからサーバへ送られ、サーバで実行される仮想化アプリケーションが、ユーザ入力を受信してデータを処理する。
[014] リアルタイム音声/映像会議アプリケーションは、上記の仮想化環境において仮想化アプリケーションとして実行することができる。リアルタイム音声/映像会議アプリケーションは、クライアント側マシンから捕獲した生の音声/映像データを取り入れ、そのデータをエンコードし、そのエンコードされたデータを、例えば有線で、送信する。更に、リアルタイム音声/映像会議アプリケーションは、エンコードされたデータのストリームをネットワークから受信し、そのエンコードされたデータのストリームをデコードし、そのデコードされたデータのストリームをクライアント側マシン上でレンダリングする。しかし、クライアント側マシンでローカルに実行される「非仮想化」リアルタイム・アプリケーションと比べた場合、仮想化したリアルタイム音声/映像会議アプリケーションでは、「仮想化」リアルタイム・アプリケーションが通る必要のある追加のホップ(hop、行程)(例えば、サーバを通る行程)がある。
[015] 非仮想化リアルタイム・アプリケーションにおいてリアルタイムの音声/映像の送信および受信を行う場合、全ての処理は、サーバではなくクライアント側マシンで行われる。例えば、クライアント側アプリケーションは、デバイスから音声/映像を捕獲し、エンコードし、それをクライアント側マシンから有線で送信する。非仮想化アプリケーションとは対照的に、仮想化リアルタイム・アプリケーションでは、捕獲した生の音声/映像データを、例えば、捕獲用デバイスを遠隔操作することによりサーバへ送信するか、または捕獲用デバイスからの生のデータ・ストリームを、リモート・デスクトップ・チャンネルを介してサーバへ送信する。更に、仮想化環境におけるサーバは、エンコードされたストリームを送信する。従って、仮想化環境では、音声/映像のパスに追加的なホップ(例えば、クライアント側マシンからサーバへの行程)がある。それらの追加的なホップは、リアルタイム音声/映像データの流れにおける遅延/レイテンシを増加させる。
[016] 図2は、本発明の実施形態に従ったリアルタイム・メディア・システム200を示す。リアルタイム・メディア・システム200は、第1クライアント側マシン205(例えば、ローカル計算デバイス)、第2クライアント側マシン210(例えば、リモート計算デバイス)、サーバ215、およびネットワーク220を備える。本発明の実施形態に従うと、非仮想化リアルタイム音声/映像会議は、第1クライアント側マシン205と第2クライアント側マシン210との間で、ネットワーク220を介して行われる。
[017] 本発明の実施形態がサーバ・パス(即ち、第1ホップ225および第2ホップ230)を使用する場合、第1クライアント側マシン205と第2クライアント側マシン210との間の音声/映像データのパスにおいて、追加的なホップ(例えば、第1クライアント側マシン205からサーバ205への行程と、サーバ215から第2クライアント側マシン210への行程)があることになる。そのような追加的なホップは、第1クライアント側マシン205と第2クライアント側マシン210との間でのリアルタイムの音声/映像データの流れにおいて、例えば、遅延/レイテンシを増加させる。
[018] 本発明の実施形態に従うと、上記の第1クライアント側マシン205と第2クライアント側マシン210との間でのリアルタイムの音声/映像データの流れにおける遅延/レイテンシは、そのリアルタイムの音声/映像データの流れにおいてサーバ215を含ませないことにより、避けることができる。例えば、音声/映像データを、サーバ215を介さないメディア・パス235を介して、第1クライアント側マシン205と第2クライアント側マシン210との間で送信することができる。しかし、メディア・パス235が確立されない場合や、メディア・パス235を確立した後に故障した場合、音声/映像データは、サーバ・パスを介して第1クライアント側マシン205と第2クライアント側マシン210との間で送信される。
[019] 第1クライアント側マシン205、第2クライアント側マシン210、およびサーバ215のうちの何れのものも、例えば、デスクトップ・コンピュータ、ノートブック・コンピュータ、モバイル・デバイス、スマートフォン、またはパーソナル・デジタル・アシスタントを含み得るが、これらに限定はされない。ネットワーク220は、第1クライアント側マシン205、第2クライアント側マシン210、およびサーバ215が通信を行えるようにするインターネットや他のタイプのネットワークを含む。第1クライアント側マシン205、第2クライアント側マシン210、およびサーバ215のうちの何れのものも、例えば、図5と関連して詳細に説明する計算デバイス500を用いて、インプリメント(実施)することができる。
[020] 図3は、リアルタイム・メディア最適化を提供する本発明の実施形態に従った方法300に含まれる段(ステージ)を概略的に記載するフローチャートである。方法300は、上記のリアルタイム・メディア・システム200を用いて実施できる。方法300のステージの実施については、以下で詳細に説明する。
[021] 方法300は、開始ブロック305から始まり、ステージ310へ進む。ステージ310では、第1クライアント側マシン205が、リモート計算デバイス(例えば、第2クライアント側マシン210)とのリモート・セッションを確立する。例えば、図4に示すように、アプリケーション405はサーバ215で実行される。アプリケーション405はビデオ会議アプリケーションを含む。リモート・セッションに従って、第1クライアント側マシン205で動作するシン・クライアントは、サーバ215で実行されるアプリケーション405に対応するユーザ・インターフェース415をレンダリングして表示する。アプリケーション405は、第1クライアント側マシン205と第2クライアント側マシン210との間でのリモート・セッションを完成させる。
[022] 方法300は、第1クライアント側マシン205がリモート・セッションを確立するステージ310からステージ320へと進み、ステージ320において、リモート・セッション中に、第1クライアント側マシン205は、サーバ・パスを介してリモート計算デバイス(例えば、第2クライアント側マシン210)と、非リアルタイム・メディア・データを交換する。交換される非リアルタイム・メディア・データは、例えば、第1クライアント側マシン205と第2クライアント側マシン210との間でのビデオ会議セッションに対応する非音声データまたは非映像データである。例えば、非リアルタイム・メディア・データは、例えば、緊急の911コールに使用される第1クライアント側マシン205の位置に対応するデータを含むことができる。非リアルタイム・メディア・データは、クライアントおよびサーバの能力に関するデータを含むこともできるが、これに限定はされない。それらの能力は、2つのクライアント間での直接通信に影響を与えるように使用することができる。
[023] ステージ320において第1クライアント側マシン205が非リアルタイム・メディア・データを交換すると、方法300はステージ330へと続き、ステージ330において、第1クライアント側マシン205は、リモート・セッション中に、メディア・パス235を介してリモート計算デバイスと、リアルタイム・メディア・データを交換する。リアルタイム・メディア・データは、音声や映像のデータを含む。本発明の実施形態が、リアルタイム・メディア・データに関してサーバ・パス(即ち、第1ホップ225および第2ホップ)を使用する場合、第1クライアント側マシン205と第2クライアント側マシン210との間の音声/映像データのパスにおいて、追加的なホップ(例えば、第1クライアント側マシン205からサーバ215への行程と、サーバ215から第2クライアント側マシン210への行程)が存在することになる。それらの追加的なホップは、例えば、第1クライアント側マシン205と第2クライアント側マシン210との間でのリアルタイムの音声/映像データの流れの遅延/レイテンシを増加させ得る。
[024] 本発明の実施形態は、第1クライアント側マシン205にリモート・メディア・マネージャ(RMM)(例えば、リモート・メディア・マネージャ・アプリケーション410)を備え、それにより、リアルタイム・メディア・データ(例えば、音声/映像や他の様式のものを付加することもできる)を捕獲し、エンコードし、サーバ215を関与させずにメディア・パス235で第1クライアント側マシン205から第2クライアント側マシン210へ直接的に送信することにより、上記の遅延/レイテンシを避けることができる。更に、RMMは、エンコードされたリアルタイム・メディア・データをネットワーク220から受信し(例えば、第2クライアント側マシン210からメディア・パス235を介して直接に送信される)、受信したエンコードされたリアルタイム・メディア・データをデコードし、第2クライアント側マシン210から受信してデコードされたリアルタイム・メディア・データを、ユーザ・インターフェース415へと直接的にレンダリングする。RMMは、サーバ215のアプリケーション405と関連して動作する。例えば、アプリケーション405は、第1クライアント側マシン205と接続された入力デバイス(例えば、カメラ420やマイクロフォン425)および出力デバイス(例えば、スピーカ430)を用いて、データの送信および受信を行う。RMMも、同じ入力デバイスおよび出力デバイスを使用することができる。従って、RMMは、入力デバイスおよび出力デバイスを共用するめに、サーバ215のアプリケーション405と関連して動作する。言い換えると、入力デバイスおよび出力デバイスは、メディア・パス235を介して送信/受信されるデータと、サーバ・パスを介して送信/受信されるデータとの双方のために共用される。
[025] RMMがサーバ215のアプリケーション405と関連して動作する構成における別の例は、メディア・パス235からのデータとサーバ・パスからのデータとが同期をとられる例である。1つの例は、ジオメトリ・トラッキング(geometry tracking、幾何学的追跡)を含む。ジオメトリ・トラッキングは、映像をディスプレイ415上の表示すべき位置に配することを可能とする(映像データが、第2クライアント側マシン210から直接に送信されて、サーバ・パスを回避してメディア・パス235を介して、第1クライアント側マシン205へ直接に入来した場合)。例えばアプリケーション405は、映像領域の位置および形状の情報を、サーバ・パスを介して第1クライアント側マシン205へ送信する。次に、第1クライアント側マシン205は、アプリケーション405により送られた情報(例えば、位置および形状)を追跡する「プロキシ」ウィンドウに、映像(メディア・パス235から入来)をレンダリングする。アプリケーション405は、映像の位置および形状に関して発生し得る変化について連続的に監視し、その情報により第1クライアント側マシン205の更新を行い続ける。第1クライアント側マシン205は、アプリケーション405の情報により「プロキシ」ウィンドウの更新を行い続ける。このようにして、第1クライアント側マシン205での映像の表示の同期がとられる。
[026] 更に、リモート・セッション中にメディア・パス235を介してリモート計算デバイスとリアルタイム・メディア・データを交換する第1クライアント側マシン205は、第1クライアント側マシン205からリモート計算デバイスへのネットワーク・アドレス変換(NAT)を行う。コンピュータ・ネットワークでは、ネットワーク・アドレス変換(NAT)は、トラフィック・ルーティング・デバイスを通過するときにデータグラム(IP)・パケット・ヘッダのネットワーク・アドレス情報を変更するプロセスを含むが、これは、1つのIPアドレス空間を別のIPアドレス空間へ再びマッピングすることを目的とする。ステージ330において第1クライアント側マシン205がリアルタイム・メディア・データを交換した後、方法300はステージ340で終了する。
[027] 本発明に従った実施形態は、リアルタイム・メディア最適化を提供するシステムを含む。システムは、メモリ・ストレージと、そのメモリ・ストレージに結合される処理ユニットとを備える。処理ユニットは、リモート計算デバイスとのリモート・セッションを確立するように動作できる。更に、処理ユニットは、リモート・セッション中に、サーバ・パスを介してリモート計算デバイスと非リアルタイム・メディア・データを交換するように動作し、かつ、リモート・セッション中に、メディア・パスを介してリモート計算デバイスとリアルタイム・メディア・データを交換するように動作する。
[028] 本発明に従った別の実施形態は、リアルタイム・メディア最適化を提供するシステムを含む。システムは、メモリ・ストレージと、そのメモリ・ストレージに結合される処理ユニットとを備える。処理ユニットは、ローカル計算デバイスとリモート計算デバイスとの間のリモート・セッションを確立するように動作できる。更に、処理ユニットは、リモート・セッション中に、サーバを含むサーバ・パスを介して、ローカル計算デバイスとリモート計算デバイスとの間で、非リアルタイム・メディア・データを交換するように動作する。更に、処理ユニットは、リモート・セッション中に、メディア・パスを介して、ローカル計算デバイスとリモート計算デバイスとの間で、音声データおよび映像データを含むリアルタイム・メディア・データを交換するように動作する。メディア・パス中にサーバは無い。
[029] 本発明に従った更に別の実施形態は、リアルタイム・メディア最適化を提供するシステムを含む。システムは、メモリ・ストレージと、そのメモリ・ストレージに結合される処理ユニットとを備える。処理ユニットは、リモート計算デバイスとのリモート・セッションを確立するように動作できる。リモート・セッションを確立するように動作する処理ユニットは、サーバ・パスを確立するように動作する。サーバ・パスにはサーバが含まれている。また、処理ユニットは、メディア・パスを確立するように動作する。サーバ・パスにはサーバが含まれておらず、メディア・パスはリモート計算デバイスと直接的に確立される。更に、処理ユニットは、リモート・セッション中に、サーバ・パスを介して、リモート計算デバイスと非リアルタイム・メディア・データを交換するように動作する。更に、処理ユニットは、リモート・セッション中に、メディア・パスを介して、リモート計算デバイスとリアルタイム・メディア・データを交換するように動作する。
[030] 図5は、計算デバイス500を含むシステムのブロック図である。本発明の実施形態に従うと、上記のメモリ・ストレージおよび処理ユニットは、図5の計算デバイス500などのような計算デバイスにおいて実施される。メモリ・ストレージおよび処理ユニットは、ハードウェア、ソフトウェア、およびファームウェアの任意の適切な組み合わせにより実現できる。更に、計算デバイス500は、仮想マシンでも物理マシンでも動作できる。例えば、メモリ・ストレージおよび処理ユニットは、計算デバイス500を用いて、または他の任意の計算デバイス518を計算デバイス500と組み合わせて用いて、実現することができる。上記のシステム、デバイス、および処理装置は例であり、本発明の実施形態に従って、他のシステム、デバイス、および処理装置により上記のメモリ・ストレージおよび処理ユニットを構成することもできる。更に、計算デバイス500は、上記のように、第1クライアント側マシン205や第2クライアント側マシン210のための動作環境を構成することができる。第1クライアント側マシン205や第2クライアント側マシン210は、別の環境でも動作することができ、計算デバイス500に限定されない。
[031] 図5に関して、本発明の実施形態に従ったシステムは、計算デバイス500などのような計算デバイスを含む。基本的な構成では、計算デバイス500は、少なくとも1つの処理ユニット502およびシステム・メモリ504を含む。計算デバイスのコンフィギュレーションおよびタイプに応じて、システム・メモリ504は、揮発性メモリ(例えば、ランダム・アクセス・メモリ(RAM))、不揮発性メモリ(例えば、リード・オンリ・メモリ(ROM))、フラッシュ・メモリ、またはこれらのメモリの組み合わせを含むが、これらに限定はされない。システム・メモリ504は、オペレーティング・システム505、1以上のプログラミング・モジュール506、およびプログラム・データ507を含むことができる。オペレーティング・システム505は、例えば、計算デバイス500の動作を制御するために適切なものである。1つの実施形態では、プログラミング・モジュール506は、例えば、リモート・メディア・マネージャ・アプリケーション410を含む。更に、本発明の実施形態は、グラフィックス・ライブラリ、他のオペレーティング・システム、または任意の他のアプリケーション・プログラムと関連して実施することができ、特定のアプリケーションやシステムに限定されない。この基本的な構成は、図5において破線508で囲んだコンポーネントとして示されている。
[032] 計算デバイス500は更なる特徴や機能を有する。例えば、計算デバイス500は、例えば、磁気ディスク、光ディスク、テープなどのような追加のデータ・ストレージ・デバイス(取り外し可能なものおよび/または取り外し不可能なもの)を含むこともできる。そのような追加のストレージは、図5において、取り外し可能ストレージ509および取り外し不可能ストレージ510として示している。計算デバイス500はまた、通信接続516を含むことができ、この通信接続516により、デバイス500は、例えば、インターネットやイントラネットなどのような分散型計算環境におけるネットワークを介して、他の計算デバイス518と通信することが可能となる。通信接続516は、通信媒体の一例である。
[033] ここで使用する「コンピュータ読取可能媒体」という用語は、コンピュータ・ストレージ媒体を含む。コンピュータ・ストレージ媒体は、揮発性の媒体、不揮発性の媒体、取り外し可能な媒体、および取り外し不可能な媒体を含むことができ、これらの媒体は、情報を記憶する任意の方法や技術、例えば、コンピュータ読取可能命令、データ構造、プログラミング・モジュール、他のデータなどにより実現できる。システム・メモリ504、取り外し可能ストレージ509、および取り外し不可能ストレージ510は、全てコンピュータ・ストレージ媒体の例(即ち、メモリ・ストレージ)である。コンピュータ・ストレージ媒体は、RAM、ROM、電子的消去可能リード・オンリ・メモリ(EEPROM)、フラッシュ・メモリや他のメモリ技術、CD−ROM、デジタル・バーサタイル・ディスク(DVD)や他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスク・ストレージや他の磁気ストレージ・デバイス、または情報を記憶するために使用でき且つ計算デバイス500によりアクセス可能な任意の他の媒体などを含むが、これらに限定はされない。このようなコンピュータ・ストレージ媒体は、デバイス500の一部であり得る。また、計算デバイス500は、キーボード、マウス、ペン、音声入力デバイス、接触(タッチ)入力デバイスなどのような入力デバイス512(1以上)を有する。また、ディスプレイ、スピーカ、プリンタなどのような出力デバイス514(1以上)も有する。なお、上記のデバイスは例であり、他のものを使用することもできる。
[034] また、ここで使用する「コンピュータ読取可能媒体」という用語は、通信媒体も含む。通信媒体には、コンピュータ読取可能命令、データ構造、プログラム・モジュール、変調されたデータ信号内のデータなどが埋め込まれる。変調されたデータ信号とは、搬送波や他のトランスポート機構などである。通信媒体は、任意の情報受渡媒体を含む。「変調されたデータ信号」という用語は、「変調されたデータ信号」という用語は、情報を信号内にエンコードするような様式で設定または変更されて1以上の特性を有する信号、を意味する。例えば、通信媒体は、有線ネットワークや直接有線接続などのような有線媒体と、音響、無線周波数(RF)、赤外線、および他のワイヤレスの媒体などのようなワイヤレス媒体とを含むが、これらに限定はされない。
[035] 上記のように、オペレーティング・システム505も含めて、多数のプログラム・モジュールおよびデータ・ファイルをシステム・メモリ504に記憶することができる。処理ユニット502で実行する際、プログラミング・モジュール506(例えば、リモート・メディア・マネージャ・アプリケーション410)は、例えば、上記の方法300の1以上のステージを含む処理を行う。なお、上記の処理は例であり、処理ユニット502は他の処理を行うこともできる。本発明の実施形態に従って使用できる他のプログラミング・モジュールには、電子メールやコンタクト・アプリケーション(contacts application)、ワード・プロセッシング・アプリケーション、スプレッドシート・アプリケーション、データベース・アプリケーション、スライド・プレゼンテーション・アプリケーション、描画やコンピュータ支援のアプリケーションなどが含まれる。
[036] 本発明の実施形態に従うと、一般に、プログラム・モジュールは、ルーチン、プログラム、コンポーネント、データ構造、および他のタイプの構造などを含み、それらは、特定のタスクを行うか、または特定の抽象データ型を実現する。更に、本発明の実施形態は他のコンピュータ・システム構成を用いて実施することができ、他のコンピュータ・システム構成には、手持型のデバイス、マルチプロセッサ・システム、マイクロプロセッサ・ベースまたはプログラマブルの大衆消費電子製品、ミニコンピュータ、メインフレーム・コンピュータなどが含まれる。また、本発明の実施形態は分散型計算環境でも実施することができ、その場合、タスクは、通信ネットワークを通じてリンクされるリモート処理デバイスにより行われる。分散型計算環境では、プログラム・モジュールは、ローカルのメモリ・ストレージ・デバイスおよびリモートのメモリ・ストレージ・デバイスの双方に配されることができる。
[037] 更に、本発明の実施形態は電子回路で実施することができ、電子回路は、個別の電子エレメント、論理ゲートを含むパッケージ化または集積化された電子チップ、マイクロプロセッサを用いる回路、電子回路やマイクロプロセッサを含むシングル・チップなどを含む。また、本発明の実施形態は、例えば、AND、OR、NOTなどのような論理演算を行うことができる他の技術を用いて実施することができ、他の技術には、機械的技術、光学的技術、流体工学的技術、量子学的技術が含まれるが、これらに限定はされない。更に、本発明の実施形態は、汎用コンピュータや、任意の他の回路やシステムで実施することができる。
[038] 本発明の実施形態は、例えば、コンピュータ・プロセス(方法)、計算システム、または製造品として実現でき、製造品には、コンピュータ・プログラム製品やコンピュータ読取可能媒体などが含まれる。コンピュータ・プログラム製品は、コンピュータ記録媒体とすることができ、コンピュータ記録媒体は、コンピュータ・システムにより読取可能であり、コンピュータ・プロセスを実行するための命令のコンピュータ・プログラムがエンコードされたものである。また、コンピュータ・プログラム製品は、搬送体を伝搬する伝搬信号とすることがてき、この伝搬信号は、コンピュータ・システムにより読取可能であり、コンピュータ・プロセスを実行するための命令のコンピュータ・プログラムがエンコードされたものである。従って、本発明は、ハードウェアおよび/またはソフトウェア(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)で実現できる。言い換えると、本発明の実施形態は、コンピュータで使用可能または読取可能な記録媒体上のコンピュータ・プログラム製品の形態とすることができ、記録媒体には、コンピュータで使用可能または読取可能なプログラム・コードが埋め込まれており、プログラム・コードは、命令実行システムにより、または命令実行システムと関連して、使用される。コンピュータで使用可能または読取可能な媒体は任意の媒体とすることができるが、その任意の媒体は、命令実行システムにより、または命令実行システムと関連して使用されるプログラムの包含、記憶、通信、伝搬、またはトランスポートを行うことができるものとする。
[039] コンピュータで使用可能または読取可能な記録媒体は、例えば、電子、磁気、光学、電磁、赤外線、または半導体の技術を用いるシステム、装置、デバイス、または伝搬媒体とすることができる。より特定的なコンピュータ読取可能媒体の例(網羅するものではない)として、コンピュータ読取可能媒体は、1以上の配線を含む電気的接続、ポータブル・コンピュータ・ディスケット、ランダム・アクセス・メモリ(RAM)、リード・オンリ・メモリ(ROM)、消去可能プログラマブル・リード・オンリ・メモリ(EPROMやフラッシュ・メモリ)、光ファイバ、およびポータブル・コンパクト・ディスク・リード・オンリ・メモリ(CD−ROM)を含む。なお、コンピュータで使用可能または読取可能な記録媒体は、更には、プログラムをプリントできる紙や他の適切な媒体とすることができる。なぜなら、プログラムは、例えば、紙や他の媒体を光学スキャニングすることにより電子的に捕獲し、コンパイルし、解釈することができ、また、必要に応じて適切な様式で処理することができ、コンピュータのメモリへ記憶することができるからである。
[040] 例えば、本発明の実施形態は、上記で、本発明の実施形態に従った方法、システム、およびコンピュータ・プログラム製品のブロック図および/または動作図を参照して説明した。ブロックに記載した機能/動作は、フローチャートに示した順と異なる順で行われる場合もある。行われる機能/動作に応じて、例えば、連続して示された2つのブロックが、実際には、実質的に並列に行われる場合もあり、また、2つのブロックが逆の順に行われる場合もある。
[041] 本発明の特定の実施形態について説明したが、他の実施形態も存在し得る。更に、本発明の実施形態は、メモリおよび他の記録媒体に記憶されたデータと関連するものとして説明したが、データは、他のタイプのコンピュータ読取可能媒体へ記憶することや、他のタイプのコンピュータ読取可能媒体から読み出すことができる。他のタイプのコンピュータ読取可能媒体としては、ハード・ディスク、フロッピー(登録商標)・ディスク、CD−ROMなどのような2次ストレージ・デバイスや、インターネットからの搬送波や、他の形態のROMやRAMなどがある。更に、ここで開示した方法のステージは、本発明から離れることなく、ステージの順の変更やステージの挿入や削除などを行うことにより、任意の様式に変更することができる。
[042] 本出願に含まれるコードにおける著作権を含む全ての権利は、出願人に帰属するものであり、出願人の財産である。出願人は、本出願に含まれるコードにおける全ての権利を保持および保有しており、特許査定された発明を複製することに関してのみ、具体物を複製する許可を与えるが、他の目的のための許可は与えない。
[043] 明細書は例を含んでいるが、本発明の範囲は特許請求の範囲に示されている。更に、明細書は、構造的な特徴や方法論的な動作に対して特定的な言語で記載されているが、特許請求の範囲は上記の特徴や動作に制限されるものではない。むしろ、上記の特定の特徴や動作は、本発明の実施形態のための例として開示されたものである。

Claims (13)

  1. リアルタイム・メディア最適化を提供する方法であって、
    リモート計算デバイスとのリモート・セッションを確立するステップと、
    前記リモート・セッション中に、サーバを関与させることなくローカル計算デバイスと前記リモート計算デバイスとの間にメディア・パスを確立するステップと、
    前記リモート・セッション中に、サーバ・パスを介して前記サーバを通じて前記リモート計算デバイスと非リアルタイム・メディア・データを交換するステップと、
    前記リモート・セッション中に、前記サーバを関与させずに前記メディア・パスを介して前記リモート計算デバイスとリアルタイム・メディア・データを交換するステップと、
    記メディア・パスからの前記リアルタイム・メディア・データと前記サーバ・パスからの前記非リアルタイム・メディア・データとを同期させるステップであって、
    前記サーバから、映像領域の位置および形状を受信するステップと、
    前記メディア・パスから交換された前記リアルタイム・メディア・データをプロキシ・ウィンドウ上にレンダリングするステップであって、前記プロキシ・ウィンドウは、前記サーバから受信された前記映像領域の前記位置および前記形状を追跡するように構成される、ステップと、
    前記プロキシ・ウィンドウを、前記ローカル計算デバイス上にメディア・データを表示するように構成されたユーザ・インターフェースと同期させるステップと、
    を含む、ステップと、
    を備える方法。
  2. 請求項1に記載の方法であって、リモート・セッションを確立する前記ステップは、前記ローカル計算デバイスで動作するクライアントと、前記サーバで実行されるアプリケーションとの間にホップを確立するステップを備え、確立された前記ホップは前記サーバ・パス内にある、方法。
  3. 請求項1に記載の方法であって、サーバ・パスを介して前記リモート計算デバイスと非リアルタイム・メディア・データを交換する前記ステップは、前記サーバ・パス中にある前記サーバへ非リアルタイム情報を送るステップを備える、方法。
  4. 請求項1に記載の方法であって、サーバ・パスを介して前記リモート計算デバイスと非リアルタイム・メディア・データを交換する前記ステップは、前記サーバ・パス中にある前記サーバへ非リアルタイム情報を送るステップを備え、前記非リアルタイム情報は、前記ローカル計算デバイスの位置に対応する情報を含む、方法。
  5. 請求項1に記載の方法であって、メディア・パスを介して前記リモート計算デバイスとリアルタイム・メディア・データを交換する前記ステップは、前記リアルタイム・メディア・データを捕獲し、エンコードし、送信するステップを備える、方法。
  6. 請求項1に記載の方法であって、メディア・パスを介して前記リモート計算デバイスとリアルタイム・メディア・データを交換する前記ステップは、前記メディア・パスを介して前記リモート計算デバイスから前記リアルタイム・メディア・データを受信し、前記リアルタイム・メディア・データをデコードするステップを備える、方法。
  7. 請求項1に記載の方法であって、メディア・パスを介して前記リモート計算デバイスとリアルタイム・メディア・データを交換する前記ステップは、1つのアドレス空間を別のアドレス空間へ再びマッピングするために、ネットワーク・アドレス情報を変更するステップを備える、方法。
  8. 一組の命令を格納するコンピュータ読取可能メモリ記憶媒体であって、前記一組の命令は、実行されると、リアルタイム・メディア最適化を提供する方法を実施し、前記一組の命令によって実行される前記方法は
    ローカル計算デバイスとリモート計算デバイスとの間でのリモート・セッションを確立するステップと、
    前記リモート・セッション中に、サーバを関与させることなく前記ローカル計算デバイスと前記リモート計算デバイスとの間にメディア・パスを確立するステップと、
    前記リモート・セッション中に、サーバ・パスを介して、前記ローカル計算デバイスと前記リモート計算デバイスとの間で非リアルタイム・メディア・データを交換するステップであって、前記非リアルタイム・メディア・データを交換することは、前記サーバ・パス内の前記サーバを通じて前記非リアルタイム・メディア・データを送るステップを含むものである、非リアルタイム・メディア・データを交換するステップと、
    前記リモート・セッション中に、前記メディア・パスを介して、前記ローカル計算デバイスと前記リモート計算デバイスとの間で音声および映像データを含むリアルタイム・メディア・データを交換するステップであって、前記リアルタイム・メディア・データを交換することは、前記サーバを関与させずに前記メディア・パスを通じて前記ローカル計算デバイスと前記リモート計算デバイスとの間で直接的に前記リアルタイム・メディア・データを交換するステップを含むものである、リアルタイム・メディア・データを交換するステップと、
    前記メディア・パスからの前記リアルタイム・メディア・データと前記サーバ・パスからの前記非リアルタイム・メディア・データとを同期させるステップであって、
    前記サーバから、映像領域の位置および形状を受信するステップと、
    前記メディア・パスから交換された前記リアルタイム・メディア・データをプロキシ・ウィンドウ上にレンダリングするステップであって、前記プロキシ・ウィンドウは、前記サーバから受信された前記映像領域の前記位置および前記形状を追跡するように構成される、ステップと、
    前記プロキシ・ウィンドウを、前記ローカル計算デバイス上にメディア・データを表示するように構成されたユーザ・インターフェースと同期させるステップと、
    を含む、ステップと、
    を備える、コンピュータ読取可能メモリ記憶媒体
  9. 請求項8に記載のコンピュータ読取可能メモリ記憶媒体であって、リモート・セッションを確立する前記ステップは、前記ローカル計算デバイスで動作するクライアントと、前記サーバで実行されるアプリケーションとの間にホップを確立するステップを備え、確立された前記ホップは前記サーバ・パス内にある、コンピュータ読取可能メモリ記憶媒体
  10. 請求項8に記載のコンピュータ読取可能メモリ記憶媒体であって、前記メディア・パスは、前記ローカル計算デバイスで動作するクライアントで実行されるリモート・メディア・マネージャと、前記リモート計算デバイスとの間であるコンピュータ読取可能メモリ記憶媒体
  11. 請求項8に記載のコンピュータ読取可能メモリ記憶媒体であって、メディア・パスを介して前記リモート計算デバイスとリアルタイム・メディア・データを交換する前記ステップは、前記リアルタイム・メディア・データを捕獲し、エンコードし、送信するステップを備える、コンピュータ読取可能メモリ記憶媒体
  12. 請求項8に記載のコンピュータ読取可能メモリ記憶媒体であって、前記メディア・パスを介しての前記リモート計算デバイスとの、リアルタイム・メディア・データを交換する前記ステップは、前記メディア・パスを介して前記リモート計算デバイスから前記リアルタイム・メディア・データを受信し、前記リアルタイム・メディア・データをデコードし、デコードされた前記リアルタイム・メディア・データをレンダリングするステップを備える、コンピュータ読取可能メモリ記憶媒体
  13. リアルタイム・メディア最適化を提供するシステムであって、
    メモリ・ストレージと、
    前記メモリ・ストレージと結合される処理ユニットと
    を備え、
    前記処理ユニットは、リモート計算デバイスとのリモート・セッションを確立するように構成され、前記リモート・セッションを確立するように動作する前記処理ユニットは、
    サーバが関与するサーバ・パスを確立し、
    サーバが関与せず、前記リモート計算デバイスと直接に確立されるメディア・パスを確立する
    ように動作するものであり、
    前記処理ユニットは更に、
    前記リモート・セッション中に、前記サーバ・パスを介して前記リモート計算デバイスと非リアルタイム・メディア・データを交換し、
    前記リモート・セッション中に、前記メディア・パスを介して前記リモート計算デバイスとリアルタイム・メディア・データを交換し、
    前記メディア・パスからの前記リアルタイム・メディア・データと前記サーバ・パスからの前記非リアルタイム・メディア・データとを同期させ、前記同期させることは、
    前記サーバから、映像領域の位置および形状を受信すること、
    前記メディア・パスから交換された前記リアルタイム・メディア・データをプロキシ・ウィンドウ上にレンダリングし、前記プロキシ・ウィンドウは、前記サーバから受信された前記映像領域の前記位置および前記形状を追跡するように構成されること、および
    前記プロキシ・ウィンドウを、ローカル計算デバイス上にメディア・データを表示するように構成されたユーザ・インターフェースと同期させること
    を含む、
    ように構成される、
    システム。
JP2013544511A 2010-12-14 2011-11-28 リモート・セッションにおけるリアルタイム・メディア最適化 Active JP5961185B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/967,100 US9276972B2 (en) 2010-12-14 2010-12-14 Real-time media optimization over remoted sessions
US12/967,100 2010-12-14
PCT/US2011/062269 WO2012082347A2 (en) 2010-12-14 2011-11-28 Real-time media optimization over remoted sessions

Publications (3)

Publication Number Publication Date
JP2014507697A JP2014507697A (ja) 2014-03-27
JP2014507697A5 JP2014507697A5 (ja) 2015-01-15
JP5961185B2 true JP5961185B2 (ja) 2016-08-02

Family

ID=46200509

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013544511A Active JP5961185B2 (ja) 2010-12-14 2011-11-28 リモート・セッションにおけるリアルタイム・メディア最適化

Country Status (9)

Country Link
US (2) US9276972B2 (ja)
EP (1) EP2652913B1 (ja)
JP (1) JP5961185B2 (ja)
KR (1) KR101900969B1 (ja)
AU (2) AU2011341522B2 (ja)
BR (1) BR112013014766A8 (ja)
CA (1) CA2818516C (ja)
RU (1) RU2595548C2 (ja)
WO (1) WO2012082347A2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9276972B2 (en) 2010-12-14 2016-03-01 Microsoft Technology Licensing, Llc Real-time media optimization over remoted sessions
JP6353793B2 (ja) * 2015-01-16 2018-07-04 Kddi株式会社 画面共有システム、ソース端末、シンク端末及び画面共有方法
US11016717B1 (en) 2019-11-08 2021-05-25 Microsoft Technology Licensing, Llc Selective electronic content casting

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU764865B2 (en) * 1999-10-29 2003-09-04 United Video Properties, Inc. Television video conferencing systems
WO2001057678A1 (fr) 2000-02-02 2001-08-09 Nextech Corporation Procede de traitement destine a un systeme de reseau et un tel systeme
GB0108041D0 (en) * 2001-03-30 2001-05-23 Nokia Networks Oy Presence service in IP multimedia
US7634533B2 (en) 2004-04-30 2009-12-15 Microsoft Corporation Systems and methods for real-time audio-visual communication and data collaboration in a network conference environment
US7590750B2 (en) * 2004-09-10 2009-09-15 Microsoft Corporation Systems and methods for multimedia remoting over terminal server connections
JP4643386B2 (ja) 2005-08-09 2011-03-02 株式会社野村総合研究所 転送制御プログラム、送受信制御プログラム及びイベント情報送受信システム
US7860808B2 (en) * 2006-01-05 2010-12-28 International Business Machines Corporation System and method for hybrid conservation of fossil fuel
US9374263B2 (en) 2006-09-29 2016-06-21 Avaya Ecs Ltd. Latency differential mitigation for real time data streams
US20080146256A1 (en) 2006-12-19 2008-06-19 Jeffrey Charles Hawkins Sharing data during a voice call using a mobile communications device, and associated user interface
US9253222B2 (en) 2007-02-22 2016-02-02 Match.Com. L.L.C. Synchronous delivery of media content in a collaborative environment
US8230100B2 (en) 2007-07-26 2012-07-24 Realnetworks, Inc. Variable fidelity media provision system and method
US7769806B2 (en) * 2007-10-24 2010-08-03 Social Communications Company Automated real-time data stream switching in a shared virtual area communication environment
US8732236B2 (en) * 2008-12-05 2014-05-20 Social Communications Company Managing network communications between network nodes and stream transport protocol
US20090288007A1 (en) 2008-04-05 2009-11-19 Social Communications Company Spatial interfaces for realtime networked communications
EP2053825B1 (en) 2007-10-25 2015-07-08 Alcatel Lucent Distribution of shared content streams in communications networks
US8890874B2 (en) * 2007-12-14 2014-11-18 Microsoft Corporation Changing visual content communication
WO2010065848A2 (en) 2008-12-05 2010-06-10 Social Communications Company Realtime kernel
JP5381194B2 (ja) 2009-03-16 2014-01-08 富士通株式会社 通信プログラム、中継ノード、および通信方法
US8429647B2 (en) 2009-05-06 2013-04-23 Vmware, Inc. Virtual machine migration across network by publishing routes to the associated virtual networks via virtual router after the start of migration of the virtual machine
CN101841563A (zh) 2010-04-16 2010-09-22 上海亚图软件有限公司 服务器控制的基于p2p网游同步方法
US9276972B2 (en) 2010-12-14 2016-03-01 Microsoft Technology Licensing, Llc Real-time media optimization over remoted sessions

Also Published As

Publication number Publication date
KR20130143078A (ko) 2013-12-30
WO2012082347A3 (en) 2012-08-16
EP2652913A4 (en) 2014-07-23
KR101900969B1 (ko) 2018-09-20
CA2818516A1 (en) 2012-06-21
EP2652913B1 (en) 2019-04-24
US20120151008A1 (en) 2012-06-14
WO2012082347A2 (en) 2012-06-21
RU2595548C2 (ru) 2016-08-27
US9276972B2 (en) 2016-03-01
BR112013014766A2 (pt) 2016-10-04
US9699225B2 (en) 2017-07-04
EP2652913A2 (en) 2013-10-23
AU2016200543B2 (en) 2017-04-06
BR112013014766A8 (pt) 2017-12-19
JP2014507697A (ja) 2014-03-27
CN102571764A (zh) 2012-07-11
RU2013127119A (ru) 2014-12-20
AU2016200543A1 (en) 2016-02-18
AU2011341522A1 (en) 2013-06-06
CA2818516C (en) 2018-07-17
US20160112468A1 (en) 2016-04-21
AU2011341522B2 (en) 2015-10-29

Similar Documents

Publication Publication Date Title
US9774824B1 (en) System, method, and logic for managing virtual conferences involving multiple endpoints
WO2020248649A1 (zh) 音视频数据同步播放方法、装置、系统、电子设备及介质
JP2016508357A (ja) 複数のメディア・ストリームの使用による無線リアルタイム・メディア通信
US20200274908A1 (en) Screencast orchestration
WO2023138189A1 (zh) 数据处理方法、装置、设备以及介质
US11348074B2 (en) Binding separate communication platform meetings
WO2012032592A1 (ja) マルチユーザ通信のためのシステム、方法及び装置
WO2019062667A1 (zh) 会议内容的传输方法及装置
TW202147834A (zh) 同步本地房間和遠端共享
JP5961185B2 (ja) リモート・セッションにおけるリアルタイム・メディア最適化
JP2015180992A (ja) 情報処理システム、情報処理装置及びプログラム
US11108814B2 (en) Distributed denial of service mitigation for web conferencing
US20180367326A1 (en) Automatic connection switching for meeting room management devices
KR20180091319A (ko) 사운드 공유 장치 및 방법
US9628518B1 (en) Linking a collaboration session with an independent telepresence or telephony session
WO2018164917A1 (en) Interaction with communal meeting device through broadcast of identity
US9503812B2 (en) Systems and methods for split echo cancellation
KR102198799B1 (ko) 다자간 회의 제공 장치 및 상기 장치에서의 콘텐츠 공유 방법
KR101617760B1 (ko) 시그널링 서버 및 시그널링 서버에서의 WebRTC 서비스 제공 방법
US20180367446A1 (en) Dual network interface implementation in multipath networking
KR102279576B1 (ko) 컨퍼런스 시스템 및 상기 시스템에서의 컨퍼런스 접속 처리 방법
US20210028952A1 (en) Venue system join into online meeting services
US20210286507A1 (en) System enabling magnification of a video stream during an online event
EP3424212A1 (en) Joining executable component to online conference
Truong Video Conference Room Implementation with WebRTC and React

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141117

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141117

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20150519

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150924

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151016

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160118

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160527

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160624

R150 Certificate of patent or registration of utility model

Ref document number: 5961185

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250