JP6472478B2 - 映像配信装置、映像配信方法及びプログラム - Google Patents
映像配信装置、映像配信方法及びプログラム Download PDFInfo
- Publication number
- JP6472478B2 JP6472478B2 JP2017076652A JP2017076652A JP6472478B2 JP 6472478 B2 JP6472478 B2 JP 6472478B2 JP 2017076652 A JP2017076652 A JP 2017076652A JP 2017076652 A JP2017076652 A JP 2017076652A JP 6472478 B2 JP6472478 B2 JP 6472478B2
- Authority
- JP
- Japan
- Prior art keywords
- segment
- video
- unit
- management unit
- client
- 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
Links
- 238000000034 method Methods 0.000 title description 17
- 238000003384 imaging method Methods 0.000 claims description 29
- 238000007726 management method Methods 0.000 description 142
- 238000012545 processing Methods 0.000 description 54
- 230000005540 biological transmission Effects 0.000 description 33
- 238000010586 diagram Methods 0.000 description 17
- 238000004891 communication Methods 0.000 description 12
- 230000004044 response Effects 0.000 description 9
- 230000003044 adaptive effect Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing 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/234345—Processing 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 the reformatting operation being performed only on part of the stream, e.g. a region of the image or a time segment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing 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/23439—Processing 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management 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/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26258—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/422—Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
- H04N21/4223—Cameras
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/438—Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
- H04N21/4381—Recovering the multiplex stream from a specific network, e.g. recovering MPEG packets from ATM cells
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/44004—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440218—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/637—Control signals issued by the client directed to the server or network components
- H04N21/6377—Control signals issued by the client directed to the server or network components directed to server
- H04N21/6379—Control signals issued by the client directed to the server or network components directed to server directed to encoder, e.g. for requesting a lower encoding rate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/66—Remote control of cameras or camera parts, e.g. by remote control devices
- H04N23/661—Transmitting camera control signals through networks, e.g. control via the Internet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
- H04N21/2353—Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/437—Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/643—Communication protocols
- H04N21/64322—IP
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)
- Small-Scale Networks (AREA)
- Library & Information Science (AREA)
Description
ネットワークカメラにおいて映像配信に利用されるプロトコルには、RTP(Real-time Transport Protocol)などのプロトコルがある。しかしながら、RTPは、ネットワーク環境によっては相手側受信装置までデータが届かない、受信装置側のRTP対応アプリケーションが必要など、普及を妨げる課題があった。
一方、映像配信の規格には、MPEG(Moving Picture Experts Group)によって規格化されたDASH(Dynamic Adaptive Streaming over HTTP)や、HLS(HTTP Live Streaming)などがある。これらは、HTTP(Hyper Text Transfer Protocol)を用いたAdaptive Bitrate Streaming技術であり、こうした映像配信技術が普及しつつある。
また一方で、例えばカメラ制御を行う等のリアルタイム性を重視するクライアントでは、ダウンロード回数が多少多くても配信遅延を少なくしたいという要求がある。この場合、このクライアントへは短いセグメントで配信されることが好ましい。
しかしながら、例えば、ネットワークカメラのような組込み機器は、CPU性能が低くメモリー容量も限られていることが多い。このため、このような組込み機器において、複数のクライアントの異なる複数の要求に応じて、セグメント時間が異なる複数種類の映像ファイルを準備することは困難であった。
図1は、本開示の映像配信システム100の構成の一例を概略的に示す図である。この図に示すように、映像配信システム100は、映像配信装置であるカメラサーバ200及び受信装置であるクライアント120を備える。カメラサーバ200及びクライアント120は、互いにネットワーク110で接続される。カメラサーバ200は、カメラ(撮像装置)を備え、撮像映像を、ネットワーク110を介してクライアント120に配信する。なお、映像配信システム100は、例えば、MPEGによって規格化されたDASHや、HLSなどに準拠した映像配信を行うことができる。つまり、映像配信システム100は、HTTPを用いたAdaptive Bitrate Streaming技術を用いた映像配信を行うことができる。
ここで、ネットワーク110は、通信ネットワークであり、Ethernet(登録商標)等の通信規格に準拠する複数のルータ、スイッチ、ケーブル等から構成される。これに替えて、ネットワーク110は、インターネット、LAN(Local Area Network)や公衆無線ネットワークその他の通信ネットワークにより構成されてもよい。図1では、説明を分かりやすくするために、カメラサーバ200及びクライアント120は、それぞれ1つずつとしているが、カメラサーバ200及びクライアント120のいずれか又は両方とも複数とすることができる。また、本実施形態において、カメラサーバ200及びクライアント120の間の通信ネットワークの通信規格、規模及び構成は、それぞれ自由に選択することができる。
CPU201は、カメラサーバ200内の各部の動作を総括的に制御する。一次記憶装置202は、RAM(Random Access Memory)に代表される書き込み可能な高速の記憶装置であり、揮発性記憶装置で構成されてよい。この一次記憶装置202は、OS(Operating System)や各種プログラム及び各種データがロードされる記憶装置であり、OSや各種プログラムの作業領域としても使用されてもよい。
センサ207は、いわゆるカメラ等の光学センサとすることができ、例えばCCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)等の光を検知する素子を用いて映像を撮像するものであってもよい。
図3は、図2のハードウェア構成で実現されるカメラサーバ200の機能構成の一例を示す機能ブロック図である。図2に示されるように、カメラサーバ200は、撮像手段である撮像処理部210と、保持手段である一時記憶部214と、生成手段であるセグメント管理部211とを有している。また、カメラサーバ200は、配信手段及び受信手段の一部の機能を有する配信管理部212と、受信手段及び配信手段のその他の機能を有するネットワーク処理部213とを有している。ここでカメラサーバ200は、撮像処理部210を有さず、撮像手段がカメラサーバ200とは別装置として構成されてもよい。
撮像処理部210は映像を撮像する。一時記憶部214は撮像された映像を単位映像毎に記憶する。配信管理部212は、クライアント120から送信されるセグメント長に関する要求を受信し、その要求に基づいて生成されたセグメントの送信の指示を行う。セグメント管理部211は、記憶された単位映像から、受信した要求に対応するセグメント長のセグメントを生成する。ネットワーク処理部213は、配信管理部212の指示に基づいてセグメントの配信を行う。
ここでは、セグメントを構成する単位映像を1映像フレームとするが、単位映像は1映像フレームでなくてもよく、例えば複数の映像フレームにより構成されていてもよい。以下では、単位映像が1映像フレームである場合を例として説明する。
一時記憶部214は、生成された動画メタ情報及び映像フレームを一時的に記憶する。セグメント管理部211は、撮像処理部210が一時記憶部214に保存した動画メタ情報と映像フレームとから、初期化セグメントとセグメント(セグメント情報)とをそれぞれ生成して、配信管理部212に通知する。初期化セグメントは、映像再生に必要な情報を含むセグメントであり、例えば上記SPSやPPSを含む動画メタ情報から生成される。
なお、配信管理部212は、クライアント120から、映像データが含まれるセグメントファイルの要求を受信した後に、セグメントファイルを送信してもよい。また、配信管理部212は、例えばHTTP/2やWebsocketなどのプロトコルによっては、要求を受信しなくても映像フレームを生成してセグメントファイルが完成した時点で順次送信することとしてもよい。
クライアント120のハードウェア構成は、例えば、主に半導体装置とそれらを接続する配線とから構成され、図2のカメラサーバ200のハードウェア構成において、センサ207や画像キャプチャI/F205が備えられなくてよい。また、クライアント120のハードウェア構成は、例えば、マウスやキーボード等の信号を入力する入力部、入力内容や入力された指示の結果の画像を表示させる表示部を有していてもよい。
図4は、クライアント120の機能構成の例を示す機能ブロック図である。ここで、図4の機能構成は、ハードウェアと、そのハードウェア構成を利用して動作するソフトウェアとの組合せにより実現されるものとすることができる。図4に示すように、クライアント120は、配信される映像のセグメント長に関する要求を送信する送信部121、要求に基づくセグメント長のセグメントを受信する受信部122、及び受信したセグメントを順に再生する再生部123を備える。また、クライアント120は、受信した各セグメントを記憶する記憶部124を備えてよい。
図5は、本実施形態の送信態様の一例であるDASH配信の送信データについて説明する図である。図5に示されるように、送信データは、映像ストリーム情報が保存されたMPDファイル400を有する。ここでMPDファイル400には、単数または複数の映像ストリーム情報として、それぞれの解像度や符号化情報、及び単位時間で区切られた映像ファイルであるセグメントの情報等が、定義される。
図5は、MPDファイル400の中で2本の映像ストリームを定義する例を示す。第1の映像ストリーム401は、例えば1セグメント1秒の映像ファイルであり、クライアント120がダウンロードするファイル数は多くなるが低遅延でリアルタイム性が高い再生が可能である。一方、第2の映像ストリーム402は、例えば1セグメント3秒の映像ファイルであり、クライアント120で再生時の遅延は発生するがダウンロードするファイル数を減らすことができる。
図6は、単位映像を1映像フレームとした場合の、第1の映像ストリーム401及び第2の映像ストリーム402の構成を説明する図である。この例においては説明を分かりやすくするため、1秒当たりに生成される映像フレームは、3映像フレームとしている。しかしながら、1秒当たりに生成される映像フレームは、いくつでもよく、例えば60又はそれ以上とすることができる。この図の映像フレーム500〜511は、撮像処理部210により順に生成され、一時記憶部214に保存される。
第1の映像ストリーム401において、第1セグメント520は、映像フレーム500、501及び502を含み、第2セグメント521は、映像フレーム503、504及び505を含む。また第3セグメント522は、映像フレーム506、507及び508を含み、第4セグメント523は、映像フレーム509,510,511を含む。一方、第2の映像ストリーム402の第1セグメント530は、映像フレーム500〜508を含み、第2セグメント531は、少なくとも映像フレーム509,510及び511を含む。
また、第2セグメント531は、更にこの後、撮像処理部210により生成されて一時記憶部214に保存される映像フレーム(不図示)を含む。なお、図6の例においては、差分の映像情報をPフレームとしたが、差分の映像情報は、Bフレームであってもよい。
図7は、クライアント120に、映像を第1の映像ストリーム401により配信する際の処理の例を示すシーケンス図である。このシーケンス図では、図が煩雑になるのを避けるため、セグメント管理部211、ネットワーク処理部213及び一時記憶部214の記載を省略している。以下では、これらの構成の説明は配信管理部212の処理に含めて説明する。なお、撮像処理部210から配信管理部212への矢印は、一時記憶部214を介する映像フレーム等の書き込み及び/又は映像フレームが書き込まれたことによる通知を含む。また、セグメントの生成は、セグメント管理部211が一時記憶部214から映像フレームを読み出してセグメントを生成する処理を含む。
クライアント120は、自端末のCPU能力や表示解像度などに基づいて、受信したMPDファイル400から、受信する映像ストリームを選択し、再生に必要な情報が含まれる初期化セグメントの取得要求をカメラサーバ200に送信する(S603)。この初期化セグメントの取得要求は、クライアント120に配信されるべき映像データのセグメント長を含むことができる。以下では、クライアント120が、3つの映像フレームを1つのセグメントとする第1の映像ストリーム401を選択したものとする。
要求を受信した配信管理部212は、撮像処理部210により第6映像フレームデータが一時記憶部214に保存されると(S616)、第4〜第6映像フレームデータを読み出す(S628)。そして、配信管理部212は、第4〜第6映像フレームデータを結合して第2セグメントとしてクライアント120に送信する(S608)。
なお、図7に示す遅延時間は、第1映像フレームが保存されるステップS611のタイミングと第1セグメントが送信されるステップS606のタイミングとの間の経過時間である。遅延時間は、映像の送信中において常に発生しており、遅延時間が短ければリアルタイム性が高く、逆に遅延時間が長ければリアルタイム性が低くなる。例えば、6つの映像フレームを1つのセグメントとする映像ストリームを送信する際は、第1セグメントは第6映像フレームが生成された後に送信されるので、遅延時間はステップS611のタイミングとステップS608のタイミングとの差分時間となる。
このようにカメラサーバ200は、単位映像としての映像フレーム毎に映像を保存し、送信時に、要求に応じたセグメント長のセグメントを生成して送信することができる。これにより、カメラサーバ200のCPUの処理の負担及び/又は記憶容量を抑えつつ、第1のクライアント131及び第2のクライアント132の双方からの異なる要求に応じた、異なるセグメント長の映像を並列して送信することができる。またカメラサーバ200は、要求に応じて、遅延時間のより少ないリアルタイム映像を送信することができる。またカメラサーバ200は、要求に応じて、ダウンロード回数の少ないことにより、より送信効率及び再生品質の高いリアルタイム映像を送信することができる。
図9は、セグメント管理部211の処理の一例について示すフローチャートである。この例において、セグメント管理部211が実行するセグメント管理プログラムは、クライアント120の初期化セグメントの要求に基づいて、配信管理部212が実行する配信管理プログラムの指示により起動することとしてもよい。まず、セグメント管理部211は、撮像処理部210に対し、要求された映像ストリームの生成開始を指示し(S701)、SPS/PPSを含む動画メタ情報が作成されるのを待つ(S702)。
動画メタ情報が作成されると、セグメント管理部211は、動画メタ情報を一時記憶部214から読み出し、読み出した動画メタ情報を含む初期化セグメントを生成する(S703)。セグメント管理部211は、配信管理部212に初期化セグメントが生成されたとことを通知する(S704)。
イベントが発生すると、セグメント管理部211は、いずれのイベントが発生したかを判定し(S708)、発生イベントが撮像処理部210からの映像フレーム生成イベントの場合には、プログラム状態を判定する(S709)。ここで、セグメント管理部211は、プログラムの状態がIフレーム待ちの場合には、生成された映像フレームがIフレームかどうかを判定し(S710)、Iフレームでない場合には、ステップS708に戻り処理を繰り返す。Iフレームである場合には、セグメント管理部211は、SPS/PPS及び映像フレーム情報を一時記憶部214に保存する(S711)。
ここで映像フレーム情報は、映像データそのものではなく、例えば映像フレームの映像データが保存された一時記憶部214のアドレスとすることができる。これにより、セグメント管理部211は、映像フレームの映像データをコピーすることなく、映像データを読み出すことができる。
なお、ここで保存される映像フレーム情報は、映像データそのものではなく、例えばセグメントに含まれる映像フレームの映像データが保存された一時記憶部214のアドレスとすることができる。これにより、セグメント管理部211は、映像データを含むセグメントファイルを作成して保存することなく、セグメントを送信する際に、アドレスに指定された一時記憶部214の映像データを読み出すことによりセグメントを生成することができる。
ステップS715及びステップS716の処理では、セグメント管理部211は、セグメント情報と映像フレーム情報のみを保存及び通知する。これは、もしセグメント管理部211が、映像フレーム中の映像データ部分からセグメントを作成した場合には、セグメント管理部211が映像データの複製処理を実行する必要があるためである。また、この場合には、セグメント管理部211がクライアント120毎にセグメントを保存する必要が生じ、一時記憶部214をより多く使用してしまう恐れがあるからである。
ステップS708において、発生イベントが配信管理部211からのセグメント解放指示イベントと判定された場合には、セグメント管理部211は、保存されているセグメント情報を削除する(S717)。また、ステップS717において、セグメント管理部211は、該当セグメントに含まれている映像フレームデータを削除する。この後、セグメント管理部211は、再度イベント待ちに戻る(S707)。
本フローチャートでは、セグメント管理部211が実行するセグメント管理プログラムは、クライアント120から初期化セグメントの要求を受信した際に、配信管理部212が実行する配信管理プログラムから起動されてもよいこととした。しかしながら、セグメント管理プログラムは、常時起動されており、複数のクライアント120のセグメント情報を1つのセグメント管理プログラムが管理することとしてもよい。
図10は、配信管理部212の処理の一例について示すフローチャートである。配信管理部212が実行する配信管理プログラムは、例えば、クライアント120が初期化セグメントを要求した際に起動されるプログラムとすることができる。このフローチャートに示されるように、配信管理部212は、送信可能な単数または複数の映像ストリームの情報をまとめたMPDファイル400を作成し、クライアント120に送付する(S801)。
次に、配信管理部212は、クライアント120の接続タイムアウトを監視するタイマーを開始し(S808)、イベントが発生するのを待つ(S809)。イベントが発生すると、配信管理部212は、いずれのイベントが発生したかを判定する(S810)。発生したイベントがセグメント管理部211からのセグメント生成通知イベントである場合には、配信管理部212は、映像フレーム情報を含むセグメント情報を保存する(S811)。
配信管理部212は、接続タイムアウトを監視しているタイマーをリセットしてタイムアウト時間を延長し(S816)、ステップS809のイベント受信を待つ処理に戻る。ステップS809において発生したイベントが配信終了要求のイベントであった場合には、配信管理部212は、セグメント管理部211にセグメント生成の停止を要求し(S818)、配信管理部212を終了する。
これにより、本実施形態のカメラサーバ200においては、リアルタイム性を重視する場合は映像ファイルを小さく、送信効率を重視する場合は映像ファイルを大きくして、クライアント120毎に適切な遅延時間及びで映像を送信することができる。図11は、配信管理部212の処理の別の例について示すフローチャートである。配信管理プログラムは、図8の場合と同様に、例えば、クライアント120が初期化セグメントを要求した際に起動されるプログラムとすることができる。
配信管理部212は、初期化セグメントの要求を受信すると、要求された映像ストリームの情報を保存し(S904)、セグメント管理部211を起動して映像ストリームの生成開始を要求する(S905)。配信管理部212は、セグメント管理部211において初期化セグメントが生成されるのを待ち(S906)、生成されると初期化セグメントをクライアント120に送信する(S907)。
配信管理部212は、初期化セグメントと同一の通信コネクションを使用して、配信管理部212を送信する。配信管理部212は、送信したセグメントの解放をセグメント管理部211に指示し(S915)、ステップS909のイベント受信を待つ処理に戻る。ステップS909において発生したイベントが配信終了要求のイベントであった場合には、配信管理部212は、セグメント管理部211にセグメント生成の停止を要求し(S918)、配信管理部212を終了する。
そこで本実施形態に係る映像配信装置100は、一時記憶部214が撮像された映像を単位映像毎に保持し、配信管理部212がクライアント120から送信されるセグメント長に関する要求を受信する。セグメント管理部211が、配信管理部212により受信されたセグメント長に関する要求に基づいて、一時記憶部214により保持された単位映像からセグメントを生成する。引き続き配信管理部212が、セグメント管理部211が生成した前記セグメントをクライアント120へ配信する。これにより、クライアント120の用途に応じた適切な映像を配信することができる。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
Claims (9)
- 撮像された映像を単位映像毎に保持する保持手段と、
外部の受信装置から送信されるセグメント長に関する要求を受信する受信手段と、
前記保持手段により保持された前記単位映像から、前記受信手段により受信された前記要求に対応するセグメント長の映像のセグメントを生成する生成手段と、
前記生成手段により生成された前記セグメントを前記受信装置へ配信する配信手段と、
を備えることを特徴とする映像配信装置。 - 前記セグメント長は、1つの前記セグメントに含まれる前記単位映像の数であり、
前記生成手段は、前記単位映像の数の前記単位映像を結合して前記セグメントを生成する、ことを特徴とする請求項1に記載の映像配信装置。 - 前記生成手段は、前記保持手段から前記単位映像を読み出し、前記セグメント長に対応する数の前記単位映像を結合して前記セグメントを生成し、
前記配信手段は、前記生成手段により生成された前記セグメントに、前記セグメントのヘッダ情報を付加して、前記受信装置へ配信する、ことを特徴とする請求項1または2に記載の映像配信装置。 - 前記セグメントは、1GOP(Group of Picture)を1又は複数に分割した単位である、ことを特徴とする請求項1乃至3のいずれか一項に記載の映像配信装置。
- 前記単位映像は、1映像フレームで構成される、ことを特徴とする請求項1乃至4のいずれか一項に記載の映像配信装置。
- 映像を撮像する撮像手段を更に備える、ことを特徴とする請求項1乃至5のいずれか一
に記載の映像配信装置。 - 前記受信手段は、第1の受信装置から送信される第1セグメント長に関する要求、及び第2の受信装置から送信され、前記第1セグメント長とは異なる第2セグメント長に関する要求をそれぞれ受信し、
前記生成手段は、前記第1セグメント長に対応する数の前記単位映像、及び前記第2セグメント長に対応する数の前記単位映像をそれぞれ読み出して、それぞれ前記第1セグメント長の前記セグメント及び前記第2セグメント長の前記セグメントとして生成し、
前記配信手段は、前記第1セグメント長の前記セグメントを前記第1の受信装置に配信し、前記第2セグメント長の前記セグメントを前記第2の受信装置に配信する、ことを特徴とする請求項1乃至6のいずれか一項に記載の映像配信装置。 - 撮像された映像を単位映像毎に保持するステップと、
外部の受信装置から送信されるセグメント長に関する要求を受信するステップと、
前記保持された前記単位映像から、前記受信された前記要求に対応するセグメント長の
映像のセグメントを生成するステップと、
前記生成された前記セグメントを前記受信装置へ配信するステップと、を含む、ことを
特徴とする映像配信方法。 - コンピュータを請求項1から7のいずれか一項に記載の映像配信装置の各手段として機
能させるためのプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017076652A JP6472478B2 (ja) | 2017-04-07 | 2017-04-07 | 映像配信装置、映像配信方法及びプログラム |
US15/938,529 US11102527B2 (en) | 2017-04-07 | 2018-03-28 | Video distribution apparatus, video reception apparatus, video distribution method, and recording medium |
CN201810300567.9A CN108696505B (zh) | 2017-04-07 | 2018-04-04 | 视频分发设备、视频接收设备、视频分发方法和记录介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017076652A JP6472478B2 (ja) | 2017-04-07 | 2017-04-07 | 映像配信装置、映像配信方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018182447A JP2018182447A (ja) | 2018-11-15 |
JP6472478B2 true JP6472478B2 (ja) | 2019-02-20 |
Family
ID=63711911
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017076652A Active JP6472478B2 (ja) | 2017-04-07 | 2017-04-07 | 映像配信装置、映像配信方法及びプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US11102527B2 (ja) |
JP (1) | JP6472478B2 (ja) |
CN (1) | CN108696505B (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7105675B2 (ja) * | 2018-11-02 | 2022-07-25 | 株式会社東芝 | 送信装置、サーバ装置、送信方法およびプログラム |
JP7324012B2 (ja) * | 2019-02-07 | 2023-08-09 | 日本放送協会 | 受信装置、及びプログラム |
JP7292901B2 (ja) * | 2019-02-27 | 2023-06-19 | キヤノン株式会社 | 送信装置、送信方法、及びプログラム |
JP7419151B2 (ja) * | 2020-04-21 | 2024-01-22 | 株式会社東芝 | サーバ装置、情報処理方法およびプログラム |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8909806B2 (en) | 2009-03-16 | 2014-12-09 | Microsoft Corporation | Delivering cacheable streaming media presentations |
CN101534433B (zh) | 2009-04-22 | 2011-06-22 | 北京航空航天大学 | 流媒体加密方法 |
JP2011087103A (ja) | 2009-10-15 | 2011-04-28 | Sony Corp | コンテンツ再生システム、コンテンツ再生装置、プログラム、コンテンツ再生方法、およびコンテンツサーバを提供 |
CN102196008A (zh) | 2010-03-08 | 2011-09-21 | 株式会社日立制作所 | 点对点下载方法、视频设备和内容发送方法 |
WO2012011467A1 (ja) * | 2010-07-20 | 2012-01-26 | シャープ株式会社 | データ配信システム、データ配信方法、配信側データ中継装置、及び受信側データ中継装置 |
CN102789804B (zh) | 2011-05-17 | 2016-03-02 | 华为软件技术有限公司 | 视频播放方法、播放器、监控平台及视频播放系统 |
CN102427507B (zh) | 2011-09-30 | 2014-03-05 | 北京航空航天大学 | 一种基于事件模型的足球视频集锦自动合成方法 |
US9432704B2 (en) * | 2011-11-06 | 2016-08-30 | Akamai Technologies Inc. | Segmented parallel encoding with frame-aware, variable-size chunking |
CN104429087B (zh) | 2012-07-10 | 2018-11-09 | 夏普株式会社 | 再现装置、再现方法、发布装置、发布方法 |
CN103546828B (zh) | 2012-07-16 | 2019-02-22 | 腾讯科技(深圳)有限公司 | 节目预览的生成方法及装置 |
WO2014057131A1 (en) | 2012-10-12 | 2014-04-17 | Canon Kabushiki Kaisha | Method and corresponding device for streaming video data |
CN103905924B (zh) | 2012-12-28 | 2018-06-08 | 联芯科技有限公司 | 终端侧的视频自适应接收方法和装置 |
JP6465541B2 (ja) | 2013-08-06 | 2019-02-06 | キヤノン株式会社 | 通信装置、再生装置、及びその方法、並びにプログラム |
CN103648019A (zh) | 2013-11-29 | 2014-03-19 | 乐视致新电子科技(天津)有限公司 | 一种基于hls协议的视频下载方法及其装置 |
CN103984483A (zh) | 2014-05-29 | 2014-08-13 | 丁明敏 | 一种将视频作为智能终端解锁前的屏保的方法 |
US10063872B2 (en) * | 2015-09-11 | 2018-08-28 | Facebook, Inc. | Segment based encoding of video |
JP2017069636A (ja) * | 2015-09-28 | 2017-04-06 | 株式会社リコー | 情報処理装置、配信方法、及びプログラム |
US11153359B2 (en) * | 2015-09-29 | 2021-10-19 | Sony Group Corporation | User equipment and media streaming network assistance node |
CN105430425B (zh) | 2015-11-18 | 2018-11-16 | 深圳Tcl新技术有限公司 | 单分片视频播放加速方法及装置 |
US10007843B1 (en) * | 2016-06-23 | 2018-06-26 | Amazon Technologies, Inc. | Personalized segmentation of media content |
CN106331788A (zh) | 2016-08-31 | 2017-01-11 | 乐视控股(北京)有限公司 | 一种视频下载方法及装置 |
-
2017
- 2017-04-07 JP JP2017076652A patent/JP6472478B2/ja active Active
-
2018
- 2018-03-28 US US15/938,529 patent/US11102527B2/en active Active
- 2018-04-04 CN CN201810300567.9A patent/CN108696505B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108696505A (zh) | 2018-10-23 |
CN108696505B (zh) | 2021-12-24 |
US11102527B2 (en) | 2021-08-24 |
JP2018182447A (ja) | 2018-11-15 |
US20180295401A1 (en) | 2018-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10284808B2 (en) | System and method for supporting selective backtracking data recording | |
JP6472478B2 (ja) | 映像配信装置、映像配信方法及びプログラム | |
KR102077752B1 (ko) | 모션 비디오의 재생을 위한 방법 및 시스템 | |
JP2005051794A (ja) | ビデオをオン・デマンドでレンダリングするvcrに似た機能 | |
JP6238255B2 (ja) | 監視カメラシステムによる監視方法及び動画分割装置 | |
US9819972B1 (en) | Methods and apparatuses for a distributed live-on-demand (LOD) origin | |
US9942578B1 (en) | Methods and apparatuses for a distributed live-on-demand (LOD) origin | |
JP2020072461A (ja) | 送信装置、サーバ装置、送信方法およびプログラム | |
CN104735410A (zh) | 一种低于4k/s的窄带宽视频传输方法及系统 | |
US11457286B2 (en) | Video distribution apparatus, distribution method, and recording medium | |
JP2020113922A (ja) | 動画配信装置、動画配信方法及びプログラム | |
JP2011248935A (ja) | 監視映像記録システム | |
JP2010011287A (ja) | 映像伝送方法および端末装置 | |
CN109104552B (zh) | 摄像设备、摄像设备的处理方法和存储介质 | |
JP6357188B2 (ja) | 監視カメラシステム及び監視カメラデータ保存方法 | |
JP7327953B2 (ja) | 動画配信装置、動画配信方法及びプログラム | |
JP7292901B2 (ja) | 送信装置、送信方法、及びプログラム | |
JP6907104B2 (ja) | 映像配信装置、制御方法及びプログラム | |
JP5498875B2 (ja) | 分散型マルチメディアサーバシステム、分散型マルチメディア蓄積方法、及び分散型マルチメディア配信方法 | |
CN113315997B (zh) | 发送装置、服务器装置、发送方法以及程序 | |
JP7016663B2 (ja) | 映像伝送方法、映像伝送システム及び選択装置 | |
JP2007288370A (ja) | 映像・音声信号処理装置 | |
CN113542747A (zh) | 服务器装置、通信系统以及存储介质 | |
JP5499207B2 (ja) | データ伝送システム | |
JP2022125359A (ja) | 送信装置、サーバ装置、送信方法およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20181030 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20181207 |
|
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: 20181225 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190122 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6472478 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |