JP2024092693A - データ送信装置およびその制御方法 - Google Patents
データ送信装置およびその制御方法 Download PDFInfo
- Publication number
- JP2024092693A JP2024092693A JP2022208802A JP2022208802A JP2024092693A JP 2024092693 A JP2024092693 A JP 2024092693A JP 2022208802 A JP2022208802 A JP 2022208802A JP 2022208802 A JP2022208802 A JP 2022208802A JP 2024092693 A JP2024092693 A JP 2024092693A
- Authority
- JP
- Japan
- Prior art keywords
- transmission
- transfer rate
- stream data
- data
- network
- 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.)
- Pending
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 139
- 238000000034 method Methods 0.000 title claims description 23
- 238000012546 transfer Methods 0.000 claims abstract description 118
- 238000004891 communication Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 6
- 230000004044 response Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Images
Abstract
【課題】データ送信における適切な転送レートを決定する。
【解決手段】データ送信装置は、ネットワークを介して受信装置にストリームデータを送信する送信手段と、ネットワークに関する統計情報を取得する取得手段と、ネットワーク上にバッファされるデータ許容量である第1の閾値を決定する決定手段と、送信手段がストリームデータを第1の転送レートで送信中にネットワーク上にバッファされたストリームデータのデータ量が第1の閾値を上回った場合に、送信手段によるストリームデータを停止し、第1の転送レートより低い第2の転送レートで送信手段によるストリームデータの送信を再開する送信制御手段と、を備える。決定手段は、送信手段がストリームデータを送信中に取得手段により得られた統計情報に基づいて第1の閾値を決定する。
【選択図】図4
【解決手段】データ送信装置は、ネットワークを介して受信装置にストリームデータを送信する送信手段と、ネットワークに関する統計情報を取得する取得手段と、ネットワーク上にバッファされるデータ許容量である第1の閾値を決定する決定手段と、送信手段がストリームデータを第1の転送レートで送信中にネットワーク上にバッファされたストリームデータのデータ量が第1の閾値を上回った場合に、送信手段によるストリームデータを停止し、第1の転送レートより低い第2の転送レートで送信手段によるストリームデータの送信を再開する送信制御手段と、を備える。決定手段は、送信手段がストリームデータを送信中に取得手段により得られた統計情報に基づいて第1の閾値を決定する。
【選択図】図4
Description
本発明は、データ転送における転送レートの制御技術に関するものである。
ネットワークを介してリアルタイムに映像のストリーミング配信をする際、ネットワークの混雑により帯域が制限され、映像の乱れや停止が生じる可能性がある。そこで、ネットワーク状況(帯域の変化など)に応じて転送レートを動的に制御する適応的ビットレート(ABR)と呼ばれる技術が利用されている。ABRは、例えば、ネットワークの統計情報を活用して実現される。例えば、映像伝送プロトコルの1つであるセキュア信頼性転送(SRT)では、ネットワークの統計情報を取得し、取得した統計情報に基づいて転送レートを動的に制御し、高い安全性、確実性、接続性を実現している。ネットワークの統計情報には、送受信パケット数、再送パケット数、ネットワーク帯域、往復遅延時間(RTT)などが含まれる。また、特許文献1では、ネットワーク上にバッファされるデータ量を算出し所定の目標値との差分に基づいて転送レートを制御する方法が開示されている。
しかしながら、得られた統計情報をどのように利用するかに応じて、ABRの性能に差が生じる。例えば、特許文献1においては、緩やかな帯域制限に対しては良い結果が得られるが、急激な帯域制限に対しては転送レート変更が追い付かず、映像の乱れや長時間停止が生じる可能性がある。
本発明は、このような問題に鑑みてなされたものであり、データ送信における適切な転送レートを決定可能とする技術を提供することを目的としている。
上述の問題点を解決するため、本発明に係るデータ送信装置は以下の構成を備える。すなわち、データ送信装置は、
ネットワークを介して受信装置にストリームデータを送信する送信手段と、
前記ネットワークに関する統計情報を取得する取得手段と、
前記ネットワーク上にバッファされるデータ許容量である第1の閾値を決定する決定手段と、
前記送信手段が前記ストリームデータを第1の転送レートで送信中に前記ネットワーク上にバッファされた前記ストリームデータのデータ量が前記第1の閾値を上回った場合に、前記送信手段による前記ストリームデータを停止し、前記第1の転送レートより低い第2の転送レートで前記送信手段による前記ストリームデータの送信を再開する送信制御手段と、
を備え、
前記決定手段は、前記送信手段が前記ストリームデータを送信中に前記取得手段により得られた統計情報に基づいて前記第1の閾値を決定する。
ネットワークを介して受信装置にストリームデータを送信する送信手段と、
前記ネットワークに関する統計情報を取得する取得手段と、
前記ネットワーク上にバッファされるデータ許容量である第1の閾値を決定する決定手段と、
前記送信手段が前記ストリームデータを第1の転送レートで送信中に前記ネットワーク上にバッファされた前記ストリームデータのデータ量が前記第1の閾値を上回った場合に、前記送信手段による前記ストリームデータを停止し、前記第1の転送レートより低い第2の転送レートで前記送信手段による前記ストリームデータの送信を再開する送信制御手段と、
を備え、
前記決定手段は、前記送信手段が前記ストリームデータを送信中に前記取得手段により得られた統計情報に基づいて前記第1の閾値を決定する。
本発明によれば、データ送信における適切な転送レートを決定可能とする技術を提供することができる。
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
(第1実施形態)
本発明に係るデータ送信装置の第1実施形態として、クライアント装置に対して映像データを送信するカメラを例に挙げて以下に説明する。なお、送信するデータは映像データに限定されず、一般にストリーム送信の形態で送信されるデータであれば適用可能である。
本発明に係るデータ送信装置の第1実施形態として、クライアント装置に対して映像データを送信するカメラを例に挙げて以下に説明する。なお、送信するデータは映像データに限定されず、一般にストリーム送信の形態で送信されるデータであれば適用可能である。
<システムおよび各装置の構成>
図1は、システムの全体構成を示す図である。システムは、カメラ1000、クライアント装置2000、ネットワーク3000から構成される。カメラ1000はネットワーク3000を介してクライアント装置2000へ映像データを送信することができる。
図1は、システムの全体構成を示す図である。システムは、カメラ1000、クライアント装置2000、ネットワーク3000から構成される。カメラ1000はネットワーク3000を介してクライアント装置2000へ映像データを送信することができる。
図2は、カメラ100の内部構成を示すブロック図である。制御部1001は、情報処理装置の全体の制御を行う。制御部1001は、例えば、中央処理装置(CPU)、特定用途向け集積回路(ASIC)などにより構成される。記憶部1002は、主に制御部1001が実行するプログラム格納領域、プログラム実行中のワーク領域など、様々なデータの格納領域として使用される。記憶部1002は、例えば、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、各種ストレージ(HDD、SSD)などにより構成される。
撮像部1003は、被写体の像を撮像して取得したアナログ信号をデジタルデータに変換し、撮像画像として記憶部1002に出力する。通信部1004は、所定の映像伝送プロトコルを用いて、クライアント装置2000へ映像データ、各設定値を送信する送信部であり、また、各設定値や確認応答などを受信する受信部である。通信部1004は、映像データのようなストリームデータをパケットとして順次送信する。転送レート制御部1005は、クライアント装置2000へ映像データを送信する際の転送レートを、ネットワークの状況に応じて制御する送信制御を行う。詳細は後述するが、転送レート制御部1005は、通信部1004により取得された各種情報を用いて転送レートを制御する。
図3は、クライアント装置2000の内部構成を示すブロック図である。制御部2001は、クライアント装置2000の全体の制御を行う。制御部2001は、例えば、CPU、ASICなどにより構成される。記憶部2002は、主に制御部2001が実行するプログラム格納領域、プログラム実行中のワーク領域など、様々なデータの格納領域として使用される。記憶部1002は、例えば、RAM、ROM、HDD、SSDなどにより構成される。
出力部2003は、クライアント装置2000のユーザに対して様々な情報を提供する画面を表示する。出力部2003は、例えば液晶ディスプレイ(LCD)、有機ELディスプレイ(OLED)等で構成され、情報として、例えば、グラフィカルユーザインタフェース(GUI)などの設定画面や、カメラ1000から受信する映像を表示する。
入力部2004は、ユーザからの操作を受け付け制御部2001に通知する。入力部2004は、例えばボタン、十字キー、タッチパネル、マウス等で構成され、例えば、上述のGUIを介してユーザからの操作を受け付ける。
通信部2005は、ネットワーク3000を介して、カメラ1000から映像データ、各設定値を受信し、各設定値や確認応答などを送信する。以下の説明では、映像伝送プロトコルとしてSRTを用いることを想定するが他のプロトコルを用いてもよい。
<装置の動作>
以下では、図4および図5を参照してカメラ1000で行われる転送レートの制御について説明する。第1実施形態では、映像データの送信フレームの送信を開始した後、ネットワーク上にバッファされているデータ量が大きくなった場合に、送信フレームの送信を停止する。その後、最低の転送レートで送信フレームの送信を再開した後、転送レートを上昇させる。
以下では、図4および図5を参照してカメラ1000で行われる転送レートの制御について説明する。第1実施形態では、映像データの送信フレームの送信を開始した後、ネットワーク上にバッファされているデータ量が大きくなった場合に、送信フレームの送信を停止する。その後、最低の転送レートで送信フレームの送信を再開した後、転送レートを上昇させる。
図4は、カメラ1000で行われる転送レートの下降制御を示すフローチャートである。当該下降制御は、カメラ1000はクライアント装置2000に対して、任意の目標転送レートで映像の配信を開始した後、実行される。
S4001では、転送レート制御部1005は、通信部1004が送信した送信フレーム(パケット)のうち、対応するACK(確認応答)が受信されていない送信フレーム(パケット)の個数の取得を開始する。以降、このようなパケットの数を「ACK待ちパケット数」と呼ぶ。例えば、通信部1004のSRTの機能により取得されるネットワーク統計情報からACK待ちパケット数を取得することが出来る。ACK待ちパケット数の情報により、ネットワーク上にバッファされている映像データ量を推定することが出来る。以降では、転送レート制御部1005は、定期的にACK待ちパケット数を取得する。
S4002では、転送レート制御部1005は、通信部1004がパケットを送信中に、ACK待ちパケット数が第1の閾値以上である(あるいは第1の閾値を上回った)期間が所定時間以上継続したか否かを判定する。例えば、新たなACK待ちパケット数を取得したタイミングで判定を行う。ACK待ちパケット数が第1の閾値以上である期間が所定時間以上継続したと判定された場合、配信映像の乱れや停止が生じる可能性があると判断しS4003に進む。なお、詳細は後述するが、第1の閾値は例えば一定周期ごとに更新される値であり、ネットワーク上にバッファされるデータ許容量を示す値である。
S4003では、転送レート制御部1005は、通信部1004による映像データの送信を停止する。これは、S4002でYesとなるのは、ネットワークの帯域に制限がかかった等の場合に発生するためである。
S4004では、転送レート制御部1005は、ACK待ちパケット数が事前に定めた第2の閾値を下回ったか否かを判定する。例えば、新たなACK待ちパケット数を取得したタイミングで判定を行う。ACK待ちパケット数が第2の閾値を下回った場合はS4005に進む。
S4005では、転送レート制御部1005は、転送レートを設定可能な最低値まで下げて、通信部1004による映像データの送信を再開する。なお、上述の第2の閾値は、大きい値を設定するほど送信を再開するまでに要する時間が短くなる。ただし、大きすぎると、ACK待ちパケット数が多い状態で送信を再開するためパケットが滞りなく流れるようになるまでに時間を要することになる。そのため、送信を再開するまでに要する許容可能な時間に基づいて第2の閾値を決定してもよい。また、設定可能な最低値とは、例えば、カメラ1000の性能や仕様に応じて製品出荷時にプリセットされる複数の転送レートに含まれる最低の転送レートである。
図5は、カメラ1000で行われる転送レートの上昇制御を示すフローチャートである。上述の
S5001では、転送レート制御部1005は、ACK待ちパケット数および推定帯域の取得を開始する。例えば、通信部1004のSRTの機能により取得されるネットワーク統計情報からこれらの情報を取得することが出来る。以降では、転送レート制御部1005は、定期的にACK待ちパケット数および推定帯域を取得する。
S5001では、転送レート制御部1005は、ACK待ちパケット数および推定帯域の取得を開始する。例えば、通信部1004のSRTの機能により取得されるネットワーク統計情報からこれらの情報を取得することが出来る。以降では、転送レート制御部1005は、定期的にACK待ちパケット数および推定帯域を取得する。
S5002では、転送レート制御部1005は、条件1「ACK待ちパケット数が第1の閾値未満である期間が所定時間以上継続」かつ条件2「転送レートが推定帯域未満」を満たすか否かを判定する。条件1および条件2の両方を満たす場合は、現在の転送レートがネットワークの帯域に対して余裕があると判断してS5003に進む。
S5003では、転送レート制御部1005は、現在の転送レートが目標転送レート未満であるか否かを判定する。現在の転送レートが目標転送レート未満である場合は、S5003に進む。なお、目標転送レートとは、例えば、カメラ1000が現在のストリームデータを送信開始した際の転送レートである。ただし、別途の転送レートを目標転送レートとして設定してもよい。
S5004では、転送レート制御部1005は、推定帯域を超過しない範囲で、現在の転送レートに比較してより高い転送レート(上昇させた転送レート)を決定する。転送レートの決定は、上昇させた転送レートにおける転送再開後に再度ネットワークの帯域に制限がかかる可能性を考えて、利用な可能な転送レートを小さい順から選択し徐々に上昇させるとよい。ただし、予め設定された転送レートとするなど他の方法でもよい。
図6は、カメラ1000で行われる第1の閾値の決定を示すフローチャートである。この処理は、映像データの送信(図4,図5のどうさを含む)と並行して行われる。
具体的には、ネットワークの帯域の変化に応じて一定周期ごとに「仮の閾値」を決定する。そして、「第1の閾値」は、ネットワーク上にバッファされたパケット数の変動に応じて仮の閾値に一定値加算することにより決定される。なお、カメラ1000の電源を入れ起動した直後などは、例えば製品出荷時にプリセットされる閾値が設定される。
S6001では、転送レート制御部1005は、現在のACK待ちパケット数と現在の送信フレームのパケット数とを取得する。例えば、通信部1004のSRTの機能により取得されるネットワーク統計情報からこれらの情報を取得することが出来る。
S6002では、転送レート制御部1005は、一定周期の時間が経過したか否かを判定する。一定周期の時間が経過した場合はS6003に進み、経過していない場合はS6005に進む。なお、一定周期の値は、任意に決定することが可能であるが、ネットワーク統計情報の取得周期(例えば1秒)よりは長く、ネットワークの帯域変動の典型的時間スケール(例えば10分)よりは短い値が好適である。
S6003では、転送レート制御部1005は、一定周期の時間が経過するまでの期間に取得した中で、最大のACK待ちパケット数を仮の閾値として決定する。そして、S6004では、転送レート制御部1005は、最大のACK待ちパケット数を取得したときの送信フレームのパケット数を「第1のパケット数」とする。つまり、第1のパケット数は、前回の仮閾値を使用していた期間における、最大のACK待ちパケット数に対応する送信フレームパケット数である。
S6005では、転送レート制御部1005は、一定周期の時間が経過するまで、現在の送信フレームパケット数から第1のパケット数を差し引いた値を、仮の閾値に加えたものを第1の閾値とする。
このように、一定周期ごとに仮の閾値を決定することで、常時変化するネットワークの帯域に応じて、閾値を決定することができる。また、仮の閾値に現在の送信フレームのパケット数から第1のパケット数を差し引いた値を加えることで、閾値も変動させることができる。すなわち、映像の動きの量の変化や転送レートの変動によって送信フレームのパケット数が変動し、ACK待ちパケット数が変動しても、それに応じて、閾値も変動させることができる。
なお、上述の説明では、第1の閾値を、ネットワーク上にバッファされたパケット数をもとに決定しているが、他の情報に基づき決定してもよい。例えば、パケット数の時間変化に基づいて決定してもよい。例えば、フレーム間予測を用いた圧縮映像の場合、映像の変化が小さい期間は相対的にIフレームのパケット数が多くなる。そこで、単位時間当たりのIフレームのパケット数に基づいて第1の閾値を決定する。あるいは、転送レートの間変化に基づき決定してもよい。例えば、転送レートを一定値増加させるごとに第1の閾値を一定値増加させる。また、最大のACK待ちパケット数を「仮の閾値」とする代わりに、最大のACK待ちパケット数に適当な一定値を加えたものを「仮の閾値」としてもよい。
以上説明したとおり第1実施形態によれば、データ送信に使用するネットワークに関する統計情報に基づきデータ送信の転送レートを制御する。特に、一定周期ごとに仮の閾値を決定し転送レートの制御に使用する第1の閾値を更新する。これにより、ネットワークの帯域に対して適応的な転送レートを決定することが可能となる。特に、急激な帯域制限(利用可能帯域の変動)が発生した場合であっても、配信映像の乱れや停止が生じる可能性を低減することが可能となる。
(第2実施形態)
第2実施形態では、映像データの送信を開始した後、ネットワーク上にバッファされている映像データ量が大きくなった場合に、映像データの送信を停止する。その後、段階的に転送レートを下降させて送信を再開する形態について説明する。なお、システムの全体構成、カメラ1000およびクライアント装置2000の内部構成については第1実施形態(図1~図3)と同様であるため説明を省略する。また、第1の閾値の設定処理についても第1実施形態(図6)と同様の処理が可能である。
第2実施形態では、映像データの送信を開始した後、ネットワーク上にバッファされている映像データ量が大きくなった場合に、映像データの送信を停止する。その後、段階的に転送レートを下降させて送信を再開する形態について説明する。なお、システムの全体構成、カメラ1000およびクライアント装置2000の内部構成については第1実施形態(図1~図3)と同様であるため説明を省略する。また、第1の閾値の設定処理についても第1実施形態(図6)と同様の処理が可能である。
<装置の動作>
図7は、第2実施形態におけるカメラ1000で行われる転送レートの下降制御を示すフローチャートである。当該下降制御は、カメラ1000はクライアント装置2000に対して、任意の目標転送レートで映像の配信を開始した後、実行される。図7のS4001~S4004は第1実施形態(図4のS4001~S4004)と同じであるため、説明を省略する。
図7は、第2実施形態におけるカメラ1000で行われる転送レートの下降制御を示すフローチャートである。当該下降制御は、カメラ1000はクライアント装置2000に対して、任意の目標転送レートで映像の配信を開始した後、実行される。図7のS4001~S4004は第1実施形態(図4のS4001~S4004)と同じであるため、説明を省略する。
S4003において映像データの送信を停止した後、S4004においてACK待ちパケット数が第2の閾値より少なくなった場合、S7001に進む。
S7001では、転送レート制御部1005は、転送レートを一定値だけ下げて、通信部1004による映像データの送信を再開する。その後、S4002に進む。なお、一定値とは、例えば、カメラ1000の性能や仕様に応じて製品出荷時にプリセットされる複数の転送レートに含まれる現在の転送レートより1段階(あるいは所定段階)低い転送レートである。
すなわち、仮に、一定値だけ下げた後の転送レートでは配信映像の乱れや停止が生じる可能性がある場合であっても、図7の処理が繰り返し実行され、再度S7001において転送レートが一定値だけ下降することになる。S7001が繰り返し実行されることで、段階的に転送レートが下がり、最終的に乱れや停止がない配信が可能な値まで下がる。
そのため、上述の一定値(下降量)が小さいほど最終的に高い転送レートになるが、小さすぎると転送レートが下がりきるまでに時間を要し映像の停止する時間が延びる可能性がある。
以上説明したとおり第2実施形態によれば、段階的に転送レートを下降させて送信を再開することにより、クライアント装置における画質の急激な変動を抑えることが可能となる。
本明細書の開示は、以下のデータ送信装置、制御方法およびプログラムを含む。
(項目1)
ネットワークを介して受信装置にストリームデータを送信する送信手段と、
前記ネットワークに関する統計情報を取得する取得手段と、
前記ネットワーク上にバッファされるデータ許容量である第1の閾値を決定する決定手段と、
前記送信手段が前記ストリームデータを第1の転送レートで送信中に前記ネットワーク上にバッファされた前記ストリームデータのデータ量が前記第1の閾値を上回った場合に、前記送信手段による前記ストリームデータを停止し、前記第1の転送レートより低い第2の転送レートで前記送信手段による前記ストリームデータの送信を再開する送信制御手段と、
を備え、
前記決定手段は、前記送信手段が前記ストリームデータを送信中に前記取得手段により得られた統計情報に基づいて前記第1の閾値を決定する
ことを特徴とするデータ送信装置。
(項目2)
前記送信手段は、前記ストリームデータをパケットとして順次送信し、
前記決定手段は、前記送信手段が送信したパケットのうち対応する確認応答が受信されていないパケットの個数を前記統計情報から算出し、該個数に基づいて前記第1の閾値を決定する
ことを特徴とする項目1に記載のデータ送信装置。
(項目3)
前記送信制御手段は、前記送信手段による前記ストリームデータを停止した後、前記ネットワーク上にバッファされた前記ストリームデータのデータ量が第2の閾値を下回った場合に、前記送信手段による前記ストリームデータの送信を再開する
ことを特徴とする項目1または2に記載のデータ送信装置。
(項目4)
前記第2の閾値は、前記送信手段による前記ストリームデータの送信の前記停止から前記再開までの許容可能な時間に基づいて決定される
ことを特徴とする項目3に記載のデータ送信装置。
(項目5)
前記第2の転送レートは、前記送信手段が前記ストリームデータの送信に利用可能な最低の転送レートであり、
前記送信制御手段は、前記送信手段による前記ストリームデータの送信を前記第2の転送レートで再開した後、前記送信手段による前記ストリームデータの転送レートを段階的に上昇させる
ことを特徴とする項目1乃至4の何れか1項目に記載のデータ送信装置。
(項目6)
前記統計情報は、前記ネットワークの推定帯域を含み、
前記送信制御手段は、前記推定帯域を超過しない範囲で転送レートを上昇させる
ことを特徴とする項目5に記載のデータ送信装置。
(項目7)
前記第2の転送レートは、前記送信手段が前記ストリームデータの送信に利用可能な複数のレートのうち前記第1の転送レートより低い転送レートであり、
前記送信制御手段は、前記送信手段による前記ストリームデータの送信を前記第2の転送レートで再開した後、前記送信手段による前記ストリームデータの転送レートを段階的に下降させる
ことを特徴とする項目1乃至4の何れか1項目に記載のデータ送信装置。
(項目8)
ネットワークを介して受信装置にストリームデータを送信する送信部を有するデータ送信装置の制御方法であって、
前記送信部が前記ストリームデータを送信中に前記ネットワークに関する統計情報を取得する取得工程と、
前記取得工程により得られた統計情報に基づいて前記ネットワーク上にバッファされるデータ許容量である第1の閾値を決定する決定工程と、
前記送信部が前記ストリームデータを第1の転送レートで送信中に前記ネットワーク上にバッファされた前記ストリームデータのデータ量が前記第1の閾値を上回った場合に、前記送信部による前記ストリームデータを停止し、前記第1の転送レートより低い第2の転送レートで前記送信部による前記ストリームデータの送信を再開する送信制御工程と、
を含むことを特徴とする制御方法。
(項目9)
項目8に記載の制御方法をコンピュータに実行させるためのプログラム。
(項目1)
ネットワークを介して受信装置にストリームデータを送信する送信手段と、
前記ネットワークに関する統計情報を取得する取得手段と、
前記ネットワーク上にバッファされるデータ許容量である第1の閾値を決定する決定手段と、
前記送信手段が前記ストリームデータを第1の転送レートで送信中に前記ネットワーク上にバッファされた前記ストリームデータのデータ量が前記第1の閾値を上回った場合に、前記送信手段による前記ストリームデータを停止し、前記第1の転送レートより低い第2の転送レートで前記送信手段による前記ストリームデータの送信を再開する送信制御手段と、
を備え、
前記決定手段は、前記送信手段が前記ストリームデータを送信中に前記取得手段により得られた統計情報に基づいて前記第1の閾値を決定する
ことを特徴とするデータ送信装置。
(項目2)
前記送信手段は、前記ストリームデータをパケットとして順次送信し、
前記決定手段は、前記送信手段が送信したパケットのうち対応する確認応答が受信されていないパケットの個数を前記統計情報から算出し、該個数に基づいて前記第1の閾値を決定する
ことを特徴とする項目1に記載のデータ送信装置。
(項目3)
前記送信制御手段は、前記送信手段による前記ストリームデータを停止した後、前記ネットワーク上にバッファされた前記ストリームデータのデータ量が第2の閾値を下回った場合に、前記送信手段による前記ストリームデータの送信を再開する
ことを特徴とする項目1または2に記載のデータ送信装置。
(項目4)
前記第2の閾値は、前記送信手段による前記ストリームデータの送信の前記停止から前記再開までの許容可能な時間に基づいて決定される
ことを特徴とする項目3に記載のデータ送信装置。
(項目5)
前記第2の転送レートは、前記送信手段が前記ストリームデータの送信に利用可能な最低の転送レートであり、
前記送信制御手段は、前記送信手段による前記ストリームデータの送信を前記第2の転送レートで再開した後、前記送信手段による前記ストリームデータの転送レートを段階的に上昇させる
ことを特徴とする項目1乃至4の何れか1項目に記載のデータ送信装置。
(項目6)
前記統計情報は、前記ネットワークの推定帯域を含み、
前記送信制御手段は、前記推定帯域を超過しない範囲で転送レートを上昇させる
ことを特徴とする項目5に記載のデータ送信装置。
(項目7)
前記第2の転送レートは、前記送信手段が前記ストリームデータの送信に利用可能な複数のレートのうち前記第1の転送レートより低い転送レートであり、
前記送信制御手段は、前記送信手段による前記ストリームデータの送信を前記第2の転送レートで再開した後、前記送信手段による前記ストリームデータの転送レートを段階的に下降させる
ことを特徴とする項目1乃至4の何れか1項目に記載のデータ送信装置。
(項目8)
ネットワークを介して受信装置にストリームデータを送信する送信部を有するデータ送信装置の制御方法であって、
前記送信部が前記ストリームデータを送信中に前記ネットワークに関する統計情報を取得する取得工程と、
前記取得工程により得られた統計情報に基づいて前記ネットワーク上にバッファされるデータ許容量である第1の閾値を決定する決定工程と、
前記送信部が前記ストリームデータを第1の転送レートで送信中に前記ネットワーク上にバッファされた前記ストリームデータのデータ量が前記第1の閾値を上回った場合に、前記送信部による前記ストリームデータを停止し、前記第1の転送レートより低い第2の転送レートで前記送信部による前記ストリームデータの送信を再開する送信制御工程と、
を含むことを特徴とする制御方法。
(項目9)
項目8に記載の制御方法をコンピュータに実行させるためのプログラム。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
1000 カメラ; 2000 クライアント装置; 3000 ネットワーク; 1001 制御部; 1002 記憶部; 1003 撮像部; 1004 通信部; 1005 転送レート制御部
上述の問題点を解決するため、本発明に係るデータ送信装置は以下の構成を備える。すなわち、データ送信装置は、
ネットワークを介して受信装置にストリームデータを送信する送信手段と、
前記ネットワークに関する統計情報を取得する取得手段と、
前記ネットワーク上にバッファされるデータ量に関連する第1の閾値を決定する決定手段と、
前記送信手段が前記ストリームデータを第1の転送レートで送信中に前記ネットワーク上にバッファされた前記ストリームデータのデータ量が前記第1の閾値を上回った場合に、前記送信手段による前記ストリームデータを停止し、前記第1の転送レートより低い第2の転送レートで前記送信手段による前記ストリームデータの送信を再開する送信制御手段と、
を備え、
前記決定手段は、前記送信手段が前記ストリームデータを送信中に前記取得手段により得られた統計情報に基づいて前記第1の閾値を決定する。
ネットワークを介して受信装置にストリームデータを送信する送信手段と、
前記ネットワークに関する統計情報を取得する取得手段と、
前記ネットワーク上にバッファされるデータ量に関連する第1の閾値を決定する決定手段と、
前記送信手段が前記ストリームデータを第1の転送レートで送信中に前記ネットワーク上にバッファされた前記ストリームデータのデータ量が前記第1の閾値を上回った場合に、前記送信手段による前記ストリームデータを停止し、前記第1の転送レートより低い第2の転送レートで前記送信手段による前記ストリームデータの送信を再開する送信制御手段と、
を備え、
前記決定手段は、前記送信手段が前記ストリームデータを送信中に前記取得手段により得られた統計情報に基づいて前記第1の閾値を決定する。
Claims (9)
- ネットワークを介して受信装置にストリームデータを送信する送信手段と、
前記ネットワークに関する統計情報を取得する取得手段と、
前記ネットワーク上にバッファされるデータ許容量である第1の閾値を決定する決定手段と、
前記送信手段が前記ストリームデータを第1の転送レートで送信中に前記ネットワーク上にバッファされた前記ストリームデータのデータ量が前記第1の閾値を上回った場合に、前記送信手段による前記ストリームデータを停止し、前記第1の転送レートより低い第2の転送レートで前記送信手段による前記ストリームデータの送信を再開する送信制御手段と、
を備え、
前記決定手段は、前記送信手段が前記ストリームデータを送信中に前記取得手段により得られた統計情報に基づいて前記第1の閾値を決定する
ことを特徴とするデータ送信装置。 - 前記送信手段は、前記ストリームデータをパケットとして順次送信し、
前記決定手段は、前記送信手段が送信したパケットのうち対応する確認応答が受信されていないパケットの個数を前記統計情報から算出し、該個数に基づいて前記第1の閾値を決定する
ことを特徴とする請求項1に記載のデータ送信装置。 - 前記送信制御手段は、前記送信手段による前記ストリームデータを停止した後、前記ネットワーク上にバッファされた前記ストリームデータのデータ量が第2の閾値を下回った場合に、前記送信手段による前記ストリームデータの送信を再開する
ことを特徴とする請求項1または2に記載のデータ送信装置。 - 前記第2の閾値は、前記送信手段による前記ストリームデータの送信の前記停止から前記再開までの許容可能な時間に基づいて決定される
ことを特徴とする請求項3に記載のデータ送信装置。 - 前記第2の転送レートは、前記送信手段が前記ストリームデータの送信に利用可能な最低の転送レートであり、
前記送信制御手段は、前記送信手段による前記ストリームデータの送信を前記第2の転送レートで再開した後、前記送信手段による前記ストリームデータの転送レートを段階的に上昇させる
ことを特徴とする請求項1または2に記載のデータ送信装置。 - 前記統計情報は、前記ネットワークの推定帯域を含み、
前記送信制御手段は、前記推定帯域を超過しない範囲で転送レートを上昇させる
ことを特徴とする請求項5に記載のデータ送信装置。 - 前記第2の転送レートは、前記送信手段が前記ストリームデータの送信に利用可能な複数のレートのうち前記第1の転送レートより低い転送レートであり、
前記送信制御手段は、前記送信手段による前記ストリームデータの送信を前記第2の転送レートで再開した後、前記送信手段による前記ストリームデータの転送レートを段階的に下降させる
ことを特徴とする請求項1または2に記載のデータ送信装置。 - ネットワークを介して受信装置にストリームデータを送信する送信部を有するデータ送信装置の制御方法であって、
前記送信部が前記ストリームデータを送信中に前記ネットワークに関する統計情報を取得する取得工程と、
前記取得工程により得られた統計情報に基づいて前記ネットワーク上にバッファされるデータ許容量である第1の閾値を決定する決定工程と、
前記送信部が前記ストリームデータを第1の転送レートで送信中に前記ネットワーク上にバッファされた前記ストリームデータのデータ量が前記第1の閾値を上回った場合に、前記送信部による前記ストリームデータを停止し、前記第1の転送レートより低い第2の転送レートで前記送信部による前記ストリームデータの送信を再開する送信制御工程と、
を含むことを特徴とする制御方法。 - 請求項8に記載の制御方法をコンピュータに実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/524,032 US20240214321A1 (en) | 2022-12-26 | 2023-11-30 | Data transmitting apparatus and control method thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024092693A true JP2024092693A (ja) | 2024-07-08 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11924263B2 (en) | Methods and devices for efficient adaptive bitrate streaming | |
US9819597B2 (en) | Adaptive bit rate for data transmission | |
KR102324326B1 (ko) | 상이한 인코딩 파라미터를 이용해 인코딩되는 복수의 인코딩 스트리밍 | |
US9825816B2 (en) | Method and system for resource-aware dynamic bandwidth control | |
US6700893B1 (en) | System and method for controlling the delay budget of a decoder buffer in a streaming data receiver | |
US9185045B1 (en) | Transport protocol for interactive real-time media | |
US9596281B2 (en) | Transport accelerator implementing request manager and connection manager functionality | |
WO2021121011A1 (zh) | 一种图传控制方法、系统及无人机 | |
US9503491B2 (en) | Playback stall avoidance in adaptive media streaming | |
US20130297784A1 (en) | Method and system for data packet queue recovery | |
US8634300B2 (en) | Reducing communication delay of video data | |
US20210076086A1 (en) | Digital data streaming using server driven adaptive bitrate | |
US20150271231A1 (en) | Transport accelerator implementing enhanced signaling | |
US20190364311A1 (en) | Managing congestion response during content delivery | |
US10659514B2 (en) | System for video monitoring with adaptive bitrate to sustain image quality | |
US20130093907A1 (en) | Image capturing apparatus and method of controlling the same | |
US9009344B2 (en) | Method of sending data and associated device | |
JP2008271378A (ja) | 映像監視装置 | |
JP2024092693A (ja) | データ送信装置およびその制御方法 | |
CN116920364A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
US20120278459A1 (en) | Throttling bursty cpu utilization due to bursty tcp flows | |
US20180123965A1 (en) | Method for packet transmission apparatus to transmit packet in real time, packet transmission apparatus, and computer program | |
US20240214321A1 (en) | Data transmitting apparatus and control method thereof | |
US11736552B1 (en) | Sender based adaptive bit rate control | |
JP2004357206A (ja) | ネットワークカメラシステムの制御方法 |