JP2006217589A - ビデオ会議装置、装置、ビデオ会議システム、方法およびこの方法を実行するように適合された命令プログラムを含んだデバイス可読媒体または波形 - Google Patents

ビデオ会議装置、装置、ビデオ会議システム、方法およびこの方法を実行するように適合された命令プログラムを含んだデバイス可読媒体または波形 Download PDF

Info

Publication number
JP2006217589A
JP2006217589A JP2006015359A JP2006015359A JP2006217589A JP 2006217589 A JP2006217589 A JP 2006217589A JP 2006015359 A JP2006015359 A JP 2006015359A JP 2006015359 A JP2006015359 A JP 2006015359A JP 2006217589 A JP2006217589 A JP 2006217589A
Authority
JP
Japan
Prior art keywords
data
tcp packets
receiver
received
bit rate
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.)
Granted
Application number
JP2006015359A
Other languages
English (en)
Other versions
JP4265609B2 (ja
Inventor
Sean Miceli
ミセリ ショーン
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Publication of JP2006217589A publication Critical patent/JP2006217589A/ja
Application granted granted Critical
Publication of JP4265609B2 publication Critical patent/JP4265609B2/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
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0002Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate
    • 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/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • 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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • 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
    • H04N21/658Transmission by the client directed to the 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
    • H04N21/6582Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Abstract

【課題】トランスポートコントロールプロトコルを用いるマルチメディア通信チャンネルの適応型ビットレート調整。
【解決手段】対応する方法および命令プログラムを有するビデオ会議装置は、ビデオデータを生成するためのビデオコーデック、ビデオデータのTCPパケットを生成するためのビデオパケット生成装置、音声データを生成するための音声コーデック、音声データのパケットを生成するための音声パケット生成装置、TCPパケットを送信するための送信回路、レシーバで受信したビデオデータのTCPパケットの数を表すRTCPレシーバレポートを受信するための受信回路、および送信回路で送信したビデオデータのTCPパケット数とレシーバで受信したビデオデータのTCPパケット数との差異に基づいてすでに送信したがまだレシーバで受信していないビデオデータのTCPパケット数の推定値を生成し、その推定値に従ってビデオビットレートを制御するためのコントローラを含む。
【選択図】図2

Description

本発明は一般的にディジタルデータ送信のためのビットレート制御に関する。より具体的には、本発明はトランスポートコントロールプロトコル(TCP)を用いるマルチメディア通信チャンネルの適応型ビットレート調整に関する発明である。
インターネットビデオ会議などに用いられるマルチメディア通信チャネルは一般的に、ビデオデータパケットを通信するためにユーザデータグラムプロトコル(UDP)を利用する。UDPは、損失パケットの再送信をサポートしないので、リアルタイムデータ送信に適切である。リアルタイムマルチメディア通信チャネルの損失パケットの再送信に伴う遅延時間はレシーバで凍結したビデオや音声にカチッという音などの認識できる欠陥を発生させる。
しかし、UDPは非接続プロトコルだから、ネットワーク安全性の問題が生じる。多くの会社は企業のファイアウォールを通すUDP接続を許可しないのでUDPビデオ会議システムを使用できない。
米国特許出願公開第2004/0078478号明細書
しかし、もう一つトランスミッションコントロールプロトコル(TCP)というトランスポートプロトコルがある。しかしTCPは損失パケットを再送信するので、基本的にリアルタイムマルチメディア通信に適切ではない。TCPはさらに、通信チャンネルのビットレートを有効に変化させることによってネットワーク混雑制御も提供し、それにより混雑したネットワーク接続に接続しているすべてのチャンネルがネットワーク接続を共同使用できるように各々のチャンネルのビットレートを下げる。この混雑制御はマルチメディア通信に悪影響を及ぼす。例えば、もしビデオ会議アプリケーションがTCP混雑制御に許されるビットレートよりも高いビットレートで送信すれば、送信遅延が長くなる。ビットレートの差が10%であれば、一時間のビデオ会議の終わりに遅延は6分となる。これは決してリアルタイムではない。
一般に、一つの態様において、本発明はビデオ会議装置を特徴とし、このビデオ会議装置は、あるビデオビットレートでビデオデータを生成するためのビデオコーデック、ビデオデータのトランスポートコントロールプロトコル(TCP)パケットを生成するためのビデオパケット生成装置、ある音声ビットレートで音声データを生成するための音声コーデック、音声データのパケットを生成するための音声パケット生成装置、ビデオデータのTCPパケットと音声データのパケットを送信するための送信回路、ビデオデータのTCPパケットを受信するレシーバで受信したビデオデータのTCPパケット数を表すリアルタイムトランスポートコントロールプロトコル(RTCP)のレシーバレポートを受信するための受信回路、および送信回路で送信したビデオデータのTCPパケット数とレシーバで受信したビデオデータのTCPパケット数との差異に基づいて送信回路ですでに送信したがまだレシーバで受信していないビデオデータのTCPパケット数の推定値を生成するため、そしてその推定値に従ってビデオビットレートを制御するためのコントローラを含む。
一般に、もう一つの態様において、本発明は装置およびそれに対応する方法とコンピュータプログラムを特徴とする。装置は、あるビットレートでデータを生成するためのデータ生成装置、そのデータのトランスポートコントロールプロトコル(TCP)パケットを生成するためのパケット生成装置、データのTCPパケットを送信するための送信回路、および送信回路ですでに送信したがまだデータのTCPパケットを受信するレシーバで受信していないデータのTCPパケット数の推定値に従ってビットレートを制御するためのコントローラを含む。
特定のインプリメンテーションは、次の特徴を一つ以上含むことができる。コントローラは、初期化イベントが起きた後に送信回路で送信したデータのTCPパケットの数と、初期化イベント後にレシーバで受信したデータのTCPパケットの数、および送信回路で送信したがレシーバでまだ受信していないデータのTCPパケットの数の前の推定値に基づいて、すでに送信回路で送信したがまだレシーバで受信していないデータのTCPパケットの数の推定値を生成する。コントローラは、送信回路ですでに送信したがまだレシーバで受信していないデータのTCPパケットの数の推定値を生成するために、初期化イベント後に送信回路で送信したデータのTCPパケットの数および初期化イベント後にレシーバで受信したデータのTCPパケットの数との間の複数の差異値をそれぞれ異なった時間で決定し、そして差異値の中央値(median)、差異値の平均値(mean)、および差異値のモードから構成されるグループのうちの少なくとも一つに従って推定値を生成する。コントローラは、すでに送信回路で送信したがまだレシーバで受信していないデータのTCPパケットの数の推定値に従ってビットレートを制御するために、初期化イベント後に送信回路で送信したデータのTCPパケットの数と初期化イベント後にレシーバで受信したデータのTCPパケットの数との間の連続差分の第1所定数がすでに送信回路で送信したがまだレシーバで受信していないデータのTCPパケットの数の推定値の第1関数であるしきい値を超えるとビットレートを下げ、初期化イベント後に送信回路で送信したデータのTCPパケットの数と初期化イベント後にレシーバで受信したデータのTCPパケットの数との間の連続差分の第2所定数がすでに送信回路で送信したがまだレシーバで受信していないデータのTCPパケットの数の推定値の第2関数であるしきい値よりも低くなるとビットレートを上げ、そしてビットレートが所定の時間間隔で上がっていないときにはビットレートを上げる。すでに送信回路で送信したがまだレシーバで受信していないデータのTCPパケットの数の推定値に従ってビットレートを制御するために、コントローラはさらにすでに送信回路で送信したがまだレシーバで受信していないデータのTCPパケットの数の新しい推定値を生成し、その新しい推定値が推定値を囲む推定枠(estimate window)外にあるかどうかを判定し、その新しい推定値が推定値を囲む推定枠外にあるときには新しい推定値に従ってビットレートを制御し、そしてその新しい推定値が推定値を囲む推定枠内にあるときには推定値に従ってビットレートを制御する。装置はさらにレシーバで受信したデータのTCPパケットの数を表すデータパケットを受信するための受信回路を含む。レシーバで受信したデータのTCPパケットの数を表すデータパケットはリアルタイムトランスポートコントロールプロトコル(RTCP)のレシーバレポートパケットを含む。データ生成装置は、ビデオデータを符号化するためのビデオコーデック、および音声データを符号化するための音声コーデックからなるグループの少なくとも一つを含む。ビデオ会議システムはこの装置を含む。
一つ以上の実施例の詳細を添付の図面および以下に説明する。その他の特徴は説明および図面ならびに請求項から明確になる。
以下、本発明の実施形態を図面に基づいて説明する。
本発明の実施例は、トランスポートコントロールプロトコル(TCP)を用いるマルチメディア通信チャネルの適応型ビットレート調整を提供する。この明細書で開示する技術は、ビデオ会議やボイスオーバIP電話技術などのようなリアルタイム双方向のアプリケーションに特に役に立つが、片方向通信チャネルにも、より緩いレイテンシ要件を有する通信チャネルにも等しく適用できる。
図1はインターネットのようなネットワーク102と通信しているビデオ会議システム100を示す。しかし、本発明の実施例をネットワークビデオ会議に関して説明しているけれども、この明細書で開示する技術はネットワークまたは直接リンクで他の片方向および双方向通信アプリケーションにも等しく適用できる。
ビデオ会議システム100は、例えばビデオ会議用カメラからのビデオ信号を提供するビデオソース104、ビデオ信号をビデオデータとして符号化するためのビデオコーデック106、およびビデオデータのTCPパケットを生成するためのビデオパケット生成装置108を含む。ビデオ会議システム100はさらに、例えばマイクからの音声信号を提供する音声ソース110、音声信号を音声データとして符号化するための音声コーデック112、および音声データのTCPパケットを生成するための音声パケット生成装置114を含む。ビデオ会議システム100はさらに、ビデオおよび音声TCPパケットを送信するイサネットポートのような一つ以上の送信回路116、ネットワーク102からデータおよびコントロールパケットを受信するための一つ以上の受信回路118、およびビデオ会議システム100を制御するためのコントローラ120を含む。
図2は、本発明の好適な実施例によるビデオ会議システム100のための適応型ビットレート制御プロセス200を示す。プロセス200をビデオデータビットレートを制御することに関して説明しているが、プロセス200はオーディオデータビットレートまたはオディオおよびビデオソース、コーデックなどのようなデータ生成装置で生成するあらゆるディジタルデータのためのビットレートを制御することに等しく適用できる。コントローラ120はプロセス200の2つのインスタンスを同時に実行するのが好ましい。プロセス200の1つのインスタンスはビデオデータのビットレートを制御し、それと同時にもう1つのインスタンスはオーディオデータのビットレートを制御する。
ビデオ会議中、例えばビデオソオース104のようなソースは、例えばビデオ信号のようなデータ信号を生成する(ステップ202)。例えばビデオコーデック106のようなコーデックは、あるビデオビットレートでビデオデータを生成するためにビデオを符号化する(ステップ204)。例えばビデオパケット生成装置108のようなパケット生成装置はビデオデータのTCPパケットを生成する(ステップ206)。送信回路116はビデオデータのTCPパケットを送信する(ステップ208)。
コントローラ120は、送信中のビデオデータのTCPパケットの数、つまり送信回路116ですでに送信したが、たとえば他のビデオ会議システムなどのパケットを受信するレシーバでまだ受信していないビデオデータのTCPパケットの数を推定する(ステップ210)。現在送信中のTCPビデオパケットの数を確実に判定できないので、推定値が使用される。コントローラ120は、送信中のビデオデータのTCPパケットの数の推定値に従ってビデオデータのビットレートを制御する(ステップ212)。
図3は、現在送信中のTCPビデオパケット数の推定値に基づいてビデオデータのビットレートを制御するためのプロセス300を示す。コントローラ120は、送信回路116で送信したビデオデータのTCPパケットの数とレシーバで受信したビデオデータのTCPパケット数との間の差DIFFを、好ましくはある所定期間の間に、判定する。
レシーバで受信した(ビデオ)データのTCPパケットの数を、好ましくはレシーバで送信して受信回路118で受信したリアルタイムトランスポートコントロールプロトコル(RTCP)のレシーバレポートパケットとしてレシーバから受け取る。ビデオ会議システム100で送信したビデオデータのTCPパケットの数をビデオ会議システムから受け取る。好適な実施例において、RTCPのレポート間隔は2秒で、パケット数のカウントは例えば現在のビデオ会議セッションの開始のような初期化イベントから始まる。
コントローラ120はさらにネットワーク102で送信中であるビデオデータの送信したパケットの数Dを推定する(ステップ304)。推定値Dは、前の50個のDIFFの値の中央値として計算されるのが好ましいが、違う数のDIFFの値を使用できるうえ、中央値の代わりに平均値、モード、またはDIFFの値の違う関数を使用することもできる。
しかし、初期化時にはDIFFの値の数が不十分である。7つのDIFFの値が計算されるまでDIFFの最初の値が使用されるのが好ましい。それからDIFFの50個の値が計算されるまでDIFFのすべての値の中央値が使用される。
ネットワーク102のスピードが遅い場合には、Dの最初のいくつかの推定値が大きすぎる可能性がある、例えば最初のビデオビットレートがネットワーク102の平均ビットレートを遥かに超えるとき。従って、最初のビデオビットレートはビデオ会議システム100で送信したビデオデータの平均のパケットの大きさSに基づいた値に最初限定されるのが好ましい。好適な実施例では、もし平均のパケットの大きさがKビットを超えれば、K=40,000であるとしてビットレートはDS<KになるまでK/DSで下げられる。言うまでもなく、Kとして他の値も使用できる。
プロセス300はDの値の安定性によってメリットがある。従って、好適な実施例では、Dの新しい値が計算されると、それはDの前の値と比較される。Dの新しい値がDの前の値を囲む推定枠内に入るならば、Dの新しい値は捨てられ、Dの前値が使用される。推定値枠はD±DIFFの一つの標準偏差であるのが好ましい。DIFFの標準偏差はDIFFの前の50の値の中央値絶対偏差(median absolute deviation)として計算されるのが好ましいが、他の計算方法も使用できる。
プロセス300は送信中のビデオデータパケットの標準偏差SDevを推定する(ステップ306)。標準偏差SDevはDIFFの前の50の値の中央値絶対偏差として計算されるのが好ましいが、他の計算方法も使用できる。しかし、初期化時にはDIFFの値の数が不十分である。7つのDIFFのサンプルが受信されるまで標準偏差SDevはDIFFの最高と最低の値の平均値として計算されるのが好ましいが、他の計算方法も使用できる。その後、標準偏差SDevは上記に説明したように計算される。
その後、プロセス300はDIFFとDの値に従ってビデオデータのビットレートを制御する。特に、プロセス300はDIFFのM連続値がDの関数であるしきい値を超えるとビットレートを下げ、DIFFのN連続値がDの関数であるしきい値よりも低くなるとビットレートを上げる。以下に詳しく述べるように、複数のしきい値を使用できる。
プロセス300はしきい値ごとにカウンターIを維持する。4つのしきい値に対して、プロセス300はカウンターI1、I2、I3、およびI4を維持する。プロセス300はさらにビデオビットレート調整がなされていないレシーバレポートの数を数えるカウンターI5も維持するのが好ましい。
あるDIFFの値がDの値と標準偏差SDevの2倍の合計を超えるならば(ステップ308)、コントローラ120はカウンタI1をインクリメントする(ステップ310)。もしI1=3、つまり3つの連続したRTCPレシーバレポートに対してDIFF>D+2SDevであるならば(ステップ312)、コントローラ120はビデオビットレートを下げる(ステップ314)。その低下分は20%であるのが好ましいが、他の値も使用できる。
ビデオビットレートを変えた後だけれども送信中のビデオデータのTCPパケットの数を改めて推定するよりも前に、プロセス300は、好ましくは2つのRTCPレシーバレポートを飛ばして(ステップ318)、ある所定の期間待つ。プロセス300はさらにビデオビットレートを変えてからすべてのカウンタI1、I2、I3、I4、およびI5をリセットする(ステップ318)。プロセス300は次にステップ302で再開する。
しかし、もしステップ308でDIFF≦D+2SDevであれば、確実にカウンタI1が連続的にDIFF>D+2SDevであるRTCPレシーバレポートのみを数えるようにカウンタI1はゼロにリセットされる(ステップ320)。
あるDIFFの値がDの値と標準偏差SDevの合計を超える場合には(ステップ322)、コントローラ120はカウンタI2をインクリメントする(ステップ324)。もしI2=5、つまり5つの連続したRTCPレシーバレポーットに対してDIFF>D+SDevであるならば(ステップ326)、コントローラ120はビデオビットレートを下げ(ステップ314)、2つのRTCPレポートを飛ばして(ステップ316)、カウンタIをリセットする(ステップ318)。その後プロセス300はステップ302で再開する。その低下分は20%であるのが好ましいが、他の値も使用できる。
しかし、もしステップ322でDIFF≦D+SDevであれば、確実にカウンタI2が連続的にDIFF>D+SDevであるRTCPレシーバレポートのみを数えるようにカウンタI2はゼロにリセットされる(ステップ328)。
あるDIFFの値はDの値を超える場合には(ステップ330)、コントローラ120はカウンタI3をインクリメントする(ステップ332)。もしI3=9、つまり9つの連続したRTCPレシーバレポートに対してDIFF>Dであるならば(ステップ334)、コントローラ120はビデオビットレートを下げ(ステップ314)、2つのRTCPレポートを飛ばして(ステップ316)、カウンタIをリセットする(ステップ318)。その後プロセス300はステップ302で再開する。その低下分は20%であるのが好ましいが、他の値も使用できる。
しかし、もしステップ330でDIFF≦Dであれば、確実にカウンタI3が連続的にDIFF>DであるRTCPレシーバレポートのみを数えるようにカウンタI3はゼロにリセットされる(ステップ336)。
あるDIFFの値がDの値を下回る場合には(ステップ338)、コントローラ120はカウンタI4をインクリメントする(ステップ340)。もしI4=6、つまり6つの連続したRTCPレシーバレポートに対してDIFF<Dであるならば(ステップ342)、コントローラ120はビデオビットレートを上げ(ステップ344)、2つのRTCPレポートを飛ばして(ステップ316)、カウンタIをリセットする(ステップ318)。プロセス300はその後ステップ302で再開する。その増加分は10%であるのが好ましいが、他の値も使用できる。
しかし、もしステップ338でDIFF≧Dであれば、確実にカウンタI4が連続的にDIFF<DであるRTCPレシーバレポートのみを数えるようにカウンタI4はゼロにリセットされる(ステップ346)。
確実にビデオビットレートが不要に低い値で安定しないように、もしJの連続DIFF値に対して(つまりJのRTCPレシーバレポートパケットに対して)ビデオビットレートには変化がなければ、コントローラ120はビデオビットレートを上げる。J=16であって増加分は10%であるのが好ましいが、他の値も使用できる。従って、あるRTCPレシーバレポートに対してビデオビットレート調整がなければ、プロセス300はカウンタI5をインクリメントする(ステップ348)。もしI5=16、つまり16の連続したRTCPレシーバレポートに対してビデオビットレート調整がなければ(ステップ350)、コントローラ120はビデオビットレートを上げ(ステップ344)、2つのRTCPレポートを飛ばして(ステップ316)、カウンタIをリセットする(ステップ318)。その増加分は10%であるのが好ましいが、他の値も使用できる。プロセス300はその後ステップ302で再開する。
プロセス300は、例えば有意義な動きを含むビデオであるi-frameを送信する際のようなビデオデータのバーストを処分するためのバースト認識ルーチンを含んでいるのが好ましい。このようなバーストが起きると、コントローラ120はビデオビットレートを半分にし、プロセス300を再開する前に3つのRTCPレシーバレポートパケットに対してその値を維持する。
発明は、ディジタル電子回路機構、またはハードウェア、ファームウェア、ソフトウェア、またはそれらの組み合わせで実現できる。発明の装置は、プログラマブルプロセッサで実行するように例えば記憶装置などデバイス可読媒体に有形的に含まれたコンピュータプログラム製品に実現できる。および発明の方法ステップは、入力データに操作しおよび出力を生成することによって発明の機能を実行するための命令のプログラムを実行するプログラマブルプロセッサで実行できる。発明は、データストレージシステムとの間でデータおよび命令を送受信するように接続された少なくとも一つのプログラマブルプロセッサ、少なくとも一つの入力装置、および少なくとも一つの出力装置を含むプログラマブルシステムで実行可能な一つ以上のプログラムに都合よく実現できる。各コンピュータプログラムは高レベルの手続き型またはオブジェクト指向型プログラミング言語、または望むならばアセンブリあるいはマシン言語で実現できる。いずれにしても、言語はコンパイルされた言語または解釈された言語でいい。例として、適切なプロセッサとしては汎用および専用のマイクロプロセッサを共に使用できる。一般的に、プロセッサは読み取り専用メモリおよび/またはランダムアクセスメモリから命令およびデータを受け取る。一般的に、コンピュータはデータファイルを格納するための大容量記憶装置を一つ以上含んでいる。そうした装置としては、内部ハードディスクおよびリムーバブルディスクのような磁気ディスク、光磁気ディスク、および光ディスクなどがある。コンピュータプログラム命令およびデータを有形的に実施するのに適した記憶装置としては、あらゆる形の不揮発性メモリがあり、例としてEPROM、EEPROM、およびフラッシュメモリ素子のような半導体メモリ素子、内部ハードディスクおよびリムーバブルディスクのような磁気ディスク、光磁気ディスク、およびCD-ROMなどがある。上記のいずれもASIC(用途特定向け集積回路)によって補足またはASICに組み込むことができる。
発明のいくつかの実施例を説明してきた。しかし、発明の精神および範囲から逸脱しない限りにおいてさまざまな修正を行なえることがわかるだろう。したがって、他の実施例は下記の請求項の範囲内に入るものとする。
図1は、インターネットなどのようなネットワークに通信しているビデオ会議システムを示す。 図2は、本発明の好適な実施例による図1のビデオ会議システムのための適応型ビットレート制御プロセスを示す。 図3は、現在送信中のTCPビデオパケット数の推定値に基づいてビデオデータのビットレートを制御するためのプロセスを示す。
符号の説明
100 ビデオ会議システム
102 ネットワーク
104 ビデオソース
106 ビデオコーデック
108 パケット生成装置
110 音声ソース
112 音声コーデック
114 パケット生成装置
116 送信回路
118 受信回路
120 コントローラ
202 データ信号を生成
204 ある特定のビットレートでデータを生成するための例えばビデオなどデータ信号を符号化
206 データのTCPパケットを生成
208 データのTCPパケットを送信
210 送信中のTCPパケット数を推定
212 推定値に基づいてビットレートを制御
302 SDevを推定
304 Dを推定
306 DIFFを判定
314 ビットレートを下げる
316 2つのレポートを飛ばす
318 I1, I2, I3, I4, I5をリセット
344 ビットレートを上げる

Claims (20)

  1. あるビデオビットレートでビデオデータを生成するためのビデオコーデックと、
    ビデオデータのトランスポートコントロールプロトコル(TCP)パケットを生成するためのビデオパケット生成装置と、
    ある音声ビットレートで音声データを生成するための音声コーデックと、
    音声データのパケットを生成するための音声パケット生成装置と、
    ビデオデータのTCPパケットと音声データのパケットを送信するための送信回路と、
    ビデオデータのTCPパケットを受信するレシーバで受信したビデオデータのTCPパケット数を表すリアルタイムトランスポートコントロールプロトコル(RTCP)のレシーバレポートを受信するための受信回路、および
    コントローラを含み、コントローラは、
    送信回路で送信したビデオデータのTCPパケット数とレシーバで受信したビデオデータのTCPパケット数との差異に基づいて送信回路ですでに送信したがレシーバでまだ受信していないビデオデータのTCPパケット数の推定値を生成し、
    その推定値に従ってビデオビットレートを制御する、
    ビデオ会議装置。
  2. あるビットレートでデータを生成するためのデータ生成装置と、
    データのトランスポートコントロールプロトコル(TCP)パケットを生成するためのパケット生成装置と、
    データのTCPパケットを送信するための送信回路、および
    送信回路ですでに送信したがデータのTCPパケットを受信するレシーバでまだ受信していないデータのTCPパケット数の推定値に従ってビットレートを制御するコントローラ、
    を含む装置。
  3. コントローラは、
    初期化イベント後に送信回路で送信したデータのTCPパケット数と、
    初期化イベント後にレシーバで受信したデータのTCPパケット数と、
    送信回路ですでに送信したがレシーバでまだ受信していないデータのTCPパケット数の以前の推定値と、
    に基づいて送信回路ですでに送信したがレシーバでまだ受信していないデータのTCPパケット数の推定値を生成する、請求項2に記載の装置。
  4. 送信回路ですでに送信したがレシーバでまだ受信していないデータのTCPパケット数の推定値を生成するために、コントローラは、
    初期化イベント後に送信回路で送信したデータのTCPパケットの数と初期化イベント後にレシーバで受信したデータのTCPパケットの数との間の複数の差異値をそれぞれ異なった時間に判定し、
    差異値の中央値、
    差異値の平均値、および
    差異値のモード
    から構成されるグループからの少なくとも一つに従って推定値を生成する、
    請求項3に記載の装置。
  5. 送信回路ですでに送信したがレシーバでまだ受信していないデータのTCPパケット数の推定値に従ってビットレートを制御するために、コントローラは、
    初期化イベント後に送信回路で送信したデータのTCPパケットの数と初期化イベント後にレシーバで受信したデータのTCPパケットの数との間の連続差異値(consecutive differences)の第1所定数がすでに送信回路で送信したがレシーバでまだ受信していないデータのTCPパケットの数の推定値の第1関数であるしきい値を超えるとビットレートを下げ、
    初期化イベント後に送信回路で送信したデータのTCPパケットの数と初期化イベント後にレシーバで受信したデータのTCPパケットの数との間の連続差異値の第2所定数がすでに送信回路で送信したがレシーバでまだ受信していないデータのTCPパケットの数の推定値の第2関数であるしきい値よりも低くなるとビットレートを上げ、そして
    ビットレートがある所定の時間間隔の間上がっていないときにはビットレートを上げる、
    請求項2に記載の装置。
  6. 送信回路ですでに送信したがレシーバでまだ受信していないデータのTCPパケット数の推定値に従ってビットレートを制御するために、コントローラはさらに、
    すでに送信回路で送信したがレシーバでまだ受信していないデータのTCPパケットの数の新しい推定値を生成し、
    その新しい推定値が推定値を囲む推定枠外にあるかどうかを判定し、
    その新しい推定値が推定値を囲む推定枠外にあるときには新しい推定値に基づいてビットレートを制御し、そして
    その新しい推定値が推定値を囲む推定枠内にあるときには推定値に基づいてビットレートを制御する、
    請求項5に記載の装置。
  7. レシーバで受信したデータのTCPパケット数を表すデータのパケットを受信するための受信回路、
    をさらに含む、請求項2に記載の装置。
  8. レシーバで受信したデータのTCPパケット数を表すデータのパケットは
    リアルタイムトランスポートコントロールプロトコル(RTCP)のレシーバレポートパケットを含む、請求項7に記載の装置。
  9. データ生成装置は、
    ビデオデータを符号化するためのビデオコーデック、および
    音声データを符号化するための音声コーデック、
    からなるグループからの少なくとも一つを含む、請求項2に記載の装置。
  10. 請求項2に記載の装置を含むビデオ会議システム。
  11. あるビットレートでデータを生成するステップと、
    データのトランスポートコントロールプロトコル(TCP)パケットを生成するステップと、
    データのTCPパケットを送信するステップと、
    送信回路ですでに送信したがデータのTCPパケットを受信するレシーバでまだ受信していないデータのTCPパケット数の推定値に従ってビットレートを制御するステップと、
    を含む方法。
  12. 送信回路ですでに送信したがレシーバでまだ受信していないデータのTCPパケット数の推定値を、
    初期化イベント後に送信回路で送信したデータのTCPパケット数と、
    初期化イベント後にレシーバで受信したデータのTCPパケット数と、
    送信回路ですでに送信したがレシーバでまだ受信していないデータのTCPパケット数の以前の推定値と、
    に基づいて生成するステップをさらに含む、請求項11に記載の方法。
  13. すでに送信したがレシーバでまだ受信していないデータのTCPパケット数の推定値を生成するステップは、
    初期化イベント後に送信回路で送信したデータのTCPパケットの数と初期化イベント後にレシーバで受信したデータのTCPパケットの数との間の複数の差異値をそれぞれ異なった時間に判定するステップと、
    差異値の中央値、
    差異値の平均値、および
    差異値のモード
    からなるグループからの少なくとも一つに従って推定値を生成するステップと、
    を含む、請求項12に記載の方法。
  14. すでに送信したがレシーバでまだ受信していないデータのTCPパケット数の推定値に従ってビットレートを制御するステップは、
    初期化イベント後に送信したデータのTCPパケットの数と初期化イベント後にレシーバで受信したデータのTCPパケットの数との間の連続差異値の第1所定数がすでに送信したがまだレシーバで受信していないデータのTCPパケットの数の推定値の第1関数であるしきい値を超えるとビットレートを下げるステップと、
    初期化イベント後に送信したデータのTCPパケットの数と初期化イベント後にレシーバで受信したデータのTCPパケットの数との間の連続差異値の第2所定数がすでに送信したがまだレシーバで受信していないデータのTCPパケットの数の推定値の第2関数であるしきい値よりも低くなるとビットレートを上げるステップと、
    ビットレートがある所定の時間間隔の間上がっていないときにはビットレートを上げるステップ、
    とを含む、請求項11に記載の方法。
  15. すでに送信したがTCPパケットを受信するレシーバでまだ受信していないデータのTCPパケット数の推定値に従ってビットレートを制御するステップは、
    すでに送信したがまだレシーバで受信していないデータのTCPパケットの数の新しい推定値を生成するステップ、
    その新しい推定値が推定値を囲む推定枠外にあるかどうかを判定するステップ、
    その新しい推定値が推定値を囲む推定枠外にあるときには新しい推定値に基づいてビットレートを制御するステップと、
    その新しい推定値が推定値を囲む推定枠内にあるときには推定値に基づいてビットレートを制御するステップと、
    をさらに含む、請求項14に記載の方法。
  16. レシーバで受信したデータのTCPパケット数を表すデータのパケットを受信するステップをさらに含む、請求項11に記載の方法。
  17. レシーバで受信したデータのTCPパケット数を表すデータのパケットは、
    リアルタイムトランスポートコントロールプロトコル(RTCP)のレシーバレポートパケット、
    を含む、請求項16に記載の方法。
  18. データは、ビデオデータまたは音声データの少なくとも一つを含む請求項16に記載の方法。
  19. デバイスで実行可能でしかも請求項11に記載の方法を実行するように適合された命令プログラムを含んだデバイス可読媒体または波形(waveform)。
  20. 請求項12に記載の方法を実行するように適合されたデバイスで実行可能な命令プログラムを含んだデバイス可読媒体または波形(waveform)。
JP2006015359A 2005-02-04 2006-01-24 ビデオ会議装置、装置、ビデオ会議システム、方法およびこの方法を実行するように適合された命令プログラムを含んだデバイス可読媒体または波形 Expired - Fee Related JP4265609B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/051,674 US20060176832A1 (en) 2005-02-04 2005-02-04 Adaptive bit-rate adjustment of multimedia communications channels using transport control protocol

Publications (2)

Publication Number Publication Date
JP2006217589A true JP2006217589A (ja) 2006-08-17
JP4265609B2 JP4265609B2 (ja) 2009-05-20

Family

ID=36779819

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006015359A Expired - Fee Related JP4265609B2 (ja) 2005-02-04 2006-01-24 ビデオ会議装置、装置、ビデオ会議システム、方法およびこの方法を実行するように適合された命令プログラムを含んだデバイス可読媒体または波形

Country Status (2)

Country Link
US (2) US20060176832A1 (ja)
JP (1) JP4265609B2 (ja)

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040162637A1 (en) 2002-07-25 2004-08-19 Yulun Wang Medical tele-robotic system with a master remote station with an arbitrator
US7813836B2 (en) 2003-12-09 2010-10-12 Intouch Technologies, Inc. Protocol for a remotely controlled videoconferencing robot
US8077963B2 (en) 2004-07-13 2011-12-13 Yulun Wang Mobile robot with a head-based movement mapping scheme
US20060255930A1 (en) * 2005-05-12 2006-11-16 Berkman William H Power line communications system and method
US7558206B2 (en) * 2005-06-21 2009-07-07 Current Technologies, Llc Power line communication rate limiting system and method
US7675897B2 (en) 2005-09-06 2010-03-09 Current Technologies, Llc Power line communications system with differentiated data services
US9198728B2 (en) 2005-09-30 2015-12-01 Intouch Technologies, Inc. Multi-camera mobile teleconferencing platform
US7856007B2 (en) * 2005-10-21 2010-12-21 Current Technologies, Llc Power line communication voice over IP system and method
US8849679B2 (en) 2006-06-15 2014-09-30 Intouch Technologies, Inc. Remote controlled robot system that provides medical images
DE102006039783A1 (de) * 2006-08-24 2008-03-20 Siemens Ag Verfahren zum Übertragen von aus Audio- und Videosignalen gebildeten Videodaten
US7962182B2 (en) * 2006-08-25 2011-06-14 Qualcomm Incorporated Method and apparatus for content delivery to devices
US7952998B2 (en) * 2007-01-10 2011-05-31 International Business Machines Corporation InfiniBand credit-less flow control for long distance links
US9160783B2 (en) 2007-05-09 2015-10-13 Intouch Technologies, Inc. Robot system that operates through a network firewall
US7987285B2 (en) * 2007-07-10 2011-07-26 Bytemobile, Inc. Adaptive bitrate management for streaming media over packet networks
US20090289637A1 (en) * 2007-11-07 2009-11-26 Radtke William O System and Method for Determining the Impedance of a Medium Voltage Power Line
US20090187344A1 (en) * 2008-01-19 2009-07-23 Brancaccio Daniel S System, Method, and Computer Program Product for Analyzing Power Grid Data
US8077049B2 (en) * 2008-01-20 2011-12-13 Current Technologies, Llc Method and apparatus for communicating power distribution event and location
US8000913B2 (en) 2008-01-21 2011-08-16 Current Communications Services, Llc System and method for providing power distribution system information
US10875182B2 (en) 2008-03-20 2020-12-29 Teladoc Health, Inc. Remote presence system mounted to operating room hardware
US8638653B2 (en) * 2008-03-27 2014-01-28 Intel Corporation Adaptive transmissions for optimized application delivery in wireless networks
US8179418B2 (en) 2008-04-14 2012-05-15 Intouch Technologies, Inc. Robotic based health care system
US8170241B2 (en) 2008-04-17 2012-05-01 Intouch Technologies, Inc. Mobile tele-presence system with a microphone system
US9193065B2 (en) 2008-07-10 2015-11-24 Intouch Technologies, Inc. Docking system for a tele-presence robot
US9842192B2 (en) 2008-07-11 2017-12-12 Intouch Technologies, Inc. Tele-presence robot system with multi-cast features
US8340819B2 (en) 2008-09-18 2012-12-25 Intouch Technologies, Inc. Mobile videoconferencing robot system with network adaptive driving
US8996165B2 (en) 2008-10-21 2015-03-31 Intouch Technologies, Inc. Telepresence robot with a camera boom
US8446452B2 (en) * 2008-11-07 2013-05-21 Magor Communications Corporation Video rate adaptation for congestion control
US8463435B2 (en) 2008-11-25 2013-06-11 Intouch Technologies, Inc. Server connectivity control for tele-presence robot
US9138891B2 (en) 2008-11-25 2015-09-22 Intouch Technologies, Inc. Server connectivity control for tele-presence robot
US8259156B2 (en) * 2008-12-23 2012-09-04 Sony Corporation Videoconference arrangement
US8849680B2 (en) 2009-01-29 2014-09-30 Intouch Technologies, Inc. Documentation through a remote presence robot
US8897920B2 (en) 2009-04-17 2014-11-25 Intouch Technologies, Inc. Tele-presence robot system with software modularity, projector and laser pointer
US8384755B2 (en) 2009-08-26 2013-02-26 Intouch Technologies, Inc. Portable remote presence robot
US11399153B2 (en) 2009-08-26 2022-07-26 Teladoc Health, Inc. Portable telepresence apparatus
US11154981B2 (en) 2010-02-04 2021-10-26 Teladoc Health, Inc. Robot user interface for telepresence robot system
US8670017B2 (en) 2010-03-04 2014-03-11 Intouch Technologies, Inc. Remote presence system including a cart that supports a robot face and an overhead camera
US10343283B2 (en) 2010-05-24 2019-07-09 Intouch Technologies, Inc. Telepresence robot system that can be accessed by a cellular phone
US10808882B2 (en) 2010-05-26 2020-10-20 Intouch Technologies, Inc. Tele-robotic system with a robot face placed on a chair
US8904027B2 (en) * 2010-06-30 2014-12-02 Cable Television Laboratories, Inc. Adaptive bit rate for data transmission
US9264664B2 (en) 2010-12-03 2016-02-16 Intouch Technologies, Inc. Systems and methods for dynamic bandwidth allocation
EP2668008A4 (en) 2011-01-28 2018-01-24 Intouch Technologies, Inc. Interfacing with a mobile telepresence robot
US9323250B2 (en) 2011-01-28 2016-04-26 Intouch Technologies, Inc. Time-dependent navigation of telepresence robots
US10769739B2 (en) 2011-04-25 2020-09-08 Intouch Technologies, Inc. Systems and methods for management of information among medical providers and facilities
US9098611B2 (en) 2012-11-26 2015-08-04 Intouch Technologies, Inc. Enhanced video interaction for a user interface of a telepresence network
US20140139616A1 (en) 2012-01-27 2014-05-22 Intouch Technologies, Inc. Enhanced Diagnostics for a Telepresence Robot
US8836751B2 (en) 2011-11-08 2014-09-16 Intouch Technologies, Inc. Tele-presence system with a user interface that displays different communication links
US8902278B2 (en) 2012-04-11 2014-12-02 Intouch Technologies, Inc. Systems and methods for visualizing and managing telepresence devices in healthcare networks
US9251313B2 (en) 2012-04-11 2016-02-02 Intouch Technologies, Inc. Systems and methods for visualizing and managing telepresence devices in healthcare networks
WO2013176758A1 (en) 2012-05-22 2013-11-28 Intouch Technologies, Inc. Clinical workflows utilizing autonomous and semi-autonomous telemedicine devices
US9361021B2 (en) 2012-05-22 2016-06-07 Irobot Corporation Graphical user interfaces including touchpad driving interfaces for telemedicine devices
JP6060723B2 (ja) * 2013-02-21 2017-01-18 富士通株式会社 通信システム、送信器、及び通信制御方法
US9363480B2 (en) * 2014-08-20 2016-06-07 Cisco Technology, Inc. Obtaining replay of audio during a conference session
US10225761B2 (en) 2014-11-06 2019-03-05 At&T Intellectual Property I, L.P. Enhanced network congestion application programming interface
US10291941B2 (en) 2017-03-09 2019-05-14 At&T Mobility Ii Llc Pre-caching video content to devices using LTE broadcast
US11862302B2 (en) 2017-04-24 2024-01-02 Teladoc Health, Inc. Automated transcription and documentation of tele-health encounters
US10483007B2 (en) 2017-07-25 2019-11-19 Intouch Technologies, Inc. Modular telehealth cart with thermal imaging and touch screen user interface
US11636944B2 (en) 2017-08-25 2023-04-25 Teladoc Health, Inc. Connectivity infrastructure for a telehealth platform
WO2019051479A1 (en) * 2017-09-11 2019-03-14 Zeller Digital Innovations, Inc. VIDEO CONFIGURATION CALIBRATION SYSTEMS, CONTROL DEVICES, AND CALIBRATION METHODS OF A VIDEO CONFERENCE SYSTEM
US10617299B2 (en) 2018-04-27 2020-04-14 Intouch Technologies, Inc. Telehealth cart that supports a removable tablet with seamless audio/video switching

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5541852A (en) * 1994-04-14 1996-07-30 Motorola, Inc. Device, method and system for variable bit-rate packet video communications
US6075768A (en) * 1995-11-09 2000-06-13 At&T Corporation Fair bandwidth sharing for video traffic sources using distributed feedback control
US5748900A (en) * 1996-03-13 1998-05-05 Cray Research, Inc. Adaptive congestion control mechanism for modular computer networks
US6144637A (en) * 1996-12-20 2000-11-07 Cisco Technology, Inc. Data communications
GB2322516A (en) * 1997-02-21 1998-08-26 Northern Telecom Ltd Multimedia switching system
US6292834B1 (en) * 1997-03-14 2001-09-18 Microsoft Corporation Dynamic bandwidth selection for efficient transmission of multimedia streams in a computer network
US6310857B1 (en) * 1997-06-16 2001-10-30 At&T Corp. Method and apparatus for smoothing and multiplexing video data flows
US6701372B2 (en) * 1997-08-22 2004-03-02 Canon Kabushiki Kaisha Data communication apparatus and method
US6198724B1 (en) * 1997-10-02 2001-03-06 Vertex Networks, Inc. ATM cell scheduling method and apparatus
CA2237264A1 (en) * 1998-05-08 1999-11-08 Northern Telecom Limited Receiver based congestion control
US6141324A (en) * 1998-09-01 2000-10-31 Utah State University System and method for low latency communication
US7023800B1 (en) * 1999-06-01 2006-04-04 Microsoft Corporation Congestion avoidance within aggregate channels
US7072305B1 (en) * 1999-10-29 2006-07-04 Applied Digital Access, Inc. Method and apparatus for analyzing a communications network link
JP3882187B2 (ja) * 2001-04-19 2007-02-14 日本電気株式会社 フロー制御システムおよび方法
JP3705353B2 (ja) * 2001-05-22 2005-10-12 日本電気株式会社 パケットスケジューリング装置及び方法
US20030023710A1 (en) * 2001-05-24 2003-01-30 Andrew Corlett Network metric system
US7151749B2 (en) * 2001-06-14 2006-12-19 Microsoft Corporation Method and System for providing adaptive bandwidth control for real-time communication
US20030069963A1 (en) * 2001-09-27 2003-04-10 Nikil Jayant System and method of quality of service signaling between client and server devices
US7225459B2 (en) * 2001-10-17 2007-05-29 Numerex Investment Corproation Method and system for dynamically adjusting video bit rates
KR100433629B1 (ko) * 2001-12-27 2004-05-31 주식회사 케이티 인터넷 팩스 데이터의 오류 제어 방법
US7558197B1 (en) * 2002-01-17 2009-07-07 Juniper Networks, Inc. Dequeuing and congestion control systems and methods
US7110411B2 (en) * 2002-03-25 2006-09-19 Erlang Technology, Inc. Method and apparatus for WFQ scheduling using a plurality of scheduling queues to provide fairness, high scalability, and low computation complexity
EP1359722A1 (en) * 2002-03-27 2003-11-05 BRITISH TELECOMMUNICATIONS public limited company Data streaming system and method
US7327708B2 (en) * 2002-04-25 2008-02-05 Inet Technologies, Inc. Multimedia traffic optimization
JP3733943B2 (ja) * 2002-10-16 2006-01-11 日本電気株式会社 データ転送速度調停システム及びそれに用いるデータ転送速度調停方法
US8379520B2 (en) * 2004-03-03 2013-02-19 Texas Instruments Incorporated Group based packet scheduling algorithm
JP4429095B2 (ja) * 2004-06-25 2010-03-10 富士通株式会社 障害解析プログラム、障害解析装置、記録媒体及び障害解析方法

Also Published As

Publication number Publication date
JP4265609B2 (ja) 2009-05-20
US7590060B2 (en) 2009-09-15
US20060176832A1 (en) 2006-08-10
US20070189167A1 (en) 2007-08-16

Similar Documents

Publication Publication Date Title
JP4265609B2 (ja) ビデオ会議装置、装置、ビデオ会議システム、方法およびこの方法を実行するように適合された命令プログラムを含んだデバイス可読媒体または波形
RU2305908C2 (ru) Адаптивный способ оценивания скорости передачи мультимедийных данных
US9356869B2 (en) VoIP bandwidth management
US8621061B2 (en) Adaptive bitrate management for streaming media over packet networks
US9609040B2 (en) Efficient bitrate adaptation in video communications over IP networks
EP2255535B1 (en) Device and method for adaptation of target rate of video signals
US7072291B1 (en) Devices, softwares and methods for redundantly encoding a data stream for network transmission with adjustable redundant-coding delay
JP3730974B2 (ja) メディア伝送方法及びその送信装置
EP2950473A2 (en) Anti-packet-loss real-time communication method, system and related device based on hierarchical coding
KR100982630B1 (ko) 콘텐츠의 스트림 비트율을 조정하기 위한 디바이스 및프로세스 그리고 관련 제품
CN107483990B (zh) 一种流媒体传输的动态码率调节方法、装置及传输系统
US20180175957A1 (en) Data processing
EP1533969A1 (en) Loss reporting for packet-switched streaming services using loss RLE report blocks
Kim et al. TCP-friendly Internet video with smooth and fast rate adaptation and network-aware error control
Huang et al. An embedded packet train and adaptive FEC scheme for VoIP over wired/wireless IP networks
CN113612649B (zh) 往返估计
KR101384125B1 (ko) 통신 시스템에서 맥 계층의 서비스 품질 파라미터 생성장치 및 방법
KR100698174B1 (ko) 네트워크 상에서 데이터의 유효 전송율 추정 방법 및데이터 전송 시스템
WO2015197795A1 (en) Method for communicating media data between two devices incorporating effectiveness of error correction strategies and associated computer program, communication quality module and device
Öhman A Flexible Adaptation Framework for Real-Time Communication
Papadimitriou An integrated smooth transmission control and temporal scaling scheme for MPEG-4 streaming video
KR101107325B1 (ko) 실시간 멀티미디어 서비스에 대한 네트워크 구간별 품질측정 방법 및 시스템
JP2005192129A (ja) データ送信装置およびデータ受信装置
Zhao et al. A new control mechanism for real-time video transmission based on H. 264
JP2009111945A (ja) 送信端末、通信システム、プログラム、及びデータ品質制御方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080117

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080122

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080324

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080708

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080723

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090209

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120227

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130227

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130227

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees