JP5781441B2 - マルチビットレートストリームを使用するビデオ会議のサブスクリプション - Google Patents

マルチビットレートストリームを使用するビデオ会議のサブスクリプション Download PDF

Info

Publication number
JP5781441B2
JP5781441B2 JP2011542168A JP2011542168A JP5781441B2 JP 5781441 B2 JP5781441 B2 JP 5781441B2 JP 2011542168 A JP2011542168 A JP 2011542168A JP 2011542168 A JP2011542168 A JP 2011542168A JP 5781441 B2 JP5781441 B2 JP 5781441B2
Authority
JP
Japan
Prior art keywords
video stream
stream
subscription request
client
video
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.)
Expired - Fee Related
Application number
JP2011542168A
Other languages
English (en)
Other versions
JP2012512604A (ja
JP2012512604A5 (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 JP2012512604A publication Critical patent/JP2012512604A/ja
Publication of JP2012512604A5 publication Critical patent/JP2012512604A5/ja
Application granted granted Critical
Publication of JP5781441B2 publication Critical patent/JP5781441B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1818Conference organisation arrangements, e.g. handling schedules, setting up parameters needed by nodes to attend a conference, booking network resources, notifying involved parties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42203Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS] sound input device, e.g. microphone
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/4223Cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440263Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the spatial resolution, e.g. for displaying on a connected PDA
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440281Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the temporal resolution, e.g. by frame skipping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/141Systems for two-way working between two video terminals, e.g. videophone
    • H04N7/147Communication arrangements, e.g. identifying the communication as a video-communication, intermediate storage of the signals
    • 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
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1863Arrangements for providing special services to substations for broadcast or conference, e.g. multicast comprising mechanisms for improved reliability, e.g. status reports
    • H04L12/1877Measures taken prior to transmission

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Telephonic Communication Services (AREA)

Description

本発明は、マルチビットレートストリームを使用するビデオ会議のサブスクリプションに関する。
ビデオ会議のサブスクリプションによって、クライアントは、自らが対面を望む参加者を選択することができる。ビデオ電話会議では、2つ以上の場所で双方向のビデオ通信、および音声通信を介して同時に対話することを可能にする対話式通信技術を使用することができる。ビデオ会議では、音声およびビデオの通信を使用し、異なる拠点にいる人々を会議に集めることができる。これは、個人事務所における二者間の会話(ポイントツーポイント)であってもよく、および/または異なる拠点の大きな部屋における複数人とともに複数拠点(マルチポイント)を含んでもよい。会議活動の音声通信、および画像通信に加えて、ビデオ会議を使用して、書類、コンピュータに表示された情報、およびホワイトボードを共有することができる。音声/ビデオ通信を取り込み、記録し、エンコーディングとして知られる処理を使用してデジタル化し、コンピュータネットワークなどの通信媒体を介して他の拠点に伝送し、受信し、デコードし、かつ、ビデオ会議の他の参加者に表示することができる。数多くのエンコーディング/デコーディングの標準が、この処理と互換性がある。
ビデオ会議における従来の方法は、ビデオコンテンツをミキシングする代わりに、ビデオストリームを、ある参加者から他の参加者へ配信することである(全ての着信ビデオストリームをデコードし、それらをまとめて構成し、それを単一のストリームに再エンコードし、再エンコードしたストリームをあらゆる参加者に送信する)。従って、一部のシステムでは、全ての参加者からのビデオを表示するか、またはユーザに、自らが望む任意の参加者との対面の選択を許可する代わりに、ビデオ電話会議にアクティブな話者に切り替えるだけで、その話者を表示することができる。さらに、従来のシステムでは、クライアントは、静的な混合ストリームではなく特定のストリームをサブスクライブすることはできず、そしてまた、帯域幅の制約のためそれほど多くのストリームを受信することもできない。
マルチビットレートストリームを使用するビデオ会議のサブスクリプションを提供する。本「発明の概要」を提供することで、「発明を実施するための形態」においてさらに記載されている概念の抜粋を簡単な形で紹介する。本「発明の概要」は、特許請求の範囲に記載された主題の主要な特徴、または重要な特徴を特定することを意図するものではない。また、本「発明の概要」は、特許請求の範囲に記載された主題の範囲を限定するために使用されることを意図するものでもない。
ビデオ会議のサブスクリプションを提供することができる。ビデオ会議のサーバは、複数の異なるビットレートのビデオストリームを、ビデオ会議の各クライアントから受信することができ、各クライアントからサブスクリプション要求を受信することができる。サブスクリプション要求は、特定の他のクライアントからのビデオストリームを、所与の解像度、および/または所与のフレームレートで見るという要求を含むことができる。ビデオ会議サーバは、受信したビデオストリームをサブスクリプション要求と一致させることにより、サブスクライブするクライアントに所望のビデオストリームを送信することができる。サーバはまた、参加者からのビデオストリームの異なるバージョン(例えば、異なる解像度)を要求することができ、および/またはビデオストリームを変更し、サブスクリプション要求に、より適合することもできる。
上述の一般的説明、および以下の詳細な説明は双方とも、実施例を提供し、説明するためのみのものである。従って、上述の一般的説明、および以下の詳細な説明を、限定するものとして考慮すべきでない。さらに、特徴、または変形形態を、本明細書に説明するものに加えて提供することができる。例えば、実施形態は、詳細な説明に記述する様々な特徴の組み合わせ、および下位の組み合わせwを対象にできる。
添付図面は、本開示に組み込まれ、本開示の一部を構成するものであり、本発明の様々な実施形態を示す。
ビデオ会議環境のブロック図である。 様々なビデオサブスクリプション構成を示す図である。 マルチビットレート(multiple bit rate、MBR)エンコーディングを示す図である。 ビデオ会議においてサブスクリプションを提供する方法のフローチャートである。 図4の方法において使用する、サブスクリプション要求にマッチするビデオストリームを選択するためのサブルーチンのフローチャートである。 コンピューティング装置を含むシステムのブロック図である。
以下の詳細な説明は、添付図面を参照する。可能な限り、同一の参照番号が、図面及び以下の説明において使用され、同一又は類似の要素を参照する。本発明の実施形態を説明できるが、修正、適応、および他の実装も可能である。例えば、置換、追加又は修正は、図面において示される要素に対して行なうことができる。本明細書で説明される方法を、開示された方法に対して、段階を置換し、並べ替え、又は追加することにより、修正できる。従って、以下の詳細な説明は、本発明を限定しない。代わりに、本発明の適切な範囲は、添付の特許請求の範囲により定義される。
ビデオ会議のサブスクリプションを提供することができる。本発明の実施形態に従って、マルチビットレート(MBR)方式を使用し、ビデオ会議に参加している他のクライアントにより提供されるビデオストリームをサブスクライブするというクライアント要求に応じて、データをクライアントにストリーミングすることができる。例えば、あるクライアントは、ビデオ会議に参加している他のクライアントそれぞれからのビデオ情報源ストリーム(video source stream、情報源からのビデオストリーム)を同時に見ることを望むことができるが、 他のクライアントは、他の1つのクライアントからのストリームを見ることを望むだけである。
図1は、ビデオ会議環境100のブロック図である。ビデオ会議環境100は、イントラネットクライアント110、およびイントラネットのネットワーク接続115を介して接続されたビデオ会議サーバ120を含むことができる。ビデオ会議環境100はさらに、第1のインターネットクライアント130、第2のインターネットクライアント140、および第3のインターネットクライアント150を含むことができる。インターネットクライアントそれぞれを、インターネット160を介してビデオ会議サーバ120に接続することができる。本発明の実施形態に従って、ビデオ会議サーバ120、イントラネットクライアント110、第1のインターネットクライアント130、第2のインターネットクライアント140、および第3のインターネットクライアント150はそれぞれ、図6に関して以下でより詳細に説明するコンピューティング装置600を含むことができる。
複数のクライアントが互いの間でビデオストリームを共有したい場合、ビデオ会議環境100を使用することができる。各クライアントは、ビデオ会議サーバ120に接続することができる。ビデオ会議サーバ120は、どのクライアントが接続されているか、および各クライアントの性能はどれほどであるかのリストを保持することができる。本発明の実施形態に従って、ビデオ会議サーバ120は、どのクライアントが、ビデオ会議サーバ120にビデオストリームを送信する責務を負うことができるかを判定する責務を負うことができる。ビデオ会議サーバ120は、クライアントから受信したビデオストリームを、他の接続しているクライアントに送信することができる。ビデオストリームを一連のビデオフレームとしてエンコードすることができ、各フレームは単一の画像を含むことができる。各フレームは、複数ビットのデータにより表すことができる。あらゆるフレームのあらゆるビットのデータも、ビデオストリームの情報源を表すために送る必要がないように、ビデオストリームをコード化する。異なるフレームの型を使用して、ビデオストリームをエンコードおよび/または圧縮することができる。
各クライアントは、少なくとも1つのビデオストリームをエンコードして、ビデオ会議サーバ120に送信することができる。例えば、各クライアントは、クライアントに接続されたウェブカメラ、および/またはマイクなどの音声/ビデオ入力を有することができる。入力を使用して、ビデオストリーム(音声を含むことができる)を生成することができ、クライアントは、ビデオストリームをビデオ会議サーバ120に送信する前に、ビデオストリームをエンコードすることができる。ビデオ会議サーバ120は、各クライアントからエンコードされたストリームを受信し、どのストリームを各クライアントに中継するかを決定することができる。例えば、イントラネットクライアント110は、現在話している人を含む一連のビデオフレームとして、ビデオストリームをエンコードすることができる。ビデオ会議サーバ120は、現在の話者を表示しているイントラネットクライアント110からのエンコードされたストリームを、第1のインターネットクライアント130、第2のインターネットクライアント140、および第3のインターネットクライアント150に送信することができる。ビデオ会議サーバ120は、第1のインターネットクライアント130、第2のインターネットクライアント140、および第3のインターネットクライアント150のそれぞれからのエンコードされた情報源ストリームを、イントラネットクライアント110に送信し、視聴メンバを表示できる。
図2は、ビデオ会議環境100における様々なビデオサブスクリプション構成を示す図である。第1のインターネットクライアント130は、第1の情報源ビデオストリーム230をビデオ会議サーバ120に送信することができる。第2のインターネットクライアント140は、第2の情報源ビデオストリーム240をビデオ会議サーバ120に送信することができる。第3のインターネットクライアント150は、第3の情報源ビデオストリーム250をビデオ会議サーバ120に送信することができる。イントラネットクライアント110は、第4の情報源ビデオストリーム210をビデオ会議サーバ120に送信することができる。
各情報源ビデオストリームは、解像度、およびフレームレートを含むプロパティを含むことができる。例えば、情報源ビデオストリームは、高精細(1280×720画素)の解像度、30fps(frames per second)でエンコードされたビデオ、VGA(640×480)の解像度、30fpsでエンコードされたビデオ、および/またはCIF(320×240)の解像度、15fpsでエンコードされたビデオを含むことができる。
各クライアントは、サブスクリプション要求をビデオ会議サーバ120に送信することができる。サブスクリプション要求は、情報源クライアント(source client、情報源のクライアント)、解像度、および/またはフレームレートなどの、要求されたパラメータを含むことができる。例えば、イントラネットクライアント110は、第1のインターネットクライアント130からのビデオストリームのサブスクリプションを要求することができる。ビデオ会議サーバ120は、サブスクリプション要求にマッチするビデオストリーム、例えば、第1の情報源ビデオストリーム230などが利用可能かどうかを判定する。本発明の実施形態に従って、ビデオ会議サーバ120は、第1の情報源ビデオストリーム230が、他のサブスクリプション要求の任意の、および/または全てのパラメータを含むかどうかを判定することができる。例えば、サブスクリプション要求は、VGAの解像度、30fpsでエンコードされた第1のインターネットクライアントからのビデオストリーム230を求める要求を含むことができる。第1の情報源ビデオストリーム230が、これらのパラメータにマッチする場合、すなわち、第1の情報源ビデオストリーム230がVGAの解像度、30fpsでエンコードされている場合、ビデオ会議サーバ120は、第1の情報源ビデオストリーム230をイントラネットクライアント110に中継することができる。
第1の情報源ビデオストリーム230が、これらのパラメータにマッチしない場合、ビデオ会議サーバは、第1のインターネットクライアントに、第1の情報源ビデオストリーム230の異なるバージョンを含む追加の情報源ビデオストリームをエンコードするよう命令する。この場合、異なるバージョンは、第1のインターネットクライアント130がエンコードできるように、サブスクリプション要求のパラメータにできる限りマッチするものを含む。例えば、第1のインターネットクライアント130は、VGAの解像度、30fpsの情報源ビデオストリームをエンコードできないかもしれないが、VGAの解像度、15fpsの情報源ビデオストリームをエンコードすることはできる場合がある。従って、第1のインターネットクライアント130は、VGAの解像度、15fpsの追加の情報源ビデオストリームをエンコードし、ビデオ会議サーバ120に追加の情報源ビデオストリームを送信することができる。ビデオ会議サーバ120は、イントラネットクライアント110からのサブスクリプション要求に応じて、追加の情報源ビデオストリームをイントラネットクライアント110に中継することができる。
本発明の実施形態に従って、ビデオ会議クライアントは、複数のビデオストリームを求めるサブスクリプション要求を、ビデオ会議サーバ120に送信することができる。例えば、第1のインターネットクライアント130は、ビデオ会議に参加している他のクライアントそれぞれからの情報源ビデオストリームのサブスクリプションを要求することができる。ビデオ会議サーバ120は、第2の情報源ビデオストリーム240、第3の情報源ビデオストリーム250、および第4の情報源ビデオストリーム210を、第1のインターネットクライアント130に中継することができる。
さらに本発明の実施形態に従って、クライアントは、ビデオ会議に参加している全てのクライアントからのビデオ情報源ストリームを見ることを望む場合がある。例えば、第2のインターネットクライアント140は、4人のクライアントによるビデオ会議に参加し、参加している4人のクライアント全員を表示する2×2の合成ビデオストリームをサブスクライブするよう要求する場合がある。ビデオ会議サーバは、第1の情報源ビデオストリーム230、第2の情報源ビデオストリーム240、第3の情報源ビデオストリーム250、および第4の情報源ビデオストリーム210を、デジタル信号処理を使用して単一のビデオストリームに結合し、2×2のグリッドに4つの情報源を配置し、単一の合成したビデオストリームを、第2のインターネットクライアント240に送信することができる。
さらに本発明の実施形態に従って、クライアントは、複数のビデオ情報源ストリームをサブスクライブすることを望むかもしれないが、要求されたストリームのオリジナルのバージョンを受信するためには十分な帯域幅を有していない場合がある。例えば、第3のインターネットクライアント150は、イントラネットクライアント110、および第1のインターネットクライアント130からのビデオストリームのサブスクリプションを要求することができる。サブスクリプションは、2つのストリームを、2×1のマトリクス、VGAの解像度、15fpsで送信するよう要求しているパラメータを含むことができる。第1の情報源ビデオストリーム230、および第4の情報源ビデオストリーム210が、ビデオ会議サーバ120に、VGAの解像度、30fpsで送信されている場合、第3のインターネットクライアント150に送信するために2つのビデオストリームを1つの新しいビデオストリームに合成する前に、ビデオ会議サーバ120は、第1の情報源ビデオストリーム230、および第4の情報源ビデオストリーム210それぞれを、例えば他のあらゆるフレームを除去することによって、変更することができる。
図3は、マルチビットレート(MBR)エンコーディングを示す図である。図1に関して上述したように、ビデオ会議システム100は、イントラネットクライアント110、ビデオ会議サーバ120、第1のインターネットクライアント130、および第2のインターネットクライアント140を含むことができる。本発明の実施形態に従って、イントラネットクライアント110は、情報源ビデオストリームの高解像度バージョン310、および情報源ビデオストリームの低解像度バージョン320を、他のクライアントからのサブスクリプション要求に基づき、ビデオ会議サーバ120に送信することができる。例えば、第1のインターネットクライアントは、イントラネットクライアント110からの高解像度のビデオストリームを目的としたサブスクリプション要求305を、ビデオ会議サーバ120に送信することができ、ビデオ会議サーバ120は、情報源ビデオストリームの高解像度バージョン310を第1のインターネットクライアント130に中継することによって、応答することができる。
第2のインターネットクライアント140は、イントラネットクライアント110によって提供されているビデオ情報源ストリームの低解像度バージョン320とは異なるフレームレートでの、イントラネットクライアント110からの低解像度ビデオストリームを求めるサブスクリプション要求340を送信することができる。ビデオ会議サーバ120は、要求されたフレームレートにマッチするように低解像度バージョン320を変更でき、ビデオ情報源ストリームの変更したバージョン350を、第2のインターネットクライアント140に送信する。
本発明の実施形態に従って、サブスクリプション要求は、方式パラメータを含むことができる。例えば、クライアントは、他の全ての参加者からのビデオストリームをサブスクライブするが、現在の話者のストリームを高解像度で受信することを望む場合がある。従って、クライアントは、対話方式のパラメータを含むサブスクリプション要求を送信することができる。各情報源ビデオストリームは、現在の話者を搬送していることを示し、現在話しているクライアントは、現在の話者である間、さらに、より高解像度のビデオストリームを追加することができるので、ビデオ会議サーバ120は、クライアントのサブスクリプションに対してビデオストリームを切り替えることができる。他の可能な構成では、1つの主要な話者のクライアント、および多くの視聴クライアントを有することができる。話者は、視聴クライアントからの多く、および/または全てのビデオストリームを見たい場合があるが、一方、視聴クライアントは、話者、および/またはQ&Aセッションで質問しているクライアントのみを見たい場合がある。ビデオ会議サーバ120は、低解像度のストリームを要求することによって、話者のクライントが視聴クライアント全てをサブスクライブすることを可能にすることができる。ビデオ会議サーバ120は、より低解像度のストリーム全ての帯域幅の総計が、話者のクライアントが扱うことができる帯域幅よりまだ大きい場合、ストリームをより低いフレームレートに変更できる。本発明の実施形態に従って、話者のクライアントは、1つの視聴クライアント、または複数の視聴クライアントを閲覧するよう切り替えることができる。視聴クライアントは、例えば、視聴クライアントの数が、設定可能な閾値より少ない場合は、より高解像度のビデオストリームを、ビデオ会議サーバ120に送信することができる。
図4は、本発明の一実施形態に従って、ビデオ会議のサブスクリプションを提供する方法400に含まれる一般的な段階を説明するフローチャートである。図6に関して以下により詳細に説明するように、方法400を、コンピューティング装置600を使用して実装することができる。方法400の段階を実装する方法を、以下により詳細に説明する。本発明の実施形態に従って、方法400の任意、および/または全ての段階を、ビデオ会議サーバ120で、および/または複数のビデオ会議クライアントのうちの任意のクライアントで、実施することができる。
方法400は、開始ブロック410で始まり、段階420に進み、そこでコンピューティング装置600は、少なくとも1つのクライアントを登録することができる。例えば、少なくとも1つのクライアントは、ネットワーク接続を介してコンピューティング装置600に動作中に接続することができ、コンピューティング装置600によって提供されるビデオ電話会議への参加を要求することができる。
登録の一部として、コンピューティング装置600は、少なくとも1つのクライアントの、利用可能な演算能力、および利用可能なエンコーディング/デコーディング方式を含む性能を判定することができ、少なくとも1つのクライアントに、複数の異なるビットレートの複数のビデオストリームを提供するよう求めることができる。本発明の実施形態に従って、コンピューティング装置600は、少なくとも1つのクライアントが性能を有する場合、そのクライアントにいくつかのストリームを提供するよう要求することができるが、そのクライアントが、利用可能な演算能力、利用可能なプロセッササイクル、利用可能なメモリ、および/または利用可能な帯域幅を少ししか有していない場合、そのクライアントにストリームを1つだけ提供するよう求めることもできる。
方法400は、段階420から段階430へ進み、そこでコンピューティング装置600は、少なくとも1つのエンコードされたビデオストリームを、少なくとも1つのクライアントから、受信することができる。複数のクライアントは、ビデオ会議に参加することができ、各クライアントは少なくとも1つのビデオストリームを送信することができる。例えば、コンピューティング装置600は、VGAの解像度、30fpsでエンコードされた音声/ビデオストリームを、少なくとも1つのクライアントから、受信することができる。本発明の実施形態に従って、コンピューティング装置600は、少なくとも1つのクライアントから複数のストリームを受信することができる。例えば、1つのクライアントは、3つのバージョンのビデオストリーム(高精細解像度、30fpsでエンコードされたもの、VGAの解像度、30fpsでエンコードされたもの、およびCIFの解像度、15fpsでエンコードされたもの)を送信することができる。
方法400は、段階430から段階440へ進み、そこでコンピューティング装置600は、ビデオ会議の少なくとも1つのクライアントからサブスクリプション要求を受信することができる。例えば、コンピューティング装置600は、あるクライアントから、第2のクライアントからのVGA、30fpsでエンコードされたストリームを求めるサブスクリプション要求を受信することができる。本発明の実施形態に従って、コンピューティング装置600は、ビデオ会議に参加している任意、および/または全てのクライアントから、複数のサブスクリプション要求を受信することができる。例えば、あるクライアントは、参加している他のクライアント全てのより低解像度のバージョンを要求することができ、他のクライアントは、どのクライアントでも、ビデオ会議でアクティブな話者に指定されたクライアントから高解像度バージョン、および他の一部、または全てのクライアントから低解像度バージョンを要求することができる。
方法400は、段階440からサブルーチン450へ進み、そこでコンピューティング装置600は、サブスクリプション要求にマッチするビデオストリームを見つけ、それを少なくとも1つのクライアントに送信できる。例えば、コンピューティング装置600は、第2のクライアントが、VGA、30fpsでエンコードされたビデオストリームを、コンピューティング装置600にすでに送信していると判定でき、それゆえに、コンピューティング装置600は、このビデオストリームがサブスクリプション要求にマッチすると判定できる。サブルーチン450に関するさらなる詳細を、図5に関して以下に説明する。
方法400は、サブルーチン450から段階460へ進み、そこでコンピューティング装置600は、マッチするストリームをクライアントに送信することができる。例えば、コンピューティング装置600は、ネットワーク接続を介して、第2のクライアントから受信したマッチするビデオストリームを、サブスクリプション要求を送信したクライアントへ中継することができる。
方法400は、段階460から段階470へ進み、そこでコンピューティング装置600は、さらに何らかのサブスクリプション要求を受信しているかどうかを判定することができる。サブスクリプション要求は、既存のサブスクリプションを変更する要求、例えば、あるクライアントが、自らがすでに受信しているストリームの低解像度バージョンを要求するというような要求を含むことができる。このような要求を、例えば、利用可能な帯域幅の低下に応じて、行なうことができる。サブスクリプション要求はまた、少なくとも1つのビデオストリームをすでに受信しているクライアントによる、追加のクライアント(単数または複数)からのビデオストリームを求める要求、またはビデオ会議の他のクライアントからの要求も含むことができる。
コンピューティング装置600が、他のサブスクリプション要求を受信していると判定する場合、方法400はサブルーチン450に戻り、マッチするビデオストリームを見つけるようとする。追加のサブスクリプション要求を受信していない場合、コンピューティング装置600は、ビデオ会議の終了まで追加の要求を待ち続けることができ、ビデオ会議の終了時に、方法400は段階480で終了することができる。
図5は、図4の方法において使用する、サブスクリプション要求にマッチするビデオストリームを選択するためのサブルーチンのフローチャートである。サブルーチン450において、コンピューティング装置600は、例えば、要求されたビデオストリームの情報源クライアントのような、サブスクリプション要求に関連づけられたプロパティを分析できる。サブルーチン450は、段階510で開始することができ、そこでコンピューティング装置600は、要求された情報源クライアントに関連づけられたビデオストリームが利用可能かどうかを判定することができる。この判定は、情報源クライアントがビデオ会議に接続されているかどうか、情報源クライアントが、ビデオストリームをコンピューティング装置600に、現在送信しているかどうか、ならびに/または情報源クライアントが、コンピューティング装置600および/もしくはビデオ会議の他のクライアントによって要求される場合、ビデオストリームを送信することができる場合があるかどうかを判定することを含むことができる。段階510で、コンピューティング装置600は、要求された情報源クライアントが、要求されたビデオストリームを提供することができない場合があると判定する場合、サブルーチン450は段階515に進み、そこでコンピューティング装置600は、所定のロジックに従って代替の情報源クライアントを選択することができる。例えば、コンピューティング装置600は、アクティブな話者として指定されたクライアントを選択できる。本発明の実施形態に従って、コンピューティング装置600は、要求しているクライアントに、要求されたサブスクリプションが利用可能でないことを通知するエラーを返すことができる。コンピューティング装置600は、ビデオ会議中ずっと、要求された情報源クライアントが利用可能になるかどうかについて、定期的に判定を行ない続けることができる。段階515で、代替の情報源クライアントを選択すると、サブルーチン450は、段階510に戻り、新しく選択された情報源クライアントが利用可能かどうかを判定する。
段階510で、コンピューティング装置600は、要求された情報源クライアントが利用可能である、および/またはビデオストリームを提供できる場合があると判定する場合、サブルーチン450は段階520に進み、そこでコンピューティング装置600は、サブスクリプション要求に関連づけられた情報源クライアントが、ビデオストリームを、サブスクリプション要求に関連づけられた解像度で、現在送信しているかどうかを判定することができる。例えば、クライアントは、情報源クライアントのVGA(640×480)の解像度のビデオストリームのサブスクリプションを要求することができる。コンピューティング装置600は、情報源クライアントが、自身のビデオストリームのVGAの解像度バージョンを提供しているかどうかを判定することができる。提供していない場合、サブルーチン450は段階525に進み、そこでコンピューティング装置600は、情報源クライアントが、ビデオストリームを、適切な解像度で提供できるかどうかを判定することができる。
段階525で、コンピューティング装置600が、情報源クライアントが要求された解像度でビデオストリームを提供できると判定する場合、サブルーチン450は段階530に進み、そこでコンピューティング装置600は、情報源クライアントに、ビデオストリームを、要求された解像度で送信し始めるよう要求することができる。情報源クライアントが要求された解像度でビデオストリームを提供することができないと判定された場合、サブルーチン450は段階535に進み、そこでコンピューティング装置600は、情報源クライアントのビデオストリームの、最も近い解像度での他のバージョンを使用することを選択できる。例えば、情報源クライアントは、VGAの解像度のビデオストリームの代わりに、CIFの解像度のビデオストリームを提供することができる場合がある。
ビデオストリームの解像度がコンピューティング装置600によって選択されると、サブルーチン450は段階540に進み、そこでコンピューティング装置600は、ビデオストリームがサブスクリプション要求に関連づけられたフレームレートで利用可能かどうかを判定することができる。段階520で選択されたストリームが、要求されたフレームレートにマッチしない場合、サブルーチン450は段階545に進み、そこでコンピューティング装置600は、ビデオストリームを、例えば、代替のフレームを除去し、フレームレートを下げることによって、変更できる。例えば、コンピューティング装置600は、VGAの解像度、15fpsのビデオストリームを求めるサブスクリプション要求を受信する場合があるが、情報源クライアントによって提供されるビデオストリームは、30fpsでエンコードされる場合がある。コンピューティング装置600は、例えば、ビデオストリームからフレームを落とし、フレームレートを下げることができる。本発明の実施形態に従って、コンピューティング装置600は、解像度に関する段階525の処理と同様、情報源クライアントが、要求されたフレームレートで、ビデオストリームをエンコード、および送信することができるかどうかを判定することができ、情報源クライアントが、マッチするストリームを、コンピューティング装置600に送信するよう要求できる。段階540、および/または段階545から、サブルーチン450は、段階460で方法400に戻ることができる。
本発明の実施形態に従って、サブスクリプション要求は、情報源クライアント、解像度、およびフレームレートなどのプロパティの、受け入れ可能な代替値を提供することができる。例えば、サブスクリプション要求は、第1のクライアントからのビデオストリームを求める要求を含むことができ、第2のクライアントからのビデオストリームもまた受け入れ可能であることを示すことができる。同様に、サブスクリプション要求は、例えば、利用可能であるならば高精細度のビデオストリームを望み、VGAの解像度のストリームもまた受け入れ可能であることを示し、ただし、CIFの解像度のストリームしか利用可能でない場合は、コンピューティング装置600は、サブスクリプション要求に応じてビデオストリームを送信しないよう要求するといったように、要求した解像度に優先順位を付けることができる。
本発明に従う一実施形態は、複数のクライアントにデータを提供するシステムを含むことができる。システムは、メモリ記憶装置、およびメモリ記憶装置に接続された処理ユニットを含むことができる。処理ユニットは、以下のように動作できる。すなわち、少なくとも1つの第1のクライアントから少なくとも1つのビデオストリームを受信し、少なくとも1つの第2のクライアントからビデオサブスクリプション要求を受信し、少なくとも1つの第1のクライアントから受信した少なくとも1つのビデオストリームが、少なくとも1つの第2のクライアントからのビデオサブスクリプション要求にマッチするかどうかを判定し、および少なくとも1つの第1のクライアントから受信した少なくとも1つのビデオストリームが、少なくとも1つの第2のクライアントからのビデオサブスクリプション要求にマッチすると判定することに応じて、少なくとも1つの第1のクライアントから受信した少なくとも1つのビデオストリームを、少なくとも1つの第2のクライアントに送信するよう動作できる。ビデオサブスクリプション要求は、要求された解像度、および/または要求されたフレームレートを含むことができる。少なくとも1つの第1のクライアントから受信した少なくとも1つのビデオストリームが、少なくとも1つの第2のクライアントからのビデオサブスクリプション要求にマッチしない場合、処理ユニットは、少なくとも1つの第1のクライアントに、少なくとも1つのビデオストリームをエンコードし、送信することを停止させる命令を送信するよう動作できる。
本発明の実施形態に従って、処理ユニットは以下のように動作できる。すなわち、ビデオ会議に参加している複数のクライアントを登録し、複数のクライアントそれぞれから少なくとも1つのビデオストリームを受信し、登録したクライアントそれぞれから少なくとも1つのビデオサブスクリプション要求を受信し、登録したクライアントそれぞれからの少なくとも1つのビデオサブスクリプション要求が、複数のクライアントから受信した少なくとも1つのビデオストリームにマッチするかどうかを判定し、およびマッチする受信した少なくとも1つのビデオストリームを複数のクライアントそれぞれに送信するよう動作できる。サブスクリプション要求と受信したビデオストリームとの間のマッチを判定することは、ビデオストリームが、サブスクリプション要求の要求する情報源クライアント、サブスクリプション要求の要求する解像度、および/またはサブスクリプション要求の要求するフレームレートにマッチするかどうかを判定することを含むことができる。
受信したビデオストリームが、少なくとも1つのサブスクリプション要求にマッチしない場合、プロセッサは以下のように動作できる。すなわち、受信した少なくとも1つのビデオストリームを、少なくとも1つのビデオサブスクリプション要求にマッチするように変更できるかどうかを判定し、ビデオストリームを変更し、および変更したビデオストリームを要求しているクライアントに送信するよう動作できる。ビデオストリームを変更することは、異なる解像度でビデオストリームを再エンコードすること、少なくとも1つのフレームをビデオストリームから落とすこと、および/または受信した少なくとも2つのビデオストリームを単一のビデオストリームに結合することを含むことができる。本発明のさらなる実施形態に従って、処理ユニットは、サブスクリプション要求に関連づけられたビデオストリームの情報源クライアントが、サブスクリプション要求を満たすビデオストリームをエンコードできるかどうかを判定するよう動作できる。情報源クライアントが、サブスクリプション要求を満たすビデオストリームをエンコードできる場合、処理ユニットは、ビデオストリームの情報源クライアントに、命令を送信し、マッチするビデオストリームをエンコードし、結果として生じる、マッチするビデオストリームを、要求している、登録した少なくとも1つのクライアントに送信できる。情報源クライアントが、マッチするビデオストリームを送信できるかどうかを判定するよう動作することは、ビデオストリームの情報源クライアントが、ビデオストリームの異なる2つのバージョンをエンコードできるかどうかを判定するよう動作することを含むことができ、この場合、2つのバージョンは解像度、および/またはフレームレートの点で異なる。
処理ユニットが、受信したビデオストリームによって、少なくとも1つのサブスクリプション要求を満たすことができないと判定する場合、および/またはクライアントのいずれも要求されたビデオストリームを提供できない場合があると判定する場合、処理ユニットは以下のように動作できる。すなわち、受信したビデオストリームのうちのいずれが、少なくとも1つのビデオサブスクリプション要求に最もよくマッチするか演算し、および少なくとも1つのビデオサブスクリプション要求に最もよくマッチするビデオストリームを、少なくとも1つの登録したクライアントに送信するよう動作できる。例えば、処理ユニットは以下を判定できる。すなわち、少なくとも1つのビデオストリームが、サブスクリプション要求に関連づけられたビデオストリームの情報源クライアントにマッチするかどうか、サブスクリプション要求に関連づけられたビデオストリームの情報源クライアントにマッチする少なくとも1つのビデオストリームが、サブスクリプション要求に関連づけられた解像度にマッチするかどうか、ならびに/または、サブスクリプション要求に関連づけられたビデオストリームの情報源クライアントおよび解像度にマッチし、少なくとも1つのビデオストリームが、サブスクリプション要求に関連づけられたフレームレートにマッチするかどうかを判定できる。処理ユニットは、少なくとも1つのビデオストリームを、要求しているクライアントに送信できる。
処理ユニットが、少なくとも1つのビデオストリームがサブスクリプション要求に関連づけられたビデオストリームの情報源クライアントにマッチしないと判定する場合、処理ユニットは以下のように動作できる。すなわち、サブスクリプション要求に関連づけられたビデオストリームの情報源クライアント以外の複数のクライアントの中から第2のビデオストリームの情報源クライアントを選択し、および選択した第2のビデオストリームの情報源クライアントから受信した少なくとも1つのビデオストリームを、要求しているクライアントに送信するよう動作できる。サブスクリプション要求に関連づけられたビデオストリームの情報源クライアント以外の複数のクライアントの中から第2のビデオストリームの情報源クライアントを選択することは、現在の話者を含むビデオストリームを送信している第2のビデオストリームの情報源クライアントを選択することを含むことができる。
本発明に従う他の実施形態は、複数のクライアントにビデオストリームを提供するシステムを含むことができる。システムは、メモリ記憶装置、およびメモリ記憶装置に接続された処理ユニットを含むことができる。処理ユニットは以下のように動作できる。すなわち、複数のビデオ会議クライアントを登録し、複数のビデオ会議クライアントそれぞれから、少なくとも1つの情報源ビデオストリームを受信し、少なくとも1つの複数のビデオ会議クライアントから、少なくとも1つのビデオストリームのサブスクリプション要求を受信し、複数のビデオ会議クライアントそれぞれから受信した情報源ビデオストリームの少なくとも1つの第1のストリームが、少なくとも1つのビデオストリームのサブスクリプション要求にマッチするかどうかを判定し、および複数のビデオ会議クライアントそれぞれから受信した情報源ビデオストリームの、少なくとも1つの第1のストリームが、少なくとも1つのビデオストリームのサブスクリプション要求にマッチすると判定することに応じて、情報源ビデオストリームうちの、マッチする少なくとも1つの第1のストリームを、要求している複数のビデオ会議クライアントのうちの少なくとも1つに送信するよう動作できる。処理ユニットはさらに以下のように動作できる。すなわち、複数のビデオ会議クライアントのうちの少なくとも1つから、少なくとも1つの第2のビデオストリームのサブスクリプション要求を受信し、複数のビデオ会議クライアントそれぞれから受信した情報源ビデオストリームの、少なくとも1つの第2のストリームが、少なくとも1つの第2のビデオストリームのサブスクリプション要求にマッチするかどうかを判定し、および複数のビデオ会議クライアントそれぞれから受信した情報源ビデオストリームの、少なくとも1つの第2のストリームが、少なくとも1つの第2のビデオストリームのサブスクリプション要求にマッチすると判定することに応じて、情報源ビデオストリームのうちのマッチする少なくとも1つの第2のストリームを、複数のビデオ会議クライアントのうちの要求している少なくとも1つに送信するよう動作できる。
本発明の実施形態に従って、情報源ビデオストリームのうちのマッチする少なくとも1つの第2のストリームを、複数のビデオ会議クライアントのうちの要求している少なくとも1つに送信するよう動作することは、処理ユニットが以下のように動作することを含むことができる。すなわち、情報源ビデオストリームのうちのマッチする少なくとも1つの第1のストリームと、情報源ビデオストリームのうちのマッチする少なくとも1つの第2のストリームとの合成ビデオストリームを作成し、合成ビデオストリームを、複数のビデオ会議クライアントのうちの要求している少なくとも1つに送信するよう動作することを含むことができる。
処理ユニットはさらに、複数のビデオ会議クライアントのうちの少なくとも1つから、少なくとも1つの第2の情報源ビデオストリームを受信するよう動作でき、少なくとも1つの第2の情報源ビデオストリームは、少なくとも1つの情報源ビデオストリームの異なるバージョンを含む。異なるバージョンは、少なくとも1つの第1のビデオ情報源ストリームのより低解像度のバージョンを含むことができる。
処理ユニットは以下のように動作できる。すなわち、少なくとも1つの第1のビデオ会議クライアントから少なくとも1つの第1のビデオ情報源ストリームを受信し、少なくとも1つの第2のビデオ会議クライアントから少なくとも1つの第2のビデオ情報源ストリームを受信し、少なくとも1つの第3のビデオ会議クライアントから、少なくとも1つの第1のビデオ会議クライアント、および少なくとも1つの第2のビデオ会議クライアントからの情報源ビデオストリームを求めるサブスクリプション要求を受信し、ならびに、少なくとも1つの第1のビデオ情報源ストリーム、および少なくとも1つの第2のビデオ情報源ストリームの合成ビデオストリームを作成するよう動作できる。合成ビデオストリームを作成するよう動作することは、少なくとも1つのビデオ情報源ストリームのフレームレートを変更し、変更したストリーム(単数または複数)を単一のビデオストリームに結合するよう動作することを含むことができる。
さらに本発明に従う他の実施形態は、ビデオ会議におけるレートマッチングを提供するシステムを含むことができる。システムは、メモリ記憶装置、およびメモリ記憶装置に接続された処理ユニットを含むことができる。処理ユニットは以下のように動作できる。すなわち、複数のビデオ会議クライアントから、複数のビデオストリームを受信し、複数のビデオ会議クライアントのうちの少なくとも1つから、少なくとも1つのサブスクリプション要求を受信し、および複数のビデオストリームのうちの要求された少なくとも1つを、複数のビデオストリームのうちの要求された少なくとも1つの情報源クライアントから、要求された解像度、および要求されたフレームレートで受信しているかどうかを判定するよう動作できる。複数のビデオストリームのいずれも要求された解像度、および/またはフレームレートにマッチしない場合、処理ユニットは以下のように動作できる。すなわち、情報源クライアントがマッチするビデオストリームを送信できるかどうかを判定し、情報源クライアントにそのようにするよう要求し、およびマッチするビデオストリームを、要求しているクライアントに送信するよう動作できる。サブスクリプション要求は、複数のビデオストリームのうちの少なくとも1つ、要求された解像度、および/または要求されたフレームレートを求める要求を含むことができる。各クライアントは、複数のビデオストリームのうちの少なくとも1つを送信できる。
図6は、コンピューティング装置600を含むシステムのブロック図である。本発明の一実施形態に従って、上述のメモリ記憶装置、および上述の処理ユニットを、図6のコンピューティング装置600などのコンピューティング装置内に実装することができる。ハードウェア、ソフトウェア、またはファームウェアの任意の適切な組み合わせを使用して、メモリ記憶装置および処理ユニットを実装できる。例えば、メモリ記憶装置、および処理ユニットを、コンピューティング装置600、またはコンピューティング装置600と結合して任意の他のコンピューティング装置618で実装できる。上述のシステム、上述の装置、および上述のプロセッサは例であり、他のシステム、他の装置、および他のプロセッサは、本発明の実施形態に従って、上述のメモリ記憶装置、および上述の処理ユニットを含むことができる。さらに、コンピューティング装置600は、上述のようにシステム100の動作環境を含むことができる。システム100は、他の環境で動作でき、コンピューティング装置600に限定されない。
図6を参照すると、本発明の一実施形態に従うシステムは、コンピューティング装置600などのコンピューティング装置を含むことができる。基本構成において、コンピューティング装置600は、少なくとも1つの処理ユニット602、および少なくとも1つのシステムメモリ604を含むことができる。コンピューティング装置の構成、およびコンピューティング装置の種類によって、システムメモリ604は、揮発性メモリ(例えば、RAM(random access memory))、不揮発性メモリ(例えば、ROM(read-only memory))、フラッシュメモリ、またはこれらのいずれかの組み合わせを含むことができるが、これらに限定されない。システムメモリ604は、オペレーティングシステム605、1つまたは複数のプログラミングモジュール606を含むことができ、かつプログラムデータ607を含むことができる。オペレーティングシステム605は、例えば、コンピューティング装置600の動作を制御するのに適している。一実施形態において、プログラミングモジュール606は、例えば、データ分析モジュール、および/またはビデオ会議サーバ620を含むことができる。さらに、本発明の実施形態は、グラフィックスライブラリ、他のオペレーティングシステム、または他の任意のアプリケーションプログラムとともに実施されることができ、任意の特定のアプリケーション、または任意の特定のシステムに限定されない。この基本構成を、点線608内のこれらのコンポーネントにより、図6に示している。
コンピューティング装置600は、追加の特徴または機能性を有することができる。例えば、コンピューティング装置600はまた、例えば、磁気ディスク、光ディスク、またはテープなど、追加のデータ記憶装置(リムーバブルおよび/または非リムーバブル)を含むこともできる。このような追加の記憶装置は、リムーバブル記憶装置609、および非リムーバブル記憶装置610により、図6に示している。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報の記憶のための任意の方法または技術で実装した、揮発性および不揮発性、リムーバブルおよび非リムーバブルの媒体を含むことができる。システムメモリ604、リムーバブル記憶装置609、および非リムーバブル記憶装置610は全て、コンピュータ記憶媒体の例(すなわち、メモリ記憶装置)である。コンピュータ記憶媒体は、RAM、ROM、EEPROM(electrically erasable programmable read-only memory)、フラッシュメモリもしくは他のメモリ技術、CD−ROM、DVD(digital versatile disk)もしくは他の光学式記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、または、情報を記憶するために使用でき、コンピューティング装置600によりアクセス可能な他の任意の媒体を含むことができるが、これらに限定されない。このようなコンピュータ記憶媒体はいずれも、装置600の一部として存在することができる。コンピューティング装置600はまた、キーボード、マウス、ペン、音声入力装置、タッチ入力装置など、入力装置(単数または複数)612を有することができる。表示装置、スピーカ、プリンタなど出力装置(単数または複数)614を含むこともできる。上述の装置は例であり、他のものを使用できる。
コンピューティング装置600はまた、装置600が、例えば、イントラネット、またはインターネットなどの分散コンピューティング環境内のネットワーク上などで、他のコンピューティング装置618と通信することを可能にすることができる通信接続616を含むことができる。通信接続616は、通信媒体の一例である。通信媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、または、搬送波もしくは他の転送機構など、被変調データ信号による他のデータによって具体化でき、かつ、任意の情報配信媒体を、一般に含むことができる。用語「被変調データ信号」は、1つまたは複数の特性セット(characteristics set)を有するか、信号で情報をエンコードするような方法で変更した信号を表すことができる。例として、限定でもなく、通信媒体は、有線ネットワーク、または直接有線接続など有線媒体、および、音波、高周波 (radio frequency)(RF)、赤外線、および他の無線媒体などの無線媒体を含むことができる。本明細書において使用されるような、用語「コンピュータ可読媒体」は、記憶媒体、および通信媒体の両方を含むことができる。
上述のように、オペレーティングシステム605を含む、多数のプログラムモジュール、および多数のデータファイルを、システムメモリ604に記憶できる。処理ユニット602上で実行中に、プログラミングモジュール606(例えば、ビデオ会議サーバ620)は、例えば、上述のように、方法400の段階のうち1つまたは複数を含む処理を実施できる。上述の処理は例であり、処理ユニット602は、他の処理を実施できる。本発明の実施形態に従って使用できる他のプログラミングモジュールは、電子メール、およびコンタクトアプリケーション、文書処理アプリケーション、表計算アプリケーション、データベースアプリケーション、スライドプレゼンテーションアプリケーション、描画またはコンピュータ支援のアプリケーションプログラムなどを含むことができる。
一般に、本発明の実施形態に従って、プログラムモジュールは、ルーチン、プログラム、コンポーネント、データ構造、および、特定のタスクを実施できるか、または特定の抽象データ型を実装できる他の種類の構造を含むことができる。さらに、本発明の実施形態を、ハンドヘルド装置、マルチプロセッサシステム、マイクロプロセッサベースまたはプログラム制御可能な家庭用電化製品、ミニコンピュータ、メインフレームコンピュータなどを含む、他のコンピュータシステム構成で実施できる。本発明の実施形態を、通信ネットワークを介してリンクされたリモートの処理装置によりタスクを実施する分散コンピューティング環境において、実施できる。分散コンピューティング環境において、プログラムモジュールを、ローカルおよびリモート両方のメモリ記憶装置に配置できる。
さらに、本発明の実施形態を、分離した電子素子を含む電気回路、論理ゲートを含むパッケージ化もしくは集積された電子チップ、マイクロプロセッサを利用する回路で、または電子素子を含む単一のチップもしくは複数のマイクロプロセッサ上で、実施できる。本発明の実施形態を、例えばAND、OR、およびNOTなどの論理動作を実施可能な他の技術を使用して、実施することもできる。これらの技術は、機械技術、光学技術、流体技術、および量子技術を含むが、これらに限るものではない。加えて、本発明の実施形態を、汎用コンピュータ内、または他の任意の回路もしくはシステムにおいて、実施できる。
本発明の実施形態を、例えば、コンピュータ処理(方法)、コンピュータシステムとして、またはコンピュータプログラム製品もしくはコンピュータ可読媒体などの製品として、実装できる。コンピュータプログラム製品は、コンピュータシステムにより読み取り可能であり、コンピュータ処理を実行する命令のコンピュータプログラムをエンコードするコンピュータ記憶媒体として存在することができる。コンピュータプログラム製品はまた、コンピュータシステムにより読み取り可能であり、コンピュータ処理を実行する命令のコンピュータプログラムをエンコードしている、搬送波上の伝搬信号として存在することもできる。従って、本発明を、ハードウェア、および/またはソフトウェア(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)で具現化できる。言い換えると、本発明の実施形態は、命令実行システムにより、もしくは命令実行システムに接続して使用する媒体において具現化されるコンピュータ使用可能プログラムコード、またはコンピュータ可読プログラムコードを有し、コンピュータ使用可能記憶媒体、またはコンピュータ可読記憶媒体上のコンピュータプログラム製品の形をとることができる。コンピュータ使用可能媒体、またはコンピュータ可読媒体は、命令実行のシステム、機器、もしくは装置によって、またはそれらに接続して使用するプログラムを含み、記憶し、通信し、伝播し、または転送できる、任意の媒体として存在することができる。
コンピュータ使用可能媒体、またはコンピュータ可読媒体は、例えば、電子、磁気、光学、電磁気、赤外線、もしくは半導体のシステム、機器、装置、または伝搬媒体として存在することができるが、これらに限定されない。より具体的なコンピュータ可読媒体の例(限定的リスト)として、コンピュータ可読媒体は以下を含むことができる。すなわち、1つまたは複数の有線を有する電気接続、ポータブルコンピュータディスク、RAM(random access memory)、ROM(read-only memory)、EPROM(erasable programmable read-only memory、またはフラッシュメモリ)、光ファイバ、ポータブルCD−ROM(compact disc read-only memory)を、含むことができる。コンピュータ使用可能媒体、またはコンピュータ可読媒体は、プログラムを印刷する紙、または他の適切な媒体であることさえ可能であることに留意されたい。なぜならば、例えば紙または他の媒体の光学式スキャン介して、プログラムを電気的に取り込み、次いでコンパイルし、解釈し、または必要に応じて別の方法で適切な方法で処理して、次いで、コンピュータメモリに記憶できるためである。
本発明の実施形態を、例えば、本発明の実施形態による方法、システム、およびコンピュータプログラム製品のブロック図および/または動作を示す図を参照して上述している。ブロックで記した機能/動作は、いずれかのフローチャートに示した順序以外でも起こり得る。例えば、含まれている機能性/動作によっては、連続して示されている2つのブロックを、実際には、実質的に並行して実行することができ、または、ブロックを、時には、逆の順序で実行することができる。
本発明のある特定の実施形態について説明したが、他の実施形態も存在し得る。さらに、本発明の実施形態を、メモリおよび他の記憶媒体に記憶されたデータに関連づけて説明したが、ハードディスク、フロッピーディスク、もしくはCD−ROM、インターネットからの搬送波、または、RAMもしくはROMの他の形態のような二次記憶装置など、他の種類のコンピュータ可読媒体上にデータを記憶するか、これらからデータを読み取ることもできる。さらに、開示した方法の段階を、段階の順序を並び替える、および/または、段階を挿入もしくは削除することを含む任意の方法で、本発明から逸脱することなく修正することができる。
本明細書に含まれる規定において、著作権を含む全ての権利は、出願人に権限が与えられ、出願人の所有権である。出願人は、本明細書に含まれる規定において、権利全てを保有および保持し、承認された特許品の再生産に関してのみその物質を再生産する許可を与えるものであり、他の目的のためには一切許可を与えない。
本明細書は例を含むが、本発明の範囲は、添付の特許請求の範囲により示すものである。さらに、本明細書を構造的特報および/または方法論的動作に特有の言語で記述したが、特許請求の範囲は、上述の特徴または動作に限定されない。それどころか、上述の特定の特徴および動作は、本発明の実施形態の例として開示される。

Claims (11)

  1. 処理ユニットを有するサーバにおける、ビデオストリームのサブスクリプションを提供する方法であって、前記方法は、
    前記処理ユニットが、少なくとも1つのビデオストリームを、少なくとも1つの第1のクライアントから受信するステップと、
    前記処理ユニットが、サブスクリプション要求を、少なくとも1つの第2のクライアントから受信するステップと、
    前記処理ユニットが、前記少なくとも1つの第1のクライアントから受信したビデオストリームが、前記少なくとも1つの第2のクライアントからのサブスクリプション要求にマッチするかどうかを判定するステップと、
    前記少なくとも1つの第1のクライアントから受信したビデオストリームが、前記少なくとも1つの第2のクライアントからのサブスクリプション要求にマッチしないとの判定に応じて、前記処理ユニットが、前記少なくとも1つの第2のクライアントからのサブスクリプション要求にマッチする異なるビデオストリームを前記少なくとも1つの第1のクライアントに要求するステップと、
    前記処理ユニットが、前記少なくとも1つのビデオストリームが前記少なくとも1つの第2のクライアントからの前記サブスクリプション要求にマッチするとの判定に応答して、前記受信したビデオストリームを、前記第2のクライアントに送信するステップとを備え
    前記処理ユニットが、前記ビデオストリームを、複数のクライアントのそれぞれから、受信するステップと、
    前記処理ユニットが、サブスクリプション要求を、前記複数のクライアントのそれぞれから、受信するステップと、
    前記処理ユニットが、前記サブスクリプション要求が、前記受信したビデオストリームにマッチするかどうかを判定するステップと、
    前記サブスクリプション要求が、前記受信したビデオストリームにマッチするとの判定に応答して、前記処理ユニットが、マッチする少なくとも1つの前記受信したビデオストリームを、前記複数のクライアントのうちの少なくとも1つに送信するステップとをさらに備えたことを特徴とする方法。
  2. 前記サブスクリプション要求が、前記受信したビデオストリームにマッチするかどうかを判定するステップは、前記受信したビデオストリームが、前記サブスクリプション要求によって要求される、ビデオストリームの情報源クライアント、解像度、およびフレームレートのうちの少なくとも1つを含むかどうかを判定するステップを含むことを特徴とする請求項に記載の方法。
  3. 前記サブスクリプション要求が前記受信したビデオストリームにマッチしないとの判定に応答して、前記処理ユニットが、前記受信したビデオストリームを、前記サブスクリプション要求にマッチするように変更できるかどうかを判定するステップと、
    前記受信したビデオストリームを、前記サブスクリプション要求にマッチするように変更できるとの判定に応答して、前記処理ユニットが、前記受信したビデオストリームを、前記サブスクリプション要求にマッチするように変更するステップと、
    前記処理ユニットが、前記変更したビデオストリームを、前記複数のクライアントのうちの少なくとも1つに送信するステップと
    をさらに備えたことを特徴とする請求項に記載の方法。
  4. 前記サブスクリプション要求が前記受信したビデオストリームにマッチしないとの判定に応答して、前記処理ユニットが、前記サブスクリプション要求に関連づけられた、ビデオストリームの情報源クライアントが、前記サブスクリプション要求にマッチするビデオストリームにエンコードできるかどうかを判定するステップと、
    前記情報源クライアントが、前記サブスクリプション要求にマッチするビデオストリームにエンコードできるとの判定に応答して、前記処理ユニットが、前記情報源クライアントに、前記サブスクリプション要求にマッチするビデオストリームにエンコードさせる命令を送信するステップと、
    前記処理ユニットが、エンコードしたビデオストリームを前記情報源クライアントから受信し、前記複数のクライアントのうちの少なくとも1つに送信するステップと
    をさらに備えたことを特徴とする請求項に記載の方法。
  5. 前記サブスクリプション要求が、前記受信したビデオストリームにマッチしないとの判定に応答して、前記処理ユニットが、前記受信したビデオストリームのうちのいずれが、前記サブスクリプション要求に最もよくマッチするかを判定するステップと、
    前記処理ユニットが、前記サブスクリプション要求に最もよくマッチするビデオストリームを、前記複数のクライアントのうちの少なくとも1つに送信するステップと
    をさらに備えたことを特徴とする請求項に記載の方法。
  6. 前記受信したビデオストリームのうちのいずれが、前記サブスクリプション要求に最もよくマッチするかを判定するステップは、
    前記受信したビデオストリームの情報源クライアントが、前記サブスクリプション要求に関連づけられた情報源クライアントにマッチするかどうかを判定するステップと、
    前記受信したビデオストリームの情報源クライアントが、前記サブスクリプション要求に関連づけられた情報源クライアントにマッチするとの判定に応答して、前記サブスクリプション要求に関連づけられた情報源クライアントにマッチする前記受信したビデオストリームの解像度が、前記サブスクリプション要求に関連づけられた解像度にマッチするかどうかを判定するステップと、
    前記受信したビデオストリームの情報源クライアントおよび解像度が、前記サブスクリプション要求に関連づけられた情報源クライアントおよび解像度にそれぞれマッチするとの判定に応答して、前記受信したビデオストリームのフレームレートが、前記サブスクリプション要求に関連づけられたフレームレートにはマッチするかどうかを判定するステップと、
    前記受信したビデオストリームの情報源クライアントおよび解像度が、前記サブスクリプション要求に関連づけられた情報源クライアントおよび解像度にそれぞれマッチするが、前記受信したビデオストリームのフレームレートが、前記サブスクリプション要求に関連づけられたフレームレートにはマッチしないとの判定に応答して、前記受信したビデオストリームを、前記複数のクライアントのうちの少なくとも1つに送信するステップと
    を含むことを特徴とする請求項に記載の方法。
  7. 前記受信したビデオストリームの情報源クライアントが、前記サブスクリプション要求に関連づけられた情報源クライアントにマッチしないとの判定に応答して、
    前記処理ユニットが、前記複数のクライアントの中から、前記サブスクリプション要求に関連付けられた情報源クライアントではない第2の情報源クライアントを選択するステップと、
    前記処理ユニットが、前記第2の情報源クライアントから受信した少なくとも1つのビデオストリームを、前記複数のクライアントのうちの少なくとも1つに送信するステップと
    をさらに備えたことを特徴とする請求項に記載の方法。
  8. コンピュータにより実行されると、前記コンピュータに、ビデオストリームのサブスクリプションを提供する方法を実行させるコンピュータプログラムであって、前記方法は、
    複数のビデオ会議クライアントのそれぞれから、少なくとも1つの情報源ビデオストリームを受信するステップと、
    前記複数のビデオ会議クライアントのうちの少なくとも1つから、少なくとも1つのビデオサブスクリプション要求を受信するステップと、
    前記複数のビデオ会議クライアントの各々から受信した情報源ビデオストリームの少なくとも1つの第1のストリームが、前記少なくとも1つのビデオストリームサブスクリプション要求にマッチするかどうかを判定するステップと、
    前記複数のビデオ会議クライアントの各々から受信した情報源ビデオストリームの少なくとも1つの第1のビデオストリームが、前記ビデオストリームサブスクリプション要求にマッチしないとの判定に応じて、前記ビデオストリームサブスクリプション要求にマッチする、異なる情報源ビデオストリームを要求するステップと、
    前記複数のビデオ会議クライアントの各々から受信した情報源ビデオストリームの前記少なくとも1つの第1のストリームが、前記少なくとも1つのビデオストリームサブスクリプション要求にマッチするとの判定に応答して、前記ビデオストリームのうちマッチした少なくとも1つの第1のストリームを、前記複数のビデオ会議クライアントのうちの要求している少なくとも1つのビデオ会議クライアントに送信するステップと
    を備え
    前記複数のビデオ会議クライアントのうちの少なくとも1つから、前記受信したビデオストリームの少なくとも1つである、少なくとも1つの第2のストリームに対する第2のサブスクリプション要求を受信するステップと、
    前記第2のストリームが、前記第2のサブスクリプション要求にマッチするかどうかを判定するステップと、
    前記第2のストリームが、前記第2のサブスクリプション要求にマッチするとの判定に応答して、前記第2のストリームを、前記複数のビデオ会議クライアントのうちの少なくとも1つに送信するステップと
    をさらに備えたことを特徴とするコンピュータプログラム。
  9. 前記第2のストリームを、前記複数のビデオ会議クライアントのうちの少なくとも1つに送信するステップは、
    前記サブスクリプション要求にマッチする第1のストリームと、前記第2のストリームとの合成ビデオストリームを作成するステップと、
    前記合成ビデオストリームを、前記複数のビデオ会議クライアントのうちの少なくとも1つに送信するステップと
    を含むことを特徴とする請求項に記載のコンピュータプログラム。
  10. 前記ビデオストリームを受信するステップは、1つの前記ビデオ会議クライアントから解像度の異なる複数の前記ビデオストリームを受信するステップを含み
    前記第1のストリームが、前記サブスクリプション要求にマッチするかどうかを判定するステップは、前記サブスクリプション要求に関連づけられた解像度に最も近い前記第1のストリームを選択するステップを含み、
    前記第2のストリームが、前記第2のサブスクリプション要求にマッチするかどうかを判定するステップは、前記第2のサブスクリプション要求に関連づけられた解像度に最も近い前記第2のストリームを選択するステップを含む
    ことを特徴とする請求項に記載のコンピュータプログラム。
  11. 前記第1のストリームが、前記サブスクリプション要求にマッチするかどうかを判定するステップは、前記第1のストリームが、前記サブスクリプション要求に関連づけられたフレームレートで利用可能かどうかを判定するステップを含み、
    前記第2のストリームが、前記第2のサブスクリプション要求にマッチするかどうかを判定するステップは、前記第2のストリームが、前記第2のサブスクリプション要求に関連づけられたフレームレートで利用可能かどうかを判定するステップを含み、
    前記方法は、
    前記第1のストリームと、前記第2のストリームとの合成ビデオストリームを作成するステップであって、前記作成するステップは、
    前記第1のストリームが、前記サブスクリプション要求に関連づけられたフレームレートで利用可能でない場合、前記第1のストリームのフレームレートを変更するステップと、
    前記第2のストリームが、前記第2のサブスクリプション要求に関連づけられたフレームレートで利用可能でない場合、前記第2のストリームのフレームレートを変更するステップと、
    前記変更した第1のストリーム、および前記変更した第2のストリームを、単一のビデオストリームに結合することによって前記合成ビデオストリームを作成するステップと
    を含む、作成するステップと、
    前記合成ビデオストリームを、前記複数のビデオ会議クライアントのうちの少なくとも1つに送信するステップと
    をさらに備えたことを特徴とする請求項に記載のコンピュータプログラム。
JP2011542168A 2008-12-15 2009-11-09 マルチビットレートストリームを使用するビデオ会議のサブスクリプション Expired - Fee Related JP5781441B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/334,836 US20100149301A1 (en) 2008-12-15 2008-12-15 Video Conferencing Subscription Using Multiple Bit Rate Streams
US12/334,836 2008-12-15
PCT/US2009/063697 WO2010074826A1 (en) 2008-12-15 2009-11-09 Video conferencing subscription using multiple bit rate streams

Publications (3)

Publication Number Publication Date
JP2012512604A JP2012512604A (ja) 2012-05-31
JP2012512604A5 JP2012512604A5 (ja) 2012-12-20
JP5781441B2 true JP5781441B2 (ja) 2015-09-24

Family

ID=42240011

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011542168A Expired - Fee Related JP5781441B2 (ja) 2008-12-15 2009-11-09 マルチビットレートストリームを使用するビデオ会議のサブスクリプション

Country Status (11)

Country Link
US (1) US20100149301A1 (ja)
EP (1) EP2359531A4 (ja)
JP (1) JP5781441B2 (ja)
KR (1) KR101617906B1 (ja)
CN (1) CN102246458B (ja)
AU (1) AU2009330646B2 (ja)
BR (1) BRPI0921384A2 (ja)
CA (1) CA2742466A1 (ja)
RU (1) RU2527206C2 (ja)
TW (1) TWI479840B (ja)
WO (1) WO2010074826A1 (ja)

Families Citing this family (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8797377B2 (en) 2008-02-14 2014-08-05 Cisco Technology, Inc. Method and system for videoconference configuration
US8694658B2 (en) 2008-09-19 2014-04-08 Cisco Technology, Inc. System and method for enabling communication sessions in a network environment
JP5495572B2 (ja) * 2009-01-07 2014-05-21 キヤノン株式会社 プロジェクタ・システム及びこれを含むビデオ会議システム
US8659637B2 (en) 2009-03-09 2014-02-25 Cisco Technology, Inc. System and method for providing three dimensional video conferencing in a network environment
US9769504B2 (en) 2009-03-31 2017-09-19 Comcast Cable Communications, Llc Dynamic distribution of media content assets for a content delivery network
US20100302346A1 (en) * 2009-05-27 2010-12-02 Tingxue Huang System for processing and synchronizing large scale video conferencing and document sharing
US8659639B2 (en) 2009-05-29 2014-02-25 Cisco Technology, Inc. System and method for extending communications between participants in a conferencing environment
WO2010147263A1 (en) * 2009-06-16 2010-12-23 Lg Electronics Inc. Method of exchanging messages, sink device and source device
US9082297B2 (en) 2009-08-11 2015-07-14 Cisco Technology, Inc. System and method for verifying parameters in an audiovisual environment
US20110066745A1 (en) * 2009-09-14 2011-03-17 Sony Ericsson Mobile Communications Ab Sharing video streams in commnication sessions
US8621098B2 (en) * 2009-12-10 2013-12-31 At&T Intellectual Property I, L.P. Method and apparatus for providing media content using a mobile device
US20110157298A1 (en) * 2009-12-31 2011-06-30 Tingxue Huang System for processing and synchronizing large scale video conferencing and document sharing
US9225916B2 (en) 2010-03-18 2015-12-29 Cisco Technology, Inc. System and method for enhancing video images in a conferencing environment
US9313452B2 (en) 2010-05-17 2016-04-12 Cisco Technology, Inc. System and method for providing retracting optics in a video conferencing environment
US8947492B2 (en) * 2010-06-18 2015-02-03 Microsoft Corporation Combining multiple bit rate and scalable video coding
US8576271B2 (en) * 2010-06-25 2013-11-05 Microsoft Corporation Combining direct and routed communication in a video conference
EP2408196B1 (en) * 2010-07-14 2017-01-11 Alcatel Lucent A method, server and terminal for generating a composite view from multiple content items
US8896655B2 (en) 2010-08-31 2014-11-25 Cisco Technology, Inc. System and method for providing depth adaptive video conferencing
US8599934B2 (en) 2010-09-08 2013-12-03 Cisco Technology, Inc. System and method for skip coding during video conferencing in a network environment
US8599865B2 (en) 2010-10-26 2013-12-03 Cisco Technology, Inc. System and method for provisioning flows in a mobile network environment
JP2012099890A (ja) * 2010-10-29 2012-05-24 Sony Corp 画像処理装置、画像処理方法、および画像処理システム
US8699457B2 (en) 2010-11-03 2014-04-15 Cisco Technology, Inc. System and method for managing flows in a mobile network environment
US9338394B2 (en) 2010-11-15 2016-05-10 Cisco Technology, Inc. System and method for providing enhanced audio in a video environment
US8902244B2 (en) 2010-11-15 2014-12-02 Cisco Technology, Inc. System and method for providing enhanced graphics in a video environment
US9143725B2 (en) 2010-11-15 2015-09-22 Cisco Technology, Inc. System and method for providing enhanced graphics in a video environment
US8730297B2 (en) 2010-11-15 2014-05-20 Cisco Technology, Inc. System and method for providing camera functions in a video environment
US8723914B2 (en) 2010-11-19 2014-05-13 Cisco Technology, Inc. System and method for providing enhanced video processing in a network environment
US9111138B2 (en) 2010-11-30 2015-08-18 Cisco Technology, Inc. System and method for gesture interface control
US8751565B1 (en) 2011-02-08 2014-06-10 Google Inc. Components for web-based configurable pipeline media processing
US8692862B2 (en) * 2011-02-28 2014-04-08 Cisco Technology, Inc. System and method for selection of video data in a video conference environment
US8984144B2 (en) 2011-03-02 2015-03-17 Comcast Cable Communications, Llc Delivery of content
US8670019B2 (en) 2011-04-28 2014-03-11 Cisco Technology, Inc. System and method for providing enhanced eye gaze in a video conferencing environment
US8681866B1 (en) 2011-04-28 2014-03-25 Google Inc. Method and apparatus for encoding video by downsampling frame resolution
US8786631B1 (en) 2011-04-30 2014-07-22 Cisco Technology, Inc. System and method for transferring transparency information in a video environment
US9106787B1 (en) 2011-05-09 2015-08-11 Google Inc. Apparatus and method for media transmission bandwidth control using bandwidth estimation
US8934026B2 (en) 2011-05-12 2015-01-13 Cisco Technology, Inc. System and method for video coding in a dynamic environment
US8947493B2 (en) 2011-11-16 2015-02-03 Cisco Technology, Inc. System and method for alerting a participant in a video conference
US8782271B1 (en) * 2012-03-19 2014-07-15 Google, Inc. Video mixing using video speech detection
US9185429B1 (en) 2012-04-30 2015-11-10 Google Inc. Video encoding and decoding using un-equal error protection
CN103384235B (zh) * 2012-05-04 2017-09-29 腾讯科技(深圳)有限公司 多人会话时数据呈现的方法、服务器及***
WO2014014238A1 (en) 2012-07-17 2014-01-23 Samsung Electronics Co., Ltd. System and method for providing image
US20140028788A1 (en) * 2012-07-30 2014-01-30 Polycom, Inc. Method and system for conducting video conferences of diverse participating devices
US9131111B2 (en) * 2012-11-02 2015-09-08 OpenExchange, Inc. Methods and apparatus for video communications
CN103856741B (zh) * 2012-12-06 2017-06-06 中兴通讯股份有限公司 视频会议流控方法及视频会议多点控制装置
US8976223B1 (en) * 2012-12-21 2015-03-10 Google Inc. Speaker switching in multiway conversation
US9172740B1 (en) 2013-01-15 2015-10-27 Google Inc. Adjustable buffer remote access
US9311692B1 (en) 2013-01-25 2016-04-12 Google Inc. Scalable buffer remote access
US9225979B1 (en) 2013-01-30 2015-12-29 Google Inc. Remote access encoding
NO341411B1 (no) * 2013-03-04 2017-10-30 Cisco Tech Inc Virtuelle endepunkter i videokonferanser
WO2014134820A1 (zh) * 2013-03-08 2014-09-12 华为终端有限公司 视频通信方法及家庭终端、家庭服务器
JP2014183321A (ja) * 2013-03-15 2014-09-29 Ricoh Co Ltd 通信システム、通信装置及び通信プログラム
EP2884743A1 (en) * 2013-12-12 2015-06-17 Alcatel Lucent Process for managing the exchanges of video streams between users of a video conference service
WO2016003344A1 (en) * 2014-07-04 2016-01-07 Telefonaktiebolaget L M Ericsson (Publ) Priority of uplink streams in video switching
DE102014115188A1 (de) * 2014-10-17 2016-04-21 Visocon Gmbh Verfahren zur Anpassung eines zu übertragenden Datenstroms an eine Ressourcenauslastung
JP6435987B2 (ja) * 2015-05-18 2018-12-12 富士通株式会社 通信装置、通信システム、および、通信方法
KR20170012979A (ko) 2015-07-27 2017-02-06 삼성전자주식회사 영상 공유 서비스를 위한 전자 장치 및 방법
CN105897698B (zh) * 2016-03-28 2019-08-30 深圳明心科技有限公司 一种基于QoS的多流的视频会议***及控制方法
US10332296B2 (en) * 2016-07-05 2019-06-25 Ubitus Inc. Overlaying multi-source media in VRAM
KR101770070B1 (ko) 2016-08-16 2017-08-21 라인 가부시키가이샤 비디오 컨퍼런스를 위한 비디오 스트림 제공 방법 및 시스템
CN108063745B (zh) * 2016-11-08 2019-03-01 视联动力信息技术股份有限公司 一种基于安卓设备的视频通话方法及其***
US10523820B2 (en) 2017-06-02 2019-12-31 Apple Inc. High-quality audio/visual conferencing
US10708320B2 (en) * 2017-06-27 2020-07-07 Atlassian Pty Ltd Selective internal forwarding in conferences with distributed media servers
CN108134918A (zh) * 2018-01-30 2018-06-08 苏州科达科技股份有限公司 视频处理方法、装置及多点视频处理单元、会议设备
US11317130B2 (en) 2018-02-27 2022-04-26 Verizon Patent And Licensing Inc. Method and system for carrier-initiated traffic tuning and communication of subscriber parameters
US10820236B2 (en) * 2018-02-27 2020-10-27 Verizon Patent And Licensing Inc. Method and system for carrier-initiated traffic tuning and communication of subscriber parameters
CN111083430B (zh) * 2018-10-18 2021-04-23 杭州海康威视***技术有限公司 一种图像获取方法、装置、电子设备及存储介质
CN111385516A (zh) * 2018-12-27 2020-07-07 北京紫荆视通科技有限公司 多媒体资源的传输方法、装置、***和可读存储介质
CN111385515B (zh) * 2018-12-27 2022-01-11 北京紫荆视通科技有限公司 视频会议数据的传输方法和视频会议数据的传输***
CN109819333B (zh) * 2019-01-10 2021-05-07 广州视源电子科技股份有限公司 视频流码率分配方法、装置及计算机可读存储介质
CN109660826B (zh) * 2019-02-01 2020-09-29 广州视源电子科技股份有限公司 一种视频传输方法、装置、设备及存储介质
CN112995570B (zh) * 2019-12-18 2023-08-01 ***通信有限公司研究院 一种信息处理方法、装置、设备、***及存储介质
CN111083428A (zh) * 2019-12-27 2020-04-28 北京东土科技股份有限公司 音视频数据处理方法、装置、计算机设备及存储介质
US10999344B1 (en) * 2020-06-15 2021-05-04 Google Llc Dynamic video resolution and quality for improved video conferencing
CN111935436B (zh) * 2020-09-15 2021-02-19 杭州盖视科技有限公司 多视频流在播放端的无缝切换方法与***
CN114500914A (zh) * 2020-11-11 2022-05-13 中兴通讯股份有限公司 音视频转发方法、装置、终端与***
WO2023063945A1 (en) * 2021-10-13 2023-04-20 Hewlett-Packard Development Company, L.P. Output of video streams at multiple resolutions
CN116418937A (zh) * 2021-12-31 2023-07-11 广州迈聆信息科技有限公司 视频分辨率调整方法、装置、存储介质以及电子设备
CN115865877B (zh) * 2023-02-13 2023-05-16 共道网络科技有限公司 音视频处理方法、设备及计算机可读存储介质
CN116938897B (zh) * 2023-09-19 2023-12-15 好信云(北京)网络通信有限公司 一种用于会议的实时通信的方法和装置

Family Cites Families (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5687095A (en) * 1994-11-01 1997-11-11 Lucent Technologies Inc. Video transmission rate matching for multimedia communication systems
US5838664A (en) * 1997-07-17 1998-11-17 Videoserver, Inc. Video teleconferencing system with digital transcoding
US5600646A (en) * 1995-01-27 1997-02-04 Videoserver, Inc. Video teleconferencing system with digital transcoding
US5963547A (en) * 1996-09-18 1999-10-05 Videoserver, Inc. Method and apparatus for centralized multipoint conferencing in a packet network
US6229850B1 (en) * 1997-07-22 2001-05-08 C-Cube Semiconductor Ii, Inc. Multiple resolution video compression
US6091777A (en) * 1997-09-18 2000-07-18 Cubic Video Technologies, Inc. Continuously adaptive digital video compression system and method for a web streamer
US6622171B2 (en) * 1998-09-15 2003-09-16 Microsoft Corporation Multimedia timeline modification in networked client/server systems
US6501797B1 (en) * 1999-07-06 2002-12-31 Koninklijke Phillips Electronics N.V. System and method for improved fine granular scalable video using base layer coding information
US7111316B1 (en) * 1999-08-06 2006-09-19 Wisconsin Alumni Research Foundation Method for efficient, on-demand data streaming
US7089285B1 (en) * 1999-10-05 2006-08-08 Polycom, Inc. Videoconferencing apparatus having integrated multi-point conference capabilities
AU4338800A (en) * 1999-12-22 2001-07-03 General Instrument Corporation Video compression for multicast environments using spatial scalability and simulcast coding
JP2002034047A (ja) * 2000-07-18 2002-01-31 Pioneer Electronic Corp 画像符号化装置及び画像符号化方法、情報符号化装置及び情報符号化方法、情報記録装置並びに情報記録媒体
US7007098B1 (en) * 2000-08-17 2006-02-28 Nortel Networks Limited Methods of controlling video signals in a video conference
US7313593B1 (en) * 2000-10-24 2007-12-25 International Business Machines Corporation Method and apparatus for providing full duplex and multipoint IP audio streaming
US20020131496A1 (en) * 2001-01-18 2002-09-19 Vinod Vasudevan System and method for adjusting bit rate and cost of delivery of digital data
US6766407B1 (en) * 2001-03-27 2004-07-20 Microsoft Corporation Intelligent streaming framework
WO2003027876A1 (en) * 2001-09-26 2003-04-03 Jodie Lynn Reynolds System and method for communicating media signals
US6535238B1 (en) * 2001-10-23 2003-03-18 International Business Machines Corporation Method and apparatus for automatically scaling processor resource usage during video conferencing
US9014059B2 (en) * 2001-12-15 2015-04-21 Thomson Licensing Quality of service setup on a time reservation basis
US7362349B2 (en) * 2002-07-10 2008-04-22 Seiko Epson Corporation Multi-participant conference system with controllable content delivery using a client monitor back-channel
US20090118019A1 (en) * 2002-12-10 2009-05-07 Onlive, Inc. System for streaming databases serving real-time applications used through streaming interactive video
US7034860B2 (en) * 2003-06-20 2006-04-25 Tandberg Telecom As Method and apparatus for video conferencing having dynamic picture layout
US20040257434A1 (en) * 2003-06-23 2004-12-23 Robert Davis Personal multimedia device video format conversion across multiple video formats
US7054774B2 (en) * 2003-06-27 2006-05-30 Microsoft Corporation Midstream determination of varying bandwidth availability
US20050013309A1 (en) * 2003-07-14 2005-01-20 Channasandra Ravishankar System and method for high quality video conferencing with heterogeneous end-points and networks
US20050049957A1 (en) * 2003-08-29 2005-03-03 Valla Vakili System and method for auctioning utilizing a broadcast-based device
US7346556B2 (en) * 2003-08-29 2008-03-18 Yahoo! Inc. System and method for performing purchase transactions utilizing a broadcast-based device
US20050076363A1 (en) * 2003-08-29 2005-04-07 Derek Dukes System and method for navigation of a multimedia interface
US7844992B2 (en) * 2003-09-10 2010-11-30 Thomson Licensing Video on demand server system and method
IL158276A (en) * 2003-10-02 2010-04-29 Radvision Ltd Method for dynamically optimizing bandwidth allocation in variable bitrate (multi-rate) conferences
NO318911B1 (no) * 2003-11-14 2005-05-23 Tandberg Telecom As Distribuert sammensetting av sanntids-media
US7447740B2 (en) * 2003-12-19 2008-11-04 Microsoft Corporation Internet video conferencing on a home television
JP4955544B2 (ja) * 2004-06-03 2012-06-20 ヒルクレスト・ラボラトリーズ・インコーポレイテッド ズーム可能ユーザインターフェースのためのクライアント/サーバアーキテクチャおよび方法
BRPI0512816A (pt) * 2004-07-01 2008-04-08 Qualcomm Inc método e equipamento para utilizar técnicas de conversão ascendente de taxa de quadro em codificação de vìdeo escalonável
US20060047779A1 (en) * 2004-07-12 2006-03-02 Sharp Laboratories Of America, Inc. HTTP agent-driven content negotiation for scalable video coding
US8442108B2 (en) * 2004-07-12 2013-05-14 Microsoft Corporation Adaptive updates in motion-compensated temporal filtering
US8340177B2 (en) * 2004-07-12 2012-12-25 Microsoft Corporation Embedded base layer codec for 3D sub-band coding
US8374238B2 (en) * 2004-07-13 2013-02-12 Microsoft Corporation Spatial scalability in 3D sub-band decoding of SDMCTF-encoded video
US7543073B2 (en) * 2004-12-10 2009-06-02 Microsoft Corporation System and process for performing an exponentially weighted moving average on streaming data to establish a moving average bit rate
US7536469B2 (en) * 2004-12-10 2009-05-19 Microsoft Corporation System and process for controlling the coding bit rate of streaming media data employing a limited number of supported coding bit rates
US20060143678A1 (en) * 2004-12-10 2006-06-29 Microsoft Corporation System and process for controlling the coding bit rate of streaming media data employing a linear quadratic control technique and leaky bucket model
US7653129B2 (en) * 2004-12-28 2010-01-26 General Instrument Corporation Method and apparatus for providing intra coding frame bit budget
WO2006126974A1 (en) * 2005-04-11 2006-11-30 Tubitak Bilten Optimal video adaptation for resource constrained mobile devices based on subjective utility models
US7692682B2 (en) * 2005-04-28 2010-04-06 Apple Inc. Video encoding in a video conference
US7949117B2 (en) * 2005-04-28 2011-05-24 Apple Inc. Heterogeneous video conferencing
US7899170B2 (en) * 2005-04-28 2011-03-01 Apple Inc. Multi-participant conference setup
EP1878229A4 (en) * 2005-04-28 2011-07-27 Apple Inc VIDEO PROCESSING IN MULTIPLE PARTICIPANT VIDEO CONFERENCE
US20070022215A1 (en) * 2005-07-19 2007-01-25 Singer David W Method and apparatus for media data transmission
WO2008082375A2 (en) * 2005-09-07 2008-07-10 Vidyo, Inc. System and method for a conference server architecture for low delay and distributed conferencing applications
US20070024705A1 (en) * 2005-08-01 2007-02-01 Richter Roger K Systems and methods for video stream selection
KR100703354B1 (ko) * 2005-08-11 2007-04-03 삼성전자주식회사 휴대단말기의 화상통화모드에서 영상데이터 전송방법
EP1758334A1 (en) * 2005-08-26 2007-02-28 Matsushita Electric Industrial Co., Ltd. Establishment of media sessions with media adaptation
DE102005050588B4 (de) * 2005-10-21 2010-07-08 Siemens Ag Signalisierung bezüglich des Aufbaus von H.324 Videotelefonie zwischen einer Mediagateway und einem Controller
JP2007124354A (ja) * 2005-10-28 2007-05-17 Canon Inc サーバ及びその制御方法並びに映像配信システム
CA2633366C (en) * 2005-12-22 2015-04-28 Vidyo, Inc. System and method for videoconferencing using scalable video coding and compositing scalable video conferencing servers
US8619865B2 (en) * 2006-02-16 2013-12-31 Vidyo, Inc. System and method for thinning of scalable video coding bit-streams
US7916755B2 (en) * 2006-02-27 2011-03-29 Time Warner Cable Inc. Methods and apparatus for selecting digital coding/decoding technology for programming and data delivery
US8718100B2 (en) * 2006-02-27 2014-05-06 Time Warner Cable Enterprises Llc Methods and apparatus for selecting digital interface technology for programming and data delivery
JP4585479B2 (ja) * 2006-03-30 2010-11-24 株式会社東芝 サーバ装置および映像配信方法
WO2007134549A1 (fr) * 2006-05-24 2007-11-29 Huawei Technologies Co., Ltd. Procédé, dispositif et système pour mettre en oeuvre le service de session
US7773672B2 (en) * 2006-05-30 2010-08-10 Freescale Semiconductor, Inc. Scalable rate control system for a video encoder
KR100800748B1 (ko) * 2006-07-28 2008-02-01 삼성전자주식회사 블루투스를 이용한 동영상 스트림 전송 장치 및 방법
US7764632B2 (en) * 2006-08-24 2010-07-27 Interwise Ltd. Software bridge for multi-point multi-media teleconferencing and telecollaboration
CA2662812C (en) * 2006-09-29 2014-02-11 Vidyo, Inc. System and method for multipoint conferencing with scalable video coding servers and multicast
JP2008288974A (ja) * 2007-05-18 2008-11-27 Sony Corp ビデオ会議システム及びビデオ会議装置
US9060094B2 (en) * 2007-09-30 2015-06-16 Optical Fusion, Inc. Individual adjustment of audio and video properties in network conferencing
US20090184962A1 (en) * 2008-01-22 2009-07-23 Dell Product L.P. Systems and Methods for Managing Video Resolution in a Multiple-Output Information Handling System
US8144187B2 (en) * 2008-03-14 2012-03-27 Microsoft Corporation Multiple video stream capability negotiation
CN102090069B (zh) * 2008-06-09 2014-04-30 维德约股份有限公司 可缩放视频和音频通信***中的改进视图布局管理
ATE536048T1 (de) * 2008-06-20 2011-12-15 Dolby Lab Licensing Corp Videokomprimierung unter mehreren verzerrungsnebenbedingungen
US8319820B2 (en) * 2008-06-23 2012-11-27 Radvision, Ltd. Systems, methods, and media for providing cascaded multi-point video conferencing units
US8249144B2 (en) * 2008-07-08 2012-08-21 Imagine Communications Ltd. Distributed transcoding
US20100091888A1 (en) * 2008-10-13 2010-04-15 General Instrument Corporation Multi-Rate Encoder with GOP Alignment
US8380790B2 (en) * 2008-12-15 2013-02-19 Microsoft Corporation Video conference rate matching
CN102783170A (zh) * 2010-03-05 2012-11-14 汤姆森特许公司 自适应流传输***中的比特率调整

Also Published As

Publication number Publication date
EP2359531A4 (en) 2015-10-07
TW201126963A (en) 2011-08-01
RU2011124036A (ru) 2013-01-10
KR101617906B1 (ko) 2016-05-03
WO2010074826A1 (en) 2010-07-01
KR20110103948A (ko) 2011-09-21
AU2009330646A1 (en) 2011-06-30
TWI479840B (zh) 2015-04-01
BRPI0921384A2 (pt) 2018-06-19
EP2359531A1 (en) 2011-08-24
JP2012512604A (ja) 2012-05-31
RU2527206C2 (ru) 2014-08-27
US20100149301A1 (en) 2010-06-17
CN102246458A (zh) 2011-11-16
CA2742466A1 (en) 2010-07-01
CN102246458B (zh) 2015-06-17
AU2009330646B2 (en) 2014-07-24

Similar Documents

Publication Publication Date Title
JP5781441B2 (ja) マルチビットレートストリームを使用するビデオ会議のサブスクリプション
US8947492B2 (en) Combining multiple bit rate and scalable video coding
US8380790B2 (en) Video conference rate matching
US9300705B2 (en) Methods and systems for interfacing heterogeneous endpoints and web-based media sources in a video conference
US9407867B2 (en) Distributed recording or streaming of a videoconference in multiple formats
US8780166B2 (en) Collaborative recording of a videoconference using a recording server
US8456509B2 (en) Providing presentations in a videoconference
US8787547B2 (en) Selective audio combination for a conference
JP2014522538A (ja) 改善されたインタラクティブコンテンツをビデオ通信システムで共有するためのシステムおよび方法
US8717408B2 (en) Conducting a private videoconference within a videoconference via an MCU
US20140028778A1 (en) Systems and methods for ad-hoc integration of tablets and phones in video communication systems
US8717409B2 (en) Conducting a direct private videoconference within a videoconference
KR20180091319A (ko) 사운드 공유 장치 및 방법
CN116636201A (zh) 使用rtcp反馈发信号通知用于远程终端的远程会议和远程呈现的多个音频混合增益的技术

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121102

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121102

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20130712

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130719

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140121

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140421

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140428

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140521

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20141202

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150402

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20150414

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20150523

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: 20150616

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150715

R150 Certificate of patent or registration of utility model

Ref document number: 5781441

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees