JP7351340B2 - 制御装置、制御方法、及びプログラム - Google Patents

制御装置、制御方法、及びプログラム Download PDF

Info

Publication number
JP7351340B2
JP7351340B2 JP2021541356A JP2021541356A JP7351340B2 JP 7351340 B2 JP7351340 B2 JP 7351340B2 JP 2021541356 A JP2021541356 A JP 2021541356A JP 2021541356 A JP2021541356 A JP 2021541356A JP 7351340 B2 JP7351340 B2 JP 7351340B2
Authority
JP
Japan
Prior art keywords
distribution
information
control device
bit rate
client terminal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021541356A
Other languages
English (en)
Other versions
JPWO2021033234A1 (ja
Inventor
裕之 北田
隆文 奥山
正祥 安川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2021033234A1 publication Critical patent/JPWO2021033234A1/ja
Application granted granted Critical
Publication of JP7351340B2 publication Critical patent/JP7351340B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4621Controlling the complexity of the content stream or additional data, e.g. lowering the resolution or bit-rate of the video stream for a mobile client with a small screen
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2385Channel allocation; Bandwidth allocation
    • 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 or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/23805Controlling the feeding rate to the network, e.g. by controlling the video pump
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、映像配信サービスにおける映像データのビットレートの制御に関連するものである。
映像配信サービスでは、クライアント端末が視聴環境(デバイスやネットワークの回線速度など)に合わせて、要求する映像データのビットレートを動的に選択できるABR(Adaptive bit Rate)方式が広く利用されている。
今後は4K/8Kといった高精細映像のネット配信が増加すると予測される。インターネットを介した映像配信で用いられるプロトコルとして、近年ではHTTP上で映像を配信するHTTP Streamingが広く利用されている。HTTP Streamingを実現する代表的なプロトコルとして、MPEG-DASH、HLSがある。
これらには、上記ABRの機能が実装されており、クライアント端末は、視聴環境に合わせて、可能な限り高い品質で安定的に映像を再生するための制御を行う。具体的には、複数の解像度(ビットレート)の中から、動的に適切なビットレートを選択する動作を行う。
北田 裕之, 奥山 隆文, 安川 正祥, "映像配信における帯域確保時のビットレート選択に関する一検討," 2019年信学総大, B-6-75, March 2019
配信事業者が映像配信を高品質に行うためには、配信システムの高負荷状態やネットワークにおける輻輳を考慮して配信を制御する必要があるが、ABRを前提とした映像配信では、クライアント端末の自律動作によって配信されるビットレートが動的に変化するため、環境によってはビットレートが安定しない可能性がある。
特に、ネットワークが輻輳状態に近い場合は、クライアント端末が取得する映像データのビットレートが頻繁に変更され、視聴品質が低下する懸念もある(非特許文献1)。
本発明は上記の点に鑑みてなされたものであり、映像データのビットレートを動的に選択できる映像配信サービスにおいて、クライアント端末が選択可能な映像データのビットレートを適切に制御することを可能とする技術を提供することを目的とする。
開示の技術によれば、映像データの配信を行う映像配信ネットワークにおいて、クライアント端末により選択可能なビットレートを制御する制御装置であって、
配信システムにおける映像データの情報を有する配信情報と、前記配信システムにより映像配信が行われているセッション毎の割当帯域を有する帯域割当情報と、前記配信システムの回線帯域を有する配信システム情報とを格納するデータベースと、
前記クライアント端末から視聴要求を受信し、前記データベースを参照することにより、前記配信システムにおける利用可能帯域を算出し、当該利用可能帯域と、前記視聴要求に対応する映像データの1以上のビットレートとに基づいて、前記クライアント端末が選択可能な最大のビットレートを決定する制御部とを備え、
前記制御部は、前記1以上のビットレートのうち、バッファリング用の帯域が前記利用可能帯域未満となる最大のビットレートを、前記最大のビットレートとして決定する
制御装置が提供される。

開示の技術によれば、映像データのビットレートを動的に選択できる映像配信サービスにおいて、クライアント端末が選択可能な映像データのビットレートを適切に制御することを可能とする技術が提供される。
本発明の実施の形態におけるシステムの全体構成図である。 制御装置の機能構成図である。 制御装置内のDBの構成図である。 制御装置内のDB内の配信情報の例を示す図である。 制御装置内のDB内の帯域割当情報の例を示す図である。 制御装置内のDB内の配信システム情報の例を示す図である。 コンテンツ要求の内容例を示す図である。 制御部からクライアント端末へ通知する情報の例を示す図である。 制御部からクライアント端末へ通知する情報の例を示す図である。 装置のハードウェア構成例を示す図である。 実施例1の処理手順を示すフローチャートである。 実施例2の処理手順を示すフローチャートである。 実施例3の処理手順を示すフローチャートである。 実施例4のシステム構成を示す図である。 実施例4の処理手順を示すフローチャートである。
以下、図面を参照して本発明の実施の形態(本実施の形態)を説明する。以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。
(システム構成)
図1に、本発明の実施の形態におけるシステムの全体構成を示す。このシステムを映像配信ネットワークと呼んでもよい。図1に示すように、本システムには、制御装置100、クライアント端末200、配信システム300が存在し、これらがネットワーク500に接続されている。また、図1には、映像コンテンツ(映像データ)を配信システム300等に提供するコンテンツプロバイダ400も示されている。
後述するように、配信システム300あるいはコンテンプロバイダ400から制御装置100に対して配信情報が登録されるので、図1にはその情報の流れが点線で示されている。
図1に示すクライアント端末200は、ABR機能を備え、映像再生を実行する端末である。配信システム300は、映像データ配信機能を持つシステムである。配信システム300を配信サーバ300と呼んでもよい。ネットワーク500は例えばインターネットであるが、インターネット以外のネットワークであってもよい。
制御装置100は、配信システム300等から通知された配信情報と、クライアント端末200から通知されたコンテンツの視聴要求とに基づいて、レート制御アルゴリズム(レート制御プログラムと言い換えてもよい)を実行することで、当該視聴要求に対応する映像データに対して選択可能な最大のビットレートを算出し、算出した結果に基づき、クライアント端末200等に通知情報を送信する機能を有する。
図2に、制御装置100の機能構成図を示す。図2に示すように、制御装置100は、配信情報登録部110、制御部120、DB(データベース)130を有する。なお、これらの機能部及びDBは、物理的に1つの装置に配置されていてもよいし、互いにネットワーク接続された物理的に離れた装置に備えられていてもよい。いずれの場合も、配信情報登録部110、制御部120、及びDB(データベース)130を有する構成を制御装置100と呼ぶことができる。なお、制御装置100を制御システム100と呼んでもよい。また、制御部120を備える1つの装置と、配信情報登録部110、DB(データベース)130を備える1以上の装置とがネットワーク接続される場合において、御部120を備える装置を制御装置と呼んでもよい。
配信情報登録部110は、配信システム300、コンテンツプロバイダ400などから、コンテンツIDやコンテンツ長などの情報を含む配信情報(配信システム300により配信される映像データに関する情報)を受信し、DB130に登録する。
制御部120は、クライアント端末200から送信された視聴要求(コンテンツ要求と呼んでもよい)を受信し、受信した視聴要求に基づいてDB130から、該当するコンテンツIDに関連する情報を抽出し、レート制御アルゴリズムに基づいて、選択できる最大のビットレートを算出し、クライアント端末200に通知する。更に、制御部120は、DB130内の情報を定期的に更新する。
以下、DB130に格納される情報、クライアント端末200への通知情報についてのそれぞれの例を示すが、これらの情報の詳細、及びこれらの情報に関連する制御装置100の詳細動作については後述する実施例のところで説明する。
図3は、DB130に格納される情報を示している。図3に示すとおり、DB130には、配信情報、帯域割当情報、配信システム情報が格納される。図4、図5、図6にはそれぞれ、配信情報の例、帯域割当情報の例、配信システム情報の例が示されている。
図7は、クライアント端末200から送信される視聴要求がコンテンツID=1のコンテンツを要求するものである場合に、それに該当する配信情報の例を示している。
図8は、図7に示す視聴要求に係る配信情報に対してレート制限を実施する場合にクライアント端末200に通知される通知情報の例を示し、図9は、図7に示す視聴要求に係る配信情報に対してレート制限を実施しない場合にクライアント端末200に通知される通知情報の例を示す。
(ハードウェア構成例)
制御装置100は、例えば、コンピュータに、本実施の形態で説明する処理内容を記述したプログラムを実行させることにより実現可能である。また、制御装置100における配信情報登録部110、制御部120のそれぞれが、コンピュータに、本実施の形態で説明する処理内容を記述したプログラムを実行させることにより実現されることとしてもよい。
すなわち、制御装置100は、コンピュータに内蔵されるCPUやメモリ等のハードウェア資源を用いて、当該制御装置100で実施される処理に対応するプログラムを実行することによって実現することが可能である。上記プログラムは、コンピュータが読み取り可能な記録媒体(可搬メモリ等)に記録して、保存したり、配布したりすることが可能である。また、上記プログラムをインターネットや電子メール等、ネットワークを通して提供することも可能である。
図10は、本実施の形態における上記コンピュータのハードウェア構成例を示す図である。図10のコンピュータは、それぞれバスBで相互に接続されているドライブ装置1000、補助記憶装置1002、メモリ装置1003、CPU1004、インタフェース装置1005、表示装置1006、及び入力装置1007等を有する。
当該コンピュータでの処理を実現するプログラムは、例えば、CD-ROM又はメモリカード等の記録媒体1001によって提供される。プログラムを記憶した記録媒体1001がドライブ装置1000にセットされると、プログラムが記録媒体1001からドライブ装置1000を介して補助記憶装置1002にインストールされる。但し、プログラムのインストールは必ずしも記録媒体1001より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置1002は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置1003は、プログラムの起動指示があった場合に、補助記憶装置1002からプログラムを読み出して格納する。CPU1004は、メモリ装置1003に格納されたプログラムに従って、当該制御装置100に係る機能を実現する。インタフェース装置1005は、ネットワークに接続するためのインタフェースとして用いられる。表示装置1006はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置1007はキーボード及びマウス、ボタン、又はタッチパネル等で構成され、様々な操作指示を入力させるために用いられる。
なお、後述するマニフェスト制御システムについても、上記と同様に、コンピュータにプログラムを実行させることで実現できる。
以下、実施例1~4を用いて、制御装置100の動作を具体的に説明する。実施例1では、配信システム300から制御装置100へ配信情報を登録する処理について説明する。実施例2では、制御装置100が視聴要求を受信し、利用可能帯域を算出し、利用可能帯域と視聴要求に基づき通知情報を作成し、通知情報をクライアント端末200へ送信する処理について説明する。実施例3では、制御装置100がDB130内の割当帯域を最新化する定期処理について説明する。実施例4では、制御装置100が視聴要求を受信し、通知情報を作成し、通知情報をマニフェスト制御システムへ送信する処理について説明する。
(実施例1)
まず、実施例1を図11のフローチャートを参照して説明する。実施例1では、配信システム300から制御装置100へ配信情報を登録する処理について説明する。なお、コンテンツプロバイダ400から制御装置100へ配信情報を登録する場合も同様のフローとなる。配信情報とは、配信システム300が配信可能な映像データの情報である。
S101(ステップ101)において、配信情報登録部110が、配信システム300から送信された配信情報を受信する。S102において、配信情報登録部110は、受信した配信情報から、コンテンツID、チャンクサイズ、コンテンツ長、解像度、ビットレートを抽出する。
S103において、配信情報登録部110は、S102で抽出した抽出情報をDB130で検索する。図4に示した例では、DB130には、配信情報として、コンテンツID、チャンクサイズ、コンテンツ長、解像度、ビットレートのそれぞれの値が格納されている。
S104において、配信情報登録部110は、抽出情報のコンテンツIDに合致するコンテンツIDがDB130に存在するか否かを判断し、存在しない場合はS105に進み、存在する場合はS106に進む。
S105において、配信情報登録部110は、抽出情報を、新規情報としてDB130に登録する。S106において、配信情報登録部110は、DB130における当該コンテンツIDの情報を、抽出情報で更新する。
(実施例2)
次に、実施例2を説明する。実施例2では、制御装置100が視聴要求を受信し、通知情報を作成し、通知情報をクライアント端末200へ送信する処理について説明する。
視聴要求には、要求されたコンテンツ(映像データ)のコンテンツIDが含まれている。S201において、視聴要求を受信した制御部120は、視聴要求の情報から、コンテンツIDを抽出する。S202において、制御部120は、抽出情報であるコンテンツIDをDB130で検索する。
S203において、制御部120は、DB130に当該コンテンツIDが存在するかどうかを判断し、存在する場合はS204に進み、存在しない場合はS205に進む。S205に進んだ場合、例えば、当該コンテンツIDに対応する配信情報を配信システム300等から取得して新規情報としてDB130に登録し、S204に進む。
S204において、制御部120は、まず、DB130に格納されている帯域割当情報から、配信システム300で映像配信されている全セッションの割当帯域を合算する。
次に、制御部120は、合算した割当帯域と、当該配信システム300の回線帯域との差から、利用可能帯域を算出する。
仮に、クライアント端末200と接続する配信システム300が、図5の帯域割当情報及び図6の配信システム情報における配信システムID:SV-1のサーバ(SV-1と呼ぶ)であるとする。このとき、図5の帯域割当情報におけるSV-1についての割当帯域の合計がS204で算出する割当帯域の合計になる。また、このときの回線帯域は、図6に示すSV-1の回線帯域である。
仮に、配信システム300で映像配信されている全セッションの割当帯域の合計が9Gbpsであるとすると、SV-1の回線帯域は10Gbpsであるから、この場合の全セッションの割当帯域と回線帯域との差は1Gbpsになり、1Gbpsが利用可能帯域である。なお、差をそのまま利用可能帯域としてもよいし、ある程度の余裕を見て、差よりも小さい値を利用可能帯域としてもよい。
S206において、制御部120は、当該コンテンツIDについて、いずれかのビットレートで、Bufferingフェーズ用の帯域を割り当て可能かどうかを判断する。
すなわち、例えば、視聴要求のコンテンツIDが1であるとすると、制御部120は、図4に示した配信情報から図7に示した情報を得て、当該情報に示される4つのビットレートのうちのいずれかのビットレートで、Bufferingフェーズ用の帯域を割り当て可能かどうかを判断する。
ここでBufferingフェーズについて説明する。ABRのアルゴリズムによっては、再生直後に映像データのビットレートと比較して非常に大きい帯域を使用して映像取得を行う場合がある。この場合、クライアント端末200と配信システム300との間において配信開始直後は大きい帯域を割り当てないと、想定したビットレートをクライアント端末200が選択しない可能性がある。
そのため、映像データの配信の初めに大きめの帯域を割り当てる。この配信の初めのフェーズをBufferingフェーズと呼ぶ。そして安定再生に移行したら、映像ビットレートに近い帯域を割り当てる。このフェーズをStableフェーズ(安定フェーズ)と呼ぶ。
Bufferingフェーズ用の帯域については、例えば、ビットレート毎に予め決めておいてもよいし、予め定めた計算式(例えばビットレート×2)でビットレートから計算してもよいし、これら以外の方法で決めてもよい。
S206において、図7に示した例の場合、制御部120は、10、5、3、0.5のビットレートのいずれかでBufferingフェーズ用の帯域を割り当て可能かどうかを判断する。例えば、利用可能帯域が15で、ビットレートが10、5、3、0.5の映像データのBufferingフェーズ用の帯域がそれぞれ、20、10、6、1であるとすると、ビットレートが10の映像データのBufferingフェーズ用の帯域は割り当て不可であるが、ビットレートが5、3、0.5の映像データのBufferingフェーズ用の帯域は割り当て可能であると判断する。
S206がYesであればS207に進み、S207において、制御部120は、当該コンテンツIDに対応する1以上のビットレートの中で、Bufferingフェーズ用の帯域が利用可能帯域に収まる最大のビットレート、及びそれより低いビットレートを通知情報に含め、当該通知情報をクライアント端末200に通知する。上記の例では、5、3、0.5が通知情報に含められる。この場合、クライアント端末200は、5、3、0.5のうちのいずれかのビットレートの映像データを要求できると判断する。この場合の例は図8に示した例に相当する。なお、図8におけるセッションIDは、制御部120が付与してもよいし、配信システム300で付与されたものであってもよい。
ただし、これは例であり、例えば、Bufferingフェーズ用の帯域が利用可能帯域に収まる最大のビットレートのみを通知情報に含めてもよい。この場合、クライアント端末200において、当該最大のビットレートよりも大きなビットレートの映像データを要求しないと判断する。
このような制御によって、クライアント端末200に対し、視聴開始時に、利用可能帯域と比べて過大なビットレートの映像データを要求させないことができ、結果として、配信システム300の配信レートを安定化し、クライアント端末200における視聴品質を向上できる。
また、S207において、制御部120は、帯域割当情報に新たにエントリを追記する。エントリの内容は、例えば、コンテンツID、セッションID、クライアント端末200に通知する最大のビットレートに対応するBufferingフェーズ用の帯域、配信開始時刻である。ここでの配信開始時刻は現在時刻であってもよいし、クライアント端末200への配信が開始されると推定される時刻であってもよいし、配信システム300から通知される配信開始時刻であってもよい。
このようなエントリの追加により、図5に示す帯域割当情報が生成される。なお、後述するように帯域割当情報は随時更新される。また、帯域割当情報における割当帯域は、本制御のための推定帯域である。ネットワーク500に対する実際の帯域割り当ての制御は、制御装置100が行ってもよいし、制御装置100以外の装置が行ってもよい。
S206においていずれのビットレートでも割り当て不可である場合、S208において、制御部120は割り当て不可と判断し、別途処理を実施する。別途処理は特定の処理に限定されないが、例えば、別の配信システムに対して帯域を割り当てるとともに、クライアント端末200に対して、配信システムの変更を指示する処理を行う。また、帯域を割り当てず、レート制限を行わない処理を行ってもよい。
(実施例3)
次に、実施例3を説明する。実施例3では、制御装置100がDB130内の割当帯域を最新化する定期処理について、図13のフローチャートを参照して説明する。
S301において、制御部120は、変数iを1に初期化する。S302において、制御部120は、帯域割当情報(例:図5)から、i番目のエントリのデータの配信開始時刻を抽出する。
S303において、制御部120は、現在時刻から配信開始時刻を引いた値が、n秒からn+t秒の範囲内にあるか否かを判断する。ここで、nは、例えば、Bufferingフェーズの長さであり、tは、Bufferingフェーズの終わりからStableフェーズに移行するのにかかる時間である。n、tの具体的な値については、予め規定した値であってもよいし、ネットワークの状態やクライアント端末200のABRアルゴリズムの特性等に応じて決まる値であってもよい。
S303の判断がNoであればS305に進んで特に処理を行わない。これは、そのエントリのデータが、Bufferingフェーズ又はStableフェーズにあることを示している。
S303の判断がYesであれば、S304に進んで、制御部120は、該当エントリにおける割当帯域を、現状のx%の値として設定し、DB120を上書きする。これは、Bufferingフェーズ用帯域にStableフェーズ用帯域を上書きすることに相当する。xは例えば100より小さい値であるが、xの具体的な値については、予め規定した値であってもよいし、ネットワークの状態やクライアント端末200のABRアルゴリズムの特性等に応じて決まる値であってもよい。
上記の処理が全てのエントリのデータについて実行される(S306、S307)。図13に示す処理は、予め定めた時間間隔で実行される。
上記の処理により、帯域割当情報における割当帯域が、実際の帯域の値に近い値になるので、実施例2で説明したレート制御において、利用可能帯域をより正確に判断することができる。
(実施例4)
制御装置100は、直接クライアント端末200を制御せず、別システムを介してクライアント端末200を制御してもよい。実施例4では、別システムとしてマニフェスト制御システムを利用する。
図14に実施例4におけるシステム構成を示す。図14に示すとおり、実施例1~3のシステムに対してマニフェスト制御システム600が追加されている。マニフェスト制御システム600が追加されたこと以外は、実施例1~3のシステムと同じである。
マニフェスト制御システム600は、例えば、マニフェストサーバ等の既存サーバから取得したマニフェストファイルをメモリ等の記憶装置に保持している。マニフェスト制御システム600は、制御装置100から受信した通知情報に基づいてマニフェストファイルを書き換え、書き換え後のマニフェストファイルをクライアント端末200に送信する。
なお、マニフェストファイルは、例えば、HLSのプレイリスト、MPEG-DASHのMPD等であるが、これらに限定されない。マニフェストファイルには、例えば、映像データがどのような画質(ビットレート)でどのようにセグメントファイルとして分割され、どこへセグメントファイルを要求すべきか、等が記載されている。
図15は、実施例4における処理のフローチャートを示す。S401~S406、及びS408での処理内容は、実施例2におけるS201~S206、S208での処理内容と同じである。ただし、S408における別途処理においては、マニフェスト制御システムに配信システムの変更を指示する。
S407において、制御部120は、実施例2のS207での通知情報作成と同様にして通知情報を作成する。実施例4では、制御部120は通知情報をマニフェスト制御システム600に送信する。
例えば、図8に示した通知情報がマニフェスト制御システム600に送信されたとする。この場合、例えば、マニフェスト制御システム600が保持する該当映像データの書き換え前のマニフェストファイルには図9に示す解像度及びビットレートのリストが記載されている。マニフェスト制御システム600は、図9に示す解像度及びビットレートのリストを、図8に示す解像度及びビットレートのリストに書き換え、書き換えた後のマニフェストファイルをクライアント端末200に送信する。
クライアント端末200は、書き換えた後のマニフェストファイルに基づいて、選択可能なビットレートを把握するので、この例では、ビットレートが10の映像データを要求することがなくなる。
また、制御装置100が、視聴要求とともに、クライアント端末200における視聴者属性を識別する識別情報(例:所在地、性別等)を受信し、更に、ネットワーク500から、配信システムの正常性、スループットや遅延等のネットワーク状態(配信システムの正常性、ネットワーク状態を総称して「システム状態」と呼ぶ)を受信してもよい。
この場合、制御装置100は、S407において、通知情報とともに、識別情報又はシステム状態(あるいは、識別情報とシステム状態の両方)をマニフェスト制御システム600に送信する。なお、識別情報、システム状態については、マニフェスト制御システム600がクライアント端末200、ネットワーク500から取得してもよい。
マニフェスト制御システム600は、識別情報、現在時刻の時間帯、及びシステム状態のうちの少なくとも1つと、通知情報とに基づいて、マニフェストファイルを書き換えて、書き換え後のマニフェストファイルをクライアント端末200に送信する。
例えば、マニフェスト制御システム600は、識別情報、時間帯、及びシステム状態のうちの少なくとも1つと、映像データの取得先の配信システムとを対応付けたテーブルを保持しており、当該テーブルに従って映像データの取得先の配信システムを選択し、選択した配信システムのURL等を映像データの取得先としてマニフェストファイルに、前述した通知情報とともに記載する。
例えば、システム状態と、映像データの取得先の配信システムとを対応付けたテーブルを用いることで、正常な配信システムを記載したマニフェストファイルを生成できるので、異常が生じている配信システムへ映像データを要求することを回避できる。
(実施の形態の効果)
以上説明したように、本実施の形態によれば、視聴要求の情報と、配信情報をもとに、クライアント端末が選択可能な最大のビットレートを算出し、それをクライアント端末に通知することで、配信システムの配信レートを安定化し、クライアント端末における視聴品質を向上できる。
(実施の形態のまとめ)
本実施の形態において、少なくとも、下記の制御装置、制御方法、及びプログラムが提供される。
(第1項)
映像データの配信を行う映像配信ネットワークにおいて、クライアント端末により選択可能なビットレートを制御する制御装置であって、
配信システムにおける映像データの情報を有する配信情報と、前記配信システムにより映像配信が行われているセッション毎の割当帯域を有する帯域割当情報と、前記配信システムの回線帯域を有する配信システム情報とを格納するデータベースと、
前記クライアント端末から視聴要求を受信し、前記データベースを参照することにより、前記配信システムにおける利用可能帯域を算出し、当該利用可能帯域と、前記視聴要求に対応する映像データの1以上のビットレートとに基づいて、前記クライアント端末が選択可能な最大のビットレートを決定する制御部と
を備える制御装置。
(第2項)
前記制御部は、前記配信システムにより映像配信が行われている全セッションの割当帯域の合計を算出し、前記配信システムの回線帯域から当該割当帯域の合計を引いた差に基づいて前記利用可能帯域を算出する
第1項に記載の制御装置。
(第3項)
前記制御部は、前記1以上のビットレートのうち、バッファリング用の帯域が前記利用可能帯域未満となる最大のビットレートを、前記最大のビットレートとして決定する
第1項又は第2項に記載の制御装置。
(第4項)
前記制御部は、定期的に、前記帯域割当情報における各エントリに対し、配信開始時刻と現在時刻との差分が所定の範囲にある場合に、割当帯域を安定フェーズ用の帯域で上書きする処理を実行する
第1項ないし第3項のうちいずれか1項に記載の制御装置。
(第5項)
前記制御部は、前記最大のビットレートを含む通知情報を、前記クライアント端末又はマニフェスト制御システムに送信する
第1項ないし第4項のうちいずれか1項に記載の制御装置。
(第6項)
前記制御部が、前記最大のビットレートを含む通知情報を、前記マニフェスト制御システムに送信する場合において、
前記マニフェスト制御システムは、前記通知情報に基づいてマニフェストファイルを書き換え、書き換えたマニフェストファイルを前記クライアント端末に送信する
第5項に記載の制御装置。
(第7項)
映像データの配信を行う映像配信ネットワークにおいて、クライアント端末により選択可能なビットレートを制御する制御装置が実行する制御方法であって、
前記制御装置は、配信システムにおける映像データの情報を有する配信情報と、前記配信システムにより映像配信が行われているセッション毎の割当帯域を有する帯域割当情報と、前記配信システムの回線帯域を有する配信システム情報とを格納するデータベースを備えており、
前記クライアント端末から視聴要求を受信し、前記データベースを参照することにより、前記配信システムにおける利用可能帯域を算出し、当該利用可能帯域と、前記視聴要求に対応する映像データの1以上のビットレートとに基づいて、前記クライアント端末が選択可能な最大のビットレートを決定する
制御方法。
(第8項)
コンピュータを、第1項ないし第6項のうちいずれか1項に記載の制御装置における制御部として機能させるためのプログラム。
以上、本実施の形態について説明したが、本発明はかかる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
100 制御装置
110 配信情報登録部
120 制御部
130 DB
200 クライアント端末
300 配信システム
400 コンテンツプロバイダ
500 ネットワーク
1000 ドライブ装置
1002 補助記憶装置
1003 メモリ装置
1004 CPU
1005 インタフェース装置
1006 表示装置
1007 入力装置

Claims (7)

  1. 映像データの配信を行う映像配信ネットワークにおいて、クライアント端末により選択可能なビットレートを制御する制御装置であって、
    配信システムにおける映像データの情報を有する配信情報と、前記配信システムにより映像配信が行われているセッション毎の割当帯域を有する帯域割当情報と、前記配信システムの回線帯域を有する配信システム情報とを格納するデータベースと、
    前記クライアント端末から視聴要求を受信し、前記データベースを参照することにより、前記配信システムにおける利用可能帯域を算出し、当該利用可能帯域と、前記視聴要求に対応する映像データの1以上のビットレートとに基づいて、前記クライアント端末が選択可能な最大のビットレートを決定する制御部とを備え、
    前記制御部は、前記1以上のビットレートのうち、バッファリング用の帯域が前記利用可能帯域未満となる最大のビットレートを、前記最大のビットレートとして決定する
    制御装置。
  2. 前記制御部は、前記配信システムにより映像配信が行われている全セッションの割当帯域の合計を算出し、前記配信システムの回線帯域から当該割当帯域の合計を引いた差に基づいて前記利用可能帯域を算出する
    請求項1に記載の制御装置。
  3. 前記制御部は、定期的に、前記帯域割当情報における各エントリに対し、配信開始時刻と現在時刻との差分が所定の範囲にある場合に、割当帯域を安定フェーズ用の帯域で上書きする処理を実行する
    請求項1又は2に記載の制御装置。
  4. 前記制御部は、前記最大のビットレートを含む通知情報を、前記クライアント端末又はマニフェスト制御システムに送信する
    請求項1ないしのうちいずれか1項に記載の制御装置。
  5. 前記制御部が、前記最大のビットレートを含む通知情報を、前記マニフェスト制御システムに送信する場合において、
    前記マニフェスト制御システムは、前記通知情報に基づいてマニフェストファイルを書き換え、書き換えたマニフェストファイルを前記クライアント端末に送信する
    請求項に記載の制御装置。
  6. 映像データの配信を行う映像配信ネットワークにおいて、クライアント端末により選択可能なビットレートを制御する制御装置が実行する制御方法であって、
    前記制御装置は、配信システムにおける映像データの情報を有する配信情報と、前記配信システムにより映像配信が行われているセッション毎の割当帯域を有する帯域割当情報と、前記配信システムの回線帯域を有する配信システム情報とを格納するデータベースを備えており、
    前記クライアント端末から視聴要求を受信し、前記データベースを参照することにより、前記配信システムにおける利用可能帯域を算出し、当該利用可能帯域と、前記視聴要求に対応する映像データの1以上のビットレートとに基づいて、前記クライアント端末が選択可能な最大のビットレートを決定する制御方法であり、
    前記制御装置は、前記1以上のビットレートのうち、バッファリング用の帯域が前記利用可能帯域未満となる最大のビットレートを、前記最大のビットレートとして決定する
    制御方法。
  7. コンピュータを、請求項1ないしのうちいずれか1項に記載の制御装置における制御部として機能させるためのプログラム。
JP2021541356A 2019-08-19 2019-08-19 制御装置、制御方法、及びプログラム Active JP7351340B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/032279 WO2021033234A1 (ja) 2019-08-19 2019-08-19 制御装置、制御方法、及びプログラム

Publications (2)

Publication Number Publication Date
JPWO2021033234A1 JPWO2021033234A1 (ja) 2021-02-25
JP7351340B2 true JP7351340B2 (ja) 2023-09-27

Family

ID=74659858

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021541356A Active JP7351340B2 (ja) 2019-08-19 2019-08-19 制御装置、制御方法、及びプログラム

Country Status (3)

Country Link
US (1) US11838452B2 (ja)
JP (1) JP7351340B2 (ja)
WO (1) WO2021033234A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6748323B1 (ja) * 2020-03-30 2020-08-26 株式会社ドワンゴ 動画配信装置、動画配信方法、および、動画配信プログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009246904A (ja) 2008-03-31 2009-10-22 Casio Hitachi Mobile Communications Co Ltd 通信装置、通信方法、プログラム
JP2012004969A (ja) 2010-06-18 2012-01-05 Nippon Hoso Kyokai <Nhk> コンテンツ配信装置及びプログラム
JP2014534684A (ja) 2011-10-05 2014-12-18 クゥアルコム・インコーポレイテッドQualcomm Incorporated コーディングされたマルチメディアデータのネットワークストリーミング中の表現の切り替え
JP2016007015A (ja) 2011-01-07 2016-01-14 シャープ株式会社 再生装置、再生装置の制御方法、生成装置、生成装置の制御方法、制御プログラム、及び該プログラムを記録した記録媒体

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101432981A (zh) * 2004-10-27 2009-05-13 Eg技术有限公司 用于信道组的最优速率分配
US9049073B2 (en) * 2011-06-28 2015-06-02 Rovi Guides, Inc. Systems and methods for initializing allocations of transport streams based on historical data
US9516085B2 (en) * 2011-09-20 2016-12-06 Google Technology Holdings LLC Constrained fidelity Adaptive Bit Rate encoding systems and methods
US20170055007A1 (en) * 2015-08-19 2017-02-23 Ericsson Ab System and method for managing segment delivery and bandwidth responsive to encoding complexity metrics

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009246904A (ja) 2008-03-31 2009-10-22 Casio Hitachi Mobile Communications Co Ltd 通信装置、通信方法、プログラム
JP2012004969A (ja) 2010-06-18 2012-01-05 Nippon Hoso Kyokai <Nhk> コンテンツ配信装置及びプログラム
JP2016007015A (ja) 2011-01-07 2016-01-14 シャープ株式会社 再生装置、再生装置の制御方法、生成装置、生成装置の制御方法、制御プログラム、及び該プログラムを記録した記録媒体
JP2014534684A (ja) 2011-10-05 2014-12-18 クゥアルコム・インコーポレイテッドQualcomm Incorporated コーディングされたマルチメディアデータのネットワークストリーミング中の表現の切り替え

Also Published As

Publication number Publication date
WO2021033234A1 (ja) 2021-02-25
JPWO2021033234A1 (ja) 2021-02-25
US20220279249A1 (en) 2022-09-01
US11838452B2 (en) 2023-12-05

Similar Documents

Publication Publication Date Title
US20190182340A1 (en) Selecting a content providing server in a content delivery network
US10116737B2 (en) Optimized consistent request distribution for balanced load distribution in a content delivery network
US9660922B2 (en) Network assisted rate shifting for adaptive bit rate streaming
US8166154B2 (en) Method for streaming multimedia content
US8819303B2 (en) Deferred transfer of content to optimize bandwidth usage
WO2009113371A1 (ja) コンテンツ情報提示装置、コンテンツ情報提示システム及びそれに用いるコンテンツ情報提示方法
US11595311B2 (en) Systems and methods for adjusting a congestion window value of a content delivery network
US9992281B2 (en) Accountable content stores for information centric networks
US11582146B2 (en) High-quality adaptive bitrate video through multiple links
JP2014506349A (ja) ビデオサービスの分散認証のためのシステム及び方法
US11463505B2 (en) Server-side prediction of media client steady state
JP7351340B2 (ja) 制御装置、制御方法、及びプログラム
KR101613513B1 (ko) 네트워크 대역폭 및 cpu 이용률을 고려한 가상머신 배치 방법 및 시스템
US10609111B2 (en) Client-driven, ABR flow rate shaping
JP5088291B2 (ja) 帯域制御装置及び帯域制御方法ならびにそのプログラム、帯域制御システム
JP2016036103A (ja) 映像配信サーバ及び映像配信方法
JP2014157459A (ja) キャッシュ装置、コンテンツ配信システム、および、コンテンツ配信方法
JP3672483B2 (ja) コンテンツ配信装置、コンテンツ配信方法、コンテンツ配信プログラムを記録した記録媒体
EP2624520B1 (en) Method, control device and delivery infrastructure for improving efficiency in adaptive streaming
JP7363920B2 (ja) システム制御装置、及び原型マニフェストファイル取得方法
KR101970894B1 (ko) 저전력 스트리밍을 위한 방법 및 시스템
JP2005086323A (ja) 帯域管理装置
WO2020204801A1 (en) Method and server for controlling a streaming session of a media asset

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230228

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230501

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230828

R150 Certificate of patent or registration of utility model

Ref document number: 7351340

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150