JP2011234233A - Video distribution device and video distribution method - Google Patents

Video distribution device and video distribution method Download PDF

Info

Publication number
JP2011234233A
JP2011234233A JP2010104251A JP2010104251A JP2011234233A JP 2011234233 A JP2011234233 A JP 2011234233A JP 2010104251 A JP2010104251 A JP 2010104251A JP 2010104251 A JP2010104251 A JP 2010104251A JP 2011234233 A JP2011234233 A JP 2011234233A
Authority
JP
Japan
Prior art keywords
temporary storage
distribution
transmission unit
monitoring
video frames
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
JP2010104251A
Other languages
Japanese (ja)
Inventor
Katsutoshi Tajiri
勝敏 田尻
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2010104251A priority Critical patent/JP2011234233A/en
Publication of JP2011234233A publication Critical patent/JP2011234233A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide more clients with a video with less missing data by efficiently using a memory.SOLUTION: When a distribution processing to a specific partner device is detected to be slower than the generation of video frame, a video distribution device reduces the number of video frame in one transmission unit held by distribution control means. Thereafter as the device detects that the delay in the distribution processing has been resolved for a certain period of time, the video distribution device increases the number of video frame in one transmission unit held by the distribution control means. In this way, the video distribution device can prevent the occurrence of an inconvenience such as an interruption of continuous distribution of image data due to a temporal inability to store generated image data or a limitation on the number of clients to be distributed.

Description

本発明は映像配信装置及び映像配信方法に関し、特に、搭載メモリが少ない組込み機器が多人数に映像を配信する際に、メモリを効率的に使用するために用いて好適な技術に関するものである。   The present invention relates to a video distribution apparatus and a video distribution method, and more particularly to a technique suitable for using a memory efficiently when an embedded device with a small installed memory distributes video to a large number of people.

近年、インターネットなどIP(Internet Protocol)ネットワークを利用した配信システムが増加してきている。例えば、スキー場や動物園の状況を配信するインターネットサイトに採用されており、他にも店舗・ビル監視などにも採用されている。前述の配信システムは、監視用途にも使用されるため、配信画像の遅延を小さく抑える必要があり、高いリアルタイム性が求められている。また、同時に多数のクライアントに配信することが求められている。   In recent years, distribution systems using IP (Internet Protocol) networks such as the Internet have been increasing. For example, it is used for Internet sites that distribute the status of ski resorts and zoos, and is also used for store / building monitoring. Since the above-described distribution system is also used for monitoring purposes, it is necessary to suppress the delay of the distribution image, and high real-time performance is required. In addition, it is required to be distributed to many clients at the same time.

従来、多人数に配信する際は、サーバ上のメモリにその時接続している全クライアントの配信データを一時的に保持しながら、各クライアントの配信速度に合わせて配信処理を行っていた。   Conventionally, when distributing to a large number of people, distribution processing is performed according to the distribution speed of each client while temporarily storing distribution data of all the clients connected at that time in the memory on the server.

例えば、特許文献1ではネットワークの障害等が原因で送信の遅延や中断が発生した場合に、送信できなかった過去の映像フレーム群を破棄して、常に最新の映像フレーム群を送信する方法が開示されている。
また、特許文献2では音声とマルチメディアデータを伝送するネットワークにおいて、マルチメディアデータのフラグメントサイズを動的に変更する方法が開示されている。
For example, Patent Literature 1 discloses a method of always discarding a past video frame group that could not be transmitted and always transmitting the latest video frame group when transmission delay or interruption occurs due to a network failure or the like. Has been.
Patent Document 2 discloses a method of dynamically changing the fragment size of multimedia data in a network that transmits voice and multimedia data.

特開2005−086362号公報JP 2005-086362 A 特開2000−022749号公報JP 2000-022749 A

前述の特許文献1に開示された従来技術では、多数のクライアントに映像配信する際に、ネットワーク帯域が狭い等の理由で配信処理が間に合わないクライアントが複数存在した場合、一時的に保持しなければならないデータ量が増えてしまう。このような場合には、配信サーバが使用できるメモリ容量が不足する。このため、生成された画像データを一時的に保存できなくなって画像データを連続で送れなくなったり、配信するクライアント数を制限したりしなければならなくなってしまう。
本発明は前述の問題点に鑑み、メモリを効率的に使用することで、データ落ちの少ない映像配信をより多くのクライアントへ提供できるようにすることを目的とする。
In the prior art disclosed in Patent Document 1 described above, when video is distributed to a large number of clients, if there are a plurality of clients whose distribution processing is not in time due to a narrow network bandwidth or the like, it must be temporarily retained. The amount of data that must be increased. In such a case, the memory capacity that can be used by the distribution server is insufficient. For this reason, the generated image data cannot be temporarily stored and the image data cannot be sent continuously, or the number of clients to be distributed must be limited.
The present invention has been made in view of the above-described problems, and an object of the present invention is to provide video distribution with less data loss to more clients by efficiently using a memory.

本発明の映像配信装置は、映像フレームを生成して符号化する撮像処理手段と、前記撮像処理手段により符号化された映像フレームを一時保存する一時記憶部と、前記一時記憶部に保存した単数または複数の映像フレームを一送信単位として配信を行う配信制御手段と、前記一送信単位としてまとめられた映像フレームを実際に相手装置に送る通信処理手段と、前記配信制御手段により行われる配信処理の遅延状況を監視する遅延監視手段とを有し、前記遅延監視手段は、前記配信制御手段により行われている特定の相手装置への配信処理が映像フレームの生成より遅れていることを検出すると、前記配信制御手段が保持している一送信単位の映像フレーム数を減少し、その後、一定期間について前記配信処理の遅延が解消したことを検出すると前記配信制御手段が保持している一送信単位の映像フレーム数を増加することを特徴とする。   The video distribution apparatus of the present invention includes an imaging processing unit that generates and encodes a video frame, a temporary storage unit that temporarily stores the video frame encoded by the imaging processing unit, and a single unit that is stored in the temporary storage unit. Alternatively, a distribution control unit that distributes a plurality of video frames as one transmission unit, a communication processing unit that actually transmits the video frames collected as one transmission unit to a partner device, and a distribution process performed by the distribution control unit Delay monitoring means for monitoring the delay situation, the delay monitoring means, when detecting that the delivery processing to the specific partner device being performed by the delivery control means is delayed from the generation of the video frame, Decrease the number of video frames in one transmission unit held by the delivery control means, and then detect that the delivery processing delay has been resolved for a certain period Characterized by increasing the number of video frames for one transmission unit, wherein the holding distribution control means and.

本発明によれば、配信処理が間に合わなくなったクライアントのフラグメントに含まれる画像フレーム数を減らすようにしたので、クライアントが送信するデータを新しいフレームに集中させることができる。これにより、一時的にメモリ上に保持しなければならないデータ量を減らすことができ、データ落ちの少ない映像配信をより多くのクライアントへ提供することができる。   According to the present invention, since the number of image frames included in a client fragment whose distribution processing is not in time is reduced, data transmitted by the client can be concentrated on a new frame. As a result, the amount of data that must be temporarily stored in the memory can be reduced, and video distribution with less data loss can be provided to more clients.

配信カメラサーバのハードウェア構成を説明するブロック図である。It is a block diagram explaining the hardware constitutions of a delivery camera server. 配信カメラサーバのソフトウェア機能構成の概略を示すブロック図である。It is a block diagram which shows the outline of a software function structure of a delivery camera server. 撮像処理プログラムの動作手順を説明するフローチャートである。It is a flowchart explaining the operation | movement procedure of an imaging processing program. 配信制御プログラムの動作手順を説明するフローチャートである。It is a flowchart explaining the operation | movement procedure of a delivery control program. 遅延監視プログラムの動作手順を説明するフローチャートである。It is a flowchart explaining the operation | movement procedure of a delay monitoring program. 配信遅延が発生したクライアント情報の例を示す図である。It is a figure which shows the example of the client information in which the delivery delay occurred. フラグメントサイズ5固定時のメモリ使用量を説明する図である。It is a figure explaining the memory usage when fragment size 5 is fixed. 第1の実施形態を適用時のメモリ使用量を説明する図である。It is a figure explaining the memory usage at the time of applying 1st Embodiment. 配信制御プログラムの第2の例を説明するフローチャートである。It is a flowchart explaining the 2nd example of a delivery control program. メモリ監視プログラムの動作手順を説明するフローチャートである。It is a flowchart explaining the operation | movement procedure of a memory monitoring program. 第2の実施形態を適用時の一時記憶部の使用量を説明する図である。It is a figure explaining the usage-amount of the temporary memory part at the time of applying 2nd Embodiment.

以下に、本発明の好ましい実施の形態を、添付の図面に基づいて詳細に説明する。
(第1の実施形態)
以下、本発明の実施に好適な配信システムの第1の構成例と動作について、図面を用いながら説明する。なお、音声データの配信は画像データの配信処理とデータの内容が異なるだけで同列に扱えるため、本実施形態では画像データの配信を中心に説明する。
Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.
(First embodiment)
Hereinafter, a first configuration example and operation of a distribution system suitable for implementing the present invention will be described with reference to the drawings. In addition, since the distribution of audio data can be handled in the same line except for the image data distribution process and the data contents, this embodiment will be described focusing on the distribution of the image data.

図1は、本発明の第1の実施形態を表す配信カメラサーバのハードウェア構成を説明するブロック図である。
図1に示すように、本実施形態の配信カメラサーバはCPU100、1次記憶装置110、2次記憶装置120、画像キャプチャI/F130、音声キャプチャI/F140、ネットワークI/F160が内部バス101を介して相互に接続されている。
FIG. 1 is a block diagram illustrating a hardware configuration of a distribution camera server representing the first embodiment of the present invention.
As shown in FIG. 1, the distribution camera server of this embodiment includes a CPU 100, a primary storage device 110, a secondary storage device 120, an image capture I / F 130, an audio capture I / F 140, and a network I / F 160 via the internal bus 101. Are connected to each other.

ここで、1次記憶装置110はRAMに代表される書き込み可能な高速の記憶装置で、OSや各種プログラム及び各種データがロードされ、またOSや各種プログラムの作業領域としても使用される。2次記憶装置120はFDDやHDD、フラッシュメモリ、CD−ROMドライブ等に代表される不揮発性を持った記憶装置で、OSや各種プログラム及び各種データの永続的な記憶領域として使用される他に、短期的な各種データの記憶領域としても使用される。カメラサーバの1次記憶装置110及び2次記憶装置120に置かれる各種プログラム等の詳細については後述する。   Here, the primary storage device 110 is a high-speed writable storage device represented by a RAM, and is loaded with an OS, various programs, and various data, and is also used as a work area for the OS and various programs. The secondary storage device 120 is a non-volatile storage device represented by FDD, HDD, flash memory, CD-ROM drive, etc. In addition to being used as a permanent storage area for the OS, various programs, and various data. It is also used as a storage area for various short-term data. Details of various programs and the like placed in the primary storage device 110 and the secondary storage device 120 of the camera server will be described later.

画像キャプチャI/F130にはカメラ170が接続され、カメラ170が撮影した画像データを所定のフォーマットに変換・圧縮して1次記憶装置110に転送する。音声キャプチャI/F140にはマイク180が接続され、マイク180が集音した音データを所定のフォーマットに変換・圧縮して1次記憶装置110に転送する。ネットワークI/F160はEthernet(登録商標)等の通信媒体190と接続するためのI/Fであり、通信媒体190を介してクライアント等との通信を担う。カメラサーバとクライアント間のネットワークは通信規格を満足する複数のルータ、スイッチ、ケーブル等から構成される。本実施形態においては各サーバ・クライアント間の通信が支障なく行えるものであればその通信規格、規模、構成を問わない。故に、インターネットからLAN (Local Area Network)にまで適用可能である。   A camera 170 is connected to the image capture I / F 130, and image data captured by the camera 170 is converted and compressed into a predetermined format and transferred to the primary storage device 110. A microphone 180 is connected to the audio capture I / F 140, and sound data collected by the microphone 180 is converted and compressed into a predetermined format and transferred to the primary storage device 110. The network I / F 160 is an I / F for connecting to a communication medium 190 such as Ethernet (registered trademark), and is responsible for communication with clients and the like via the communication medium 190. The network between the camera server and the client is composed of a plurality of routers, switches, cables, etc. that satisfy the communication standard. In the present embodiment, any communication standard, scale, and configuration may be used as long as communication between each server and client can be performed without any problem. Therefore, it is applicable from the Internet to a LAN (Local Area Network).

図2(A)は、配信カメラサーバのソフトウェア機能構成の概略を示すブロック図である。
図2(A)に示すように、1次記憶装置110には、OS、撮像処理プログラム210、配信制御プログラム211、通信処理プログラム212、一時記憶部213、及び遅延監視プログラム214がロードされる。OSはカメラサーバ全体を制御する基本プログラムであり、本実施形態の映像配信装置200の主要な構成要件がOSによって構成される。
FIG. 2A is a block diagram illustrating an outline of a software function configuration of the distribution camera server.
As shown in FIG. 2A, the primary storage device 110 is loaded with an OS, an imaging processing program 210, a distribution control program 211, a communication processing program 212, a temporary storage unit 213, and a delay monitoring program 214. The OS is a basic program for controlling the entire camera server, and the main configuration requirements of the video distribution apparatus 200 of this embodiment are configured by the OS.

撮像処理プログラム210は、カメラ170で生成された画像フレーム(映像フレーム)を画像キャプチャI/F130を経由して取得し符号化して、一時記憶部213に一時保存する。そして、不要になった画像フレームを一時記憶部213から削除する。配信制御プログラム211は、各種クライアントからのリクエストに応じ、一時記憶部213に保存されている単数または複数の画像フレームを一送信単位とし、通信処理プログラム212を通して配信する。本実施形態では理解しやすくするため、特に説明しない限り5フレームを1GOP(Group Of Pictures)とし、5フレームを一送信単位(以下、1フラグメント)として配信するものとする。   The imaging processing program 210 acquires and encodes an image frame (video frame) generated by the camera 170 via the image capture I / F 130, and temporarily stores it in the temporary storage unit 213. Then, the unnecessary image frame is deleted from the temporary storage unit 213. The distribution control program 211 distributes one or a plurality of image frames stored in the temporary storage unit 213 through the communication processing program 212 as one transmission unit in response to requests from various clients. In this embodiment, for easy understanding, it is assumed that 5 frames are set as 1 GOP (Group Of Pictures) and 5 frames are distributed as one transmission unit (hereinafter referred to as 1 fragment) unless otherwise specified.

通信処理プログラム212は、ネットワークI/F160を制御し、通信媒体190を介して通信の相手装置である各種クライアントへ配信データを送り届ける。遅延監視プログラム214は、画像フレームが一時記憶部213に保存された際に各種クライアントへの配信処理が遅延しているかどうかを判定し、配信処理の遅延状況を監視する。また、本実施形態では配信処理が遅延判定タイミングを画像フレームが一時記憶部213に保存されたタイミングで実施するが、クライアント毎(相手装置毎)にフラグメント分の画像フレームを送信完了したタイミング、または定期的なタイミングで実施してもよい。各プログラム同士の連携は、必要に応じてOSが提供する機能を用いることとする。   The communication processing program 212 controls the network I / F 160 and sends delivery data to various clients that are communication counterpart devices via the communication medium 190. The delay monitoring program 214 determines whether or not delivery processing to various clients is delayed when the image frame is stored in the temporary storage unit 213, and monitors the delay status of the delivery processing. In this embodiment, the distribution process performs the delay determination timing at the timing when the image frame is stored in the temporary storage unit 213. However, the timing at which transmission of the image frame for the fragment is completed for each client (each partner device), or You may carry out at a regular timing. The cooperation between the programs uses functions provided by the OS as necessary.

図3は、配信カメラサーバの撮像処理プログラム210の動作手順を説明するフローチャートである。撮像処理プログラム210は、装置が電源投入された時に起動する。
起動されると、S300において画像キャプチャI/F130を初期化する。次に、S301においてカメラ170から画像フレームが供給されるのを待機する。
FIG. 3 is a flowchart for explaining the operation procedure of the imaging processing program 210 of the distribution camera server. The imaging processing program 210 is activated when the apparatus is turned on.
When activated, the image capture I / F 130 is initialized in S300. Next, it waits for an image frame to be supplied from the camera 170 in S301.

S301の待機状態において、画像フレームが生成されるとS302に進んで符号化を行う。その後、S303に進み、一時記憶部213の空き容量をチェックする。このチェックの結果、一時記憶部213に空きがなければS301に戻る。この場合は、画像フレームは保存されず次の画像フレームの生成待ちとなる。また、S303のチェックの結果、バッファに空きがあれば、S304に進み、画像フレームを保存し、最新フレーム番号を更新する。   When an image frame is generated in the standby state in S301, the process proceeds to S302 to perform encoding. Thereafter, the process proceeds to S303, and the free capacity of the temporary storage unit 213 is checked. As a result of this check, if there is no space in the temporary storage unit 213, the process returns to S301. In this case, the image frame is not stored and the next image frame is awaited. If the result of the check in S303 is that there is an empty buffer, the process proceeds to S304, where the image frame is saved and the latest frame number is updated.

次に、S305において、現在配信している特定のクライアントが存在するか判断する。この判断の結果、特定のクライアントが存在しない場合には待機状態となる。また、配信クライアントが存在する場合にはS306に進み、一時記憶部213に存在するクライアント情報に画像フレームを登録する。次に、S307において未送信フレーム数が次フラグメントサイズより多いかどうかを判断する。次フラグメントサイズとは、次の送信時に何枚の画像フレームを一送信単位としてクライアントに配信するかを示す値である。   Next, in S305, it is determined whether there is a specific client currently distributed. If the result of this determination is that there is no specific client, it enters a standby state. If there is a distribution client, the process advances to step S306 to register an image frame in the client information existing in the temporary storage unit 213. Next, in S307, it is determined whether the number of untransmitted frames is larger than the next fragment size. The next fragment size is a value indicating how many image frames are delivered to the client as one transmission unit at the next transmission.

S307の判断の結果、未送信フレーム数の方が多い場合、S308に進んで未送信フレームの古いデータを次フラグメントサイズ以下になるまで登録解除する。その後、S309に進む。また、S307の判断の結果、未送信フレーム数の方が多くない場合は、S309に直接進む。   If the number of untransmitted frames is larger as a result of the determination in S307, the process proceeds to S308, where the old data of the untransmitted frame is deregistered until it becomes equal to or smaller than the next fragment size. Then, it progresses to S309. If the number of untransmitted frames is not greater as a result of the determination in S307, the process proceeds directly to S309.

S309においては、S306〜S308の処理を全ての配信クライアントに対して行ったか否かを判断する。この判断の結果、行っていない場合にはS306に戻り、前述した処理を実行する。また、行った場合にはS310に進む。S310においては、遅延監視プログラム214に画像生成通知メッセージを送信する。
次に、S311に進み、クライアントへの送信処理が完了し、どのクライアントにも登録されていない登録解除済み画像フレームを一時記憶部213から解放し、その後、S301の画像生成待ち処理に戻る。
In S309, it is determined whether or not the processing in S306 to S308 has been performed for all the distribution clients. As a result of this determination, if it has not been performed, the process returns to S306 and the above-described processing is executed. If so, the process proceeds to S310. In S310, an image generation notification message is transmitted to the delay monitoring program 214.
In step S311, the transmission processing to the client is completed, the deregistered image frame that is not registered in any client is released from the temporary storage unit 213, and the process returns to the image generation waiting process in step S301.

図4は、配信カメラサーバの配信制御プログラム211の動作手順を説明するフローチャートである。配信制御プログラム211は、クライアントから配信リクエストを受信した時に起動される。
起動されると、S400においてクライアント情報を生成し、一時記憶部213に保存する。本実施形態では、この時、何枚の画像フレームを一送信単位としてクライアントに配信するかという次フラグメントサイズを「5」に設定する。
FIG. 4 is a flowchart illustrating the operation procedure of the distribution control program 211 of the distribution camera server. The distribution control program 211 is activated when a distribution request is received from a client.
When activated, client information is generated and stored in the temporary storage unit 213 in S400. In the present embodiment, at this time, the next fragment size indicating how many image frames are distributed to the client as one transmission unit is set to “5”.

次に、S401に進み、遅延監視プログラム214からのメッセージ受信処理を行う。その後、S402において受信メッセージ毎に振り分けを行う。遅延監視プログラム214から配信遅延通知を受信していた場合は次フラグメントサイズを小さくし(S403)、配信復旧通知を受信していた場合は次フラグメントサイズを大きくする(S404)。本実施形態では、配信遅延通知を受信した場合は次フラグメントサイズを所定値(例えば「5」)から所定値(例えば「1」)に減少させ、一送信単位の映像フレーム数が減少する。また、配信復旧通知を受信した場合は次フラグメントサイズを「1」から「5」に増加させ、一送信単位の映像フレーム数を増加させる。また、配信遅延通知または配信復旧通知を遅延時間に応じて段階的に通知し、一送信単位の最大数を複数段階で変更することも可能である。また、S402の処理において、メッセージがない場合にはS403あるいはS404の処理を行わずにS406に進む。   In step S401, a message reception process from the delay monitoring program 214 is performed. Thereafter, in S402, distribution is performed for each received message. If a delivery delay notification has been received from the delay monitoring program 214, the next fragment size is reduced (S403), and if a delivery recovery notification has been received, the next fragment size is increased (S404). In this embodiment, when a delivery delay notification is received, the next fragment size is decreased from a predetermined value (for example, “5”) to a predetermined value (for example, “1”), and the number of video frames in one transmission unit is decreased. When the distribution restoration notification is received, the next fragment size is increased from “1” to “5”, and the number of video frames in one transmission unit is increased. It is also possible to notify the delivery delay notification or the delivery recovery notification in stages according to the delay time, and to change the maximum number of one transmission unit in a plurality of stages. If there is no message in the process of S402, the process proceeds to S406 without performing the process of S403 or S404.

本実施形態においては、生成した画像フレームの情報は撮像処理プログラム210がクライアント情報に適宜書き込むので、S406においては、未送信フレームが次フラグメントサイズ分存在するかどうかを判断する。未送信フレームが次フラグメントサイズに満たない場合は一定時間の待機を行い(S405)、メッセージ受信処理(S401)に戻る。   In the present embodiment, the image processing program 210 appropriately writes the generated image frame information to the client information, so in S406, it is determined whether there are untransmitted frames for the next fragment size. If the untransmitted frame is less than the next fragment size, a predetermined time is waited (S405), and the process returns to the message reception process (S401).

未送信フレームが次フラグメントサイズ以上存在している場合は、先頭フレームの連続性をチェックする(S407)。具体的には、未送信フレームの先頭が前回送信したデータの次フレームである、または先頭がフレーム内符号化された画像フレーム(以下、Iフレームと呼ぶ)であるかどうかをチェックする。   If the untransmitted frame is larger than the next fragment size, the continuity of the top frame is checked (S407). Specifically, it is checked whether the head of the untransmitted frame is the next frame of the previously transmitted data, or whether the head is an intra-frame encoded image frame (hereinafter referred to as I frame).

S407のチェックの結果、連続性がない(どちらも満たさない)場合は、先頭の画像フレームはクライアント側で受信しても表示できないため一定時間の待機を行い(S405)、メッセージ受信処理(S401)に戻る。一定時間の待機を行うことで、撮像処理プログラム210が新たに画像フレームを生成し、未送信フレーム情報を書き換える。   If the result of the check in S407 is that there is no continuity (both are not satisfied), the first image frame cannot be displayed even if it is received on the client side, so a waiting period of time is held (S405), and message reception processing (S401) Return to. By waiting for a predetermined time, the imaging processing program 210 newly generates an image frame and rewrites untransmitted frame information.

一方、S407のチェックの結果、連続性がある(どちらかを満たす)場合は、一時記憶部213に保存してあるクライアント情報を更新する(S408)。次に、未送信フレームの先頭から次フラグメントサイズ分の画像フレームとそのヘッダ情報を作成し、通信処理プログラム212を通してクライアントに送信する(S409)。   On the other hand, if the result of the check in S407 is continuity (whichever is satisfied), the client information stored in the temporary storage unit 213 is updated (S408). Next, an image frame for the next fragment size and its header information are created from the beginning of the untransmitted frame and transmitted to the client through the communication processing program 212 (S409).

S409の送信処理が完了したら、S410において次データを送信する必要があるかどうかを確認する。この確認の結果、次のデータを送信する場合はメッセージ受信処理(S401)に戻る。クライアントへの送信処理において通信の切断が検出された場合、またはクライアント要求分の画像フレームの配信が完了した場合は、S411に進み、一時記憶部213に保存しているクライアント情報を解放し、処理を終了する。   When the transmission process of S409 is completed, it is confirmed whether or not the next data needs to be transmitted in S410. If the next data is transmitted as a result of the confirmation, the process returns to the message reception process (S401). If communication disconnection is detected in the transmission process to the client, or if the delivery of the image frame for the client request is completed, the process proceeds to S411, where the client information stored in the temporary storage unit 213 is released, and the process Exit.

図5は、配信カメラサーバの遅延監視プログラム214の動作手順を説明するフローチャートである。
遅延監視プログラム214は、装置が電源投入された時に起動する。
起動されると、S500において他のプログラムからメッセージを受信するまで待機状態になる。そして、メッセージを受信すると、S501に進み、それが遅延チェックするメッセージであるかを確認する。本実施形態では、撮像処理プログラム210からの画像生成通知を遅延チェックするメッセージとする。画像生成のタイミング以外にもクライアントの配信完了のタイミング、または一定時間の経過タイミング、またはこれらの組合せのタイミングで行うことも可能である。
FIG. 5 is a flowchart for explaining the operation procedure of the delay monitoring program 214 of the distribution camera server.
The delay monitoring program 214 is activated when the apparatus is turned on.
When activated, the system waits until a message is received from another program in S500. When a message is received, the process proceeds to S501, where it is confirmed whether the message is a delay check message. In the present embodiment, the image generation notification from the imaging processing program 210 is a message for delay check. In addition to the image generation timing, it is also possible to carry out at the timing of the completion of delivery of the client, the elapse timing of a certain time, or the timing of a combination thereof.

S501の確認の結果、画像生成通知でなかった場合は、S500に戻り、再度メッセージ受信待ちとなる。また、画像生成通知を受信した場合は、配信しているクライアント全員に対して以下の処理を繰り返す。まず、S502に進み、クライアントの状態を判断し、配信クライアントの状態により、処理を振り分ける。   If the result of the confirmation in S501 is not an image generation notification, the process returns to S500 and again waits for message reception. When the image generation notification is received, the following processing is repeated for all the distributing clients. First, in S502, the client state is determined, and the process is distributed according to the state of the distribution client.

すなわち、S502の判断の結果、クライアントに配信遅延が発生していない場合(配信遅延なし)は、S503に進んで送信フレームの最終画像フレームと未送信フレームの先頭フレームが連続かどうかを判断する。この判断の結果、連続の場合は何もしない。非連続の場合、つまり撮像処理プログラム210のS308にて未送信フレームの登録解除が行われた場合は、配信制御プログラム211に配信遅延通知を送り(S504)、クライアントの状態を配信遅延中に変更する(S505)。   That is, as a result of the determination in S502, when there is no distribution delay in the client (no distribution delay), the process proceeds to S503 to determine whether the last frame of the transmission frame and the first frame of the untransmitted frame are continuous. If the result of this determination is continuous, nothing is done. In the case of discontinuity, that is, when unregistered frames are canceled in S308 of the imaging processing program 210, a delivery delay notification is sent to the delivery control program 211 (S504), and the client status is changed to delivery delay. (S505).

クライアントに配信遅延が発生している場合(配信遅延中)は、まず一定時間以上データを破棄せずに送信できているかをチェックする(S506)。具体的には、連続送信フレーム数が配信遅延の復旧を示す一定フレーム数以上になったかどうかで判断する。この判断の結果、一定時間に達しない場合は、何もしない。一定時間に達した場合は、配信制御プログラム211に配信復旧通知を送り(S507)、クライアントの状態を配信遅延なしに変更する(S508)。S505またはS508の処理を終了したら、S509に進み、全てのクライアントについて配信状態の判断を行ったか否かを判断する。この判断の結果、行っていない場合にはS502に戻って前述の処理を行う。また、行ったS500に戻る。   If a delivery delay has occurred in the client (during delivery delay), it is first checked whether data can be transmitted without being discarded for a certain period of time (S506). Specifically, the determination is made based on whether or not the number of continuously transmitted frames is equal to or greater than a certain number of frames indicating restoration of delivery delay. If the result of this determination does not reach a certain time, nothing is done. If the predetermined time has been reached, a delivery restoration notice is sent to the delivery control program 211 (S507), and the client state is changed without delivery delay (S508). When the processing of S505 or S508 is completed, the process proceeds to S509, and it is determined whether or not the distribution status has been determined for all clients. If the result of this determination is that it has not been performed, processing returns to S502 and the above-described processing is performed. Moreover, it returns to S500 which performed.

図6は、配信遅延が発生したクライアント情報の例を示す図である。
図6を用いて、クライアント情報に保持される情報がフレーム生成や配信処理の過程で変わっていく様子を説明する。ただし、図6はあくまで一例であり、必ずしも図中の変数を使用し、図通りの順序で処理が実行されるわけではない。
FIG. 6 is a diagram illustrating an example of client information in which a delivery delay has occurred.
The manner in which information held in the client information changes in the course of frame generation and distribution processing will be described with reference to FIG. However, FIG. 6 is merely an example, and the variables in the figure are not necessarily used, and the processing is not executed in the order shown in the figure.

送信フレーム番号は、配信制御プログラム211が変更する送信中の画像フレームの先頭番号であり、未送信状態は−1が設定される。
送信フラグメントサイズは、配信制御プログラム211が変更する送信中の画像フレーム数であり、未送信状態は0が設定される。
未送信フレーム番号は、撮像処理プログラム210が変更する送信待ち画像フレームの先頭番号であり、未送信状態は−1が設定される。
未送信フレーム数は、撮像処理プログラム210が変更する送信待ち画像フレーム数である。
次フラグメントサイズは、次に送信するフラグメントの画像フレーム数であり、配信制御プログラム211が配信遅延通知または配信復旧通知を受信した際に増減する。本実施形態では、配信遅延が発生すると次フラグメントサイズは「1」に変更され、配信復旧が発生すると次フラグメントサイズは「5」に変更される。
連続送信フレーム数は、連続で送信している画像フレーム数であり、一枚でも画像フレームを送信しなければ0に設定される。
The transmission frame number is the leading number of the image frame being transmitted that is changed by the distribution control program 211, and -1 is set in the untransmitted state.
The transmission fragment size is the number of image frames being transmitted, which is changed by the distribution control program 211, and 0 is set in the untransmitted state.
The untransmitted frame number is the head number of the transmission-waiting image frame that is changed by the imaging processing program 210, and -1 is set as the untransmitted state.
The number of untransmitted frames is the number of transmission-waiting image frames that the imaging processing program 210 changes.
The next fragment size is the number of image frames of a fragment to be transmitted next, and increases or decreases when the distribution control program 211 receives a distribution delay notification or a distribution recovery notification. In this embodiment, the next fragment size is changed to “1” when a delivery delay occurs, and the next fragment size is changed to “5” when delivery recovery occurs.
The number of continuous transmission frames is the number of image frames transmitted continuously, and is set to 0 if no image frame is transmitted.

フレーム番号0(最初はIフレーム)が生成された時、未送信フレームに0が設定され、未送信フレーム数がインクリメントされて1に設定される。フレーム番号1,2,3が生成されると、未送信フレーム数が2,3,4に順番に増えていく。   When frame number 0 (initially an I frame) is generated, 0 is set to the untransmitted frame, and the number of untransmitted frames is incremented and set to 1. When frame numbers 1, 2, and 3 are generated, the number of untransmitted frames sequentially increases to 2, 3, and 4.

そして、フレーム番号4が生成された時、ちょうど次フラグメントサイズである5フレームになるので、配信制御プログラム211は送信処理を開始する。そして、送信フレーム番号を0、送信フラグメントサイズを5に変更、連続送信フレーム数に5を加算し、未送信フレーム番号と未送信フレーム数を初期状態に変更する。   Then, when frame number 4 is generated, the frame size is exactly 5 frames, which is the next fragment size, so the distribution control program 211 starts transmission processing. Then, the transmission frame number is changed to 0, the transmission fragment size is changed to 5, the number of continuous transmission frames is added to 5, and the untransmitted frame number and the number of untransmitted frames are changed to the initial state.

フレーム番号5が生成された時、未送信フレーム番号に5を登録し、未送信フレーム数をインクリメントし1に変更する。そして、フレーム番号0〜5の送信が完了する前に、フレーム番号6、7、8、9が生成されると、未送信フレーム数が2、3、4、5に順番に増えていく。フレーム番号9が生成された時は、本クライアントが使用するフレームは0〜9までの10フレームである。   When frame number 5 is generated, 5 is registered in the untransmitted frame number, and the number of untransmitted frames is incremented and changed to 1. Then, if frame numbers 6, 7, 8, and 9 are generated before transmission of frame numbers 0 to 5 is completed, the number of untransmitted frames increases in order to 2, 3, 4, and 5. When the frame number 9 is generated, 10 frames from 0 to 9 are used by the client.

フレーム番号10が生成されると、撮像処理プログラム210にて未送信フレーム番号を10に変更し、フレーム番号5〜9の登録を解除する。そして、遅延監視プログラム214にて送信フレームの最終フレーム番号4と未送信フレームの先頭フレーム番号10から配信遅延を検出し、配信制御プログラム211にて次フラグメントサイズを「1」に変更する。   When the frame number 10 is generated, the untransmitted frame number is changed to 10 by the imaging processing program 210, and the registration of the frame numbers 5 to 9 is canceled. Then, the delay monitoring program 214 detects the delivery delay from the last frame number 4 of the transmission frame and the first frame number 10 of the untransmitted frame, and the delivery control program 211 changes the next fragment size to “1”.

フレーム番号11が生成されると、次フラグメントサイズは「1」なので未送信フレーム番号を1に更新し、未送信フレーム数を1に設定する。フレーム番号12が生成された時も同様に未送信フレーム番号を更新する。フレーム番号10、11、12では、クライアントが使用するフレームは、フレーム番号0〜4とフレーム10(または11、または12)の合計6フレームである。   When the frame number 11 is generated, since the next fragment size is “1”, the untransmitted frame number is updated to 1, and the number of untransmitted frames is set to 1. Similarly, when the frame number 12 is generated, the untransmitted frame number is updated. In the frame numbers 10, 11, and 12, the frames used by the client are a total of 6 frames including the frame numbers 0 to 4 and the frame 10 (or 11 or 12).

次に、送信処理が完了したとすると、未送信フレーム番号12の送信を試みるが、S407にて連続性がないと判断されるため(先頭がIフレームでないため)、送信処理が実行されない。
次のIフレームであるフレーム番号15が生成されると送信フレーム番号を15、送信フラグメントサイズを「1」、連続送信フレーム数を1に変更し、未送信フレーム番号と未送信フレーム数を初期状態に変更する。
Next, assuming that the transmission process is completed, transmission of the untransmitted frame number 12 is attempted. However, since it is determined in S407 that there is no continuity (because the head is not an I frame), the transmission process is not executed.
When the frame number 15 that is the next I frame is generated, the transmission frame number is changed to 15, the transmission fragment size is set to “1”, the number of continuous transmission frames is changed to 1, and the untransmitted frame number and the number of untransmitted frames are initialized. Change to

フレーム番号16が生成されると、未送信フレーム番号に16を保存し、未送信フレーム数をインクリメントして1に変更する。フレーム番号16以降では、クライアントが使用するフレームはフレーム番号15と未送信フレームの1フレームの合計2フレームになる。   When the frame number 16 is generated, 16 is stored in the untransmitted frame number, and the number of untransmitted frames is incremented and changed to 1. After frame number 16, the number of frames used by the client is a total of two frames, frame number 15 and one frame that has not been transmitted.

以上のように、フラグメントサイズが「5固定」であった期間は、1クライアントが使用するフレーム数は最小で5フレーム、最大で10フレームであったが、フラグメントサイズが1に変更された後は最小で1フレーム、最大で2フレームになる。   As described above, during the period when the fragment size was “fixed to 5”, the number of frames used by one client was 5 frames at the minimum and 10 frames at the maximum, but after the fragment size was changed to 1, The minimum is 1 frame and the maximum is 2 frames.

図6は、配信処理が遅延した場合のクライアント情報の説明である。フレーム番号5〜9が生成される間に配信処理が完了するような充分な配信能力があるクライアントに対しては配信遅延を検出しない。このため、フラグメントサイズが「5」のままなので今までと変わりなく配信することができる。   FIG. 6 is an explanation of client information when the distribution process is delayed. A delivery delay is not detected for a client having sufficient delivery capability such that delivery processing is completed while frame numbers 5 to 9 are generated. For this reason, since the fragment size remains “5”, it can be delivered as before.

本実施形態では、リアルタイム性を高めるため、一時的に保持する画像フレームは次の1フラグメントのみとして説明しているが、複数フラグメントを一時的に保持しても構わない。また、次フラグメントを越えて次の画像フレームを生成した場合に配信遅延を検出しているが、実際はフレーム内符号化されたIフレームと、フレーム間符号化されたPフレーム/Bフレームとではデータサイズが異なる。このため、1GOP単位でデータサイズを計算し、そこから配信する次フラグメントのデータ量に応じた時間を算出し、その時間を超えた場合に遅延を検出するなどが有効である。   In this embodiment, in order to improve the real-time property, the image frame to be temporarily held is described as only the next one fragment, but a plurality of fragments may be temporarily held. Also, when the next image frame is generated beyond the next fragment, the delivery delay is detected. However, in actuality, the data is calculated with the intra-frame encoded I frame and the inter-frame encoded P frame / B frame. The size is different. For this reason, it is effective to calculate the data size in units of 1 GOP, calculate the time corresponding to the data amount of the next fragment to be distributed from there, and detect the delay when the time is exceeded.

図7は、フラグメントサイズが「5固定」で、複数クライアントに配信した際の一時記憶部213の状態を説明する図である。図7では、配信能力が画像生成の半分程度のクライアント701と配信能力が画像生成より充分高いクライアント702の例である。   FIG. 7 is a diagram for explaining the state of the temporary storage unit 213 when the fragment size is “5 fixed” and distributed to a plurality of clients. FIG. 7 shows an example of a client 701 whose distribution capability is about half that of image generation and a client 702 whose distribution capability is sufficiently higher than that of image generation.

図7において、クライアント701は最初のフラグメント(フレーム番号0〜4)を配信している間に、フレーム番号12まで生成され、フレーム番号5〜9は登録解除されていることを示している。
クライアント702は、フレーム番号0〜4は送信済みで登録解除しており、フレーム番号5〜9を送信中で、フレーム番号10〜12は送信待ちになっていることを示している。
In FIG. 7, while the client 701 distributes the first fragment (frame numbers 0 to 4), the frame number 12 is generated, and the frame numbers 5 to 9 are deregistered.
The client 702 indicates that frame numbers 0 to 4 have been transmitted and deregistered, frame numbers 5 to 9 are being transmitted, and frame numbers 10 to 12 are waiting to be transmitted.

配信カメラサーバの一時記憶部213の画像用メモリ領域は全クライアント共通で使用しており、最大で15フレーム分保持できるとすると、画像用メモリの使用量は86パーセント(13/15フレーム)となる。   The image memory area of the temporary storage unit 213 of the distribution camera server is shared by all clients, and assuming that a maximum of 15 frames can be stored, the amount of image memory used is 86 percent (13/15 frames). .

図8は、本実施形態を適用し、複数クライアントに配信した際の一時記憶部213の状態を説明する図である。本図では、配信能力が画像生成の半分程度のクライアント801と、配信能力が画像生成より充分高いクライアント802の例である。   FIG. 8 is a diagram for explaining a state of the temporary storage unit 213 when the present embodiment is applied and distributed to a plurality of clients. This figure shows an example of a client 801 whose distribution capability is about half that of image generation and a client 802 whose distribution capability is sufficiently higher than that of image generation.

クライアント801は、遅延を検出してフラグメントサイズは1になっており、5フレーム中2フレームを毎回送信している状態である。この時使用しているフレームは2フレームである。
クライアント802は、図7と同様に充分な配信能力があるので、5フレーム単位で全てのフレームを送っていることを示している。この時使用しているフレームは8フレームである。
The client 801 detects the delay and the fragment size is 1, and is in a state where 2 out of 5 frames are transmitted every time. At this time, two frames are used.
Since the client 802 has sufficient distribution capability as in FIG. 7, it indicates that all frames are sent in units of 5 frames. At this time, 8 frames are used.

配信カメラサーバの一時記憶部213の画像用メモリ領域は全クライアント共通で使用しており、最大で15フレーム分保持できるとすると、画像用メモリの使用量は53パーセント(8/15フレーム)となる。   The image memory area in the temporary storage unit 213 of the distribution camera server is shared by all clients, and assuming that a maximum of 15 frames can be stored, the amount of image memory used is 53 percent (8/15 frames). .

このように本実施形態を適用し、遅延クライアントのフラグメントサイズを減らすことで画像用メモリの参照を最近のデータに集中させることができ、メモリの使用効率を向上させることができる。また、メモリの使用効率を向上させることで、画像フレームを生成時に一時記憶部213に保存できなくなることが減り、画像フレーム落ちの少ない映像配信ができる。同時に、複数クライアントに配信してもメモリの使用量は大きく増えないので、より多くのクライアントへ配信することができる。   In this way, by applying the present embodiment and reducing the fragment size of the delayed client, it is possible to concentrate the reference of the image memory on recent data and improve the memory usage efficiency. Further, by improving the use efficiency of the memory, it is possible to reduce the possibility that the image frame cannot be stored in the temporary storage unit 213 at the time of generation, and it is possible to perform video distribution with less image frame dropping. At the same time, even if the data is distributed to a plurality of clients, the memory usage does not increase greatly, so that it can be distributed to more clients.

(第2の実施形態)
以下、本発明の実施に好適な配信システム第2の構成と動作について、図面を用いながら説明する。なお、音声データの配信は画像データの配信処理とデータの内容が異なるだけで同列に扱えるため、本実施形態では画像データの配信を中心に説明する。また、本実施形態における配信カメラサーバのハードウェア構成は、図1と同じため省略する。
(Second Embodiment)
The second configuration and operation of the distribution system suitable for implementing the present invention will be described below with reference to the drawings. In addition, since the distribution of audio data can be handled in the same line except for the image data distribution process and the data contents, this embodiment will be described focusing on the distribution of the image data. The hardware configuration of the distribution camera server in this embodiment is the same as that in FIG.

図2(B)は、配信カメラサーバのソフトウェア機能構成を説明するブロック図である。
1次記憶装置110には、OS、撮像処理プログラム910、配信制御プログラム911、通信処理プログラム912、一時記憶部913、及びメモリ監視プログラム914がロードされる。
FIG. 2B is a block diagram illustrating a software functional configuration of the distribution camera server.
The primary storage device 110 is loaded with an OS, an imaging processing program 910, a distribution control program 911, a communication processing program 912, a temporary storage unit 913, and a memory monitoring program 914.

OSはカメラサーバ全体を制御する基本プログラムであり、本実施形態の映像配信装置900の主要な構成要件がOSによって構成される。
撮像処理プログラム910は、カメラ170で生成された画像フレームを画像キャプチャI/F130を経由して取得し符号化して、一時記憶部913に保存する。そして、不要になった画像フレームを一時記憶部913から削除する。
配信制御プログラム911は、各種クライアントからのリクエストに応じ、一時記憶部913に保存されている単数または複数の画像フレームを一送信単位とし、通信処理プログラム912を通して配信する。
The OS is a basic program for controlling the entire camera server, and the main configuration requirements of the video distribution apparatus 900 of this embodiment are configured by the OS.
The imaging processing program 910 acquires and encodes an image frame generated by the camera 170 via the image capture I / F 130, and saves it in the temporary storage unit 913. Then, the unnecessary image frame is deleted from the temporary storage unit 913.
The distribution control program 911 distributes one or more image frames stored in the temporary storage unit 913 through the communication processing program 912 as one transmission unit in response to requests from various clients.

本実施形態では理解しやすくするため、特に説明しない限り5フレームを1GOP(Group Of Pictures)とし、5フレームを一送信単位(以下、1フラグメント)として配信するものとする。   In this embodiment, for easy understanding, it is assumed that 5 frames are set as 1 GOP (Group Of Pictures) and 5 frames are distributed as one transmission unit (hereinafter referred to as 1 fragment) unless otherwise specified.

通信処理プログラム912は、ネットワークI/F160を制御し、通信媒体190を介して各種クライアントへ配信データを送り届ける。
メモリ監視プログラム914は、画像フレームが一時記憶部913に保存された際にメモリの使用量を計算し、空き容量が充分かどうかを判定する。
また、本実施形態では配信処理が遅延判定タイミングを画像フレームが一時記憶部913に保存されたタイミングで実施するが、クライアント毎にフラグメント分の画像フレームを送信完了したタイミング、または定期的なタイミングで実施してもよい。
各プログラム同士の連携は、必要に応じてOSが提供する機能を用いることとする。
各プログラムは特に記述がない限り、図2の対応するプログラムと同じ処理を行うものとする。
The communication processing program 912 controls the network I / F 160 and sends delivery data to various clients via the communication medium 190.
The memory monitoring program 914 calculates the amount of memory used when an image frame is stored in the temporary storage unit 913, and determines whether the free space is sufficient.
Further, in this embodiment, the distribution process performs the delay determination timing at the timing when the image frame is stored in the temporary storage unit 913, but at the timing when transmission of the image frame for the fragment is completed for each client or at a regular timing. You may implement.
The cooperation between the programs uses functions provided by the OS as necessary.
Each program performs the same processing as the corresponding program in FIG. 2 unless otherwise specified.

本実施形態における撮像処理プログラム910のフローチャートの説明は、図3と同じため省略する。
図9は、配信カメラサーバの配信制御プログラム911の動作手順を説明するフローチャートである。この配信制御プログラム911は、クライアントから配信リクエストを受信した時に起動される。なお、図9のフローチャート各ステップの処理において、図4のフローチャートで説明した処理と同様な処理を行うステップについては、図4のステップ番号と同一のステップ番号を付して説明を省略する。
The description of the flowchart of the imaging processing program 910 in this embodiment is the same as FIG.
FIG. 9 is a flowchart for explaining the operation procedure of the distribution control program 911 of the distribution camera server. The distribution control program 911 is activated when a distribution request is received from a client. In addition, in the process of each step in the flowchart of FIG. 9, steps that perform the same processes as those described in the flowchart of FIG. 4 are denoted by the same step numbers as those in FIG.

S402の受信メッセージ毎に振り分け処理の結果、メモリ監視プログラム914からメモリ逼迫通知を受信していた場合は次フラグメントサイズが逼迫時の最大フラグメントサイズを越えているかどうかを判定する(S903)。この判定の結果、越えていた場合は次フラグメントサイズを逼迫時の最大フラグメントサイズに変更する(S904)。メモリ監視プログラム914からメモリ復旧通知を受信していた場合は、次フラグメントサイズが逼迫時の最大フラグメントサイズと同じ、且つ連続で一定期間以上送信できているかどうかを判定する(S905)。この判定の結果、満たしている場合は遅延が解消したとして、次フラグメントサイズを増加させる(S906)。また、S402の振り分け処理において、メッセージがない場合にはS406に進む。   As a result of the sorting process for each received message in S402, if a memory compression notification is received from the memory monitoring program 914, it is determined whether or not the next fragment size exceeds the maximum fragment size at the time of compression (S903). If the result of this determination is that it has exceeded, the next fragment size is changed to the maximum fragment size at the time of compression (S904). If the memory recovery notification has been received from the memory monitoring program 914, it is determined whether or not the next fragment size is the same as the maximum fragment size at the time of tightness and can be transmitted continuously for a certain period of time (S905). As a result of this determination, if the condition is satisfied, the delay is eliminated and the next fragment size is increased (S906). If there is no message in the distribution process of S402, the process proceeds to S406.

