JP2023043851A - ビデオストリームの送信を制御するための方法およびデバイス - Google Patents

ビデオストリームの送信を制御するための方法およびデバイス Download PDF

Info

Publication number
JP2023043851A
JP2023043851A JP2022142766A JP2022142766A JP2023043851A JP 2023043851 A JP2023043851 A JP 2023043851A JP 2022142766 A JP2022142766 A JP 2022142766A JP 2022142766 A JP2022142766 A JP 2022142766A JP 2023043851 A JP2023043851 A JP 2023043851A
Authority
JP
Japan
Prior art keywords
video
gop
bitrate
frames
transmission
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
Application number
JP2022142766A
Other languages
English (en)
Inventor
マティアス エックス ペッターソン,
X Pettersson Mattias
ビョルン ボルカー,
Volcker Bjorn
マルテ ヨハンソン,
Johansson Malte
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.)
Axis AB
Original Assignee
Axis AB
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 Axis AB filed Critical Axis AB
Publication of JP2023043851A publication Critical patent/JP2023043851A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • 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
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/177Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a group of pictures [GOP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

【課題】ネットワーク中の送信ビットレート過負荷を防ぐためにビデオストリームの送信を制御する方法及びビデオストリーム整形器を提供する。【解決手段】ビデオストリームの送信を制御するためのコンピュータ実装方法(100)は、送信されるべきビデオストリームのピクチャグループ(GOP)についてのビット数を推定すること(110)と、ビデオストリームの送信のためのレイテンシ要件を設定すること(120)と、推定されたビット数と、GOPの持続時間によって表される時間期間に対応する時間とに基づいて、GOPにわたる平均最小ビデオビットレートを決定すること(130)と、GOP中のビデオフレームについて、レイテンシ要件と平均最小ビデオビットレートとに基づいて、ビデオフレームの送信のための出力ビットレートを設定すること(140)と、出力ビットレートを使用してビデオフレームを送信すること(150)と、を含む。【選択図】図1

Description

本開示は、ビデオストリームの送信を制御するための方法およびデバイスに属する。
ビデオコーディングでは、ピクチャグループ(group of pictures)、またはGOP構造が、イントラフレームおよびインターフレームが配置される順序を指定する。GOPは、コード化ビデオストリーム内の連続ピクチャの集合である。各コード化ビデオストリームは連続GOPからなり、そこから可視フレームが生成される。圧縮されたビデオストリーム中の新しいGOPに遭遇することは、デコーダが、次のフレームを復号するために前のフレームを必要としないことを意味し、ビデオにわたる高速シークを可能にする。GOPは、イントラフレームで開始し、コード化ビデオストリーム中の次のイントラフレームの前の、グループ中の最後のフレームで終了する。イントラフレームのサイズは、概して、インターフレームのサイズよりも著しく大きく、一般に、10~50倍大きい。したがって、ネットワークを介してコード化ビデオストリームを送信することは、イントラフレームが送信される間は、一時的送信ビットレートが比較的大きいが、後続のインターフレームが送信される間は、送信ビットレートが比較的低いことを生じる。それにより、ビットレートスパイクが、通常、イントラフレームを送信する間に発生する。現代のネットワークおよびインターネット接続は、一般に、さらにビデオストリームを圧縮することなしに、そのようなビットレートスパイクを扱うことができる。しかしながら、特定のネットワーク中で複数のビデオカメラが設置される場合、全体的データ送信ビットレートは、平均して、複数のビデオカメラのための十分な帯域幅があるが、複数のビットレートスパイクが同時に発生する場合、ネットワークの最大データ送信ビットレートを瞬間的に超え得る。これは、データパケットの損失、低減されたビデオ品質などを生じ得る。したがって、ネットワーク中のそのような送信ビットレート過負荷を防ぐ必要がある。
したがって、本発明の目的は、ネットワーク中の送信ビットレート過負荷を防ぐためにビデオストリームの送信を制御するための手法を提供することである。
第1の態様によれば、ビデオストリームの送信を制御するためのコンピュータ実装方法が提供される。本方法は、送信されるべきビデオストリームのピクチャグループ(GOP)についてのビット数を推定することを含む。本方法は、ビデオストリームの送信のためのレイテンシ要件を設定することをさらに含む。本方法は、推定されたビット数と、GOPの持続時間によって表される時間期間に対応する時間とに基づいて、GOPにわたる平均最小ビデオビットレートを決定することをさらに含む。本方法は、GOP中のビデオフレームについて、レイテンシ要件と平均最小ビデオビットレートとに基づいて、ビデオフレームの送信のための出力ビットレートを設定することと、出力ビットレートを使用してビデオフレームを送信することとをさらに含む。
旧来、監視ネットワークは、ケーブルが永続的に設置され、とりわけ予測可能なビットレート曲線などから生じる、送信容量が確保された、クローズドシステムであった。本方法は、監視カメラからのデータが、他のトラフィックタイプが送信され得るネットワークを介して送信されることを可能にし得る。これは、ビデオデータの長距離送信が、送信容量が保証され得ないリンクを介して行われる場合、さらに好適であり得る。
最大ビットレートが設定され、固定である、典型的なデータトラフィック整形器と比較して、本開示は、データが送信されるネットワーク上の低減された負荷を提供する、動的データトラフィック平滑化器(smoothener)を提供する。さらに、ネットワーク中の他のデバイス間のデータの送信速度が、上記の通り、ネットワーク上の負荷を低減する上記の可能性により、促進され得る。
この全文にわたって、ビットレートは、デジタルネットワークを介して送信されている1秒当たりのビット数を指す。ビットレート曲線は、時間の関数であるビットレートを指す。ビットレート曲線中のビットレートスパイクは、ビットレートが平均ビットレートよりも著しく大きい、ビットレート曲線の比較的短い時間間隔、たとえば、イントラフレームが送信される時間間隔を指す。参照されるネットワークは、別段に明記されていない場合、考慮されるビデオフレームの送信が発生する任意のタイプのデータ送信ネットワーク(場合によってはワイヤレス)である。ネットワークは、たとえば、ローカルネットワーク、公衆ネットワークなど、デジタル情報を通信するための任意のタイプのネットワークであり得る。ネットワークを介してデータを「送信すること」および「プッシュすること」という表現は、全体にわたって互換的に使用され得る。
GOPにわたる平均最小ビデオビットレートは、GOPに対応するすべてのビデオデータがGOP期間中に送信されることになるように、各フレーム期間中に送信されるために必要とされるデータの量として定義される。フレーム期間は、たとえば、30フレーム毎秒のフレームレートにおいてキャプチャされる30フレームのGOP長を仮定すれば、約30~40msであり得る。
本方法は、GOPのビットレート曲線の平滑化を促進し得る。本明細書のビットレート曲線の平滑化は、GOPの送信に沿った平均ビットレートである実質的に一定の送信ビットレートを指す。これは、ビデオストリームが送信されるネットワークの最大ビットレートを瞬間的に超えることを防ぎ得る。したがって、たとえば、ライブストリーム中で情報を失うリスクが低減され得る。
レイテンシは、この説明全体にわたって時間間隔を指し、時間間隔の開始が、ビデオフレームのキャプチャまたは生成が行われるタイムスタンプであり、時間間隔の終了が、ビデオフレームが送信されたタイムスタンプである。それにより、レイテンシ要件は、最大の許容できるそのような時間間隔を指し得る。本方法は、ビデオ品質を損なうことなしに、短いレイテンシ時間を促進し得、これは、たとえば、ライブストリームにおいて有利であり得る。
ビット数の推定は、ビデオストリーム中の1つまたは複数の先行するGOPについてのビット数を統計的に分析することを含み得る。これは、送信されるべきGOPのビット数の適切な推定を促進し得る。これは、今度のGOPを送信するために必要な瞬時最小ビットレートが継続してモニタおよび更新されるとき、データトラフィック平滑化の動的性質をさらに促進し得る。
ビット数の推定は、送信されるべきGOPに対応するビデオデータをバッファすることと、バッファされたビデオデータを分析することとをさらに含み得る。
ビット数の推定は、GOPに対応するビデオストリームのすでに符号化されたシーケンスについてのビット数を決定することをさらに含み得る。したがって、ビデオストリームのすでに符号化されたシーケンスが、平滑化および送信され得る。短いレイテンシがあまり重要でないとすれば、これは、本質的に厳密な平均ビットレートが、キャプチャおよび記憶されたGOPから計算され得るので、有利であり得る。したがって、これは、GOPのビット数の改良された推定をさらに提供し得る。
本方法は、GOP中のビデオフレームの送信中に、GOPのすでに送信されたフレームの実際のビット数に基づいて、GOPの残りのまだ送信されていないフレームにわたって平均最小ビデオビットレートを更新することをさらに含み得る。それにより、平均最小ビデオビットレートは、ビデオカメラによってキャプチャされるシーン中のリアルタイム情況に従って更新され得る。したがって、平均最小ビットレートを動的に更新することは、GOP中のビデオフレームの送信中に行われ得、これは、さらに、ネットワークの過負荷を回避することを促進し得る。これは、GOP時間長、すなわち、GOPが送信される時間間隔が比較的長い場合、さらに好ましいことがある。代替または追加として、これは、現在のGOPの送信ビットレートからの先行するGOPが、キャプチャされたシーンの急速な変化を受け、現在のGOPが、比較的静的なキャプチャされたシーンを受ける場合、平均最小ビデオビットレートを低下させ得る。
第2の態様によれば、複数のビデオストリームの同時送信を制御するためのコンピュータ実装方法であって、方法が、複数のビデオストリームの各々について、第1の態様の上述の特徴による方法を個々に実施することを含む、方法が提供される。
複数のビデオストリームのイントラフレームが同時に送信される場合、ネットワークの過負荷が、それの生じる複数のビットレートスパイクの追加から発生し得る。この方法は、送信されるべきデータトラフィックの平滑化を促進し得、これは、それにより、ネットワークのそのような過負荷を回避し得る。したがって、データパケット損失またはビデオ解像度の低減などが回避され得る。
第2の態様による方法は、複数のビデオストリームの各々の送信のためのレイテンシ要件を、レイテンシ要件が、複数のビデオストリームの各々について異なるように、個々に設定することをさらに含み得る。これは、複数のビデオカメラのうちの異なるタイプのビデオカメラが使用され、および/または同じタイプの複数のビデオカメラのうちのビデオカメラにおける異なる解像度、GOP長などが使用される場合、有利であり得る。これは、方法の動的性質を向上させることを促進し得る。
第2の態様による方法は、複数のビデオストリームの各々のビデオストリームのタイプに基づいて、複数のビデオストリームの各々の送信のためのレイテンシ要件を個々に設定することをさらに含み得る。ビデオストリームのタイプは、ライブストリーム、非ライブストリームなどであり得る。異なるタイプのビデオストリームについて異なるビデオ解像度が適用可能であり得る。たとえば、非ライブストリームは、ライブストリームよりも大きいビデオ解像度を有し得る。より高いビデオ解像度のほかに、レイテンシ要件の個々の設定が、非ライブストリームの送信ビットレートを本質的に一定に設定することを可能にし得、これは、データ損失を防ぎ得る。したがって、レイテンシは、ライブストリームと比較して非ライブストリームについて著しく大きくなり得る。さらに、ネットワークの帯域幅がより効率的に活用され得、それにより、ネットワークを介した同時送信のためにより多数のそのような非ライブストリームをスタックすることを可能にする。
第3の態様によれば、処理能力を有するデバイス上で実行されたとき、第1および/または第2の態様による方法を実装するための命令を記憶した非一時的コンピュータ可読記憶媒体が提供される。
第1および第2の態様に関する上述の特徴および利点は、適用可能なとき、この第3の態様にも適用される。したがって、過度の繰返しを回避するために、上記への参照が行われる。
第4の態様によれば、ビデオストリームの送信を制御するためのビデオストリーム整形器であって、ビデオストリーム整形器が、
送信されるべきビデオストリームのピクチャグループ(GOP)についてのビット数を推定するように構成されたデータサイズ推定機能と、
ビデオストリームの送信のためのレイテンシ要件を設定するように構成されたレイテンシ設定機能と、
推定されたビット数と、GOPの持続時間によって表される時間期間に対応する時間とに基づいて、GOPにわたる平均最小ビデオビットレートを決定するように構成されたビットレート決定機能と、
GOP中のビデオフレームについて、レイテンシ要件と平均最小ビットレートとに基づいて、ビデオフレームの送信のための出力ビットレートを設定するように構成された出力ビットレート設定機能と、
出力ビットレートを使用してビデオフレームを送信するように構成された送信機能と
を実行するように構成された回路を備える、ビデオストリーム整形器が提供される。
第1の態様に関する上述の特徴および利点は、適用可能なとき、この第2の態様にも適用される。したがって、過度の繰返しを回避するために、上記への参照が行われる。
データサイズ推定機能は、ビデオストリーム中の1つまたは複数の先行するGOPについてのビット数を統計的に分析するようにさらに構成され得る。
データサイズ推定機能は、送信されるべきGOPに対応するビデオデータをバッファし、バッファされたビデオデータを分析するようにさらに構成され得る。
データサイズ推定機能は、GOPに対応するビデオストリームのすでに符号化されたシーケンスについてのビット数を決定するようにさらに構成され得る。
回路は、GOPのすでに送信されたフレームの実際のビット数に基づいて、GOPの残りのまだ送信されていないフレームにわたって平均最小ビデオビットレートを更新するように構成されたビットレート更新機能をさらに備え得る。
回路は、複数のビデオストリームの各々について、ビデオストリーム整形器の上述の機能を個々に実行するように構成されたメイン機能を実行するようにさらに構成され得る。
本方法の上述の特徴は、適用可能なとき、この第2の態様にも適用される。過度の繰返しを回避するために、上記への参照が行われる。
概して、特許請求の範囲において使用されるすべての用語は、本明細書で別段明示的に定義されない限り、本技術分野におけるその通例の意味に従って解釈されるべきである。「1つの(a/an)/その(the)[エレメント、デバイス、構成要素、手段、ステップなど]」へのすべての言及は、別段明示的に述べられていない限り、前記エレメント、デバイス、構成要素、手段、ステップなどの少なくとも1つの事例に言及しているものとしてオープンに解釈されるべきである。本明細書で開示されるいずれの方法のステップも、明示的に述べられていない限り、開示される厳密な順序で実施される必要はない。
本発明の上記の、ならびに追加の目的、特徴および利点は、添付の図面を参照しながら、好ましい実施形態の以下の例示的で非限定的な詳細な説明を通して、より良く理解される。添付の図面では、同じ参照番号が同様の要素のために使用されることになる。
ビデオストリームの送信を制御するための方法のフローチャートを概略的に示す図である。 ピクチャグループ(GOP)のデータトラフィックの経時的な送信を概略的に示す図である。 ピクチャグループ(GOP)のデータトラフィックの経時的な送信を概略的に示す図である。 ピクチャグループ(GOP)のデータトラフィックの経時的な送信を概略的に示す図である。 複数のビデオストリームの送信を制御するための方法を概略的に示す図である。 ビデオストリームの送信を制御するためのビデオストリーム整形器を極めて概略的に示す図である。
次に、本発明の現在好ましい実施形態が示されている添付の図面を参照しながら、本発明が以下でより十分に説明される。しかしながら、本発明は、多くの異なる形態で具現化され得、本明細書に記載される実施形態に限定されるものとして解釈されるべきではなく、むしろ、これらの実施形態は、完全さおよび完全性のために提供され、本発明の範囲を当業者に十分に伝えるために提供される。
図1に関して、ビデオストリームの送信を制御するためのコンピュータ実装方法100のフローチャートが示されている。方法100は、任意の好適なデバイス上で実装され得る。非限定的な例によれば、方法100は、ビデオカメラ、特に、デジタルモニタリングビデオカメラにおいて実装され得る。他の例は、固定またはポータブルコンピュータ、ネットワークゲートウェイなどである。本方法は、ネットワークを介して送信されるべきデータトラフィックのための、いわゆるトラフィック整形器と見なされ得る。方法100は、110において、送信されるべきビデオストリームのピクチャグループ(GOP)についてのビット数を推定することを含む。GOPは、以下の異なるピクチャタイプを備え得る。
- イントラ符号化ピクチャ、Iフレーム。すべての他のピクチャとは無関係にコーディングされたピクチャである。各GOPが、復号順序において、Iフレームで始まる。Iフレームは、代替的に、キーフレームと呼ばれることがある。
- 予測符号化ピクチャ、Pフレーム。PフレームまたはIフレームである、前に復号されたピクチャに対する動き補償差情報を含んでいるピクチャである。Pフレームは、ピクセルレベル分析、ブロックレベル分析、またはベクトル分析によって作成され得る。
- 双予測コード化ピクチャ、Bフレーム。前に復号されたピクチャ(IフレームまたはPフレーム)とBフレームに続くピクチャ(PフレームのIフレーム)とに対する動き補償差情報を含んでいるピクチャである。
PフレームおよびBフレームは、まとめてしばしばインターフレームと呼ばれる。
イントラフレームのビット数は、インターフレームが、一般に、イントラフレームに対する差のみを含むので、概して、イントラフレームに続くインターフレームのビット数よりも著しく大きい。しかしながら、これは、多くの動きを伴うシーンをキャプチャするとき、当てはまらないことがある。したがって、たとえば、特定の時間間隔中にカメラによってキャプチャされているシーンにおいてほとんどまたは何も変化しないことがある、夜間のカメラ監視では、キャプチャされたビデオストリームシーケンス中のインターフレームのファイルサイズが実質的に無視できることがある。さらに、そのような状況では、比較的大きいGOP長および/または低いフレームレートが使用され得、ここで、GOP長は、2つの後続のイントラフレーム間のフレームの数を指す。しかしながら、カメラ監視においてカメラによってキャプチャされているシーンの急速な変化を適切にキャプチャするために、キャプチャされているシーン中の現在の(場合によっては低い)アクティビティにかかわらず、比較的短いGOP長が好ましいことがある。本開示全体にわたって、GOP中のピクチャの検討は、もっぱらIフレームおよびPフレームを顧慮する。当業者は、他のタイプのフレーム、すなわち、Bフレームが、特許請求の範囲内で顧慮され得ることを了解する。さらに、本開示全体にわたって静的GOP長が考慮されるが、当業者は、帯域幅を節約すること、ネットワークを介してデータトラフィックを促進することなどを行うために、動的GOP長が実装され得ることを諒解する。ビデオフレーム(IフレームまたはPフレーム)のサイズを説明/検討するとき、そのようなビデオフレームを記憶するために必要とされる対応するディスクスペースへの参照が行われることを諒解されたい。したがって、IフレームがPフレームよりも大きいことは、Iフレームが、Pフレームのためのディスクスペースと比較して、Iフレームを記憶するためのより大きいディスクスペースを必要とすることと等価であることを理解されたい。「サイズ」および「ビットサイズ」という用語は、時々、互換的に使用され得る。
送信されるべきビデオストリームのGOPについてのビット数の推定は、ビデオストリーム中の1つまたは複数のすでに送信されたGOPを分析することによって実施され得る。複数のすでに送信されたGOPを分析することによって、すでに送信されたGOPのうちのそれぞれのGOPのビット数に基づく統計的傾向が、送信されるべきGOPについてのビット数の比較的正確な推定のために使用され得る。したがって、方法は、ビデオストリーム中の1つまたは複数の先行するGOPについてのビット数を統計的に分析することを含み得る。ビデオストリーム中の1つまたは複数の先行するGOPについてのビット数の統計的分析は、レイテンシをもたらすリスクがしきい値確率を下回るようにビットレートが選択され得るという点で、確率的手法を利用し得る。しきい値確率は、好ましくは、比較的低くなり得る。たとえば、カメラが、比較的静的シーンのビデオシーケンスをキャプチャする場合、ビデオシーケンス中の特定のGOPのPフレームは、一般に、特定のGOPのIフレームよりもはるかに小さい。統計的分析は、次いで、後続のGOP中で使用されるべき好適なビットレートを推定し得る。統計的分析は、カメラがキャプチャするシーンにおける傾向を決定することをさらに含み得る。例として、その傾向は、シーン中の移動の変化の増加率を考慮し得、これは、それにより、より大きいPフレームを生じ得る。これは、さらに、ネットワークを介して送信される対応するデータトラフィックを平滑化するための方法を最適化し得る。
方法100は、120において、ビデオストリームの送信のためのレイテンシ要件を設定することをさらに含む。上記の通り、レイテンシ要件は、ビデオフレームデータのキャプチャ/生成とビデオフレームデータの送信との間の時間差に関する要件である。レイテンシ要件は、超えられないものとする最大レイテンシであり得る。レイテンシ要件は、時々、レイテンシと示され得る。したがって、送信されるべきGOPにわたる推定されたビデオビットレートによって引き起こされる、経時的に増やされ、増加されたエラーおよび潜在的に誘発された不要なレイテンシが防がれ得る。レイテンシ要件は、ユーザによって設定され得る。レイテンシ要件は、ユーザエクスペリエンス、ネットワーク容量、モニタされるべきシーンのタイプなどに依存し得る。例として、ゲートをモニタし、リアルタイム人間通信のために使用されているカメラは、データのほぼリアルタイム送信、たとえば、30msレイテンシを必要とし得る。逆に、駐車場をモニタするカメラの場合、レイテンシは、著しく高く、たとえば、0.5sであり得る。トラフィック整形器が1つまたは複数のGOPのすべてのデータを送信するべきであった目標時間が、さらに、フレームレートおよびGOP長に基づいて算出され得る。したがって、目標時間は、後続のIフレームの送信がリアルタイムで行われるタイムスタンプと見なされ得る。
方法100は、130において、推定されたビット数と、GOPの持続時間によって表される時間期間に対応する時間とに基づいて、GOPにわたる平均最小ビットレートを決定することをさらに含む。GOPにわたる平均最小ビットレートは、ビデオ解像度に依存し得る。すなわち、たとえば、ライブストリームにおいて短いレイテンシが望まれるとすれば、ライブストリーム中のGOPにわたる平均最小ビットレートが比較的低くなり得、特に、ライブストリームカメラがキャプチャするシーンについて、比較的視覚的に静的である。GOPにわたる平均最小ビデオビットレートは、GOPに対応するすべてのビデオデータがGOP期間中に送信されることになるように、各フレーム期間中に送信されることが必要とされるのはどれだけのデータかに基づいて定義され得る。
方法100は、GOP中のビデオフレームについて、140において、レイテンシ要件と平均最小ビデオビットレートとに基づいて、ビデオフレームの送信のための出力ビットレートを設定することと、150において、出力ビットレートを使用してビデオフレームを送信することとをさらに含む。ここでは、GOP中の各ビデオフレームの送信は、それにより、個々に考慮される。出力ビットレートは、推定されたビット数と、送信されるべきフレームをプッシュすることが完了されるべきであった目標時間とに基づいて更新され得る。
図2A~図2Cは、方法100を図式的に要約する。ここでは、1つのIフレームI1と8つのPフレームP1~P8とを備えるGOP200が例示され、これは、限定的なものとして解釈されるべきでなく、当業者を混乱させるべきでもない。すなわち、特許請求の範囲内で任意の適切な数のPフレームが可能であり得る。レイテンシの不在下で、ビデオフレームの送信が、概して、任意の適切な時間間隔中に行われ得る。そのような時間間隔は、好ましくは、図2A~図2Cに定性的に示されているように、2つの後続のキャプチャされたフレーム間の経過時間に対応するフレームレート依存時間間隔(frame rate depending time interval)よりも短いかまたはそれに等しくなり得る。時間間隔がフレームレート依存時間間隔よりも著しく短い場合、対応するビットレート曲線は、それぞれのPフレームの場合によっては有意でないサイズにもかかわらず、各送信されたPフレームについて、狭いビットレートスパイクを有することになる。再び、Iフレームは、後続のPフレームの各々よりも著しく大きいことがわかる。したがって、この例は、キャプチャされたシーンの比較的中程度の変化を示唆する。一般的なフレームレートは、30フレーム毎秒(fps)であり得る。GOP長は、たとえば、30フレームまたは60フレームであり得る。したがって、フレームレート30fpsの場合、およびGOP長60フレームの場合、GOPの持続時間は2秒である。当業者によって容易に諒解されるように、特許請求の範囲内で他の適切なフレームレートおよびGOP長が可能である。
図2Aでは、Iフレームの送信中に送信ビットレートが比較的狭いスパイクを呈する、GOP200のデータトラフィックの経時的な通常の送信が概略的に示されている。このおもちゃの例では、GOP200は、1つのIフレームI1と、8つのPフレームP1~P8を備えるPフレームのグループ210とを有すると仮定される。GOP200のそれぞれのフレームの見掛けの「面積」が、GOP中のフレームの相対ビットサイズを定性的に示す。図2A(i)に示されているフレームは、データパケットと見なされ得る。したがって、各フレームI1、P1~P8は、ネットワークを介してプッシュされるべきデータパケットと見なされ得る。このようにしてデータパケットをプッシュすることは、対応するビデオフレームがキャプチャされるとすぐに各個々のデータパケットが送信されるので、最小レイテンシを有することと等価である。概して、また、この例に見られるように、IフレームI1は、後続のPフレームP1~P8と比較して著しくより大きいビットサイズを有し、ここで、PフレームP1~P8はすべて、実質的に同様のビットサイズを有すると仮定されるが、Pフレームの本物のグループ内のビットサイズは概して異なり得る。
図2Bでは、GOP200の経時的な平滑化が概略的に示されている。GOP200は、GOP200の送信時に方法100に従って平滑化される。ここでは、第1のレイテンシ要件LR1が設定され、Iフレームのビットがネットワークを介してプッシュされるべきである時間間隔を定義する。図2Aに示されているIフレームI1は、ここでは、2つのデータパケットにスプリットされ、2つのフレーム、たとえば、図2AのIフレームI1および第1のPフレームP1をプッシュすることに対応する時間間隔中にネットワークを介してプッシュされる。したがって、IフレームI1は、2つの異なるフレームにスプリットされるものと解釈されないものとし、むしろ、2つの異なるデータパケットにスプリットされるものと解釈されるものとする。GOP200が、ネットワークを介して送信され、受信機側上で再生されるとき、対応するビデオシーケンスは、通常速度で再生され、レイテンシ要件と同様の時間だけ遅延される。平滑化は、GOP200が、後続のGOPが開始する前に送信されるために、GOP200の残りのPフレームP1~P8が、より大きいパケットに結合されなければならないことを必要とする。この例では、ここでは、データパケットI1a、I1b、P1~P6と、第7のP7および第8のP8 Pフレームとを備えるより大きいPフレームパケットPL1とを備えるGOPが、目標時間TG1内にプッシュされるために、最後のデータパケットが、第7のP7および第8のP8 Pフレームを備えるデータパケットであり得る。同様のデータパケットを構成するために、Pフレームの任意のペア、たとえば、第1のPフレームP1および第2のPフレームP2などが、等しくうまく使用され得る。これは、ネットワークを介してIフレームパケットI1aおよびI1bをプッシュするとき、ビットレートに対応する第1のビットレートピーク252を有する対応するビットレート曲線を生じ得る。同様に、ネットワークを介してより大きいPフレームパケットPL1をプッシュするとき、第2のビットレートピーク254がビットレート曲線250において発生し得る。概して、データパケットが、約1.5kBのサイズを有し得る。比較的大きいIフレームが、数千個のデータパケットにスプリットされ得る。フレームが、少なくとも3つのやり方、すなわち、(i)1つのデータパケット中に1つのフレーム、(ii)1つのデータパケット中に複数のフレーム、または(iii)複数のデータパケット中に1つのフレームで、そのようなデータパケットによって送信され得る。原則として、ある数のフレームを別の数のデータパケットにスプリットすることがさらに可能であり得る。たとえば、2つのデータパケットが、合計3つのフレームを含んでいることがあり、ここで、各データパケットが、1.5フレームに対応するデータを含んでいる。
図2Cでは、GOP200の送信時に方法100に従って平滑化されているデータトラフィックの経時的な、GOP200に対応する平滑化データの別の例が概略的に示されている。ここでは、第2のレイテンシ要件LR2が設定され、Iフレームがネットワーク上でプッシュされるべきである時間間隔を定義する。図2Aに示されているIフレームI1は、ここでは、実質的に等しいビットサイズの5つのデータパケットI1i~I1vにスプリットされる。PフレームP1~P8は、ここでは、各々2つのPフレームを備えるデータパケット、すなわち、第1のP1および第2のP2 Pフレームを備える第1のPフレームパケット、第3のP3および第4のP4 Pフレームを備える第2のPフレームパケットなどに結合される。この例は、IフレームパケットI1i~I1vおよび後続のPフレームパケットをプッシュするとき、実質的に一定のビットレートを有する対応するビットレート曲線260を生じ得る。レイテンシ要件のより大きい時間間隔値が、GOP200のビットに対応するデータパケットをプッシュするとき、より一定のビットレート曲線を生じ得、その逆も同様であることを諒解されたい。ビットレート曲線は、それにより、GOPの平均最小ビットレートからほとんど逸脱しないか、または無視できるほどに逸脱し得る。したがって、レイテンシ要件は、レイテンシ要件の時間間隔の長さと対応するビットレート曲線の平滑度との間のトレードオフと見なされ得る。図2Cに示されている例は、ネットワークの負荷に関して比較的理想的であり得ることを諒解されたい。送信されるべきビデオストリームのGOPについてのビット数の推定が、すでに送信されたGOPに依存し得るので、2つのGOP間の平均ビットレートが逸脱し得るような変動が発生し得る。
図2A~図2Cでは、フレームレートは、GOP200中のフレームに対応するデータパケットが送信されるレートと同様であるように見え得る。しかしながら、データパケットは、各データパケットが複数のフレームを備え、各データパケットが、データパケット中に含まれているフレームのキャプチャに対応する時間期間中に送られるように、より低いレートにおいて等しくうまく送信され得る。
ビット数の推定110は、送信されるべきGOPに対応するビデオデータをバッファすることと、バッファされたビデオデータを分析することとを含み得る。したがって、GOP中のすべてのフレームがバッファされ得、その後、すべてのフレームの総ビットサイズ、ならびにGOPがその目標時間中に送信されるために必要とされる平均ビットレートが計算され得る。これの後に、データパケットが、GOPの平均ビットレートに一致するビットレートにおいてプッシュされること続き得る。この状況では、比較的大きいレイテンシが存在し得るが、ビットレートは、ネットワークを介してGOPに対応するデータパケットをプッシュする間、さらに平滑化されるか、さらには実質的に一定であり得る。
代替的に、ビット数の推定110は、GOPに対応するビデオストリームのすでに符号化されたシーケンスについてのビット数を決定することを含み得る。したがって、すでに符号化されたビデオデータの平滑化が可能であり得る。これは、イベント、たとえば、ビデオカメラによってキャプチャされるシーンの変化がトリガされる場合、事前バッファリングの場合に好ましいことがあり、したがって、ある過ぎた時間間隔に対応するデータパケットをプッシュすることが可能である。そのようなある過ぎた時間間隔は、たとえば、先行の15秒、先行の分(minute)などであり得る。
方法100は、GOP中のビデオフレームの送信中に、GOPのすでに送信されたフレームの実際のビット数に基づいて、GOPの残りのまだ送信されていないフレームにわたって平均最小ビデオビットレートを更新することをさらに含み得る。したがって、平均最小ビデオビットレートは、ビデオカメラによってキャプチャされるシーン中のリアルタイム情況に従って調整され得る。この実施形態は、先行するGOPが、キャプチャされたシーンの急速な変化を受け、現在のGOPが、比較的静的なキャプチャされたシーンを受ける場合、好ましいことがある。
図3に関して、複数のビデオストリームの同時送信を制御するためのコンピュータ実装方法300が示されている。方法300は、複数のビデオストリームの各々について、上記で説明された方法100を個々に実施することを含む。方法300は、それにより、ビデオストリームの和のビットレートが、ネットワークを介したデータの送信のための最大許容ビットレートを下回るように、複数のカメラからのビデオストリームを平滑化することを含み得る。複数のビデオストリームについてビットレートスパイクが発生するように、それぞれのビデオストリームの対応するレイテンシ要件が比較的短い場合、第2の方法は、複数のビデオストリームの合計のビットレートが、ネットワークの最大許容ビットレートを下回るために、必要な場合、1つまたは複数のビデオストリームを遅延させ得る。
方法300は、複数のビデオストリームの各々の送信のためのレイテンシ要件を、レイテンシ要件が、複数のビデオストリームの各々について異なるように、個々に設定することをさらに含み得る。
方法300は、複数のビデオストリームの各々のビデオストリームのタイプに基づいて、複数のビデオストリームの各々の送信のためのレイテンシ要件を個々に設定することをさらに含み得る。ビデオストリームのタイプは、後のレビューのために記憶されるべきライブストリームなどを含み得る。ライブストリームの再生は、数秒またはそれを下回る程度のキャプチャと再生との間の遅延を受け得る。ビデオストリームのタイプがライブストリームである場合、レイテンシ要件は、それにより、比較的短い時間期間であり得る。これは、次いで、ネットワークを介して送信されているライブストリームの数に対する制約を設定し得る。方法300はそれぞれのライブストリームに関連するそれぞれのシーンにおけるアクティビティを評価し得、それにより、あまりアクティブでないシーンが、場合によっては一時的なより長いレイテンシ要件を割り当てられる。代替的に、複数のライブストリームのIフレームが実質的に同時に送信される場合、1つまたは複数のライブストリームが、互いに対してある程度まで遅延され得る。
上記で説明された方法を実装するための命令が、非一時的コンピュータ可読記憶媒体に記憶され、処理能力を有するデバイス上で実行される。
図4に関して、ビデオストリームの送信を制御するためのビデオストリーム整形器400が極めて概略的に示されている。ビデオストリーム整形器400は、任意の好適なデバイス上で実装され得る。非限定的な例によれば、ビデオストリーム整形器400は、ビデオカメラ、特に、デジタルモニタリングビデオカメラにおいて実装され得る。他の例は、固定またはポータブルコンピュータ、ネットワークゲートウェイなどである。(1つまたは複数の)方法100、300に関する上述の特徴は、適用可能なとき、ビデオストリーム整形器400にも適用される。したがって、過度の繰返しを回避するために、上記への参照が行われる。
ビデオストリーム整形器400は、回路420を備える。
回路420は、ビデオストリーム整形器400の機能および動作の全体的制御を行うように構成される。回路420は、中央処理ユニット(CPU)、マイクロコントローラ、またはマイクロプロセッサなど、プロセッサを含み得る。プロセッサは、ビデオストリーム整形器400の機能および動作を行うために回路420に記憶されたプログラムコードを実行するように構成される。
以下でさらに説明される実行可能機能が、メモリに記憶され得る。メモリは、バッファ、フラッシュメモリ、ハードドライブ、リムーバブル媒体、揮発性メモリ、不揮発性メモリ、ランダムアクセスメモリ(RAM)、または他の好適なデバイスのうちの1つまたは複数であり得る。一般的な配置では、メモリは、長期データストレージのための不揮発性メモリと、回路420のためのシステムメモリとして機能する揮発性メモリとを含み得る。メモリは、データバスを介して回路420とデータを交換し得る。付随する制御線、およびメモリと回路420との間のアドレスバスが、存在し得る。
回路420の機能および動作は、ビデオストリーム整形器400の非一時的コンピュータ可読媒体、たとえば、メモリに記憶され、たとえば、プロセッサを使用することによって、回路420によって実行される、たとえば、コンピュータコード部分、ソフトウェアプログラムなど、実行可能論理ルーチンの形態で具現され得る。ビデオストリーム整形器400の機能および動作は、スタンドアロンソフトウェアアプリケーションであるか、またはビデオストリーム整形器400に関係する追加のタスクを行うソフトウェアアプリケーションの一部を形成し得る。説明される機能および動作は、対応するデバイスが行うように構成された方法を考慮していることがある。また、説明される機能および動作はソフトウェアにおいて実装され得るが、そのような機能は、専用ハードウェアまたはファームウェア、あるいはハードウェア、ファームウェアおよび/またはソフトウェアの何らかの組合せを介して行われることもある。
回路420は、送信されるべきビデオストリームのピクチャグループ(GOP)についてのビット数を推定するように構成されたデータサイズ推定機能421を実行するように構成される。回路420は、ビデオストリームの送信のためのレイテンシ要件を設定するように構成されたレイテンシ設定機能422をさらに備える。回路420は、推定されたビット数と、GOPの持続時間によって表される時間期間に対応する時間とに基づいて、GOPにわたる平均最小ビデオビットレートを決定するように構成されたビットレート決定機能423をさらに備える。回路420は、GOP中のビデオフレームについて、レイテンシ要件と平均最小ビットレートとに基づいて、ビデオフレームの送信のための出力ビットレートを設定するように構成された出力ビットレート設定機能をさらに備える。回路420は、出力ビットレートを使用してビデオフレームを送信するように構成された送信機能425をさらに備える。
データサイズ推定機能421は、ビデオストリーム中の1つまたは複数の先行するGOPについてのビット数を統計的に分析するようにさらに構成され得る。
データサイズ推定機能421は、送信されるべきGOPに対応するビデオデータをバッファし、バッファされたビデオデータを分析するようにさらに構成され得る。
データサイズ推定機能421は、GOPに対応するビデオストリームのすでに符号化されたシーケンスについてのビット数を決定するようにさらに構成され得る。
回路420は、GOPのすでに送信されたフレームの実際のビット数に基づいて、GOPの残りのまだ送信されていないフレームにわたって平均最小ビデオビットレートを更新するように構成されたビットレート更新機能をさらに備え得る。
回路420は、上記の通り、複数のビデオストリームの各々について、機能421~425を個々に実行するように構成されたメイン機能426を実行するようにさらに構成され得る。
本発明が、決して、上記で説明された好ましい実施形態に限定されないことを、当業者は了解されよう。見方を変えれば、多くの修正および変形が、添付の特許請求の範囲内で可能である。
たとえば、特定のビデオストリーム整形器400が、2つの独立したビデオストリームの送信を制御し得る。そのような状況では、2つのビデオストリームのうちの1つのレイテンシ要件が、送信されたデータの平滑化を最適化するために残りのビデオストリームの性質を考慮に入れ得る。当業者は、これが、3つ以上の独立したビデオストリームにも適用され得ることを諒解する。
追加として、開示される実施形態の変形形態が、図面、本開示、および添付の特許請求の範囲の研究から、請求される本発明を行う際に、当業者によって理解および実現され得る。

Claims (14)

  1. ビデオストリームの送信を制御するためのコンピュータ実装方法(100)であって、前記方法(100)は、
    送信されるべき前記ビデオストリームのピクチャグループ(GOP)(200)についてのビット数を推定すること(110)であって、前記GOPが、イントラフレームと、1つまたは複数のインターフレームとを備える、ビット数を推定すること(110)と、
    前記ビデオストリームの前記送信のためのレイテンシ要件を設定すること(120)であって、前記レイテンシ要件が、ビデオフレームデータのキャプチャ/生成と前記ビデオフレームデータの送信との間の時間差に関する要件である、レイテンシ要件を設定すること(120)と、
    推定された前記ビット数と、前記GOP(200)の持続時間によって表される時間期間に対応する時間とに基づいて、前記GOP(200)にわたる平均最小ビデオビットレートを決定すること(130)と、
    前記GOP(200)中の各ビデオフレームについて、
    前記ビデオフレームが拡散されるべきデータパケットの数を決定すること、または前記ビデオフレームが、前記GOPの別のビデオフレームと同じデータパケット中で送信されるべきであると決定することによって、前記レイテンシ要件と前記平均最小ビデオビットレートとに基づいて、前記ビデオフレームの送信のための出力ビットレートを設定すること(140)と、
    前記出力ビットレートを使用して前記ビデオフレームを送信すること(150)と
    を含む、方法(100)。
  2. 前記ビット数を推定すること(110)が、前記ビデオストリーム中の1つまたは複数の先行するGOPについてのビット数を統計的に分析することを含む、請求項1に記載の方法(100)。
  3. 前記ビット数を推定すること(110)が、送信されるべき前記GOP(200)に対応するビデオデータをバッファすることと、バッファされた前記ビデオデータを分析することとを含む、請求項1に記載の方法(100)。
  4. 前記ビット数を推定すること(110)が、前記GOP(200)に対応する前記ビデオストリームのすでに符号化されたシーケンスについてのビット数を決定することを含む、請求項1に記載の方法(100)。
  5. 前記GOP(200)中の前記ビデオフレームの送信中に、前記GOP(200)のすでに送信されたフレームの実際のビット数に基づいて、前記GOP(200)の残りのまだ送信されていないフレームにわたって前記平均最小ビデオビットレートを更新することをさらに含む、請求項1から4のいずれか一項に記載の方法(100)。
  6. 複数のビデオストリームの同時送信を制御するためのコンピュータ実装方法(300)であって、前記方法(300)が、前記複数のビデオストリームの各々について、請求項1から5のいずれか一項に記載の方法を個々に実施することを含む、コンピュータ実装方法(300)。
  7. 前記複数のビデオストリームの各々の送信のためのレイテンシ要件を、前記レイテンシ要件が、前記複数のビデオストリームの各々について異なるように、個々に設定することをさらに含む、請求項6に記載の方法(300)。
  8. 前記複数のビデオストリームの各々のビデオストリームのタイプに基づいて、前記複数のビデオストリームの各々の前記送信のための前記レイテンシ要件を個々に設定することをさらに含む、請求項6または7に記載の方法(300)。
  9. 処理能力を有するデバイス上で実行されたとき、請求項1から8のいずれか一項に記載の方法を実装するための命令を記憶した非一時的コンピュータ可読記憶媒体。
  10. ビデオストリームの送信を制御するためのビデオストリーム整形器(400)であって、前記ビデオストリーム整形器(400)は、
    送信されるべき前記ビデオストリームのピクチャグループ(GOP)(200)についてのビット数を推定するように構成されたデータサイズ推定機能(421)であって、前記GOPが、イントラフレームと、1つまたは複数のインターフレームとを備える、データサイズ推定機能(421)と、
    前記ビデオストリームの前記送信のためのレイテンシ要件を設定するように構成されたレイテンシ設定機能(422)であって、前記レイテンシ要件が、ビデオフレームデータのキャプチャ/生成と前記ビデオフレームデータの送信との間の時間差に関する要件である、レイテンシ設定機能(422)と、
    推定された前記ビット数と、前記GOP(200)の持続時間によって表される時間期間に対応する時間とに基づいて、前記GOP(200)にわたる平均最小ビデオビットレートを決定するように構成されたビットレート決定機能(423)と、
    前記GOP(200)中の各ビデオフレームについて、前記ビデオフレームが拡散されるべきデータパケットの数を決定すること、または前記ビデオフレームが、前記GOPの別のビデオフレームと同じデータパケット中で送信されるべきであると決定することによって、前記レイテンシ要件と平均最小ビットレートとに基づいて、前記ビデオフレームの送信のための出力ビットレートを設定するように構成された出力ビットレート設定機能(424)と、
    前記出力ビットレートを使用して前記ビデオフレームを送信するように構成された送信機能(425)と
    を実行するように構成された回路(420)を備える、ビデオストリーム整形器(400)。
  11. 前記データサイズ推定機能(421)が、前記ビデオストリーム中の1つまたは複数の先行するGOPについてのビット数を統計的に分析するようにさらに構成されている、請求項10に記載のビデオストリーム整形器(400)。
  12. 前記データサイズ推定機能(421)が、送信されるべき前記GOP(200)に対応するビデオデータをバッファし、バッファされた前記ビデオデータを分析するようにさらに構成されている、請求項10に記載のビデオストリーム整形器(400)。
  13. 前記データサイズ推定機能(421)が、前記GOP(200)に対応する前記ビデオストリームのすでに符号化されたシーケンスについてのビット数を決定するようにさらに構成されている、請求項10に記載のビデオストリーム整形器(400)。
  14. 前記回路(420)が、前記GOP(200)のすでに送信されたフレームの実際のビット数に基づいて、前記GOP(200)の残りのまだ送信されていないフレームにわたって前記平均最小ビデオビットレートを更新するように構成されたビットレート更新機能をさらに備える、請求項10から13のいずれか一項に記載のビデオストリーム整形器(400)。
JP2022142766A 2021-09-16 2022-09-08 ビデオストリームの送信を制御するための方法およびデバイス Pending JP2023043851A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP21197010 2021-09-16
EP21197010.8A EP4152747B1 (en) 2021-09-16 2021-09-16 Methods and devices for controlling a transmission of a video stream

Publications (1)

Publication Number Publication Date
JP2023043851A true JP2023043851A (ja) 2023-03-29

Family

ID=77801515

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022142766A Pending JP2023043851A (ja) 2021-09-16 2022-09-08 ビデオストリームの送信を制御するための方法およびデバイス

Country Status (5)

Country Link
US (1) US20230082211A1 (ja)
EP (1) EP4152747B1 (ja)
JP (1) JP2023043851A (ja)
KR (1) KR20230040872A (ja)
CN (1) CN115834884A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111698262B (zh) * 2020-06-24 2021-07-16 北京达佳互联信息技术有限公司 带宽确定方法、装置、终端及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7046729B2 (en) * 2002-08-27 2006-05-16 Ess Technology, Inc. Bit rate control for motion compensated video compression system
US20130142249A1 (en) * 2011-12-06 2013-06-06 Advanced Micro Devices, Inc. Method and apparatus for performing video and image compression using a video encoder
EP3829170A1 (en) * 2019-11-29 2021-06-02 Axis AB Encoding and transmitting image frames of a video stream

Also Published As

Publication number Publication date
KR20230040872A (ko) 2023-03-23
US20230082211A1 (en) 2023-03-16
EP4152747A1 (en) 2023-03-22
EP4152747B1 (en) 2023-08-16
CN115834884A (zh) 2023-03-21

Similar Documents

Publication Publication Date Title
CN109660879B (zh) 直播丢帧方法、系统、计算机设备和存储介质
JP6169172B2 (ja) 仮想イントラフレームを使用してビデオコンテンツを符号化するためのシステムおよび方法
US7876821B2 (en) Method and an apparatus for controlling the rate of a video sequence; a video encoding device
US10567465B2 (en) Streaming video over a network
US9253063B2 (en) Bi-directional video compression for real-time video streams during transport in a packet switched network
US20040016000A1 (en) Video streaming having controlled quality assurance over best-effort networks
KR20070111550A (ko) 예측에 의한 유사 고정 품질 레이트 제어
CN106162199B (zh) 带反向信道消息管理的视频处理的方法和系统
CN111988560B (zh) 编码和通过多个网络连接流传输视频序列的方法和设备
US9930388B2 (en) Differential and distributive queuing of video frames
JP2023043851A (ja) ビデオストリームの送信を制御するための方法およびデバイス
US9258347B2 (en) Encoding of a video frame for transmission to a plurality of clients
KR102118678B1 (ko) 부호화된 비디오 스트림 전송 장치 및 방법
US7274739B2 (en) Methods and apparatus for improving video quality in statistical multiplexing
Li et al. A joint optimization method of coding and transmission for conversational HD video service
Varadarajan et al. An adaptive, perception-driven error spreading scheme in continuous media streaming
Vijaykumar et al. A cross-layer frame work for adaptive video streaming over wireless networks
JP3946804B2 (ja) 画像符号化制御方法
TWI683572B (zh) 基於畫面動態資訊的視訊位元率傳輸控制方法
Luo et al. An end-to-end video transmission framework with efficient bandwidth utilization
CN115834975B (zh) 一种视频传输方法、装置、设备及介质
US11778219B2 (en) Method and system for live video streaming with integrated encoding and transmission semantics
KR100949755B1 (ko) 비디오 시퀀스의 레이트를 제어하는 방법 및 장치, 비디오부호화 장치
CN116980713A (zh) 一种带宽检测方法、装置、电子设备及存储介质
CN115834975A (zh) 一种视频传输方法、装置、设备及介质