JP3888505B2 - Video information real-time compression transmission apparatus and method, and recording medium recording a control program for real-time compression transmission control of video information - Google Patents

Video information real-time compression transmission apparatus and method, and recording medium recording a control program for real-time compression transmission control of video information Download PDF

Info

Publication number
JP3888505B2
JP3888505B2 JP26578099A JP26578099A JP3888505B2 JP 3888505 B2 JP3888505 B2 JP 3888505B2 JP 26578099 A JP26578099 A JP 26578099A JP 26578099 A JP26578099 A JP 26578099A JP 3888505 B2 JP3888505 B2 JP 3888505B2
Authority
JP
Japan
Prior art keywords
time
video information
real
transmission
frame data
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.)
Expired - Fee Related
Application number
JP26578099A
Other languages
Japanese (ja)
Other versions
JP2001094984A (en
Inventor
広昌 柳原
康之 中島
暁夫 米山
勝 菅野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
KDDI Corp
Original Assignee
KDDI Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by KDDI Corp filed Critical KDDI Corp
Priority to JP26578099A priority Critical patent/JP3888505B2/en
Priority to US09/657,368 priority patent/US7380015B1/en
Publication of JP2001094984A publication Critical patent/JP2001094984A/en
Priority to US11/244,033 priority patent/US7801969B2/en
Application granted granted Critical
Publication of JP3888505B2 publication Critical patent/JP3888505B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、ライブ映像情報などの映像情報をリアルタイム圧縮伝送する映像情報のリアルタイム圧縮伝送装置及び方法並びに映像情報のリアルタイム圧縮伝送する制御のための制御プログラムを記録した記録媒体に関するものである。
【0002】
【従来の技術】
ライブ映像情報の如き映像情報をリアルタイム圧縮し、コンピュータネットワーク上で伝送する場合、従来の技術では大まかに分けてダイレクト送出方式とFIFO(First-In-First-Out)を用いた方式の2つがある。
ダイレクト送出方式では、ライブエンコーダが出力するフレーム毎にサイズの異なるビット列をそのままネットワークに出力している。その場合、1秒間に送出されるデータの送出ビットレートは一定であっても、瞬間的な送出ビットレートは符号化モードや画像の動きなどの性質によって大きく変動する。そのため、一時的にバーストデータがネットワーク帯域を占有し、その結果パケット衝突やパケットロスが発生し易くなり伝送効率低下を招いている。特に、ストリームの平均送出帯域に対してネットワークの空き帯域に余裕が少ない場合、伝送効率低下が顕著に現れる。
【0003】
ダイレクト送出方式について図13を用いて詳述する。カメラ10から入力された映像信号はリアルタイムでエンコードするリアルタイムエンコーダ11において、フレーム単位(例えば約1/30秒おき)にエンコードされフレームバッファ12に書き込まれる。次にフレーム毎にサイズの異なるフレームデータはネットワーク送出部15aにおいてベストエフォートにより一度にネットワーク16に出力され、ネットワークに接続されたクライアント171 〜17m に送られる。その場合K番目のフレームの瞬間送出ビットレート(Rno-control-K)は図14の波形W10の傾きとなり式(1)から求められる。
【数1】

Figure 0003888505
TSK :K番目のフレームデータのネットワークへの送出時間
K :K番目のフレームデータのフレームバッファへの蓄積量
no-control-K:K番目のフレームのネットワーク送出ビットレート
この瞬間送出ビットレート(Rno-control-K)がストリームの平均ビットレート(RS )を大きく上回るため、パケットのバースト送出のチャンスが増大し、伝送効率の低下を招く。なお、図14において、TFK はK番目のフレームとK+1番目のフレームとのフレーム間隔、TWK はK番目のフレームデータをエンコーダ11がフレームバッファ12に書き込む時間である。
【0004】
FIFOを用いた方式では、ライブエンコーダが出力するフレーム毎にサイズの異なるビット列を順次FIFOに書き込み、エンコーダプロセスとは別プロセスを用いて一定速度でFIFOから読み出したストリームデータを定レートでネットワークに出力する。本方式について図15を用いて詳述する。カメラ10から入力された映像信号はリアルタイムエンコーダ11においてフレーム単位(例えば約1/30秒おき)にエンコードされ順次FIFO12aに書き込まれる。次にネットワーク送出部15aにおいてFIFO12aから一定速度で読み出されたデータは、定レートでネットワーク16に出力され、ネットワークに接続されたクライアント171 〜17m に送られる。その場合の瞬間送出ビットレート(RFIFO)は図16の波形W11の傾きとなり、式(2)のようにストリームの平均ビット(RS )と等しくなる。
【0005】
【数2】
Figure 0003888505
S :ストリームの平均ビットレート
FIFO:ネットワークへの送出ビットレート
そのため、パケットのバースト送出を回避でき効率良く伝送可能である。
【0006】
【発明が解決しようとする課題】
しかし、この方式の場合、オーバーフロー・アンダーフロー制御が必要なFIFOが必要となり、さらにネットワーク出力用の別プロセスを起動する必要が生じてしまい、ダイレクト送出方式に比べ実装が複雑となる。
【0007】
本発明の目的は、前記した従来技術の問題点を除去し、オーバーフロー・アンダーフロー制御の必要なFIFOを用いず、かつネットワーク出力専用のプロセスを起動することなく、パケットロス発生を少なく抑えて、映像情報を効率良くリアルタイム伝送する映像情報のリアルタイム圧縮伝送装置及び方法並びに映像情報のリアルタイム圧縮制御のための制御プログラムを記録した記録媒体を提供することにある。
【0008】
【課題を解決するための手段】
前記した目的を達成するために、本発明の装置は、映像情報をリアルタイムで圧縮伝送するリアルタイム映像情報圧縮伝送装置であって、前記映像情報を受けとる入力手段と、該入力手段からの前記映像情報を予め定めた周期でリアルタイム符号化するエンコーダと、該エンコーダからの前記映像情報のリアルタイム符号化されたフレームデータをフレーム毎に書込み蓄積する蓄積手段と、
該蓄積手段に蓄積された前記リアルタイム符号化された各フレームデータをフレーム毎に順次複数のパケットに分割する分割手段と、該複数のパケットに分割される前のフレームデータが前記蓄積手段に書き込まれ終わった時から、次のフレームデータが書き込み開始される時までに、前記分割された複数のパケットを順次ネットワークに伝送するように送出タイミングを制御して該ネットワークにコネクションレス型プロトコルで伝送する送出タイミング制御伝送手段とを備えたことを特徴とする構成を有している。
また、本発明の装置は、パケット送出タイミング調整部、パケットロス検出部及び送出タイミング微調整パラメータ生成部、パケットロス検出及びビットレートフィードバック部を有するように構成することができる。送出パケット分割部では、映像情報をリアルタイムでフレームデータにエンコードするリアルタイムエンコーダのフレームデータ出力をフレーム毎に書き込み蓄積しているフレームバッファ中のビット列データをMTU(Maximum Transmision Unit :イーサネット最大転送単位)に適合するパケットサイズ毎に分割する。パケット送出タイミング調整部では、前記送出パケット分割部で分割されたパケットを送出タイミングの調整をすることにより、すなわちフレームデータの蓄積のための書き込み時間後で次のフレームデータの蓄積までにパケットの送出をするように送出タイミングの調整をすることにより、バースト的なパケット送出を抑えながらネットワークに出力する。ネットワーク出力処理は、専用プロセスを起動することなくエンコーダ処理ループの中で行う。パケットロス検出及び送出タイミング微調整パラメータ生成部では、ネットワークに出力された各チャネルのパケットをモニタしパケットロスが起こっている場合には、パケット送出タイミング調整部にタイミング微調整命令を出すフィードバック制御を行う。パケットロス検出及びビットレートフィードバック部では、ネットワークに出力された各チャネルのパケットをモニタしパケットロスが起こっている場合には、リアルタイムエンコーダにビットレートを下げるように要求することによりフィードバック制御を行う。
【0009】
本発明の方法は、上記本発明の装置の動作ステップにより構成される。また、本発明の制御プログラムを記録した記録媒体は、本発明の装置の動作ステップを実行するための制御プログラムを記録した記録媒体である。
【0010】
【発明の実施の形態】
以下、図面を参照して、本発明を詳細に説明する。
【0011】
第1の実施例として、トランスポートプロトコルに例えばUDP(User Datagram Protocol)のようなコネクションレス型プロトコルを用いてライブ映像情報を伝送制御により効率良く伝送する方法について述べる。図1はライブ映像情報を伝送制御により効率良く伝送する場合の送出制御部15の内部を説明するためのブロック図である。カメラ10から入力された映像信号はリアルタイムでエンコードするリアルタイムエンコーダ11においてフレーム単位(例えば約1/30秒おき)にエンコードされフレームバッファ12に書き込まれる。次にフレーム毎にサイズの異なるフレームデータは送出パケット分割部13に送られる。送出パケット分割部13では、伝送効率及びIP(Internet Protocol )フラグメンテーションを許可しないネットワークでのパケット透過の観点から、IPフラグメンテーションを起こさず、イーサネット,IP,UDP各ヘッダによるオーバーヘッドを最小にするようなUDPペイロードサイズにフレームデータを分割する。具体的には図2に示すように、イーサネット最大転送単位(MTU)に適合するようなサイズにフレームデータを分割する。UDPのペイロードサイズ(UDP PSIZE)の算出には、式(3)を用いる。
【0012】
【数3】
Figure 0003888505
UDP PSIZE:送出するUDPパケットのペイロードサイズ(単位はバイト)
MTU SIZE:イーサネット最大転送単位(通常1500byte)
IP HEADER SIZE:IPヘッダサイズ(オプションが付かない場合20byte)
UDP HEADER SIZE:UDPヘッダサイズ(通常8byte)
【0013】
また、K番目のフレームデータ(BK バイト)がUDPパケットに分割される個数(CK )は式(4)により算出される。式(4)において小数点以下は切り上げとする。
【数4】
Figure 0003888505
K :K番目のフレームがUDPパケットに分割される個数
K :K番目のフレームのデータサイズ(単位バイト)
UDP PSIZE:送出するUDPパケットのペイロードサイズ(単位はバイト)
【0014】
パケット送出タイミング調整部14について再び図1を用いて説明する。送出パケット分割部13でCK 個に分割されたK番目のフレームデータは、パケット送出タイミング調整部14にて、リアルタイムエンコーダ11がフレームバッファ12にK+1番目のフレームデータを出力するまでの間にネットワーク16に送出され、受信クライアント171 〜17m に送られる。
【0015】
各CK 個のUDPパケットの送出タイミングについて図3を用いて説明する。K番目のフレームとK+1番目のフレームのフレーム間隔をTFK 、K番目のフレームデータをリアルタイムエンコーダがフレームバッファに書き込む時間をTWK とすると、K番目のフレームデータがネットワークに送出することができる時間TSK は式(5)となる。
【数5】
Figure 0003888505
TSK :K番目のフレームデータのネットワークへの送出時間〔秒〕
TFK :K番目のフレームとK+1番目のフレームのフレーム間隔〔秒〕
TWK :K番目のフレームデータをエンコーダがフレームバッファに書き込む時間〔秒〕
【0016】
本発明では時間TSK にCK 個のUDPパケットを等間隔にならべて送出する。その場合、K番目のフレームの送出ビット(Rcontrol-K )は図3中波形W12の傾きとなり、式(6)から算出される。これは、従来のダイレクト送出方式に比べ式(7)に示す通り、各フレームの送出ビットレートがストリームの平均ビットレートに近づいたことを示しており、それによりバースト的な送出を回避することができる。
【数6】
Figure 0003888505
K :K番目のフレームデータのフレームバッファへの蓄積量
control-K :本発明におけるK番目のフレームのネットワークへの送出ビットレート
no-control-K:図14のダイレクト送出方式におけるK番目のフレームのネットワークへの送出ビットレート
S :ストリームの平均ビットレート
【0017】
図1に示すパケット送出タイミング調整部14の動作を図4の送出制御部フローチャートを用いて詳説する。最初フレーム番号Kには初期値1がステップS10において代入される。ステップS11で入力されたK番目のフレームデータは、ステップS12において式(4)から算出されるCK 個のデータに分割される。分割されたデータを(D1,D2,D3,…,DCK )とする。次にステップS14において分割された先頭のデータD1をペイロードとしたUDPパケットを送出する。その際、ステップS13においてパケットの送出開始時刻TR に送出時の時刻を代入しておく。続いてステップS15において代入された現在の時刻TN とパケット送出開始時刻TR の差がTSK /CK 以上になったかどうかをステップS16の判定式(式(8))において判定し、NOの場合、パケット送出タイミングまで時刻が経過していないため、ステップS15,ステップS16を繰り返す。YESの場合、送出タイミングまで時刻が経過しているのでステップS17に進み、本フレームの未送信分割データがある場合には次のデータ(この場合D2)をパケット送出する。この操作をデータDCK まで繰り返し、ステップS17において未送信分割データがなくなった時点で、受信待ちするフレーム番号をステップS18において“1”だけ増加させ、次のフレームデータの受信待ち(ステップS11)へと遷移する。
【0018】
【数7】
Figure 0003888505
N :現在の時刻
R :パケット送出開始時刻
K :K番目のフレームがUDPパケットに分割される個数
TSK :K番目のフレームデータのネットワークへの送出時間〔秒〕
【0019】
以上説明したとおり実施例1によれば、送出制御部15はリアルタイムエンコーダ11がフレームバッファ12に書き込む時間にはネットワーク送出を行わない為、リアルタイムエンコーダ11の処理ループの中にネットワーク出力処理を組み込み可能となる。そのため、FIFOを用いかつネットワーク出力用別プロセスを起動する従来の方式に比べて簡易な実装で実現可能である。さらに、フレームデータのネットワーク送出時間を次のフレームのバッファ書き込み時刻まで引き伸ばすことにより、従来のダイレクト送出方式に比べフレームデータパケットのバースト的なネットワーク送出を回避することができ、その結果パケットロス発生を抑え、伝送効率を改善することができる。
【0020】
次に第2の実施例として、マルチチャネル伝送を行い、さらに伝送パケットをUDPポート番号またはIPマルチキャストアドレスを用いてフィルタリングすることにより、伝送途中のネットワーク帯域が狭まった場合でもフィルタリングされた映像情報のみを伝送可能とする方法についてフィルタリングを示す図5を用いて説明する。各チャネル毎の伝送方法はそれぞれ同じであるため、J(1≦J≦N,Nはチャネル数)チャネルの場合について代表としてJチャネルについて説明する。第1の実施例と同様にカメラ10J において入力された映像情報は、リアルタイムエンコーダ11J においてリアルタイムエンコードされ、フレームバッファ12J に書き込まれる。フレーム単位(例えば約1/30秒おき)で書き込まれたフレームデータは送出パケット分割部13J においてMTUサイズに適合するように分割され、パケット送出タイミング調整部14J においてバースト的な送出を回避しつつ順次ネットワーク16に送出される。
【0021】
各チャネル毎に送出された全てのデータは通常ネットワーク16を介して受信クライアント171 〜17m に送られるが、ルータ(リモートアクセスなど)18以降のネットワーク19が狭帯域となり、1〜Nチャネルのデータすべてが通過する帯域がない場合、そのままではすべてのチャネルデータにおいてパケットロスが発生し、受信クライアント20において何れのチャネルも受信できなくなる。そこで各チャネルパケット毎に異なるポート番号を割り振り、ルータ(リモートアクセスなど)18以降のネットワーク帯域内で通過させたいチャネル(この例の場合、J(1≦J≦N,Nはチャネル数)チャネル)のポート番号を持ったパケットのみを通すようなフィルタ設定をルータ(リモートアクセスなど)18で設定することにより、指定したチャネルデータを正常に受信クライアント20で受信可能となる。
【0022】
各チャネル毎に異なるポート番号を割り振る代わりに、各チャネル毎に異なるIPマルチキャストアドレスを割り振ることにより、受信クライアント20で受信要求(IGMPプロトコルJoinメッセージによる)したIPマルチキャストアドレスに対応するチャネルデータのみルータ(リモートアクセスなど)18で通過させることができ、指定したチャネルデータを正常に受信クライアント20で受信可能となる。
以上説明した通り第2の実施例によれば、マルチチャネル伝送を行い、さらに伝送パケットをUDPポート番号またはIPマルチキャストアドレスを用いてフィルタリングすることにより、伝送途中のネットワーク帯域が狭まった場合でもフィルタリングされた映像情報のみを伝送可能とすることができる。
【0023】
次に第3の実施例として、パケットロス検出及びビットレートフィードバック機能を付加した場合についてビットレートフィードバックを示す図6を用いて説明する。第1の実施例と同様に、カメラ10から入力された映像信号はリアルタイムエンコーダ11においてフレーム単位(例えば約1/30秒おき)にエンコードされフレームバッファ12に書き込まれる。次に、フレームバッファ12から読み出されたフレームデータは送出パケット分割部13において式(9)のCHUNK SIZEに分割されシリアル番号を付加し、パケット送出タイミング調整部14で送出タイミングを調整しながらネットワーク16に送出される。送出されたデータはネットワーク16を経由して受信クライアント171 〜17m で受信される。
【0024】
ここでシリアル番号付加についてシリアル番号付加機能を示す図7を用いて説明する。UDPペイロード31にシリアル番号30を付加するフィールドを設け、パケット毎にシリアル番号を1ずつ増加させた値を格納する。分割されたフレームデータが格納されるフィールド32はシリアル番号のエリア分(SERIAL SIZEとする)だけ減少する。フレームデータ33が分割されるサイズ(CHUNK SIZE)は式(3)のUDP PSIZEを用いて、式(9)のようになる。
【数8】
Figure 0003888505
UDP PSIZE:送出するUDPパケットのペイロードサイズ、単位はバイト
SERIAL SIZE:シリアル番号を格納するサイズ、単位はバイト
CHUNK SIZE:フレームデータが分割されるサイズ、単位はバイト
【0025】
また、K番目のフレームデータ(BK バイト)がUDPパケットに分割される個数(CK )は式(10)により算出される。式(10)において小数点以下は切り上げとする。
【数9】
Figure 0003888505
K :K番目のフレームがUDPパケットに分割される個数
K :K番目のフレームのデータサイズ、単位はバイト
CHUNK SIZE:フレームデータが分割されるサイズ、単位はバイト
【0026】
図6においてネットワーク16に送信されたパケットは、例えば、送信側同一セグメント上でパケットロス検出及びビットレートフィードバック部21において常時モニタされパケットロス率PLRが式(11)により計算される。
【数10】
Figure 0003888505
PLR:パケットロス率
PLN:T秒間にロスしたパケット数
PN:T秒間に送出された全パケット数
T:パケットロス率を計測する時間間隔、単位は秒
【0027】
パケットロスの検出は、順次モニタしたパケット中に付加されているシリアル番号(パケット毎に1ずつ増加する)が順番通り並んでいるかどうかを監視することによって行われ、シリアル番号にとびがあった場合にパケットロス発生と認識する。
パケットロス率PLRがある既定値LTHB (0≦LTHB ≦1)を超えた場合には、現在の送出ビットレートが伝送可能ネットワーク帯域を超えていると判断し、ビットレートを下げるよう要求するビットレート変更要求信号22をリアルタイムエンコーダ11に送信する。ビットレート変更要求信号22を受信したリアルタイムエンコーダ11は、エンコードビットレートを現在のW(0<W≦1)倍に変更する。以上の操作を繰り返すことによりパケットロス率PLRがLTHB 以下で伝送可能となる。
【0028】
以上説明した通り第3の実施例によれば、パケットロス検出及びビットレートフィードバック機能を付加し、ネットワーク帯域に合わせて伝送ビットレートを制御することにより、ネットワーク帯域が足りないか、もしくはネットワーク帯域が変動する場合においてもパケットロスを回避し効率の良い伝送を可能とすることができる。
【0029】
次に第4の実施例として、マルチチャネルライブ映像伝送時に、パケットロス検出及びビットレートフィードバック機能を付加した場合について送出タイミング微調整フィードバックを示す図8を用いて説明する。各チャネル共に同じ動作をするので、J(1≦J≦N,Nはチャネル数)チャネルの伝送方法について代表としてJチャネルについて述べる。第3の実施例と同様にカメラ10J から入力された映像信号はリアルタイムエンコーダ11J においてフレーム単位(例えば約1/30秒おき)にエンコードされフレームバッファ12J に書き込まれる。次に、フレームバッファ12J から読み出されたフレームデータは挿入パケット分割部13J において式(9)のフレームデータ分割サイズ(CHUNK SIZE)に分割されシリアル番号を付加し、パケット送出タイミング調整部14J で送出タイミングを調整しながらネットワーク16に送出される。送出されたデータはネットワーク16を経由して受信クライアント(171 〜17m )で受信される。
ネットワーク16に送信されたパケットは、例えば送信側同一セグメント上でパケットロス検出及び送出タイミング微調整パラメータ生成部23において常時モニタされる各チャネルのパケットロス率PLRJ (1≦J≦N,Nは全チャネル数)が式(12)により計算される。
【数11】
Figure 0003888505
PLRJ :Jチャネルデータのパケットロス率
PLNJ :Jチャネルデータに関してT秒間にロスしたパケット数
PNJ :Jチャネルデータに関してT秒間に送出された全パケット数
T:パケットロス率を計測する時間間隔、単位は秒
【0030】
パケットロス検出及び送出タイミング微調整パラメータ生成部23では、パケット送出タイミング調整部14J にフィードバックするパケット送出微調整パラメータSJ (S1 ,S2 ,…,SN ,Nは全チャネル数,1≦J≦N)をフレーム受信タイミングで順次変化させながらパケットロス率PLRJ の各チャネル合計を最小とするパケット送出微調整パラメータSJ を決定する。SJ の変化のさせ方の詳細については後述する。このパケット送出微調整パラメータSJ は共有メモリ25を介してパケット送出タイミング調整部14J に渡され、送出タイミング微調整時に用いられる。
【0031】
パケット送出タイミング調整部14J について第4の実施例における送出制御部のフローチャートを示す図9を用いて説明する。最初フレーム番号Kには初期値1がステップS20において代入される。ステップS21で入力されたK番目のフレームデータは、ステップS22において式(10)から算出されるCK 個のデータに分割される。分割されたデータを(D1,D2,D3,…,DCK )とする。次にステップS23において共有メモリからJチャネル用のタイミング微調整パラメータSJ (1≦J≦N,Nはチャネル数)を読み出す。ステップS24の判定においてSJ が0の場合、ステップS26に進む。SJ が0以外の場合、ステップS25において式(13)で計算される送信ディレイSEND DELAYJ の時間ウエイトをかけることによりJチャネルパケットの送出タイミングを遅らせた後ステップS26に進む。
【0032】
【数12】
Figure 0003888505
SEND DELAYJ :Jチャネル用パケット送信ディレイ、単位は秒
MTU SIZE:イーサネット最大転送単位、通常1500byte
J :Jチャネル用タイミング微調整パラメータ(SJ ,1≦J≦N,Nはチャネル数)
BR NET:ネットワークの実効帯域、単位は bit/sec
【0033】
次にステップS27で分割された先頭のデータD1をペーロードとしたUDPパケットを送出する。その際、ステップS26においてパケットの送出開始時刻TR に送出時の時刻を代入しておく。続いてステップS28において代入された現在の時刻TN と前TR の差がTSK /CK 以上になったかどうかをステップS29の判定式(式8)において判定し、NOの場合、パケット送出タイミングまで時刻が経過していないため、ステップS28,ステップS29を繰り返す。YESの場合、送出タイミングまで時刻が経過しているのでステップS30に進み、本フレームの未送信分割データがある場合次のデータ(この場合D2)をパケット送出する。これらの操作をデータDCK まで繰り返し、ステップS30において未送信分割データがなくなった時点で、受信待ちするフレーム番号KをステップS31において1増加させ、次のフレームデータの受信待ち(ステップS21)へと遷移する。
【0034】
次にタイミング微調整パラメータSJ (S1 ,S2 ,S3 ,…,SN ,Nは全チャネル数、1≦J≦N)の生成方法をパケット検出及び送出タイミング微調整パラメータ生成部のフローチャートを示す図10を用いて説明する。まず、ステップS40においてタイミング微調整パラメータSJ (S1 ,S2 ,S3 ,…,SN ,Nは全チャネル数、1≦J≦N)すべてにデフォルト値として0を代入する。次にステップS41で各チャネル毎のパケットロス率PLRJ (式12参照)が各チャネル毎に計算される。そしてステップS42において各チャネル毎のパケットロス率合計が0に等しいかどうかを判断し、0に等しい場合ステップS41及びステップS42を繰り返し、0に等しくない場合ステップS43に進む。ステップS43では、次にパケットロス率を測定すべきフレームタイミングとなる基準チャネルのフレーム番号Kに、初期値として受信した基準チャネルデータの最新のフレーム番号(RCFN)を代入する。基準チャネルには1〜Nチャネル中でフレームレート(フレーム枚数/秒)が一番低いチャネルを選択する。ステップS44ではタイミング微調整パラメータSJ (S1 ,S2 ,S3 ,…,SN ,Nは全チャネル数、1≦J≦N)を0≦SJ <Mの範囲で1ずつすべての組み合わせで変化させ、ステップS44,ステップS45,ステップS46,ステップS47,ステップS48,ステップS49を実行する処理ループを形成する。ここで、Mはパケット送出タイミング微調整パラメータSJ (S1 ,S2 ,S3 ,…,SN ,Nは全チャネル数、1≦J≦N)の上限値を表しており、小数点以下切り捨てにより0以上の整数として式(14)より導出される。パケット送出タイミング微調整パラメータSJ はパケットの送出タイミングをパケット何個分遅らせるかを示しており、パケット送出タイミング微調整パラメータSJ (1≦J≦N,Nは全チャネル数)を示す図11において、P10の時刻(SJ が0の場合)で送出されるパケットが、最高P11の時刻(SJ がM−1の場合)まで送出タイミングが遅らせられることを示している。
【0035】
【数13】
Figure 0003888505
M:パケット送出タイミング微調整パラメータSJ (S1 ,S2 ,S3 ,…,SN ,Nは全チャネル数、1≦J≦N)の上限値
CHUNK SIZE:フレームデータが分割されるサイズ、単位はバイト
BR STREAM TOTAL:1〜Nチャネルのトータルビットレート
N:チャネル数
MTU SIZE:イーサネット最大転送単位、通常1500byte
BR NET:ネットワークの実行ビットレート
(BR STREAM TOTAL/N):1チャネルあたりの平均ビットレート
(CHUNK SIZE*8/(BR STREAM TOTAL/N):1チャネルあたりの平均パケット送出間隔、単位は秒
(MTU SIZE*8/BR NET):MTUを送出するのに要する時間
【0036】
図10のステップS45では受信した基準チャネルデータの最新のフレーム番号(RCFN)がK以上になるまでウエイトをかけ、K以上になった時点でステップS46においてKの値を1増加させる。これはステップS44〜ステップS49のループ処理を基準チャネルの各フレーム毎に1回処理することを示している。ステップS44〜ステップS49のループ処理を完結するタイミングはステップS47で計算された各チャネル毎のパケットロス率PLRJ (1≦J≦N,Nは全チャネル数)を用いてステップS48において計算された各チャネルのパケットロス率合計が0に等しくなった場合、または、ステップS49においてすべての組み合わせでループ処理を実行した場合である。SJ の変化のさせ方は、(S1 ,S2 ,S3 ,…,SN )=(0,0,…,0)→(1,0,…,0)→(1,1,…,0)…→(1,1,…,1)→(2,1,…,1)→(2,2,…,1)…→(2,2,…,2)…→(M−1,M−2,…,M−2)…→(M−1,M−1,…,M−1)の順番で行い、MN 通りの組合せを実行する。ステップS48でループ処理が完結した場合、ステップS51でその時のタイミング微調整パラメータSJ (S1 ,S2 ,S3 ,…,SN ,Nは全チャネル数、1≦J≦N)を各チャネルのパケット送出タイミング調整部で読み出すことができる共有メモリに書き込み、ステップS41に戻る。ステップS49でループ処理が完結した場合、各チャネルのパケットロス率合計を最小とするタイミング微調整パラメータSJ (S1 ,S2 ,S3 ,…,SN ,Nは全チャネル数、1≦J≦N)をステップ50で共有メモリに書き込み、ステップS41に戻る。
以上説明した通り実施例4によれば、マルチチャネルライブ映像伝送時に、各チャネルのパケットロス検出及びパケット送出タイミング微調整を行うことにより、パケットロス発生を抑え、マルチチャネルライブ映像情報の伝送時の伝送効率を改善することができる。
【0037】
以上本発明の実施例1〜4について、図面を参照して詳述したが、具体的な構成例は、これらの実施例1〜4に限られるものではなく、本発明の要旨を逸脱しない範囲で設計変更があっても、本発明の技術思想の範囲に含まれることは明らかである。
例えば、前述した実施例1〜4においては、伝送制御プログラムを図12に示したコンピュータ読み取り可能な記録媒体200に記録して、この記録媒体200に記録された伝送制御プログラムを同図に示したコンピュータ100に読み取らせ、所望の伝送制御を実行することができる。ここで、伝送制御プログラムは、図1,図5,図6,図8に示した伝送制御部15の機能を実行するための制御手順である。
【0038】
図12に示したコンピュータ100は、上記伝送制御プログラムを実行するCPU101と、キーボード,マウス等の入力装置102と、各種データを記録するROM(Read Only Memory) 103と、演算パラメータ等を記憶するRAM(Random Access Memory)104と、記録媒体200から伝送制御プログラムを読み取る読取装置105と、ディスプレイ,プリンタ等の出力装置106と、装置各部を接続するバスBUSとを備えている。
CPU101は、記録媒体200に記録されている伝送制御プログラムを読取装置105を経由して読み込んだ後、この伝送制御プログラムを実行することにより、前述した伝送処理を行なうことができる。
ここで、記録媒体200には、光ディスク,フロッピーディスク,ハードディスク等の各種可搬型の記録媒体が含まれることはもとより、ネットワークのような伝送媒体内でデータを一時的に記憶保持するような記録媒体も含まれる。
【0039】
ITU−T H.263ベースのライブ映像情報を用いた伝送シミュレーション実験では、10Mbps 10Base−T LANにおいて、ネットワーク使用率60%の時に512Kbpsの映像情報を伝送した場合、従来の方式ではパケットロス率0.20%だったものが本発明による方法装置では0.0%に、100Kbpsの映像情報を同じ条件で伝送した場合、従来の方式ではパケットロス率0.32%だったものが本発明による方法装置では0.0%に減少した。ネットワーク使用率70%の時には512Kbpsの映像情報を伝送した場合、従来の方式ではパケットロス率0.68%だったものが本発明による方法装置では0.28%に、100Kbpsの映像情報を同じ条件で伝送した場合、従来の方式ではパケットロス率0.19%だったものが本発明による方法装置では0.03%に減少した。
【0040】
【発明の効果】
以上の説明から明らかなように、本発明による装置,方法,記録媒体により次の効果が得られる。
(1)請求項1,2,3,12,15に記載の発明により,オーバーフローアンダーフロー制御が必要なFIFOを用いることなく、かつ、ネットワーク出力用別プロセスを起動することなく、パケット送出の平滑化を行うことにより、パケットロス発生を抑えて映像情報を効率よく伝送することを可能とする効果がある。
(2)請求項4に記載の発明により、前記効果(1)に追加して、さらに、マルチチャネル伝送を行う場合、伝送途中のネットワーク帯域が狭くなった場合でもフィルタリングされた映像情報のみを伝送可能とする効果がある。
(3)請求項5,6,7,13,16に記載の発明により、前記効果(1)に追加して、さらに、伝送ネットワークの帯域がストリームの帯域を定常的または一時的にオーバーしてライブ映像情報の圧縮伝送が困難になった場合でも、エンコーダにフィードバックされた情報から符号化ビットレートを下げることによりライブ情報の圧縮伝送を可能とする効果がある。
(4)請求項8,9,10,11,14,17に記載の発明により、前記効果(1)に追加して、さらに、各チャネル毎のパケット送出の平滑化を行い、かつ各チャネルのパケットロス率合計を最小とするような送出タイミング制御を行うことにより、複数チャネルの映像情報をリアルタイムで効率よく圧縮伝送することを可能とする効果がある。
【図面の簡単な説明】
【図1】本発明の第1の実施例による送出制御ブロック図である。
【図2】本発明の第1の実施例によるフレームデータからUDPパケットへの分割を説明するための信号フレーム図である。
【図3】本発明の第1の実施例によるフレームバッファ蓄積概念を説明するためのタイムチャートである。
【図4】本発明の第1の実施例による送出制御部の動作を示すフローチャートである。
【図5】本発明の第2の実施例によるフィルタリングを説明するためのブロック図である。
【図6】本発明の第3の実施例によるビットレートのフィードバック制御を説明するためのブロック図である。
【図7】本発明の第3の実施例によるシリアル番号付加動作を説明するためのブロック図である。
【図8】本発明の第4の実施例における複数チャネルに対する送出タイミングの微調整フィードバック制御を説明するためのブロック図である。
【図9】本発明の第4の実施例における送出制御部の動作を説明するためのフローチャートである。
【図10】本発明の第4の実施例におけるパケットロス検出および送出タイミング微調整パラメータ生成部の動作を説明するためのフローチャートである。
【図11】本発明の第4の実施例におけるパケット送出タイミング微調整パラメータSJ (1≦J≦N,Nは全チャネル数)を説明するためのタイムチャートである。
【図12】本発明の第1の実施例から第4の実施例の変形例を示すブロック図である。
【図13】ダイレクト送出方式による従来の伝送装置例を示すブロック図である。
【図14】ダイレクト送出方式による従来の伝送装置におけるフレームバッファ蓄積概念を説明するためのタイムチャートである。
【図15】FIFOを用いた方式による従来の伝送装置例を示すブロック図である。
【図16】FIFOを用いた方式による従来の伝送装置におけるフレームバッファ蓄積概念を説明するためのタイムチャートである。
【符号の説明】
10,101 ,…10J ,…,10N カメラ
11,111 ,…11J ,…,11N リアルタイムエンコーダ
12,121 ,12J ,…,12N フレームバッファ
12a FIFO
13,131 ,…13J ,…,13N 送出パケット分割部
14,141 ,…14J ,…,14N パケット送出タイミング調整部
15 送出制御部
15a ネットワーク送出部
16 ネットワーク
171 ,…17m 受信クライアント
18 ルータ
19 ネットワーク
20 受信クライアント
21 パケットロス検出及びビットレートフィードバック部
22 ビットレート変更要求信号
23 パケットロス検出及び送出タイミング微調整パラメータ生成部
24 パケット送出微調整パラメータ
25 共有メモリ[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a real-time compression transmission apparatus and method for video information that performs real-time compression transmission of video information such as live video information, and a recording medium that records a control program for controlling real-time compression transmission of video information.
[0002]
[Prior art]
When video information such as live video information is compressed in real time and transmitted over a computer network, the conventional technology is roughly divided into two methods: a direct transmission method and a FIFO (First-In-First-Out) method. .
In the direct transmission method, a bit string having a different size for each frame output by the live encoder is output to the network as it is. In that case, even if the transmission bit rate of the data transmitted per second is constant, the instantaneous transmission bit rate varies greatly depending on properties such as the encoding mode and the motion of the image. For this reason, burst data temporarily occupies the network bandwidth, and as a result, packet collision and packet loss are likely to occur, resulting in a decrease in transmission efficiency. In particular, when there is little room in the network free bandwidth with respect to the average transmission bandwidth of the stream, a decrease in transmission efficiency appears remarkably.
[0003]
The direct transmission method will be described in detail with reference to FIG. A video signal input from the camera 10 is encoded in a frame unit (for example, approximately every 1/30 seconds) and written to the frame buffer 12 in a real-time encoder 11 that encodes in real time. Next, frame data having a different size for each frame is output to the network 16 at a time with the best effort by the network transmission unit 15a, and the client 17 connected to the network.1~ 17mSent to. In that case, the instantaneous transmission bit rate of the Kth frame (Rno-control-K) Is the waveform W in FIG.TenAnd is obtained from equation (1).
[Expression 1]
Figure 0003888505
TSK: Time to send the Kth frame data to the network
BK: Amount of Kth frame data stored in the frame buffer
Rno-control-K: Kth frame network transmission bit rate
This instantaneous transmission bit rate (Rno-control-K) Is the average bit rate of the stream (RS) Greatly increases the chance of packet burst transmission, leading to a decrease in transmission efficiency. In FIG. 14, TFKIs the frame interval between the Kth frame and the (K + 1) th frame, TWKIs the time for the encoder 11 to write the Kth frame data to the frame buffer 12.
[0004]
In the method using the FIFO, bit strings of different sizes are sequentially written to the FIFO for each frame output by the live encoder, and stream data read from the FIFO at a constant rate using a process different from the encoder process is output to the network at a constant rate. To do. This method will be described in detail with reference to FIG. The video signal input from the camera 10 is encoded by the real-time encoder 11 in frame units (for example, approximately every 1/30 seconds) and sequentially written in the FIFO 12a. Next, data read from the FIFO 12a at a constant speed in the network sending unit 15a is output to the network 16 at a constant rate, and the client 17 connected to the network.1~ 17mSent to. The instantaneous transmission bit rate (RFIFO) Is the waveform W in FIG.11And the average bit of the stream (RS).
[0005]
[Expression 2]
Figure 0003888505
RS  : Average bit rate of stream
RFIFO: Bit rate sent to the network
Therefore, packet burst transmission can be avoided and transmission can be performed efficiently.
[0006]
[Problems to be solved by the invention]
However, in this system, a FIFO that requires overflow / underflow control is required, and it becomes necessary to start another process for network output, which makes the implementation more complicated than the direct transmission system.
[0007]
The object of the present invention is to eliminate the above-mentioned problems of the prior art, suppress the occurrence of packet loss without using a FIFO that requires overflow / underflow control, and without starting a process dedicated to network output. An object of the present invention is to provide a video information real-time compression transmission apparatus and method for efficiently transmitting video information in real time, and a recording medium on which a control program for real-time compression control of video information is recorded.
[0008]
[Means for Solving the Problems]
  In order to achieve the above object, an apparatus according to the present invention is a real-time video information compression / transmission apparatus for compressing and transmitting video information in real time, the input means for receiving the video information, and the video information from the input means. Encoder for real-time encoding at a predetermined cycle, and storage means for writing and storing the frame data of the video information from the encoder for each frame,
  A dividing means for sequentially dividing each frame data encoded in the storage means in real time into a plurality of packets for each frame; and the plurality of packetsWhen the next frame data starts to be written after the frame data before being divided intountil,The plurality of divided packetsTransmission timing control transmission means for controlling transmission timing so as to sequentially transmit to a network and transmitting to the network using a connectionless protocol is provided.
  In addition, the apparatus of the present invention can be configured to include a packet transmission timing adjustment unit, a packet loss detection unit, a transmission timing fine adjustment parameter generation unit, a packet loss detection and bit rate feedback unit. In the transmission packet dividing unit, the frame data output of the real-time encoder that encodes the video information into the frame data in real time is written for each frame, and the bit string data in the frame buffer is stored in MTU (Maximum Transmision Unit: Ethernet maximum transfer unit). Divide for each matching packet size. The packet transmission timing adjustment unit transmits the packet by adjusting the transmission timing of the packet divided by the transmission packet division unit, that is, after the write time for storing the frame data and before storing the next frame data. By adjusting the transmission timing so that the packet is transmitted, the packet is output to the network while suppressing bursty packet transmission. Network output processing is performed in an encoder processing loop without starting a dedicated process. The packet loss detection and transmission timing fine adjustment parameter generation unit monitors the packet of each channel output to the network, and when packet loss occurs, performs feedback control to issue a timing fine adjustment command to the packet transmission timing adjustment unit. Do. The packet loss detection and bit rate feedback unit performs feedback control by monitoring the packet of each channel output to the network and requesting the real time encoder to lower the bit rate when packet loss occurs.
[0009]
The method of the present invention comprises the operation steps of the apparatus of the present invention. Moreover, the recording medium which recorded the control program of this invention is a recording medium which recorded the control program for performing the operation | movement step of the apparatus of this invention.
[0010]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, the present invention will be described in detail with reference to the drawings.
[0011]
As a first embodiment, a method for efficiently transmitting live video information by transmission control using a connectionless protocol such as UDP (User Datagram Protocol) as a transport protocol will be described. FIG. 1 is a block diagram for explaining the inside of the transmission control unit 15 when live video information is efficiently transmitted by transmission control. A video signal input from the camera 10 is encoded in a frame unit (for example, approximately every 1/30 second) in a real-time encoder 11 that encodes in real time, and is written in the frame buffer 12. Next, frame data having a different size for each frame is sent to the transmission packet dividing unit 13. From the viewpoint of transmission efficiency and packet transmission in a network that does not allow IP (Internet Protocol) fragmentation, the outgoing packet dividing unit 13 does not cause IP fragmentation and minimizes the overhead due to the Ethernet, IP, and UDP headers. Divide frame data into payload sizes. Specifically, as shown in FIG. 2, the frame data is divided into sizes suitable for the Ethernet maximum transfer unit (MTU). UDP payload size (UDP Equation (3) is used for the calculation of (PSIZE).
[0012]
[Equation 3]
Figure 0003888505
UDP PSIZE: Payload size of the UDP packet to be sent (unit: bytes)
MTU SIZE: Ethernet maximum transfer unit (usually 1500 bytes)
IP HEADER SIZE: IP header size (20 bytes if no option is provided)
UDP HEADER SIZE: UDP header size (usually 8 bytes)
[0013]
The Kth frame data (BKNumber of bytes (bytes) divided into UDP packets (CK) Is calculated by equation (4). In equation (4), the decimal part is rounded up.
[Expression 4]
Figure 0003888505
CK: Number of Kth frame divided into UDP packets
BK: Kth frame data size (in bytes)
UDP PSIZE: Payload size of the UDP packet to be sent (unit: bytes)
[0014]
The packet transmission timing adjustment unit 14 will be described again with reference to FIG. The outgoing packet division unit 13 CKThe K-th frame data divided into pieces is sent to the network 16 by the packet transmission timing adjustment unit 14 until the real-time encoder 11 outputs the (K + 1) -th frame data to the frame buffer 12, and the receiving client 171~ 17mSent to.
[0015]
Each CKThe transmission timing of each UDP packet will be described with reference to FIG. The frame interval between the Kth frame and the (K + 1) th frame is TF.KTW for the time when the real-time encoder writes the Kth frame data to the frame bufferKThen, the time TS during which the Kth frame data can be transmitted to the networkKBecomes Equation (5).
[Equation 5]
Figure 0003888505
TSK: Time to send the Kth frame data to the network [seconds]
TFK: Frame interval [seconds] between the Kth frame and the (K + 1) th frame
TWK: Time for the encoder to write the Kth frame data to the frame buffer [seconds]
[0016]
In the present invention, time TSKTo CKThe UDP packets are sent out at regular intervals. In that case, the transmission bit (R) of the Kth framecontrol-K) Is the waveform W in FIG.12And is calculated from equation (6). This indicates that the transmission bit rate of each frame has approached the average bit rate of the stream, as shown in Equation (7), compared to the conventional direct transmission method, thereby avoiding bursty transmission. it can.
[Formula 6]
Figure 0003888505
BK: Amount of Kth frame data stored in the frame buffer
Rcontrol-K: K bit frame transmission bit rate in the present invention
Rno-control-K: Transmission bit rate of the Kth frame to the network in the direct transmission method of FIG.
RS: Average bit rate of stream
[0017]
The operation of the packet transmission timing adjustment unit 14 shown in FIG. 1 will be described in detail with reference to the transmission control unit flowchart of FIG. An initial value 1 is substituted for the first frame number K in step S10. The K-th frame data input in step S11 is C calculated from equation (4) in step S12.KIt is divided into pieces of data. The divided data (D1, D2, D3, ..., DCK). Next, a UDP packet having the payload of the top data D1 divided in step S14 is transmitted. At that time, in step S13, the packet transmission start time TRSubstitute the time of transmission at. Subsequently, the current time T substituted in step S15NAnd packet transmission start time TRThe difference is TSK/ CKWhether or not the above has been reached is determined by the determination formula (formula (8)) in step S16. If NO, the time has not elapsed until the packet transmission timing, so steps S15 and S16 are repeated. In the case of YES, since the time has passed until the transmission timing, the process proceeds to step S17, and when there is untransmitted divided data of this frame, the next data (D2 in this case) is transmitted as a packet. This operation is changed to data DCKThe frame number to be received is increased by “1” in step S18 when there is no untransmitted divided data in step S17, and a transition is made to reception of the next frame data (step S11).
[0018]
[Expression 7]
Figure 0003888505
TN: Current time
TR: Packet transmission start time
CK: Number of Kth frame divided into UDP packets
TSK: Time to send the Kth frame data to the network [seconds]
[0019]
As described above, according to the first embodiment, the transmission control unit 15 does not perform network transmission at the time when the real-time encoder 11 writes to the frame buffer 12, so that network output processing can be incorporated into the processing loop of the real-time encoder 11. It becomes. Therefore, it can be realized with a simpler implementation than the conventional method using a FIFO and starting another process for network output. Furthermore, by extending the frame data network transmission time to the buffer write time of the next frame, it is possible to avoid burst network transmission of frame data packets as compared with the conventional direct transmission method, resulting in packet loss. Can be suppressed and transmission efficiency can be improved.
[0020]
Next, as a second embodiment, only the video information filtered even when the network bandwidth is narrowed during transmission by performing multi-channel transmission and further filtering the transmission packet using the UDP port number or IP multicast address. Will be described with reference to FIG. 5 showing filtering. Since the transmission method for each channel is the same, the J channel will be described as a representative for the case of J (1 ≦ J ≦ N, where N is the number of channels) channels. The camera 10 as in the first embodiment.JThe video information input in the real time encoder 11JReal time encoded and frame buffer 12JIs written to. The frame data written in frame units (for example, about every 1/30 seconds) is sent to the transmission packet dividing unit 13.JThe packet transmission timing adjustment unit 14 is divided to match the MTU size in FIG.JAre sequentially transmitted to the network 16 while avoiding bursty transmission.
[0021]
All data sent out for each channel is usually received via the network 16 by the receiving client 17.1~ 17mHowever, if the network 19 after the router (remote access, etc.) 18 has a narrow band and there is no band through which all the data of the 1 to N channels pass, packet loss occurs in all channel data as it is, and reception The client 20 cannot receive any channel. Therefore, a different port number is assigned to each channel packet, and the channel (route in this example is J (1 ≦ J ≦ N, where N is the number of channels)) which is desired to pass through the network band after the router (remote access, etc.) 18. When the router (remote access or the like) 18 is set so as to pass only a packet having the port number, the receiving client 20 can normally receive the designated channel data.
[0022]
Instead of assigning a different port number to each channel, a different IP multicast address is assigned to each channel, so that only the channel data corresponding to the IP multicast address requested by the receiving client 20 (by the IGMP protocol Join message) is transmitted to the router ( Remote access, etc.) 18 and the specified channel data can be normally received by the receiving client 20.
As described above, according to the second embodiment, multi-channel transmission is performed, and further, transmission packets are filtered using a UDP port number or an IP multicast address, so that even if the network bandwidth during transmission is narrowed, filtering is performed. Only video information can be transmitted.
[0023]
Next, as a third embodiment, a case where packet loss detection and bit rate feedback functions are added will be described with reference to FIG. 6 showing bit rate feedback. As in the first embodiment, the video signal input from the camera 10 is encoded by the real-time encoder 11 in units of frames (for example, approximately every 1/30 seconds) and written in the frame buffer 12. Next, the frame data read out from the frame buffer 12 is sent to the CHUNK of the equation (9) by the transmission packet dividing unit 13. The packet is divided into SIZEs, serial numbers are added, and the packet transmission timing adjustment unit 14 transmits the data to the network 16 while adjusting the transmission timing. The transmitted data is sent to the receiving client 17 via the network 16.1~ 17mReceived at.
[0024]
Here, serial number addition will be described with reference to FIG. 7 showing a serial number addition function. A field for adding a serial number 30 is provided in the UDP payload 31 and a value obtained by incrementing the serial number by 1 is stored for each packet. The field 32 in which the divided frame data is stored has a serial number area (SERIAL). SIZE). Size at which frame data 33 is divided (CHUNK SIZE) is the UDP of equation (3) Using PSIZE, equation (9) is obtained.
[Equation 8]
Figure 0003888505
UDP PSIZE: Payload size of outgoing UDP packet, unit is byte
SERIAL SIZE: Size to store serial number, unit is byte
CHUNK SIZE: Size at which frame data is divided, in bytes
[0025]
The Kth frame data (BKNumber of bytes (bytes) divided into UDP packets (CK) Is calculated by equation (10). In equation (10), the decimal part is rounded up.
[Equation 9]
Figure 0003888505
CK: Number of Kth frame divided into UDP packets
BK: Data size of Kth frame, unit is byte
CHUNK SIZE: Size at which frame data is divided, in bytes
[0026]
In FIG. 6, for example, the packet transmitted to the network 16 is constantly monitored by the packet loss detection and bit rate feedback unit 21 on the same segment on the transmission side, and the packet loss rate PLR is calculated by equation (11).
[Expression 10]
Figure 0003888505
PLR: Packet loss rate
PLN: Number of packets lost in T seconds
PN: Total number of packets sent in T seconds
T: Time interval for measuring the packet loss rate, in seconds
[0027]
Packet loss is detected by monitoring whether serial numbers (incremented by 1 for each packet) added to the sequentially monitored packets are arranged in order. It is recognized that packet loss has occurred.
Default value L with packet loss rate PLRTHB(0 ≦ LTHBIf ≦ 1) is exceeded, it is determined that the current transmission bit rate exceeds the transmittable network bandwidth, and a bit rate change request signal 22 for requesting a reduction in the bit rate is transmitted to the real-time encoder 11. The real-time encoder 11 that has received the bit rate change request signal 22 changes the encoding bit rate to the current W (0 <W ≦ 1) times. By repeating the above operation, the packet loss rate PLR becomes LTHBTransmission is possible in the following.
[0028]
As described above, according to the third embodiment, the packet loss detection and bit rate feedback functions are added, and the transmission bit rate is controlled according to the network bandwidth. Even in the case of fluctuations, packet loss can be avoided and efficient transmission can be achieved.
[0029]
Next, as a fourth embodiment, a case where packet loss detection and a bit rate feedback function are added during multi-channel live video transmission will be described with reference to FIG. Since each channel performs the same operation, a J channel (1 ≦ J ≦ N, N is the number of channels) will be described as a representative of the J channel transmission method. The camera 10 as in the third embodiment.JThe video signal input from the real-time encoder 11JAre encoded in frame units (for example, approximately every 1/30 second) and frame buffer 12JIs written to. Next, the frame buffer 12JThe frame data read from is inserted packet dividing unit 13J(9) in the frame data division size (CHUNK) SIZE) and a serial number is added to the packet transmission timing adjustment unit 14.JIs sent to the network 16 while adjusting the sending timing. The sent data is sent via the network 16 to the receiving client (171~ 17m).
The packet transmitted to the network 16 is, for example, a packet loss rate PLR of each channel that is constantly monitored by the packet loss detection and transmission timing fine adjustment parameter generation unit 23 on the same segment on the transmission side.J(1 ≦ J ≦ N, where N is the total number of channels) is calculated by equation (12).
## EQU11 ##
Figure 0003888505
PLRJ: J channel data packet loss rate
PLNJ: Number of packets lost in T seconds for J channel data
PNJ: Total number of packets sent in T seconds for J channel data
T: Time interval for measuring the packet loss rate, in seconds
[0030]
In the packet loss detection and transmission timing fine adjustment parameter generation unit 23, the packet transmission timing adjustment unit 14JPacket transmission fine adjustment parameter S to be fed back toJ(S1, S2, ..., SN, N is the total number of channels, 1 ≦ J ≦ N), and the packet loss rate PLR while sequentially changing the frame reception timingJPacket transmission fine-tuning parameter S that minimizes the total of each channelJTo decide. SJDetails of how to change these will be described later. This packet transmission fine adjustment parameter SJThe packet transmission timing adjustment unit 14 via the shared memory 25JUsed for fine adjustment of transmission timing.
[0031]
Packet transmission timing adjustment unit 14JWill be described with reference to FIG. 9 showing a flowchart of the transmission control unit in the fourth embodiment. An initial value 1 is assigned to the first frame number K in step S20. The K-th frame data input in step S21 is C calculated from equation (10) in step S22.KIt is divided into pieces of data. The divided data (D1, D2, D3, ..., DCK). Next, in step S23, the timing fine adjustment parameter S for the J channel is read from the shared memory.J(1 ≦ J ≦ N, where N is the number of channels) is read. In the determination of step S24, SJIf is 0, the process proceeds to step S26. SJIs not 0, the transmission delay SEND calculated by the equation (13) in step S25. DELAYJAfter delaying the transmission timing of the J channel packet by applying the time wait, the process proceeds to step S26.
[0032]
[Expression 12]
Figure 0003888505
SEND DELAYJ: J channel packet transmission delay in seconds
MTU SIZE: Ethernet maximum transfer unit, usually 1500 bytes
SJ: J channel timing fine adjustment parameter (SJ, 1 ≦ J ≦ N, N is the number of channels)
BR NET: Effective bandwidth of network, unit is bit / sec
[0033]
Next, a UDP packet having the first data D1 divided in step S27 as a page is transmitted. At that time, in step S26, the packet transmission start time TRSubstitute the time of transmission at. Subsequently, the current time T substituted in step S28.NAnd before TRThe difference is TSK/ CKWhether or not the above has been reached is determined by the determination formula (formula 8) in step S29. If NO, the time has not elapsed until the packet transmission timing, and thus steps S28 and S29 are repeated. In the case of YES, since the time has passed until the transmission timing, the process proceeds to step S30. These operations are performed using the data DCKThe frame number K that is waiting to be received is incremented by 1 in step S31 at the time when there is no untransmitted divided data in step S30, and a transition is made to waiting for reception of the next frame data (step S21).
[0034]
Next, timing fine adjustment parameter SJ(S1, S2, SThree, ..., SN, N is the total number of channels, 1 ≦ J ≦ N) will be described with reference to FIG. 10 showing a flowchart of the packet detection and transmission timing fine adjustment parameter generation unit. First, in step S40, the timing fine adjustment parameter SJ(S1, S2, SThree, ..., SN, N is the number of all channels, 1 ≦ J ≦ N), and 0 is substituted as a default value. Next, in step S41, the packet loss rate PLR for each channel.J(See Equation 12) is calculated for each channel. In step S42, it is determined whether or not the total packet loss rate for each channel is equal to 0. If it is equal to 0, step S41 and step S42 are repeated, and if not equal to 0, the process proceeds to step S43. In step S43, the latest frame number (RCFN) of the reference channel data received as the initial value is substituted into the frame number K of the reference channel that is the frame timing at which the packet loss rate is to be measured next. As the reference channel, a channel having the lowest frame rate (number of frames / second) among 1 to N channels is selected. In step S44, the timing fine adjustment parameter SJ(S1, S2, SThree, ..., SN, N is the total number of channels, 1 ≦ J ≦ N) 0 ≦ SJ<In the range of M, it is changed by 1 for every combination to form a processing loop for executing step S44, step S45, step S46, step S47, step S48, and step S49. Here, M is a packet transmission timing fine adjustment parameter SJ(S1, S2, SThree, ..., SN, N represents the upper limit value of the total number of channels, 1 ≦ J ≦ N), and is derived from Equation (14) as an integer of 0 or more by rounding down the decimal point. Packet transmission timing fine adjustment parameter SJIndicates how many packets the packet transmission timing is delayed, and the packet transmission timing fine adjustment parameter SJIn FIG. 11 showing (1 ≦ J ≦ N, N is the total number of channels), PTenTime (SJPackets sent with the highest P)11Time (SJIt is shown that the transmission timing is delayed until M-1).
[0035]
[Formula 13]
Figure 0003888505
M: packet transmission timing fine adjustment parameter SJ                    (S1, S2, SThree, ..., SN, N is the upper limit of the total number of channels, 1 ≦ J ≦ N)
CHUNK SIZE: Size at which frame data is divided, in bytes
BR STREAM TOTAL: 1 to N channel total bit rate
N: Number of channels
MTU SIZE: Ethernet maximum transfer unit, usually 1500 bytes
BR NET: Effective bit rate of the network
(BR STREAM TOTAL / N): Average bit rate per channel
(CHUNK SIZE * 8 / (BR STREAM TOTAL / N): Average packet transmission interval per channel, in seconds
(MTU SIZE * 8 / BR NET): Time required to send MTU
[0036]
In step S45 of FIG. 10, a wait is applied until the latest frame number (RCFN) of the received reference channel data becomes K or more, and when it becomes K or more, the value of K is incremented by 1 in step S46. This indicates that the loop processing from step S44 to step S49 is performed once for each frame of the reference channel. The timing for completing the loop processing from step S44 to step S49 is the packet loss rate PLR for each channel calculated in step S47.J(1 ≦ J ≦ N, where N is the total number of channels) When the total packet loss rate of each channel calculated in step S48 is equal to 0, or in step S49, loop processing is executed for all combinations This is the case. SJHow to change is (S1, S2, SThree, ..., SN) = (0,0, ..., 0) → (1,0, ..., 0) → (1,1, ..., 0) ... → (1,1, ..., 1) → (2,1, ..., 1) → (2,2, ..., 1) ... → (2,2, ..., 2) ... → (M-1, M-2, ..., M-2) ... → (M-1, M-1) ,..., M-1)NPerform street combinations. When the loop processing is completed in step S48, the timing fine adjustment parameter S at that time is determined in step S51.J(S1, S2, SThree, ..., SN, N write the total number of channels, 1 ≦ J ≦ N) to the shared memory that can be read by the packet transmission timing adjustment unit of each channel, and return to step S41. When the loop processing is completed in step S49, the timing fine adjustment parameter S that minimizes the total packet loss rate of each channel.J(S1, S2, SThree, ..., SN, N write the total number of channels, 1 ≦ J ≦ N) to the shared memory in step 50, and return to step S41.
As described above, according to the fourth embodiment, during multi-channel live video transmission, by performing packet loss detection and packet transmission timing fine adjustment for each channel, packet loss can be suppressed, and multi-channel live video information can be transmitted. Transmission efficiency can be improved.
[0037]
The first to fourth embodiments of the present invention have been described in detail with reference to the drawings. However, specific configuration examples are not limited to the first to fourth embodiments and do not depart from the gist of the present invention. Even if there is a design change, it is clear that it is included in the scope of the technical idea of the present invention.
For example, in the first to fourth embodiments described above, the transmission control program is recorded on the computer-readable recording medium 200 shown in FIG. 12, and the transmission control program recorded on the recording medium 200 is shown in FIG. It can be read by the computer 100 and desired transmission control can be executed. Here, the transmission control program is a control procedure for executing the function of the transmission control unit 15 shown in FIGS. 1, 5, 6, and 8.
[0038]
A computer 100 shown in FIG. 12 includes a CPU 101 that executes the transmission control program, an input device 102 such as a keyboard and a mouse, a ROM (Read Only Memory) 103 that records various data, and a RAM that stores calculation parameters and the like. (Random Access Memory) 104, a reading device 105 that reads a transmission control program from the recording medium 200, an output device 106 such as a display and a printer, and a bus BUS that connects each part of the device.
The CPU 101 can perform the above-described transmission processing by reading the transmission control program recorded on the recording medium 200 via the reading device 105 and then executing the transmission control program.
Here, the recording medium 200 includes various portable recording media such as an optical disk, a floppy disk, and a hard disk, as well as a recording medium that temporarily stores and holds data in a transmission medium such as a network. Is also included.
[0039]
ITU-TH. In a transmission simulation experiment using live video information based on H.263, in a 10 Mbps 10Base-T LAN, when 512 Kbps video information was transmitted at a network usage rate of 60%, the packet loss rate was 0.20% in the conventional method. In the method apparatus according to the present invention, when the video information of 100 Kbps is transmitted under the same conditions, the packet loss rate is 0.32% in the conventional method. %. When video information of 512 Kbps is transmitted when the network usage rate is 70%, the packet loss rate of 0.68% in the conventional method is 0.28% in the method apparatus according to the present invention, and the video information of 100 Kbps is the same condition. In the conventional method, the packet loss rate of 0.19% is reduced to 0.03% in the method apparatus according to the present invention.
[0040]
【The invention's effect】
As is apparent from the above description, the following effects can be obtained by the apparatus, method, and recording medium according to the present invention.
(1) According to the first, second, third, twelfth, and fifteenth aspects of the present invention, packet transmission smoothing can be achieved without using a FIFO that requires overflow underflow control and without starting another process for network output. By doing so, there is an effect that video information can be efficiently transmitted while suppressing packet loss.
(2) According to the invention of claim 4, in addition to the effect (1), when performing multi-channel transmission, only the filtered video information is transmitted even when the network band in the middle of transmission is narrowed. There is an effect that makes it possible.
(3) According to the invention described in claims 5, 6, 7, 13, and 16, in addition to the effect (1), the bandwidth of the transmission network may exceed the stream bandwidth steadily or temporarily. Even when it becomes difficult to compress and transmit live video information, there is an effect of enabling compressed transmission of live information by lowering the encoding bit rate from the information fed back to the encoder.
(4) According to the invention described in claims 8, 9, 10, 11, 14, and 17, in addition to the effect (1), the packet transmission for each channel is further smoothed, and By performing transmission timing control that minimizes the total packet loss rate, there is an effect that video information of a plurality of channels can be efficiently compressed and transmitted in real time.
[Brief description of the drawings]
FIG. 1 is a block diagram of transmission control according to a first embodiment of the present invention.
FIG. 2 is a signal frame diagram for explaining division of frame data into UDP packets according to the first embodiment of the present invention.
FIG. 3 is a time chart for explaining a frame buffer accumulation concept according to the first embodiment of the present invention;
FIG. 4 is a flowchart showing an operation of a transmission control unit according to the first embodiment of the present invention.
FIG. 5 is a block diagram for explaining filtering according to the second embodiment of the present invention;
FIG. 6 is a block diagram for explaining bit rate feedback control according to a third embodiment of the present invention;
FIG. 7 is a block diagram for explaining a serial number adding operation according to the third embodiment of the present invention;
FIG. 8 is a block diagram for explaining fine adjustment feedback control of transmission timing for a plurality of channels in the fourth embodiment of the present invention.
FIG. 9 is a flowchart for explaining an operation of a transmission control unit according to the fourth embodiment of the present invention.
FIG. 10 is a flowchart for explaining the operation of a packet loss detection and transmission timing fine adjustment parameter generation unit in the fourth embodiment of the present invention;
FIG. 11 is a packet transmission timing fine adjustment parameter S in the fourth embodiment of the present invention;JIt is a time chart for demonstrating (1 <= J <= N and N is the number of all channels).
FIG. 12 is a block diagram showing a modification of the first to fourth embodiments of the present invention.
FIG. 13 is a block diagram illustrating an example of a conventional transmission apparatus using a direct transmission method.
FIG. 14 is a time chart for explaining a frame buffer accumulation concept in a conventional transmission apparatus using a direct transmission method.
FIG. 15 is a block diagram showing an example of a conventional transmission apparatus based on a scheme using a FIFO.
FIG. 16 is a time chart for explaining the concept of frame buffer accumulation in a conventional transmission apparatus based on a scheme using FIFO.
[Explanation of symbols]
10, 101, ... 10J, ..., 10N  camera
11, 111, ... 11J, ..., 11N  Real-time encoder
12, 121, 12J, ..., 12N  Frame buffer
12a FIFO
13, 131, ... 13J, ..., 13N  Outgoing packet divider
14,141, ... 14J, ..., 14N  Packet transmission timing adjustment unit
15 Sending control unit
15a Network sending part
16 network
171, ... 17m  Receiving client
18 routers
19 Network
20 Receiving client
21 Packet loss detection and bit rate feedback section
22 Bit rate change request signal
23 packet loss detection and transmission timing fine adjustment parameter generator
24 Packet transmission fine tuning parameters
25 Shared memory

Claims (17)

映像情報をリアルタイムで圧縮伝送するリアルタイム映像情報圧縮伝送装置であって、
前記映像情報を受けとる入力手段と、
該入力手段からの前記映像情報を予め定めた周期でリアルタイム符号化するエンコーダと、
該エンコーダからの前記映像情報のリアルタイム符号化されたフレームデータをフレーム毎に書込み蓄積する蓄積手段と、
該蓄積手段に蓄積された前記リアルタイム符号化された各フレームデータをフレーム毎に順次複数のパケットに分割する分割手段と、
該複数のパケットに分割される前のフレームデータが前記蓄積手段に書き込まれ終わった時から、次のフレームデータが書き込み開始される時までに、前記分割された複数のパケットを順次ネットワークに伝送するように送出タイミングを制御して該ネットワークにコネクションレス型プロトコルで伝送する送出タイミング制御伝送手段と
を備えたことを特徴とする映像情報のリアルタイム圧縮伝送装置。
A real-time video information compression and transmission device for compressing and transmitting video information in real time,
Input means for receiving the video information;
An encoder that encodes the video information from the input means in real time at a predetermined period;
Storage means for writing and storing frame data of the video information from the encoder encoded in real time for each frame;
Dividing means for sequentially dividing each frame data encoded in the storage means in real time into a plurality of packets for each frame;
The plurality of divided packets are sequentially transmitted to the network from the time when the frame data before being divided into the plurality of packets has been written into the storage means to the time when writing of the next frame data is started. And a transmission timing control transmission means for controlling the transmission timing and transmitting to the network using a connectionless protocol.
該パケットに分割する分割手段は、前記符号化された各フレームデータをイーサネットレベルで一つのパケットとして伝送することができる最大サイズである1500バイトに定められているイーサネット最大転送単位(MTU)に適合するようなサイズに分割するために、送出するUDPパケットのペイロードサイズがイーサネット最大転送単位からIPヘッダサイズとUDPヘッダサイズを差し引いた値に相当し、かつ、K番目のフレームがUDPパケットに分割される個数はK番目のフレームのデータサイズ(単位バイト)を送出するUDPパケットのペイロードサイズ(単位はバイト)で除した値に相当するように構成されたことを特徴とする請求項1に記載の映像情報のリアルタイム圧縮伝送装置。 The dividing means for dividing into packets conforms to the maximum Ethernet transfer unit (MTU) defined at 1500 bytes, which is the maximum size capable of transmitting each encoded frame data as one packet at the Ethernet level. Therefore, the payload size of the outgoing UDP packet is equivalent to the value obtained by subtracting the IP header size and the UDP header size from the Ethernet maximum transfer unit, and the Kth frame is divided into UDP packets. The number of frames is equivalent to a value obtained by dividing the data size (unit byte) of the K-th frame by the payload size (unit: bytes) of the UDP packet. Real-time compression transmission device for video information. 前記送出タイミング制御伝送手段における該パケットをネットワークに送出するタイミングは、
K番目のフレームデータのネットワークへの送出時間〔秒〕がK番目のフレームとK+1番目のフレームのフレーム間隔〔秒〕からK番目のフレームデータを前記エンコーダが前記蓄積手段に書き込むフレームデータ蓄積時間〔秒〕を差し引いた値に相当するように定められていることを特徴とする請求項1に記載の映像情報のリアルタイム圧縮伝送装置。
The timing of sending the packet to the network in the sending timing control transmission means is as follows:
The transmission time [second] of the Kth frame data to the network is the frame data storage time [second] in which the encoder writes the Kth frame data to the storage means from the frame interval [seconds] between the Kth frame and the (K + 1) th frame. 2. The apparatus for real-time compression transmission of video information according to claim 1, wherein the apparatus is determined to correspond to a value obtained by subtracting [second].
マルチチャネル伝送を行う場合、さらに伝送パケットをUDPポート番号またはIPマルチキャストアドレスを用いてフィルタリングすることにより、伝送途中のネットワーク帯域が狭くなった場合でもフィルタリングされた映像情報のみを伝送可能とすることを特徴とする請求項1,2又は3に記載の映像情報のリアルタイム圧縮伝送装置。 When performing multi-channel transmission, the transmission packet is further filtered using the UDP port number or IP multicast address, so that only filtered video information can be transmitted even when the network bandwidth during transmission becomes narrow. 4. The real-time compressed transmission apparatus for video information according to claim 1, 2, or 3. ライブ映像情報をリアルタイムで圧縮伝送するリアルタイム映像情報圧縮伝送装置であって、
前記ライブ映像情報を受けとる入力手段と、
該入力手段からの前記ライブ映像情報を予め定めた周期でリアルタイム符号化するエンコーダと、
該エンコーダからの前記ライブ映像情報のリアルタイム符号化されたフレームデータをフレーム毎に書込み蓄積する蓄積手段と、
該蓄積手段に蓄積された前記リアルタイム符号化された各フレームデータをフレーム毎に順次複数のパケットに分割する分割手段と、
該複数のパケットに分割される前のフレームデータが前記蓄積手段に書き込まれ終わった時から、次のフレームデータが書き込み開始される時までに、前記分割された複数のパケットを順次ネットワークに伝送するように送出タイミングを制御して該ネットワークにコネクションレス型プロトコルで伝送する送出タイミング制御伝送手段と、
該ネットワークに伝送されたパケットのパケットロスを検出するパケットロス検出手段と、
該検知されたパケットロスにより前記エンコーダにおける符号化ビットレートを制御する符号化ビットレート制御手段と
を備えたことを特徴とする映像情報のリアルタイム圧縮伝送装置。
A real-time video information compression and transmission device for compressing and transmitting live video information in real time,
Input means for receiving the live video information;
An encoder for performing real-time encoding of the live video information from the input means at a predetermined cycle;
Storage means for writing and storing frame data of real-time encoded live video information from the encoder for each frame;
Dividing means for sequentially dividing each frame data encoded in the storage means in real time into a plurality of packets for each frame;
The plurality of divided packets are sequentially transmitted to the network from the time when the frame data before being divided into the plurality of packets has been written into the storage means to the time when writing of the next frame data is started. Transmission timing control transmission means for controlling the transmission timing and transmitting to the network by a connectionless protocol,
A packet loss detecting means for detecting a packet loss of a packet transmitted to the network;
And a coding bit rate control means for controlling a coding bit rate in the encoder based on the detected packet loss.
該パケットロス検出手段は、前記パケットロスを該パケット中のシリアル番号の順序を調査することにより検出するように構成され、該符号化ビットレート制御手段は、パケットロス値がしきい値を超えている場合には前記符号化ビットレートを下げるように前記エンコーダを制御することを特徴とする請求項5に記載の映像情報のリアルタイム圧縮伝送装置。 The packet loss detection means is configured to detect the packet loss by examining the order of serial numbers in the packet, and the encoding bit rate control means has a packet loss value exceeding a threshold value. 6. The apparatus for real-time compression transmission of video information according to claim 5, wherein the encoder is controlled so as to lower the encoding bit rate when it is present. 前記パケット中のシリアル番号は、パケットヘッダ後、ユーザパケットデータの先頭に挿入されていることを特徴とする請求項5に記載の映像情報のリアルタイム圧縮伝送装置。 6. The video information real-time compression transmission apparatus according to claim 5, wherein the serial number in the packet is inserted at the head of user packet data after the packet header. 複数のチャネルの映像情報をリアルタイムで圧縮伝送するリアルタイム映像情報圧縮伝送装置であって、
前記映像情報を受けとる入力手段と、
該入力手段からの前記映像情報を予め定めた周期でリアルタイム符号化するエンコーダと、
該エンコーダからの前記映像情報のリアルタイム符号化されたフレームデータをフレーム毎に書込み蓄積する蓄積手段と、
該蓄積手段に蓄積された前記リアルタイム符号化された各フレームデータをフレーム毎に順次複数のパケットに分割する分割手段と、
該複数のパケットに分割される前のフレームデータが前記蓄積手段に書き込まれ終わった時から、次のフレームデータが書き込み開始される時までに、前記分割された複数のパケットを順次ネットワークに伝送するように送出タイミングを制御して該ネットワークにコネクションレス型プロトコルで伝送する送出タイミング制御伝送手段と、
を前記複数のチャネルのライブ映像情報の処理のために該複数のチャネルの映像情報のそれぞれに対応するように複数組備え、さらに、
該ネットワークに送出されたパケットのパケットロスを検出するパケットロス検出手段と、
該検知されたパケットロスにより前記複数組におけるおのおのの前記送出タイミング制御伝送手段における前記送出タイミングの調整制御をする送出タイミング制御調整手段と
を備えたことを特徴とする映像情報のリアルタイム圧縮伝送装置。
A real-time video information compression / transmission device for compressing and transmitting video information of a plurality of channels in real time,
Input means for receiving the video information;
An encoder that encodes the video information from the input means in real time at a predetermined period;
Storage means for writing and storing frame data of the video information from the encoder encoded in real time for each frame;
Dividing means for sequentially dividing each frame data encoded in the storage means in real time into a plurality of packets for each frame;
The plurality of divided packets are sequentially transmitted to the network from the time when the frame data before being divided into the plurality of packets has been written into the storage means to the time when writing of the next frame data is started. Transmission timing control transmission means for controlling the transmission timing and transmitting to the network by a connectionless protocol,
A plurality of sets to correspond to each of the video information of the plurality of channels for processing the live video information of the plurality of channels,
Packet loss detection means for detecting packet loss of packets sent to the network;
A real-time compression transmission apparatus for video information, comprising: transmission timing control adjustment means for performing adjustment control of the transmission timing in each of the transmission timing control transmission means in the plurality of sets based on the detected packet loss.
前記送出タイミングの調整制御は、各チャネルのパケットロス率の合計を最小とするように行なわれることを特徴とする請求項8に記載の映像情報のリアルタイム圧縮伝送装置。 9. The video information real-time compression transmission apparatus according to claim 8, wherein the transmission timing adjustment control is performed so as to minimize the total packet loss rate of each channel. 前記送出タイミングの調整制御は、各チャネル毎に同一または異なるパケット送出開始オフセットを設定して行なわれ、かつ、該パケット送出開始オフセットはフレーム単位で変化するように行なわれることを特徴とする請求項8に記載の映像情報のリアルタイム圧縮伝送装置。 The transmission timing adjustment control is performed by setting the same or different packet transmission start offset for each channel, and the packet transmission start offset is performed so as to change in units of frames. 8. A real-time compressed transmission apparatus for video information according to 8. 前記送出タイミングの調整制御は、Jチャネル用パケット送信ディレイが、イーサネットレベルで一つのパケットとして伝送することができる最大サイズである通常1500バイトに定められているイーサネット最大転送単位とチャネル数N中のJ番目の送信チャネルのパケットデータを送出するタイミングを微調整するためのJチャネル用タイミング微調整パラメータ(SJ ,1≦J≦N,Nはチャネル数)との積の8倍をネットワークの実効帯域(単位は bit/sec)で除した値に相当するように行なわれ、
パケット送出タイミング微調整パラメータSJ (S1 ,S2 ,S3 ,…,SN,Nは全チャネル数、1≦J≦N)の上限値が、1チャネルあたりの平均パケット送出間隔をイーサネット最大転送単位を送出するのに要する時間で除した値に相当するように行なわれること、を特徴とする請求項9に記載の映像情報のリアルタイム圧縮伝送装置。
In the transmission timing adjustment control, the J-channel packet transmission delay is the maximum size that can be transmitted as one packet at the Ethernet level, which is normally set to 1500 bytes, and the maximum number of channels and the number of channels N Eight times the product of the J channel timing fine adjustment parameters (SJ, 1≤J≤N, where N is the number of channels) for finely adjusting the timing of sending the packet data of the Jth transmission channel, the effective bandwidth of the network (Unit is bit / sec)
Packet transmission timing fine-tuning parameter SJ (S1, S2, S3, ..., SN, N is the total number of channels, 1≤J≤N) is the maximum packet transmission average Ethernet packet transmission interval per channel 10. The video information real-time compression transmission apparatus according to claim 9, wherein the video information real-time compression transmission apparatus is performed so as to correspond to a value obtained by dividing by a time required for the video information.
映像情報をリアルタイムで圧縮伝送するリアルタイム映像情報伝送圧縮伝送方法であって、
前記映像情報を予め定めた周期でリアルタイム符号化する符号化ステップと、 前記映像情報のリアルタイム符号化されたフレームデータをフレーム毎に書込み蓄積する蓄積ステップと、
該蓄積された前記リアルタイム符号化された各フレームデータをフレーム毎に順次複数のパケットに分割する分割ステップと、
該複数のパケットに分割される前のフレームデータが前記蓄積手段に書き込まれ終わった時から、次のフレームデータが書き込み開始される時までに、前記分割された複数のパケットを順次ネットワークに伝送するように送出タイミングを制御して該ネットワークにコネクションレス型プロトコルで伝送する送出タイミング制御伝送ステップと
を備えたことを特徴とする映像情報のリアルタイム圧縮伝送方法。
A real-time video information transmission compression transmission method for compressing and transmitting video information in real time,
An encoding step of performing real-time encoding of the video information at a predetermined period; and an accumulation step of writing and storing frame data of the video information in real-time encoding for each frame;
A dividing step of sequentially dividing the accumulated real-time encoded frame data into a plurality of packets for each frame;
The plurality of divided packets are sequentially transmitted to the network from the time when the frame data before being divided into the plurality of packets has been written into the storage means to the time when writing of the next frame data is started. And a transmission timing control transmission step for controlling the transmission timing and transmitting to the network by a connectionless protocol as described above.
ライブ映像情報をリアルタイムで圧縮伝送するリアルタイム映像情報圧縮伝送方法であって、
前記ライブ映像情報を予めた周期でリアルタイム符号化する符号化ステップと、
前記ライブ映像情報のリアルタイム符号化されたフレームデータをフレーム毎に書込み蓄積する蓄積ステップと、
該蓄積された前記リアルタイム符号化された各フレームデータをフレーム毎に順次複数のパケットに分割する分割ステップと、
該複数のパケットに分割される前のフレームデータが前記蓄積手段に書き込まれ終わった時から、次のフレームデータが書き込み開始される時までに、前記分割された複数のパケットを順次ネットワークに伝送するように送出タイミングを制御して該ネットワークにコネクションレス型プロトコルで伝送する送出タイミング制御伝送ステップと、
前記ネットワークに送出されたパケットのパケットロスを検出するパケットロス検出ステップと、
該パケットロスにより前記符号化ステップにおける符号化ビットレートを制御する符号化ビットレート制御ステップと
を備えたことを特徴とする映像情報のリアルタイム圧縮伝送方法。
A real-time video information compression and transmission method for compressing and transmitting live video information in real time,
An encoding step for performing real-time encoding of the live video information at a predetermined period;
An accumulation step of writing and accumulating real-time encoded frame data of the live video information for each frame;
A dividing step of sequentially dividing the accumulated real-time encoded frame data into a plurality of packets for each frame;
The plurality of divided packets are sequentially transmitted to the network from the time when the frame data before being divided into the plurality of packets has been written into the storage means to the time when writing of the next frame data is started. a transmission timing control transmission step of transmitting a connectionless-type protocol to the network by controlling the transmission timing as,
A packet loss detection step of detecting a packet loss of a packet sent to the network;
And a coding bit rate control step for controlling a coding bit rate in the coding step according to the packet loss.
複数のチャネルの映像情報をリアルタイムで圧縮伝送するリアルタイム映像情報圧縮伝送方法であって、
複数のチャネルの映像情報に対して、各チャネル毎に、前記映像情報を予め定めた周期でリアルタイム符号化する符号化ステップと、
前記映像情報のリアルタイム符号化されたフレームデータをフレーム毎に書込み蓄積する蓄積ステップと、
該蓄積された前記リアルタイム符号化された各フレームデータをフレーム毎に順次複数のパケットに分割する分割ステップと、
該複数のパケットに分割される前のフレームデータが前記蓄積手段に書き込まれ終わった時から、次のフレームデータが書き込み開始される時までに、前記分割された複数のパケットを順次ネットワークに伝送するように送出タイミングを制御して該ネットワークにコネクションレス型プロトコルで伝送する送出タイミング制御伝送ステップと
を備え、さらに、
該ネットワークに送出されたパケットのパケットロスを検出するパケットロス検出ステップと、
該検知されたパケットロスにより前記各チャネル毎の前記送出タイミング制御伝送ステップにおける前記送出タイミングの調整制御をする送出タイミング制御調整ステップと
を備えたことを特徴とする映像情報のリアルタイム圧縮伝送方法。
A real-time video information compression and transmission method for compressing and transmitting video information of a plurality of channels in real time,
For video information of a plurality of channels, for each channel, an encoding step for performing real-time encoding of the video information at a predetermined period;
An accumulation step of writing and accumulating real-time encoded frame data of the video information for each frame;
A dividing step of sequentially dividing the accumulated real-time encoded frame data into a plurality of packets for each frame;
The plurality of divided packets are sequentially transmitted to the network from the time when the frame data before being divided into the plurality of packets has been written into the storage means to the time when writing of the next frame data is started. A transmission timing control transmission step for controlling the transmission timing and transmitting to the network using a connectionless protocol,
A packet loss detection step of detecting a packet loss of a packet sent to the network;
A transmission timing control adjustment step of adjusting the transmission timing in the transmission timing control transmission step for each of the channels based on the detected packet loss.
コンピュータによって映像情報をリアルタイムで圧縮伝送する制御をするための制御プログラムを記録した記録媒体であって、
前記制御プログラムは、
前記映像情報を予め定めた周期でリアルタイム符号化し、
前記映像情報のリアルタイム符号化されたフレームデータをフレーム毎に書込み蓄積し、
該蓄積された前記リアルタイム符号化された各フレームデータをフレーム毎に順次複数のパケットに分割し、
該複数のパケットに分割される前のフレームデータが前記蓄積手段に書き込まれ終わった時から、次のフレームデータが書き込み開始される時までに、前記分割された複数のパケットを順次ネットワークにコネクションレス型プロトコルで伝送するように送出タイミングを制御して該ネットワークに伝送する
ことを特徴とする映像情報をリアルタイムで圧縮伝送する制御をするための制御プログラムを記録した記録媒体。
A recording medium recording a control program for controlling video information to be compressed and transmitted in real time by a computer,
The control program is
Real-time encoding the video information in a predetermined cycle,
Write and store the frame data of the video information encoded in real time for each frame,
Each of the stored real-time encoded frame data is sequentially divided into a plurality of packets for each frame,
The plurality of divided packets are sequentially connected to the network from the time when the frame data before being divided into the plurality of packets has been written into the storage means until the time when the next frame data starts to be written. A recording medium recorded with a control program for controlling video information to be compressed and transmitted in real time, wherein the transmission timing is controlled so as to be transmitted by a type protocol and transmitted to the network.
コンピュータによってライブ映像情報をリアルタイムで圧縮伝送する制御をするための制御プログラムを記録した記録媒体であって、
前記制御プログラムは、
前記ライブ映像情報を予め定めた周期でリアルタイム符号化し、
前記ライブ映像情報のリアルタイム符号化されたフレームデータをフレーム毎に書込み蓄積し、
該蓄積された前記リアルタイム符号化された各フレームデータをフレーム毎に順次複数のパケットに分割し、
該複数のパケットに分割される前のフレームデータが前記蓄積手段に書き込まれ終わった時から、次のフレームデータが書き込み開始される時までに、前記分割された複数のパケットを順次ネットワークにコネクションレス型プロトコルで伝送するように送出タイミングを制御して該ネットワークに伝送し、
前記ネットワークに送出されたパケットのパケットロスを検出し、
該パケットロスにより前記符号化における符号化ビットレートを制御する
ことを特徴とする映像情報をリアルタイムで圧縮伝送する制御をするための制御プログラムを記録した記録媒体。
A recording medium recording a control program for controlling to compress and transmit live video information in real time by a computer,
The control program is
Real-time encoding the live video information at a predetermined cycle,
Write and accumulate real-time encoded frame data of the live video information for each frame;
Each of the stored real-time encoded frame data is sequentially divided into a plurality of packets for each frame,
The plurality of divided packets are sequentially connected to the network from the time when the frame data before being divided into the plurality of packets has been written into the storage means until the time when the next frame data starts to be written. The transmission timing is controlled so that it is transmitted using a type protocol, and the network is transmitted to the network.
Detecting packet loss of packets sent to the network;
An encoding bit rate in the encoding is controlled by the packet loss. A recording medium recording a control program for controlling to compress and transmit video information in real time.
コンピュータによって複数のチャネルのライブ映像情報をリアルタイムで圧縮伝送する制御をするための制御プログラムを記録した記録媒体であって、
前記制御プログラムは、
複数のチャネルのライブ映像情報に対して、各チャネル毎に、前記ライブ映像情報を予め定めた周期でリアルタイム符号化し、
前記ライブ映像情報のリアルタイム符号化されたフレームデータをフレーム毎に書込み蓄積し、
該蓄積された前記リアルタイム符号化された各フレームデータをフレーム毎に順次複数のパケットに分割し、
該複数のパケットに分割される前のフレームデータが前記蓄積手段に書き込まれ終わった時から、次のフレームデータが書き込み開始される時までに、前記分割された複数のパケットを順次ネットワークに伝送するように送出タイミングの制御をして該ネットワークにコネクションレス型プロトコルで伝送し、さらに、
該ネットワークに送出されたパケットのパケットロスを検出し、
該検知されたパケットロスにより前記各チャネル毎の前記送出タイミングの制御の調整をする
ことを特徴とする映像情報をリアルタイムで圧縮伝送する制御をするための制御プログラムを記録した記録媒体。
A recording medium on which a control program for controlling to compress and transmit live video information of a plurality of channels in real time by a computer is recorded,
The control program is
For live video information of a plurality of channels, for each channel, the live video information is encoded in real time at a predetermined cycle,
Write and accumulate real-time encoded frame data of the live video information for each frame;
Each of the stored real-time encoded frame data is sequentially divided into a plurality of packets for each frame,
The plurality of divided packets are sequentially transmitted to the network from the time when the frame data before being divided into the plurality of packets has been written into the storage means to the time when writing of the next frame data is started. The transmission timing is controlled as described above, and the connectionless protocol is transmitted to the network.
Detect packet loss of packets sent to the network,
A recording medium recorded with a control program for controlling to compress and transmit video information in real time, wherein the transmission timing control for each channel is adjusted according to the detected packet loss.
JP26578099A 1999-09-10 1999-09-20 Video information real-time compression transmission apparatus and method, and recording medium recording a control program for real-time compression transmission control of video information Expired - Fee Related JP3888505B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP26578099A JP3888505B2 (en) 1999-09-20 1999-09-20 Video information real-time compression transmission apparatus and method, and recording medium recording a control program for real-time compression transmission control of video information
US09/657,368 US7380015B1 (en) 1999-09-10 2000-09-07 Apparatus and method for compression-transmitting and decoding picture information and storage medium stored its control programs
US11/244,033 US7801969B2 (en) 1999-09-10 2005-10-06 Apparatus and method for compression-transmitting and decoding picture information and storage medium stored its control programs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP26578099A JP3888505B2 (en) 1999-09-20 1999-09-20 Video information real-time compression transmission apparatus and method, and recording medium recording a control program for real-time compression transmission control of video information

Publications (2)

Publication Number Publication Date
JP2001094984A JP2001094984A (en) 2001-04-06
JP3888505B2 true JP3888505B2 (en) 2007-03-07

Family

ID=17421944

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26578099A Expired - Fee Related JP3888505B2 (en) 1999-09-10 1999-09-20 Video information real-time compression transmission apparatus and method, and recording medium recording a control program for real-time compression transmission control of video information

Country Status (1)

Country Link
JP (1) JP3888505B2 (en)

Also Published As

Publication number Publication date
JP2001094984A (en) 2001-04-06

Similar Documents

Publication Publication Date Title
KR100982155B1 (en) Video packet shaping for video telephony
US20200112599A1 (en) Methods and devices for efficient adaptive bitrate streaming
US7801969B2 (en) Apparatus and method for compression-transmitting and decoding picture information and storage medium stored its control programs
US6747991B1 (en) Filter and method for adaptively modifying the bit rate of synchronized video and audio streams to meet packet-switched network bandwidth constraints
Liang et al. Adaptive playout scheduling using time-scale modification in packet voice communications
US7920492B1 (en) Devices, softwares and methods for redundantly encoding a data stream for network transmission with adjustable redundant-coding delay
EP2437493A1 (en) Information processing device and method
JP4661373B2 (en) Transmission device and transmission program for controlling discard of specific media data
US20120166670A1 (en) Transmitting apparatus, transmitting method, and program
WO2001037571A1 (en) System and method for controlling the delay budget of a decoder buffer in a streaming data receiver
US20110142140A1 (en) Transmitting apparatus and method, and receiving apparatus and method
CN108401128B (en) Congestion control method in video call
CN102244773A (en) Real-time video streaming transmission method based on narrow variable-bandwidth network
JP2012142701A (en) Transmitter, transmission method and program
CN106210785B (en) Self-adaptive unidirectional control method and system for media stream network
EP1396124A1 (en) Dynamic latency management for ip telephony
CN108810468B (en) Video transmission device and method for optimizing display effect
JP2005322995A (en) Buffer control method in real-time video image transfer, transmitting terminal, receiving terminal, video image distributing system and program
JP3888505B2 (en) Video information real-time compression transmission apparatus and method, and recording medium recording a control program for real-time compression transmission control of video information
CN114039931B (en) Method, device, equipment and medium for controlling data transmission
KR20230040872A (en) Methods and devices for controlling a transmission of a video stream
US6947447B1 (en) Image communication apparatus, image communication method and recording medium which stores the sound and image
JP2006174231A (en) Streaming viewing and listening quality management device, method and program, and streaming viewing and listening quality control device, method and program
Chao et al. ECVBA traffic‐smoothing scheme for VBR media streams
EP3026907B1 (en) Encoding device, encoding method, and encoding program

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041019

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060411

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20060427

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061018

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061030

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061122

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101208

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121208

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees