(58)【調査した分野】(Int.Cl.,DB名)
【背景技術】
【0002】
特許文献1は、1つの送信器と複数個の受信器とを含むUWB(Ultra Wide Band)基盤の通信システムに関するものであって、1つの送信器がパケットを生成して、複数個の受信器に生成されたパケットを伝送する。
【0003】
従来の通信システムにおいて、送信器は、複数の受信器に、同じ映像をエンコーディングしてパケットをリアルタイムで伝送し、複数の受信器は、パケットをデコーディングして映像を周辺装置に伝送するか、再生することができる。例えば、送信器がソウルに位置すると仮定すれば、送信器は、仁川、大田、光州、大邱及び釜山など国内複数の目的地の受信器に同じ映像を伝送し、日本、中国、アメリカ、及びヨーロッパなど国外の複数の目的地の受信器に同じ映像を伝送することができる。
【0004】
従来には、1対M送受信構造において、送信器から映像をパケット単位で伝送可能であったが、映像の高品質化または高容量化及びネットワーク負荷または混雑(congestion)によってパケット損失が発生する問題があった。また、パケット損失によって映像が乱れるか、映像の流れが途切れる恐れがあり、損失されたパケットを復旧し難い問題点がある。
【0005】
例えば、従来には、送信器から伝送したパケットが目的地に正常に伝達されず、パケットの一部がラウター上で損失される状況が発生する恐れがある。
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明は、前記問題点を解決するために、目的地別パケット損失率に基づいて目的地別復旧パケットの個数を演算し、目的地のうち、最大値を有する復旧パケットの個数に対応する復旧パケットを生成する映像エンコーディング装置及びその動作方法を提供する。
【0008】
本発明は、目的地別各パケットの伝送順序を演算して多次元行列に配列された目的地別全体パケットを1次元行列に再配列する映像エンコーディング装置及びその動作方法を提供する。
【0009】
本発明は、1次元行列形態の配列と目的地個数に対応するヘッダポインタのみを使用して目的地別パケットの伝送順序を再配列する映像エンコーディング装置及びその動作方法を提供する。
【課題を解決するための手段】
【0010】
前記課題を解決するための本開示の第1側面は、ソース映像をエンコーディングしてソースパケットを生成するエンコーディング部と、目的地別復旧パケットの個数を参照して復旧パケットを生成する復旧パケット生成部と、目的地別に対応するソースパケットと復旧パケットをA
i、j行列形態に配列し、目的地別全体パケットの個数に基づいて前記A
i、j行列形態に配列されたパケットの伝送順序を調整することで、前記A
i、j行列形態に配列された前記パケットをB
k行列形態に再配列する制御部と、を含むパケットの伝送順序を再配列するための映像エンコーディング装置を提供することができる。
【0011】
また、前記制御部は、目的地別全体パケットの個数値に基づいて前記A
i、j行列形態に配列されたパケットそれぞれの伝送順序値を演算し、前記演算された伝送順序値によって、前記A
i、j行列形態に配列されたパケットを前記B
k行列形態に再配列することができる。
【0012】
また、前記制御部は、目的地別全体パケットの個数値から最小公倍数を演算し、前記演算された最小公倍数を、前記目的地別全体パケットの個数値でそれぞれ除算することで、目的地別基準値を演算し、前記目的地別基準値に前記パケットのjインデックス値をそれぞれ乗算することで、前記パケットの伝送順序値を演算し、前記パケットの伝送順序値が小さい順に前記B
k行列に前記パケットを再配列することができる。
【0013】
また、前記映像エンコーディング装置は、前記ソースパケット及び前記復旧パケットを臨時保存するバッファをさらに含み、前記制御部は、目的地別パケット損失率に基づいて目的地別復旧パケットの個数を演算し、前記目的地別全体パケットの個数に係る情報を用いて前記バッファの動作を制御することができる。
【0014】
また、本発明の第2側面は、ソース映像をエンコーディングしてソースパケットを生成する段階と、目的地別復旧パケットの個数を参照して復旧パケットを生成する段階と、目的地別に対応するソースパケット及び復旧パケットをA
i、j行列形態に配列する段階と、目的地別全体パケットの個数に基づいて前記A
i、j行列形態に配列されたパケットの伝送順序を調整する段階と、前記A
i、j行列形態に配列された前記パケットをB
k行列形態に再配列する段階と、を含む、映像エンコーディング装置がパケットの伝送順序を再配列する方法を提供することができる。
【発明の効果】
【0015】
本発明は、目的地別パケット損失率を考慮して損失されたパケットを復旧可能な復旧パケットの個数を目的地別に必要分だけ割り当てることで、全体復旧パケット個数の総和を最小化し、これについてのペイロードを減少させつつ、各目的地では損失されたパケットが発生しても復旧することができる顕著な効果がある。
【0016】
本発明は、目的地別伝送順序を調整してネットワーク混雑によるパケットの損失を減少させることができる顕著な効果がある。
【0017】
本発明は、1次元行列形態の配列と目的地個数に対応するヘッダポインタのみを使用してネットワーク混雑によるパケットの損失を減少させつつ、バッファのメモリ使用を最小化することができる顕著な効果がある。
【発明を実施するための形態】
【0019】
以下、添付図面及び添付図面に記載の内容を参照して本発明の実施例を詳細に説明するが、本発明が実施例によって制限されるか、限定されるものではない。
【0020】
図1は、本発明の実施例による映像エンコーディング装置を示すブロック図であって、映像エンコーディング装置100は、M個の目的地と通信することができる。
【0021】
映像エンコーディング装置100は、エンコーディング部110、復旧パケット生成部120、バッファ130、通信部140及び制御部150を含む。
【0022】
エンコーディング部110は、ソース映像をエンコーディングしてソースパケットを生成し、復旧パケット生成部120は、ソースパケットの復旧のための復旧パケットを生成し、バッファ130は、ソースパケットと復旧パケットとを臨時保存し、通信部140は、バッファ130に保存された目的地別ソースパケットと復旧パケットとを順次に目的地300に伝送し、制御部150は、各構成の動作を制御することができる。また、目的地300は、映像エンコーディング装置100からパケットを受信する装置を指称することができる。
【0023】
ソース映像は、HDMI(High-Definition Multimedia Interface)またはSDI(serial digital interface)のような外部端子を通じて受信された映像でもあり、記録媒体に保存された映像でもある。
【0024】
復旧パケット生成部120は、構造的符号(systematic code)及びファウンテンコード(fountain code)特性を有する応用階層順方向エラー訂正(AL-FEC:Application Layer Forward Error Correction)符号化を行い、ソースパケットの復元のための復旧パケットを生成することができる。例えば、復旧パケット生成部120は、ラプターQ応用階層順方向エラー訂正(RaptorQ AL-FEC:Application Layer Forward Error Correction)符号化を行い、ソースパケットの復元のための復旧パケットを生成することができる。
【0025】
目的地別パケットの個数は、目的地別パケット損失率によって互いに異なっても良い。
【0026】
図2は、パケット損失率による目的地別復旧パケットの個数を設定する例を示したものであって、制御部150は、目的地別パケット損失率を参照して目的地別復旧パケットの個数及び全体パケットの個数を演算する。全体パケットの個数は、全体パケットを構成するパケットの個数を意味する。例えば、全体パケットを構成するパケットは、少なくとも1つのソースパケット及び少なくとも1つの復旧パケットを含むことができる。
【0027】
ラプターQ応用階層順方向エラー訂正(RaptorQ AL-FEC:Application Layer Forward Error Correction)符号化方法によれば、制御部150は、[数1]及び[数2]を通じて復旧パケットの個数を演算することができる。
【0030】
ここで、rは、復旧パケットの個数であり、Lは、伝送網のパケット損失率であり、kは、ソースパケットの個数であり、pは、目標とする復旧失敗率である。例えば、百万フレーム当り1フレーム程度は復旧できなくても良いと仮定すれば、pは、1/1000000であってもよい。
【0031】
復旧パケット生成部120は、目的地別復旧パケットのうち、最大値を有する復旧パケットの個数に対応する復旧パケットを生成することができる。例えば、復旧パケット生成部120は、
図2に示されたように、目的地別復旧パケットのうち、最大値を有するパケット損失率3%を基準に4個の復旧パケットを生成することができる。
【0032】
復旧パケット生成部120は、各目的地に必要な個数ほどの復旧パケットを割当てることができる。
【0033】
本開示では、目的地別パケット損失率を考慮して損失されたパケットを復旧することができる復旧パケットの個数を目的地別に必要分だけ割り当てることで、全体復旧パケット個数の総和が最小化され、パケット複数のためのペイロードを減少させつつ、各目的地では損失されたパケットが効率よく復旧される。
【0034】
図3は、
図1のバッファに目的地別に多次元配列でソースパケットと復旧パケットが配列された例を示すものであって、目的地別パケットの個数は、目的地別パケット損失率によって互いに異なっても良い。
【0035】
本開示では、目的地がTであり、パケットがAであれば、第1目的地であるT1の全体パケットの個数は、N1個であり、第2目的地であるT2の全体パケットの個数は、N2であり、第m目的地であるTmの全体パケットの個数は、Nmである。
【0036】
バッファ130は、目的地別にソースパケットと復旧パケットとをA
i、j行列形態に配列し、目的地別全体パケットの個数に基づいて目的地別伝送順序を調整してA
i、j行列形態に配列されたパケットをB
k行列形態に再配列することができる。iは、目的地を示すインデックスであり、jは、i番目の目的地に対応するパケットの伝送順序を示すインデックスであり、kは、全体目的地の総パケットが1次元に再配列された状態でパケットの伝送順序を示すインデックスでもある。それぞれのパケットは、目的地とパケット順序を意味するインデックスを含むことができる。
【0037】
バッファ130は、目的地別全体パケットの個数に基づいて各パケットの伝送順序値を演算し、各パケットの伝送順序値によってA
i、j行列形態に配列されたパケットをB
k行列形態に再配列することができる。
【0038】
バッファ130は、目的地別全体パケットの個数値の最小公倍数を演算し、最小公倍数を、目的地別全体パケットの個数値で除した目的地別基準値を演算し、目的地別に基準値にjインデックス値を乗算してパケット別伝送順序値を演算し、伝送順序値の小さい順にB
k行列にパケットを再配列することができる。
【0039】
バッファ130は、パケット別伝送順序値を比較してB
k行列にパケットを再配列する時、目的地の番号単位で伝送順序値を比較し、同じ伝送順序値が発生すれば、以前に配列されたパケットのiインデックスを参照して再配列することができる。
【0040】
図4は、
図1のバッファの動作方法を示す例であって、バッファ130は、目的地別にソースパケットと復旧パケットとを配することができる。第1目的地であるT1の全体パケットの個数が3個であり、第2目的地であるT2の全体パケットの個数が4個であり、第3目的地であるT3の全体パケットの個数が5個であると仮定して説明する。
【0041】
バッファ130は、目的地別全体パケットの個数値に対応する最小公倍数を演算して最小公倍数である60を導出する。バッファ130は、最小公倍数を目的地別全体パケットの個数値で除した目的地別基準値を演算して、T1の基準値である20、T2の基準値である15、及びT3の基準値である12を算出する。バッファ130は、目的地別に基準値にjインデックス値を乗算してパケット別伝送順序値を演算してT1のパケット別伝送順序値{20、40、60}、T2のパケット別伝送順序値{15、30、45、60}及びT3のパケット別伝送順序値{12、24、36、48、60}を導出する。
【0042】
バッファ130は、伝送順序値の小さい順にB
k行列にパケットを再配列し、T1ないしT3のパケットは、{A
3,1(12),A
2,1(15),A
1,1(20),A
3,2(24),A
2,2(30),A
3,3(36),A
1,2(40),A
2,3(45),A
3,4(48),A
1,3(60),A
2,4(60),A
3,5(60)}パケット順序値に配列される。
【0043】
バッファ130は、パケット別伝送順序値を比較してB
k行列にパケットを再配列する時、目的地の番号単位で伝送順序値を比較して、同じ伝送順序値{A
1,3(60),A
2,4(60),A
3,5(60)}が発生すれば、以前に配列されたパケット{A
1,2(40),A
2,3(45),A
3,4(48)}のiインデックスを参照して再配列する。
【0044】
バッファ130は、同じ伝送順序値を有するパケットの集合において、前記集合よりも先立つ順序で再配列された以前パケットのうち、最後パケットと同行のパケットを除去することができる。また、バッファ130は、その次の最後パケットと同行のパケットを前記集合から除去する。バッファ130は、かような方式によって、前記集合内のパケットを順次に除去し、前記集合において最後に残る1つのパケットを、前記集合よりも先立つ順序のパケットの次に配列する。例えば、バッファ130は、B
kの最後値がA
3,4(48)であれば、同じ伝送順序値を有するパケットの集合{A
1,3(60)、A
2,4(60)、A
3,5(60)}からA
3,4(48)と同行のA
3,5(60)を除去し、その次最後のパケットであるA
2,3(45)と同行のA
2,4(60)を除去し、前記集合において最後に1つ残るパケットA
1,3(60)を選択して、A
3,4(48)の次に配列させる。
【0045】
本発明は、通信部150がB
k行列形態に再配列されたパケットをIPネットワーク200を通じて順次に伝送する。
【0046】
本発明は、目的地別に伝送されねばならないパケットの伝送順序を調整し、調整された伝送順序によってパケットを再配列して各目的地に到逹するパケットの伝送間隔を広げることで、ネットワーク混雑によるパケット損失を減少させる。
【0047】
図5は、
図1のバッファの動作方法を示す他の例であって、バッファ130は、
図4に図示された、目的地個数に対応するA
i、j行列形態の配列やB
k行列形態の配列を使用せず、目的地個数に対応するヘッダポインタのみを使用して目的地別パケットの伝送順序を再配列し、メモリの使用を最小化することができる。目的地別にソースパケットの個数は、互いに同一であっても、目的地別に復旧パケットの個数は、互いに異なってもよい。
【0048】
バッファ130は、i)目的地別に同一に割り当てられた個数ほどのソースパケットと、ii)目的地別復旧パケットの個数のうち、最大値だけの復旧パケットを順次に配列し、目的地個数に対応するヘッダポインタを生成することができる。
【0049】
バッファ130は、目的地別全体パケットの個数に基づいて演算された各パケットの伝送順序値を参照して、各ヘッダポインタに各目的地の最初パケットについての目的地情報と伝送順序値を含むヘッダを配列することができる。
【0050】
バッファ130は、各ヘッダポインタに配列されたヘッダに基づいて、伝送順序値を比較し、最小値を有する伝送順序値のヘッダを含むヘッダポインタを選択し、選択されたヘッダポインタに配列されたヘッダを含むパケットが伝送されれば、選択されたヘッダポインタを空にする。通信部140は、パケットのヘッダに含まれた目的地情報を参照してパケットを目的地に伝送することができる。
【0051】
バッファ130は、空にしておいたヘッダポインタに、次の順番のヘッダを再配列し、また最小値を有する伝送順序値のヘッダを含むヘッダポインタを選択する。
【0052】
バッファ130の動作方法は、
図4で説明した方法であるパケットの伝送順序値を演算する方法、目的地の番号単位で伝送順序値を比較する方法、及び同じ伝送順序値が発生した時、順序制御方法と同一であり、バッファのメモリ活用側面では、
図4と差がある。
【0053】
図5に図示されたように、目的地は、3個であり、ソースパケットは、各目的地別に同様に2個ずつであり、第1目的地であるT1は、3個の全体パケットが割り当てられ、第2目的地であるT2は、4個の全体パケットが割り当てられ、第3目的地であるT3は、5個の全体パケットが割り当てられると仮定する。
【0054】
図5を参照すれば、全体パケットは、i)2個のソースパケットと、ii)最多復旧パケットを有する目的地T3に対応する復旧パケットの個数と同じ個数である3個の復旧パケットを含む。バッファ130は、全体パケットに含まれた5個のパケット(2個のソースパケット及び3個の復旧パケット)を順次に配列し、目的地個数に対応する3個のヘッダポインタを生成する。
【0055】
バッファ130は、目的地別全体パケットの個数に基づいて演算された各パケットの伝送順序値を参照して、各ヘッダポインタに各目的地の最初パケットに係わる目的地情報と伝送順序値を含むヘッダを配列することができる。パケットの伝送順序値を演算する方法は、前述した最小公倍数と基準値演算を通じて算出される。
【0056】
バッファ130は、各ヘッダポインタに配列されたヘッダに基づいて、各ヘッダに含まれた伝送順序値を比較して、最小値を有する伝送順序値のヘッダが配列されたヘッダポインタであるT3の最初パケットであるS1(12)を選択し、S1(12)が伝送されれば、当該ヘッダポインタを空にし、空にしておいたヘッダポインタに次の順番のヘッダであるS2(24)を再配列する。各目的地別最初パケットに対応する伝送順序値または初期値は、基準値となり、次回パケットに対応する伝送順序値は、基準値に、次回パケットのインデックス値を乗算して演算される。
【0057】
バッファ130は、再びヘッダポインタに配列された目的地番号に対応する伝送順序値を比較して、最小値を有する伝送順序値のヘッダポインタであるT2の最初パケットであるS1(15)を選択し、前述した動作を繰り返して実施することができる。
【0058】
バッファ130は、ヘッダの再配列、ヘッダポインタの伝送順序値比較、最小値を有する伝送順序値のヘッダポインタ選択、選択されたヘッダポインタのパケット伝送、及び選択されたヘッダポインタを空にする動作を繰り返して実施して、全体目的地に対応する全てのパケットを伝送し、メモリ使用を最小化し、目的地別伝送順序を調整してネットワーク混雑によるパケット損失を減少させることができる。
【0059】
一方、バッファ130がパケット損失を減少させるための多様な動作を行うと説明されたが、その限りではない。バッファ130は、データを臨時保存する役割を行い、制御部150が前記バッファ130の多くの動作を行うことができる。
【0060】
一実施例は、コンピュータによって実行されるプログラムモジュールのようなコンピュータによって実行可能な命令語を含む記録媒体の形態でも具現される。コンピュータ可読媒体は、コンピュータによってアクセスされる任意の可用媒体でもあり、揮発性及び不揮発性媒体、分離型及び非分離型媒体をいずれも含む。また、コンピュータ可読媒体は、コンピュータ記録媒体及び通信媒体を含む。コンピュータ記録媒体は、コンピュータ可読命令語、データ構造、プログラムモジュールまたはその他のデータのような情報の保存のための任意の方法または技術によって具現された揮発性及び不揮発性、分離型及び非分離型媒体をいずれも含む。
【0061】
また、本明細書において、「部」は、プロセッサまたは回路のようなハードウェア構成(hardware component)、及び/またはプロセッサのようなハードウェア構成によって実行されるソフトウェア構成(software component)であってもよい。
【0062】
前述した本開示の説明は、例示に過ぎず、本発明が属する技術分野において通常の知識を有する者であれば、本発明の技術的思想や必須な特徴を変更せずとも、他の具体的な形態に容易に変形可能であるということを理解できるであろう。したがって、前述した実施例は、あらゆる面で例示的なものであって、限定的ではないということを理解せねばならない。
【0063】
本開示の範囲は、前記詳細な説明よりは、特許請求の範囲によって現れ、特許請求の範囲の意味及び範囲、そしてその均等概念から導出される全ての変更または変形された形態が、本発明の範囲に含まれるものと解釈されねばならない。