本実施形態では、メモリ逼迫通知を受信した場合は次フラグメントサイズを所定値(例えば「5」)から所定値(例えば「2」)に減少させ(S904)、メモリ復旧通知を受信した場合は次フラグメントサイズを「2」から「5」に増加させる(S906)。しかし、メモリ逼迫通知またはメモリ復旧通知をメモリの使用量に応じて段階的に通知し、次フラグメントサイズを段階的に変更することも可能である。
S904またはS906の処理を終了した後の処理は、前述した図4のS406〜S411の各処理と同様であるので、詳細な説明を省略する。
In this embodiment, when the memory tightness notification is received, the next fragment size is reduced from a predetermined value (for example, “5”) to a predetermined value (for example, “2”) (S904), and when the memory recovery notification is received, the next fragment size is decreased. The fragment size is increased from “2” to “5” (S906). However, it is also possible to notify the memory tightness notification or the memory restoration notification in stages according to the memory usage, and change the next fragment size in stages.
Since the processing after the processing of S904 or S906 is the same as the processing of S406 to S411 of FIG. 4 described above, detailed description thereof is omitted.

図10は、配信カメラサーバのメモリ監視プログラム914の動作手順を説明するフローチャートである。   FIG. 10 is a flowchart for explaining the operation procedure of the memory monitoring program 914 of the distribution camera server.

メモリ監視プログラム914は、装置が電源投入された時に起動する。
起動されると、他のプログラムからメッセージを受信するまで待機状態になる(S1000)。そして、メッセージを受信すると、それがメモリチェックするメッセージであるかを確認する(S1001)。本実施形態では、撮像処理プログラム910からの画像生成通知を遅延チェックするメッセージとする。なお、画像生成のタイミング以外にもクライアントの配信完了のタイミング、または一定時間の経過タイミング、またはこれらの組合せのタイミングで行うことも可能である。また、画像生成通知でなかった場合は、再度メッセージ受信待ち(S1000)に戻り、画像生成通知を受信した場合は、S1002に進む。
The memory monitoring program 914 starts when the apparatus is turned on.
When activated, the system waits until a message is received from another program (S1000). When a message is received, it is confirmed whether the message is a memory check message (S1001). In this embodiment, the image generation notification from the imaging processing program 910 is a message for delay check. In addition to the image generation timing, it is also possible to carry out at the timing of the completion of delivery of the client, the elapse timing of a certain time, or the timing of a combination thereof. If it is not an image generation notification, the process returns to message reception waiting (S1000) again. If an image generation notification is received, the process proceeds to S1002.

S1002においては、画像用メモリの状態を判断する。この判断の結果、画像用メモリが通常(初期状態)の場合にはS1003に進む。S1003においては、現在の画像用メモリの使用量を測定し、使用量が上限の閾値以上かどうかを判定する。   In S1002, the state of the image memory is determined. If the result of this determination is that the image memory is normal (initial state), processing proceeds to S1003. In step S1003, the current usage amount of the image memory is measured, and it is determined whether the usage amount is equal to or greater than the upper limit threshold value.

S1003の判定の結果、上限閾値に満たない場合は何もしない。上限閾値を上回った場合は、S1004において配信制御プログラム911にメモリ逼迫通知を送り、その後、S1005において画像用メモリの状態を逼迫中に変更する。本実施形態ではメモリ使用量の上限閾値を一時記憶部913に保持できる最大画像フレーム数の80パーセントとするが、単純に一時記憶部913内の画像用メモリ容量の80パーセントとすることも可能である。   If the result of determination in S1003 is less than the upper threshold, nothing is done. If the upper limit threshold is exceeded, a memory tight notification is sent to the distribution control program 911 in S1004, and then the state of the image memory is changed to tight in S1005. In this embodiment, the upper limit threshold of the memory usage is set to 80% of the maximum number of image frames that can be held in the temporary storage unit 913, but it can be simply set to 80% of the image memory capacity in the temporary storage unit 913. is there.

一方、S1002の判断の結果、画像用メモリの状態が逼迫中の場合は、S1006に進み、画像用メモリの使用量が復旧閾値(下限閾値)を下回ったかをチェックする。このチェックの結果、復旧閾値を下回らない場合は、何もしない。また、復旧閾値を下回った場合はS1007に進み、配信制御プログラム911にメモリ復旧通知を送る。その後、S1008に進み、画像用メモリの状態を通常に変更する。   On the other hand, if the result of determination in S1002 is that the state of the image memory is tight, the process proceeds to S1006 to check whether the usage amount of the image memory has fallen below the restoration threshold (lower limit threshold). If the result of this check does not fall below the recovery threshold, do nothing. If it is below the recovery threshold, the process advances to S1007 to send a memory recovery notification to the distribution control program 911. Thereafter, the process proceeds to S1008, and the state of the image memory is changed to normal.

メモリ監視プログラム914は、一時記憶部913のメモリ使用量が上限閾値を上回ったことを検出すると、映像フレームの一送信単位が所定の上限値を超える相手装置への一送信単位(例えば「5」)を所定値(上限値未満、例えば「2」)に減少させる。
また、一時記憶部913のメモリ使用量が復旧閾値を下回ったことを検出すると、映像フレームの一送信単位を増加させる。一送信単位が所定値(例えば「2」)に減少するように設定されていた相手装置への一送信単位は、減少される前の値(例えば「5」)に増加させる。すなわち、本実施形態においては、下限閾値は複数の閾値を持ち、一送信単位に含まれる映像フレーム数の最大値を増減させるようにしている。
When the memory monitoring program 914 detects that the memory usage of the temporary storage unit 913 exceeds the upper limit threshold, one transmission unit (for example, “5”) to the partner apparatus in which one transmission unit of the video frame exceeds a predetermined upper limit value. ) Is reduced to a predetermined value (less than the upper limit value, for example, “2”).
Further, when it is detected that the memory usage of the temporary storage unit 913 has fallen below the restoration threshold, the transmission unit of the video frame is increased. One transmission unit to the partner apparatus set so that one transmission unit is decreased to a predetermined value (for example, “2”) is increased to a value before the decrease (for example, “5”). That is, in this embodiment, the lower limit threshold has a plurality of thresholds, and the maximum value of the number of video frames included in one transmission unit is increased or decreased.

本実施形態では、メモリ使用量の復旧閾値を一時記憶部913に保持できる最大画像フレーム数の30パーセントとするが、単純に一時記憶部913内の画像用メモリ容量の30パーセントとすることも可能である。また、下限閾値を段階的に複数設定して複数の閾値を保持しておき、次フラグメントサイズを段階的に変更したり、次フラグメントサイズを急激に何度も変更したりするようにすることもできる。そこで、次フラグメントサイズを小さくした場合は一定期間フラグメントサイズをその値にすることも有効である。   In this embodiment, the recovery threshold of the memory usage is set to 30% of the maximum number of image frames that can be held in the temporary storage unit 913. However, it can be simply set to 30% of the image memory capacity in the temporary storage unit 913. It is. It is also possible to set multiple lower thresholds in stages and retain multiple thresholds so that the next fragment size can be changed in stages or the next fragment size can be changed abruptly many times. it can. Therefore, when the next fragment size is reduced, it is also effective to set the fragment size to a value for a certain period.

図11は、本実施形態を適用し、複数クライアントに配信した際の一時記憶部913の状態である。
図11では、配信能力が画像生成の半分程度のクライアント1101と、配信能力が画像生成より充分高いクライアント1102の例である。
クライアント1101とクライアント1102に配信を開始した時は、フラグメントサイズが「5」のため、図7に示したようにメモリ使用量が80パーセントを越える。このため、逼迫時のフラグメントサイズが適用され、クライアント1101とクライアント1102のフラグメントは共に2フレームになっている。
FIG. 11 shows a state of the temporary storage unit 913 when the present embodiment is applied and distributed to a plurality of clients.
FIG. 11 shows an example of a client 1101 whose distribution capability is about half that of image generation and a client 1102 whose distribution capability is sufficiently higher than that of image generation.
When distribution is started to the client 1101 and the client 1102, since the fragment size is “5”, the memory usage exceeds 80% as shown in FIG. For this reason, the fragment size at the time of compression is applied, and the fragments of the client 1101 and the client 1102 are both 2 frames.

配信カメラサーバの一時記憶部913の画像用メモリ領域は全クライアント共通で使用しており、最大で15フレーム分保持できるとすると、画像用メモリの使用量は33パーセント(5/15フレーム)となる。このように、本実施形態を適用し、遅延クライアントのフラグメントサイズを減らすことで画像用メモリの参照を最近のデータに集中させることができ、メモリの使用効率を向上させることができる。   The image memory area of the temporary storage unit 913 of the distribution camera server is shared by all clients, and assuming that a maximum of 15 frames can be stored, the amount of image memory used is 33 percent (5/15 frames). . As described above, by applying the present embodiment and reducing the fragment size of the delayed client, it is possible to concentrate the reference of the image memory on recent data, and to improve the use efficiency of the memory.

また、メモリの使用効率を向上させることで、画像フレームを生成時に一時記憶部913に保存できなくなることが減り、画像フレーム落ちの少ない映像配信ができる。同時に、複数クライアントに配信してもメモリの使用量は大きく増えないので、より多くのクライアントへ配信することができる。また、第1の実施形態と一緒に適用することで、より効率よくメモリを使用することができる。
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
Further, by improving the use efficiency of the memory, it is possible to reduce the possibility that the image frame cannot be stored in the temporary storage unit 913 at the time of generation, and it is possible to perform video distribution with less image frame dropping. At the same time, even if the data is distributed to a plurality of clients, the memory usage does not increase greatly, so that it can be distributed to more clients. In addition, by applying together with the first embodiment, the memory can be used more efficiently.
As mentioned above, although preferable embodiment of this invention was described, this invention is not limited to these embodiment, A various deformation | transformation and change are possible within the range of the summary.

(その他の実施形態)
また、本発明は、以下の処理を実行することによっても実現される。即ち、前述した実施形態の機能を実現するソフトウェア(コンピュータプログラム)を、ネットワーク又は各種のコンピュータ読み取り可能な記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
(Other embodiments)
The present invention can also be realized by executing the following processing. That is, software (computer program) that implements the functions of the above-described embodiments is supplied to a system or apparatus via a network or various computer-readable storage media. Then, the computer (or CPU, MPU, etc.) of the system or apparatus reads out and executes the program.

200 映像配信装置、210、撮像処理プログラム、211 配信制御プログラム、212 通信処理プログラム、213 時記憶部、214 遅延監視プログラム、914 メモリ監視プログラム 200 Video Distribution Device, 210, Imaging Processing Program, 211 Distribution Control Program, 212 Communication Processing Program, 213 Time Storage Unit, 214 Delay Monitoring Program, 914 Memory Monitoring Program

Claims (12)

映像フレームを生成して符号化する撮像処理手段と、
前記撮像処理手段により符号化された映像フレームを一時保存する一時記憶部と、
前記一時記憶部に保存した単数または複数の映像フレームを一送信単位として配信を行う配信制御手段と、
前記一送信単位としてまとめられた映像フレームを実際に相手装置に送る通信処理手段と、
前記配信制御手段により行われる配信処理の遅延状況を監視する遅延監視手段と、
を有し、
前記遅延監視手段は、前記配信制御手段により行われている特定の相手装置への配信処理が映像フレームの生成より遅れていることを検出すると、前記配信制御手段が保持している一送信単位の映像フレーム数を減少し、その後、一定期間について前記配信処理の遅延が解消したことを検出すると前記配信制御手段が保持している一送信単位の映像フレーム数を増加することを特徴とする映像配信装置。
Imaging processing means for generating and encoding a video frame;
A temporary storage unit that temporarily stores the video frame encoded by the imaging processing unit;
Distribution control means for distributing one or more video frames stored in the temporary storage unit as one transmission unit;
Communication processing means for actually sending video frames collected as one transmission unit to a partner device;
Delay monitoring means for monitoring the delay status of the distribution processing performed by the distribution control means;
Have
When the delay monitoring unit detects that the distribution process to the specific partner device being performed by the distribution control unit is delayed from the generation of the video frame, the delay monitoring unit stores one transmission unit held by the distribution control unit. A video distribution characterized in that the number of video frames is decreased, and then the number of video frames in one transmission unit held by the distribution control means is increased when it is detected that the delay in the distribution process has been eliminated for a certain period of time. apparatus.
前記遅延監視手段が検出する遅延時間は複数の閾値を持ち、一送信単位の最大数を複数段階で変更することを特徴とする請求項1に記載の映像配信装置。   The video distribution apparatus according to claim 1, wherein the delay time detected by the delay monitoring unit has a plurality of threshold values, and the maximum number of one transmission unit is changed in a plurality of stages. 映像フレームを生成して符号化する撮像処理手段と、
前記撮像処理手段により符号化された映像フレームを一時保存する一時記憶部と、
前記一時記憶部に保存した単数または複数の映像フレームを一送信単位として配信を行う配信制御手段と、
前記一送信単位としてまとめられた映像フレームを実際に相手装置に送る通信処理手段と、
前記一時記憶部のメモリ使用量を上限閾値と復旧閾値とで監視するメモリ監視手段と、
を有し、
前記メモリ監視手段は、前記一時記憶部のメモリ使用量が前記上限閾値を上回ったことを検出すると、前記配信制御手段が配信を行う映像フレームの送信単位を減少させ、
前記一時記憶部のメモリ使用量が前記復旧閾値を下回ったことを検出すると、前記配信制御手段が配信を行う映像フレームの送信単位を増加させることを特徴とする映像配信装置。
Imaging processing means for generating and encoding a video frame;
A temporary storage unit that temporarily stores the video frame encoded by the imaging processing unit;
Distribution control means for distributing one or more video frames stored in the temporary storage unit as one transmission unit;
Communication processing means for actually sending video frames collected as one transmission unit to a partner device;
Memory monitoring means for monitoring the memory usage of the temporary storage unit with an upper limit threshold and a recovery threshold;
Have
When the memory monitoring unit detects that the memory usage of the temporary storage unit exceeds the upper limit threshold, the distribution control unit decreases the transmission unit of the video frame to be distributed,
The video distribution apparatus, wherein when the memory usage of the temporary storage unit is detected to be less than the restoration threshold, the transmission control unit increases a transmission unit of a video frame to be distributed.
前記メモリ監視手段が検出する下限閾値は複数の閾値を持ち、一送信単位に含まれる映像フレーム数の最大値を増減させることを特徴とする請求項3に記載の映像配信装置。   4. The video distribution apparatus according to claim 3, wherein the lower limit threshold detected by the memory monitoring unit has a plurality of thresholds, and increases or decreases the maximum value of the number of video frames included in one transmission unit. 映像フレームを生成して符号化する撮像処理手段と、
前記撮像処理手段により符号化された映像フレームを一時保存する一時記憶部と、
前記一時記憶部に保存した単数または複数の映像フレームを一送信単位として配信を行う配信制御手段と、
前記一送信単位としてまとめられた映像フレームを実際に相手装置に送る通信処理手段と、
前記配信制御手段により行われる配信処理の遅延状況を監視する遅延監視手段と、
前記一時記憶部のメモリ使用量を上限閾値と復旧閾値とで監視するメモリ監視手段と、
を有し、
前記遅延監視手段により相手装置毎への一送信単位に含まれる映像フレーム数を増減させ、かつ前記メモリ監視手段により一送信単位に含まれる映像フレーム数を増減させることを特徴とする映像配信装置。
Imaging processing means for generating and encoding a video frame;
A temporary storage unit that temporarily stores the video frame encoded by the imaging processing unit;
Distribution control means for distributing one or more video frames stored in the temporary storage unit as one transmission unit;
Communication processing means for actually sending video frames collected as one transmission unit to a partner device;
Delay monitoring means for monitoring the delay status of the distribution processing performed by the distribution control means;
Memory monitoring means for monitoring the memory usage of the temporary storage unit with an upper limit threshold and a recovery threshold;
Have
A video distribution apparatus, wherein the delay monitoring means increases or decreases the number of video frames included in one transmission unit for each partner apparatus, and the memory monitoring means increases or decreases the number of video frames included in one transmission unit.
映像フレームを生成して符号化する撮像処理工程と、
前記撮像処理工程において符号化された映像フレームを一時記憶部へ一時保存する一時記憶工程と、
前記一時記憶部に保存した単数または複数の映像フレームを一送信単位として配信を行う配信制御工程と、
前記一送信単位としてまとめられた映像フレームを実際に相手装置に送る通信処理工程と、
前記配信制御工程において行われる配信処理の遅延状況を監視する遅延監視工程と、
を有し、
前記遅延監視工程においては、前記配信制御工程において行われている特定の相手装置への配信処理が映像フレームの生成より遅れていることを検出すると、前記配信制御工程において保持している一送信単位の映像フレーム数を減少し、その後、一定期間について前記配信処理の遅延が解消したことを検出すると前記配信制御工程において保持している一送信単位の映像フレーム数を増加することを特徴とする映像配信方法。
An imaging process that generates and encodes video frames; and
A temporary storage step of temporarily storing the video frame encoded in the imaging processing step in a temporary storage unit;
A delivery control step of delivering one or more video frames stored in the temporary storage unit as one transmission unit;
A communication processing step of actually sending video frames collected as one transmission unit to a partner device;
A delay monitoring step of monitoring a delay state of the distribution processing performed in the distribution control step;
Have
In the delay monitoring step, when it is detected that the distribution process to the specific partner apparatus performed in the distribution control step is delayed from the generation of the video frame, one transmission unit held in the distribution control step And then increasing the number of video frames in one transmission unit held in the distribution control step when it is detected that the delay in the distribution process has been eliminated for a certain period of time. Delivery method.
映像フレームを生成して符号化する撮像処理工程と、
前記撮像処理工程において符号化された映像フレームを一時記憶部へ一時保存する一時記憶工程と、
前記一時記憶部に保存した単数または複数の映像フレームを一送信単位として配信を行う配信制御工程と、
前記一送信単位としてまとめられた映像フレームを実際に相手装置に送る通信処理工程と、
前記一時記憶部のメモリ使用量を上限閾値と復旧閾値とで監視するメモリ監視工程と、
を有し、
前記メモリ監視工程においては、前記一時記憶部のメモリ使用量が前記上限閾値を上回ったことを検出すると、前記配信制御工程において配信を行う映像フレームの送信単位を減少させ、
前記一時記憶部のメモリ使用量が前記復旧閾値を下回ったことを検出すると、前記配信制御工程において配信を行う映像フレームの送信単位を増加させることを特徴とする映像配信方法。
An imaging process that generates and encodes video frames; and
A temporary storage step of temporarily storing the video frame encoded in the imaging processing step in a temporary storage unit;
A delivery control step of delivering one or more video frames stored in the temporary storage unit as one transmission unit;
A communication processing step of actually sending video frames collected as one transmission unit to a partner device;
A memory monitoring step of monitoring the memory usage of the temporary storage unit with an upper limit threshold and a recovery threshold;
Have
In the memory monitoring step, when it is detected that the memory usage of the temporary storage unit exceeds the upper limit threshold, the transmission unit of video frames to be distributed in the distribution control step is decreased,
A video distribution method comprising: increasing a transmission unit of a video frame to be distributed in the distribution control step when detecting that a memory usage amount of the temporary storage unit is less than the restoration threshold.
映像フレームを生成して符号化する撮像処理工程と、
前記撮像処理工程において符号化された映像フレームを一時記憶部へ一時保存する一時記憶工程と、
前記一時記憶部に保存した単数または複数の映像フレームを一送信単位として配信を行う配信制御工程と、
前記一送信単位としてまとめられた映像フレームを実際に相手装置に送る通信処理工程と、
前記配信制御工程において行われる配信処理の遅延状況を監視する遅延監視工程と、
前記一時記憶部のメモリ使用量を上限閾値と復旧閾値とで監視するメモリ監視工程と、
を有し、
前記遅延監視工程において相手装置毎への一送信単位に含まれる映像フレーム数を増減させ、かつ前記メモリ監視工程において一送信単位に含まれる映像フレーム数を増減させることを特徴とする映像配信方法。
An imaging process that generates and encodes video frames; and
A temporary storage step of temporarily storing the video frame encoded in the imaging processing step in a temporary storage unit;
A delivery control step of delivering one or more video frames stored in the temporary storage unit as one transmission unit;
A communication processing step of actually sending video frames collected as one transmission unit to a partner device;
A delay monitoring step of monitoring a delay state of the distribution processing performed in the distribution control step;
A memory monitoring step of monitoring the memory usage of the temporary storage unit with an upper limit threshold and a recovery threshold;
Have
A video distribution method comprising: increasing or decreasing the number of video frames included in one transmission unit for each partner device in the delay monitoring step; and increasing or decreasing the number of video frames included in one transmission unit in the memory monitoring step.
映像フレームを生成して符号化する撮像処理工程と、
前記撮像処理工程において符号化された映像フレームを一時記憶部へ一時保存する一時記憶工程と、
前記一時記憶部に保存した単数または複数の映像フレームを一送信単位として配信を行う配信制御工程と、
前記一送信単位としてまとめられた映像フレームを実際に相手装置に送る通信処理工程と、
前記配信制御工程において行われる配信処理の遅延状況を監視する遅延監視工程とをコンピュータに実行させ、
前記遅延監視工程においては、前記配信制御工程において行われている特定の相手装置への配信処理が映像フレームの生成より遅れていることを検出すると、前記配信制御工程において保持している一送信単位の映像フレーム数を減少し、その後、一定期間について前記配信処理の遅延が解消したことを検出すると前記配信制御工程において保持している一送信単位の映像フレーム数を増加するようコンピュータを制御することを特徴とするコンピュータプログラム。
An imaging process that generates and encodes video frames; and
A temporary storage step of temporarily storing the video frame encoded in the imaging processing step in a temporary storage unit;
A delivery control step of delivering one or more video frames stored in the temporary storage unit as one transmission unit;
A communication processing step of actually sending video frames collected as one transmission unit to a partner device;
Causing the computer to execute a delay monitoring step of monitoring a delay state of the distribution processing performed in the distribution control step;
In the delay monitoring step, when it is detected that the distribution process to the specific partner apparatus performed in the distribution control step is delayed from the generation of the video frame, one transmission unit held in the distribution control step And then controlling the computer to increase the number of video frames in one transmission unit held in the distribution control step when it is detected that the delay in the distribution process has been eliminated for a certain period of time. A computer program characterized by the above.
映像フレームを生成して符号化する撮像処理工程と、
前記撮像処理工程において符号化された映像フレームを一時記憶部へ一時保存する一時記憶工程と、
前記一時記憶部に保存した単数または複数の映像フレームを一送信単位として配信を行う配信制御工程と、
前記一送信単位としてまとめられた映像フレームを実際に相手装置に送る通信処理工程と、
前記一時記憶部のメモリ使用量を上限閾値と復旧閾値とで監視するメモリ監視工程とをコンピュータに実行させ、
前記メモリ監視工程においては、前記一時記憶部のメモリ使用量が前記上限閾値を上回ったことを検出すると、前記配信制御工程において配信を行う映像フレームの送信単位を減少させ、
前記一時記憶部のメモリ使用量が前記復旧閾値を下回ったことを検出すると、前記配信制御工程において配信を行う映像フレームの送信単位を増加させるようコンピュータを制御することを特徴とするコンピュータプログラム。
An imaging process that generates and encodes video frames; and
A temporary storage step of temporarily storing the video frame encoded in the imaging processing step in a temporary storage unit;
A delivery control step of delivering one or more video frames stored in the temporary storage unit as one transmission unit;
A communication processing step of actually sending video frames collected as one transmission unit to a partner device;
Causing the computer to execute a memory monitoring step of monitoring the memory usage of the temporary storage unit with an upper limit threshold and a recovery threshold;
In the memory monitoring step, when it is detected that the memory usage of the temporary storage unit exceeds the upper limit threshold, the transmission unit of video frames to be distributed in the distribution control step is decreased,
A computer program for controlling a computer to increase a transmission unit of a video frame to be distributed in the distribution control step when it is detected that a memory usage amount of the temporary storage unit is less than the recovery threshold.
映像フレームを生成して符号化する撮像処理工程と、
前記撮像処理工程において符号化された映像フレームを一時記憶部へ一時保存する一時記憶工程と、
前記一時記憶部に保存した単数または複数の映像フレームを一送信単位として配信を行う配信制御工程と、
前記一送信単位としてまとめられた映像フレームを実際に相手装置に送る通信処理工程と、
前記配信制御工程において行われる配信処理の遅延状況を監視する遅延監視工程と、
前記一時記憶部のメモリ使用量を上限閾値と復旧閾値とで監視するメモリ監視工程とをコンピュータに実行させ、
前記遅延監視工程において相手装置毎への一送信単位に含まれる映像フレーム数を増減させ、かつ前記メモリ監視工程において一送信単位に含まれる映像フレーム数を増減させるようコンピュータを制御することを特徴とするコンピュータプログラム。
An imaging process that generates and encodes video frames; and
A temporary storage step of temporarily storing the video frame encoded in the imaging processing step in a temporary storage unit;
A delivery control step of delivering one or more video frames stored in the temporary storage unit as one transmission unit;
A communication processing step of actually sending video frames collected as one transmission unit to a partner device;
A delay monitoring step of monitoring a delay state of the distribution processing performed in the distribution control step;
Causing the computer to execute a memory monitoring step of monitoring the memory usage of the temporary storage unit with an upper limit threshold and a recovery threshold;
The computer is controlled to increase or decrease the number of video frames included in one transmission unit for each counterpart device in the delay monitoring step, and to increase or decrease the number of video frames included in one transmission unit in the memory monitoring step. Computer program.
請求項9〜11の何れか1項に記載のコンピュータプログラムを記憶したことを特徴とするコンピュータ読み取り可能な記憶媒体。   A computer-readable storage medium storing the computer program according to any one of claims 9 to 11.
JP2010104251A 2010-04-28 2010-04-28 Video distribution device and video distribution method Pending JP2011234233A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010104251A JP2011234233A (en) 2010-04-28 2010-04-28 Video distribution device and video distribution method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010104251A JP2011234233A (en) 2010-04-28 2010-04-28 Video distribution device and video distribution method

Publications (1)

Publication Number Publication Date
JP2011234233A true JP2011234233A (en) 2011-11-17

Family

ID=45323077

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010104251A Pending JP2011234233A (en) 2010-04-28 2010-04-28 Video distribution device and video distribution method

Country Status (1)

Country Link
JP (1) JP2011234233A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013192026A (en) * 2012-03-14 2013-09-26 Mitsubishi Electric Corp Image transmitter, image transmission method, and program
CN113542342A (en) * 2020-04-21 2021-10-22 株式会社东芝 Server device, information processing method, and storage medium

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013192026A (en) * 2012-03-14 2013-09-26 Mitsubishi Electric Corp Image transmitter, image transmission method, and program
CN113542342A (en) * 2020-04-21 2021-10-22 株式会社东芝 Server device, information processing method, and storage medium
CN113542342B (en) * 2020-04-21 2023-12-01 株式会社东芝 Server device, information processing method, and storage medium

Similar Documents

Publication Publication Date Title
CN111628847B (en) Data transmission method and device
CN106464601B (en) Channel bundling
CN101909196B (en) Channel-switching handling method, system and related equipment
JP5361924B2 (en) Data transmission device, data communication device, and communication program
US9930097B2 (en) Transport accelerator systems and methods
JP2001094625A (en) Data communication unit, data communication method and storage medium
US7663665B2 (en) Communication device and method for transferring video-stream data to a display device and a storage device
JP2007158552A (en) Network camera system and network camera control program
TW201635762A (en) Method and devices for negotiating bandwidth in a peer-to-peer network
CN111147573A (en) Data transmission method and device
CN108924485B (en) Client real-time video stream interrupt processing method and system and monitoring system
JP2016506206A (en) Retransmission and frame synchronization for error control
JP2011234233A (en) Video distribution device and video distribution method
WO2013042636A1 (en) Distribution network and server, and distribution method
JP2014143496A (en) Transmitter, control method and program of transmitter
WO2015154518A1 (en) Flow control method, apparatus and system for variable bitrate media stream
JP2008278240A (en) Communication system, communication equipment, communicating method, and program
JP2008109698A (en) Packet communication apparatus, packet communication method, and packet communications program
JP6410423B2 (en) COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL METHOD, AND PROGRAM
CN108737208A (en) Connection synchronous method, device and computer based on security gateway deep-packet detection
JP7233253B2 (en) Communication system and generator
JP2013168814A (en) Media player parameter estimation device, method, and program
WO2016203870A1 (en) Transmission apparatus, transmission method, and communication system
KR101933175B1 (en) Mediatioin appratus mediating communication betwwen server and client
JP2007235753A (en) Network accumulation type system, transmission apparatus and accumulation server therefor