JP4286061B2 - Video data format conversion system and method - Google Patents
Video data format conversion system and method Download PDFInfo
- Publication number
- JP4286061B2 JP4286061B2 JP2003152737A JP2003152737A JP4286061B2 JP 4286061 B2 JP4286061 B2 JP 4286061B2 JP 2003152737 A JP2003152737 A JP 2003152737A JP 2003152737 A JP2003152737 A JP 2003152737A JP 4286061 B2 JP4286061 B2 JP 4286061B2
- Authority
- JP
- Japan
- Prior art keywords
- transfer
- transcoding
- time
- data
- computer
- 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 - Lifetime
Links
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Multi Processors (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
【0001】
【発明の属する技術分野】
この発明は、ある形式で符号化された映像データを別の形式で再符号化する映像データフォーマット変換システムに関する。
【0002】
【従来の技術】
近年、元になる映像データを分割して複数のコンピュータ(ノード)に割り当て、並行してフォーマット変換(トランスコーディング)を行い、トランスコーディングされたデータを最後に結合することにより処理の高速化を図ることができる分散トランスコーディングが研究されている。
また、複数の計算機を有するシステムにおいて、ジョブを複数の計算機に割り当て、分散して処理させるようなシステムもある。(例えば、特許文献1参照。)。
【0003】
【特許文献1】
特開2001−166956号公報(第3頁、第1図)
【0004】
【発明が解決しようとする課題】
しかし、従来の映像データを処理する分散トランスコーディングシステムでは、フォーマット変換が完了し、それを結合した後に映像の画質をチェックしていた。このため、変換後の映像に画質の劣化が生じていた場合には、元の映像全体を再度トランスコーディングする必要があり、処理効率が良いとは言えなかった。
【0005】
この発明は、上記実状に鑑みてなされたものであり、映像データのフォーマット変換の処理効率をより向上させることができる映像データフォーマット変換システム及び方法を提供することを目的とする。
【0006】
【課題を解決するための手段】
上記目的を達成するため、この発明の第1の観点に係る映像データフォーマット変換システムは、
サーバと、映像データを複数のセグメントに分割する第1のコンピュータと、分割されたセグメントをトランスコーディングする複数の第2のコンピュータと、トランスコーディングされた各セグメントを結合する第3のコンピュータと、を備え、映像データのフォーマット変換を分散処理を用いて行う映像データフォーマット変換システムであって、
前記サーバは、
各前記第2のコンピュータのトランスコーディング速度とデータ転送速度に基づいて、各前記第2のコンピュータに対する映像データの割当に関するスケジュールを示すスケジュールデータを生成するスケジュール生成手段と、
前記割当スケジュールに基づく映像データの分割及び転送指示を前記第1のコンピュータに送信する分割転送指示手段と、を備え、
前記第1のコンピュータは、前記サーバからの指示に従って映像データを分割し、各前記第2のコンピュータに順次転送する手段を備え、
各前記第2のコンピュータは、
前記第1のコンピュータからセグメントを順次受信する手段と、
前記受信したセグメントのトランスコーディングを順次行う手段と、
セグメントのトランスコーディングにおいて所定の基準により画質の劣化を検出する画質劣化検出手段と、
一のセグメントのトランスコーディング処理中において、前記画質劣化検出手段により画質の劣化が検出されたとき、当該セグメントを特定する情報を含む画質劣化検出通知を前記サーバに送信する手段と、を備え、
前記サーバは、前記画質劣化検出通知の受信に応答して、画質の劣化が検出されたセグメントの分割及び転送の指示を前記第1のコンピュータに送信する再分割指示手段と、前記画質の劣化が検出されたセグメントの再エンコードに使用するエンコードパラメータを各トランスコーディングノードに送信する手段と、をさらに備える、
ことを特徴とする。
【0007】
このような構成によれば、セグメント単位で画質の劣化を検出し、そのセグメントについてのみトランスコーディング処理を再試行するため、全体的な処理時間を短縮して処理効率を向上させることができる。
【0008】
前記サーバのスケジュール作成手段により作成されるスケジュールデータは、少なくとも、各前記第2のコンピュータにそれぞれ割り当てられる各セグメントの転送開始時刻とトランスコーディング開始予定時刻を示してもよく、
前記サーバの再分割指示手段は、前記スケジュールデータを参照して、一のセグメントのトランスコーディング処理中に画質の劣化を検出した前記第2のコンピュータに対して、次のセグメントのトランスコーディング開始予定時刻までに処理可能なデータ長だけ前記一のセグメントを分割して再度転送することを前記第1のコンピュータに指示する手段と、前記一のセグメントの分割された残りの部分を全ての前記第2のコンピュータに再分配する処理を前記分割転送指示手段により指示された映像データの分割及び転送の処理の後に行う旨の指示を前記第1のコンピュータに送信する手段と、を備えてもよい。
【0009】
これにより、一のセグメントにおいて画質の劣化が検出された場合に、そのセグメントの再割り当てを、当初のスケジュールに殆ど影響を与えることなく指示することができる。
【0010】
前記スケジュール作成手段は、
複数の第2のコンピュータに対する1巡目のデータ転送におけるスケジュールを作成するために、複数の第2のコンピュータのうちデータ転送の順番が最後のコンピュータに所定長のセグメントを割り当て、該セグメントのトランスコーディング時間と転送時間を算出し、前記算出したトランスコーディング時間と転送時間を加算した時間をデータ転送の順番が一つ前のコンピュータのトランスコーディング時間として決定し、前記決定されたトランスコーディング時間内にトランスコード可能なデータ長のデータの転送時間を算出し、前記決定されたトランスコーディング時間と該トランスコーディング時間に基づいて算出された前記転送時間を加算した時間をデータ転送の順番がさらに一つ前のコンピュータのトランスコーディング時間として決定する処理を繰り返すことにより、1巡目のデータ転送におけるデータ長とデータ転送時間と転送データのトランスコーディング時間を決定する手段と、
複数の第2のコンピュータに対するN巡目(Nは2以上の正数)のデータ転送におけるスケジュールを作成するために、(N−1)巡目のデータ転送において転送の順番が最後のコンピュータに転送されるセグメントのトランスコーディング時間を第2のコンピュータの総数で等分した時間をN巡目のデータ転送における各第2のコンピュータのデータ転送時間として決定し、決定した転送時間で送信可能なデータ長を第2のコンピュータのデータ転送速度から算出し、算出したデータ長と第2のコンピュータのトランスコーディング速度からN巡目のデータ転送における各第2のコンピュータのトランスコーディング時間を決定することにより、N巡目のデータ転送のデータ長とデータ転送時間と転送データのトランスコーディング時間を決定する手段と、を備えてもよい。
【0011】
これにより、例えば、第2のコンピュータがトランスコーディング中にバックグラウンドで転送処理を行い、第2のコンピュータのデータ転送速度がトランスコーディング速度よりも十分早い場合には、各第2のコンピュータへの映像データの割当に関するスケジュールを作成するに際し、処理時間と転送データの画質の双方の観点から最適なスケジュールを作成することができる。
【0012】
また、この発明の第2の観点に係る映像データフォーマット変換方法は、
第1のコンピュータが映像データを複数のセグメントに分割し、複数の第2のコンピュータが前記分割されたセグメントのトランスコーディングを行い、第3のコンピュータが前記トランスコーディングされたセグメントを結合することにより、映像データのフォーマット変換を分散処理を用いて行う映像データフォーマット変換方法であって、
サーバが、各前記第2のコンピュータのトランスコーディング速度とデータ転送速度に基づいて、各前記第2のコンピュータに対する映像データの割当に関するスケジュールを示すスケジュールデータを生成するスケジュール生成ステップと、
前記サーバが、前記割当スケジュールに基づく映像データの分割及び転送指示を前記第1のコンピュータに送信する分割転送指示ステップと、
前記第1のコンピュータが、前記サーバからの指示に従って前記映像データを分割し、各前記第2のコンピュータに順次転送するステップと、
前記第2のコンピュータが、前記第1のコンピュータからセグメントを受信し、前記受信したセグメントのトランスコーディングを順次行うステップと、
前記第2のコンピュータが、一のセグメントのトランスコーディング処理中において、所定の基準により画質の劣化を検出した場合、当該セグメントを特定する情報を含む画質劣化検出通知を前記サーバに送信するステップと、
前記サーバが、前記画質劣化検出通知の受信に応答して、画質の劣化が検出されたセグメントの分割及び転送の指示を前記第1のコンピュータに送信する再分割指示ステップと、
前記サーバが、前記画質の劣化が検出されたセグメントの再エンコードに使用するエンコードパラメータを各トランスコーディングノードに送信するステップと、
を備えることを特徴とする。
【0013】
このような構成によれば、セグメント単位で画質の劣化を検出し、そのセグメントについてのみトランスコーディング処理を再試行するため、全体的な処理時間を短縮して処理効率を向上させることができる。
【0014】
前記スケジュール生成ステップにより作成されるスケジュールデータは、少なくとも、各前記第2のコンピュータにそれぞれに割り当てられる各セグメントの転送開始時刻とトランスコーディング開始予定時刻を示してもよく、
前記再分割指示ステップは、前記スケジュールデータを参照して、一のセグメントのトランスコーディング処理中に画質の劣化を検出した前記第2のコンピュータに対して、次のセグメントのトランスコーディング開始予定時刻までに処理可能なデータ長だけ前記一のセグメントを分割して再度転送することを前記第1のコンピュータに指示するステップと、前記一のセグメントの分割された残りの部分を全ての前記第2のコンピュータに再分配する処理を前記分割転送指示ステップにより指示された映像データの分割及び転送の処理の後に行う旨の指示を前記第1のコンピュータに送信するステップと、を備えてもよい。
【0015】
これにより、一のセグメントにおいて画質の劣化が検出された場合に、そのセグメントの再割り当てを、当初のスケジュールに殆ど影響を与えることなく指示することができる。
【0016】
前記スケジュール作成ステップは、
複数の第2のコンピュータに対する1巡目のデータ転送におけるスケジュールを作成するために、複数の第2のコンピュータのうちデータ転送の順番が最後のコンピュータに所定長のセグメントを割り当て、該セグメントのトランスコーディング時間と転送時間を算出し、前記算出したトランスコーディング時間と転送時間を加算した時間をデータ転送の順番が一つ前のコンピュータのトランスコーディング時間として決定し、前記決定されたトランスコーディング時間内にトランスコード可能なデータ長のデータの転送時間を算出し、前記決定されたトランスコーディング時間と該トランスコーディング時間に基づいて算出された前記転送時間を加算した時間をデータ転送の順番がさらに一つ前のコンピュータのトランスコーディング時間として決定する処理を繰り返すことにより、1巡目のデータ転送におけるデータ長とデータ転送時間と転送データのトランスコーディング時間を決定するステップと、
複数の第2のコンピュータに対するN巡目(Nは2以上の正数)のデータ転送におけるスケジュールを作成するために、(N−1)巡目のデータ転送において転送の順番が最後のコンピュータに転送されるセグメントのトランスコーディング時間を第2のコンピュータの総数で等分した時間をN巡目のデータ転送における各第2のコンピュータのデータ転送時間として決定し、決定した転送時間で送信可能なデータ長を第2のコンピュータのデータ転送速度から算出し、算出したデータ長と第2のコンピュータのトランスコーディング速度からN巡目のデータ転送における各第2のコンピュータのトランスコーディング時間を決定することにより、N巡目のデータ転送のデータ長とデータ転送時間と転送データのトランスコーディング時間を決定するステップと、を備えてもよい。
【0017】
このような構成によれば、セグメント単位で画質の劣化を検出し、そのセグメントについてのみトランスコーディング処理を再試行するため、全体的な処理時間を短縮して処理効率を向上させることができる。
【0018】
【発明の実施の形態】
以下、本発明に係る実施の形態を、所定の形式でエンコードされている映像データを他の形式にフォーマット変換するためのフォーマット変換システムを図面を参照して説明する。
【0019】
図1はこの発明の実施形態に係るフォーマット変換システムの構成を示す図である。
図1に示すように、このフォーマット変換システムは、サーバコンピュータ(以下、サーバ)1と、複数のコンピュータ(ノード)と、を備え、これらはネットワーク10を介して相互に接続されている。また、ノードは、ソースノード21と、複数のトランスコーディングノード22と、ディスティネーションノード23と、から構成される。
【0020】
サーバ1は、制御部、記憶部、通信制御部を備えるコンピュータから構成される。記憶部は、制御部により実行される動作プログラムや処理に必要な各種のデータ(各トランスコーディングノード22のデータ転送速度、トランスコーディング速度等)を記憶しており、制御部が記憶部に記憶される動作プログラム等を実行することにより、スケジューリング部1a、ノード制御部1b、等を論理的に実現する。
【0021】
スケジューリング部1aは、処理対象の映像データを各トランスコーディングノード22に割り当てるための初期スケジューリング処理を行う。
この初期スケジューリング処理では、各トランスコーディングノード22のセグメント転送速度とトランスコーディング速度等に基づいて、処理対象のソース(映像データ)を分割した各セグメントを各トランスコーディングノード22に割り当て方を決定し、各トランスコーディングノード22に対する各セグメントの転送開始予定時刻や、各トランスコーディングノード22における各セグメントのトランスコーディング開始予定時刻等を示すスケジュールデータを作成する。なお、本システムにおける各トランスコーディングノード22はセグメントのトランスコーディング中にバックグラウンドで次のセグメントを受信するようにし、ここで作成されるスケジュールもこれを前提する。
【0022】
初期スケジューリング処理を図2を参照して具体的に説明する。スケジューリング部1aは、まず1巡目のデータ転送において、複数のトランスコーディングノード22(図の例では、ノード1〜4)に順次セグメントを転送する際に最後にセグメントが転送されるノード(図の例では、ノード4)に対して最小分割可能セグメント長のデータを割り当てる。そして、その割り当てたデータのトランスコーディング時間をトランスコーディングノード22のトランスコーディング速度を用いて算出し、そのトランスコーディング時間にその最小分割可能セグメント長のデータのデータ転送時間を加えた時間を求め、その時間を、転送順序が一つ前のノード(図の例では、ノード3)のトランスコーディング時間とし、その時間において転送可能なセグメント長のデータをトランスコーディングノード22のデータ転送速度から求めて、そのノード(ノード3)に割り当てる処理を順次各ノード(ノード2、ノード1)について行う。例えば、ノード2については、ノード3に割り当てたデータの転送時間をデータ転送速度から算出し、算出したノード3のデータ転送時間とノード3のトランスコーディング時間を加算した時間をノード2のトランスコーディング時間として、その時間内にトランスコーディングが可能なデータ長のセグメントを割り当てる。ノード1については、ノード2に割り当てたデータの転送時間をデータ転送速度から算出し、算出したノード2のデータ転送時間とノード2のトランスコーディング時間を加算した時間をノード1のトランスコーディング時間として、その時間内にトランスコーディング可能なデータ長のセグメントを割り当てる。これにより、データ転送の1巡目に各ノードに割り当てるセグメントのデータ長、転送時間、トランスコーディング時間等が決定される。
【0023】
次に、N巡目(2巡目以降)のデータ転送については、(N−1)巡目のデータ転送において、転送の順番が最後のノード(図2では、ノード4)に割り当てたデータのトランスコーディング時間をトランスコーディングノード22の総数で等分し、等分した時間で転送可能なデータ長をトランスコーディングノード22のデータ転送速度を用いて求め、N巡目のデータ転送において各ノードに割り当てるデータ長とする。また、このデータ長とノードのトランスコーディング速度からデータのトランスコーディング時間を算出する。そして、データ転送の最後の回において(図の例では、フェーズM)、決定したデータ長のセグメントを各ノードに割り当てるだけソースが残っていない場合には、例えば、残ったソース部分を等分することにより、各ノードに割り当てるセグメント長を決定する。これにより、データ転送のN巡目に各ノードに割り当てるセグメントのデータ長、転送時間、トランスコーディング時間等が決定される。
【0024】
そして、スケジューリング部1aは、例えば、所定の転送開始予定時刻を基準として、セグメントの初回の転送時間と以後の各セグメントのトランスコーディング時間を順次加算することにより、各ノードに順次転送される各セグメントについて、その転送開始時刻やトランスコーディング開始予定時刻等を求め、これらをスケジュールデータとして記憶部に記憶する。
なお、一般にトランスコーディングノード22のデータ転送速度がトランスコーディング速度よりも十分に早いことから、上記のようにして各ノードに割り当てられるセグメントのデータ長は徐々に長くなる。これにより、ビットレートの制御が効きやすくなり、画質のばらつきを抑え、結合時の画質を向上させることができる。
【0025】
また、スケジューリング部1aは、トランスコーディングノード22からの画質の劣化を検出した旨の通知(画質劣化検出通知)に応答して、該当するセグメントを再度各トランスコーディングノード22に割り当てるための再スケジューリング処理を行う。トランスコーディングノード22からの画質劣化検出通知は、例えば、画質劣化が検出されたセグメント(画質劣化検出セグメント)を特定する情報、そのセグメントのエンコーディングに使用された量子化ステップの情報等を含む。
【0026】
再スケジューリング処理を図3を参照して説明する。まず、スケジューリング部1aは、画質の劣化を検出したノード(画質劣化検出ノード)において画質劣化の検出時から次のセグメントのトランスコーディングが開始されるまでの時間Taを求める。具体的には、画質劣化が検出された時刻をtc[s]、画質劣化の生じたセグメントの後続セグメントのトランスコード開始予定時刻をtn[s]とすると、時間Ta[s]は数1に示す式により求められる。
【0027】
【数1】
Ta[s]=tn−tc
【0028】
なお、画質劣化が検出された時刻tc[s]の情報は、例えば、画質劣化検出ノードがサーバ1への画質劣化検出通知に含めるようにしてもよく、また、サーバ1がノードから画質劣化検出通知を受信した時刻を内部タイマから取得し、その時刻を画質劣化が検出された時刻と擬制してもよい。
【0029】
次に、スケジューリング部1aは、ノードのトランスコーディング速度をV[bit/s]として、時間Taの間にトランスコードできるデータ長Lcを数2に示す式により求める。そして、このデータ長Lcを、画質劣化検出セグメントにおいて、その画質劣化を検出したノードに再度割り当てる部分の長さとする。
【0030】
【数2】
Lc[bit]=Ta/V
【0031】
また、スケジューリング部1aは、画質劣化検出セグメントの総長をL[bit]として、画質劣化が検出されたセグメントのうち、時間Taにおいてトランスコードしない残り部分のデータ長Lrを数3に示す式により求める。
【0032】
【数3】
Lr[bit]=L−Lc
【0033】
この残り部分のデータ長Lr[bit]を例えば全トランスコーディングノード22で等分する等して、各ノードに割り当てるデータ長を決定する。
そして、例えば、各トランスコーディングノード22に再配分されるデータについて、例えば、トランスコーディング時間等を求め、当初のスケジュールデータの末尾に追加する。
【0034】
ノード制御部1bは、各ノード(ソースノード21、トランスコーディングノード22、ディスティネーションノード23)に各種指示を送信する処理を行う。
例えば、ノード制御部1bは、ソースノード21に対して、ソースを所定長のセグメントに分割して各ノードに転送することを指示する分割・転送指示を送信する。処理対象のソースは予め送信していてもよく、また、分割・転送指示と一緒に送信してもよい。この分割・転送指示は、初期スケジューリング処理により生成されたスケジュールデータに基づいて、ソースを所定のセグメント長のセグメントに分割して各トランスコーディングノード22に転送することを指示するものであり、例えば、1巡目における各ノードへの転送セグメントのデータ長、2巡目における各ノードへの転送セグメントのデータ長、・・・・、M巡目の各ノードへの転送セグメントデータ長等の情報を含む。また、各セグメントについての転送開始予定時刻やトランスコーディング開始予定時刻の情報も含んでも良い。
【0035】
また、ノード制御部1bは、ソースノード21に対して、画質劣化検出セグメントについてトランスコーディングを再試行させるための再分割・転送指示を送信する。この再分割・転送指示は、画質検出セグメントを所定長の部分に分割して画質劣化検出ノードに即時に転送することの指示と、分割された残りの部分を各トランスコーディングノード22に再配分する処理を分割・転送指示により指示されたソースの分割及び各セグメントの転送の処理の後に行うことの指示と、を含む。先の指示は、例えば、再スケジューリング処理による算出結果等に基づいて、画質劣化検出ノードを特定する情報(例えば、ノードID、アドレス等)、画質劣化検出セグメントを特定する情報(例えば、セグメントナンバ等)、画質劣化検出ノードに即時に再度割り当てるセグメント部分の長さLc等の情報を含む。また、後の指示は、例えば、画質劣化検出セグメントから長さLcの部分を分割したときの残りの部分のデータ長Lrについてノード総数で分割した長さ等の情報を含む。
【0036】
また、ノード制御部1bは、トランスコーディングノード22に対して、転送されたセグメントについてのトランスコーディング指示を送信する。
また、ノード制御部1bは、画質劣化検出セグメントの分割データを再エンコードする際に使用するエンコードパラメータの情報を、画質劣化検出セグメントを特定する情報(セグメントナンバ等)とともに、各トランスコーディングノード22に送信する。なお、このエンコードパラメータは、各トランスコーディングノード22において画質劣化セグメントについて画質を向上させる処理に使用されるパラメータである。画質を向上させる処理の内容については任意であり、例えば、再割り当てされたデータについてノイズ除去もしくは平滑化フィルタを前処理として適用することにより画質の向上を図る場合には、エンコードパラメータはこれらの前処理で使用するパラメータ等を示す。また、対象セグメントについてビットレートを上げてエンコードすることにより画質の向上を図る場合には、エンコードパラメータは、そのビットレートの値を示す。
【0037】
また、ノード制御部1bは、例えば全トランスコーディングノード22からセグメントのトランスコーディングが完了した旨の通知の受信等に応答して、ディスティネーションノード23に対して、集積されたセグメントの結合指示を送信する。
【0038】
ソースノード21は、制御部、記憶部、通信制御部を備えるコンピュータから構成される。記憶部は制御部が実行する動作プログラムや処理に必要な各種のデータを記憶しており、制御部が記憶部に記憶される動作プログラム等を実行することにより、分割部21a等を論理的に実現する。
分割部21aは、サーバ1からの分割・転送指示に従って、映像データを所定のセグメント長の複数のセグメントに分割し、分割したセグメントを各トランスコーディングノード22に順次転送する処理を行う。
また、分割部21aは、サーバ1からの再分割・転送指示に従って、画質劣化の生じたセグメントについて、データ長Lcとデータ長Lrのデータに分割し、データ長Lcのデータを画質の劣化を検出したノードに即時に転送する。そして、残りのデータ長Lrをノード数で分割したデータ長のデータを各ノードへの転送スケジュールの末尾に追加する。
【0039】
トランスコーディングノード22は、制御部、記憶部、通信制御部を備えるコンピュータから構成される。記憶部は制御部が実行する動作プログラムや処理に必要な各種のデータを記憶しており、制御部が記憶部に記憶される動作プログラム等を実行することにより、変換制御部22a、エンコード・デコード部22b、画質劣化検出部22c等を論理的に実現する。
【0040】
変換制御部22aは、サーバ1からの指示等に従って、トランスコーディングノード22全体を制御する。変換制御部22aは、ソースノード21から順次受信したセグメントを記憶部へ記憶する処理、サーバ1からのトランスコーディング指示をエンコード・デコード部22bに通知する処理、エンコード・デコード部22bによりエンコードされたデータ(エンコードデータ)をディスティネーションノード23に転送する処理、エンコード・デコード部22bにより画質の劣化が検出され、エンコード処理が中止された場合にその旨をサーバ1に通知する処理、画質劣化セグメントの分割データについて使用するエンコードパラメータをサーバ1から受信して記憶する処理、割り当てられたセグメントのトランスコーディングが完了した旨をサーバ1に通知する処理等を行う。
【0041】
エンコード・デコード部22bは、サーバ1からの指示に従って、記憶部に記憶されている所定のセグメントのデータを読み出してデコードし、他の所定の形式でエンコードする処理を行う。また、エンコード・デコード部22bは、画質劣化検出部22cから画質の劣化の発生の通知を受けるとエンコード処理を中止する。
また、エンコード・デコード部22bは、画質劣化セグメントについて再割り当てされたデータをエンコードする際に、画質を向上させるための所定の処理(例えば、ノイズ除去、平滑化フィルタによるフィルタリング、ビットレートを上げたエンコーディング等)を行う。この所定の処理において、サーバ1から受信したエンコードパラメータを用いる。
【0042】
画質劣化検出部22cは、エンコード・デコード部22bによるエンコード処理において画質の劣化が発生したことを検出する画質劣化検出処理を行う。この画質劣化検出処理では、例えば、エンコード・デコード部22bによるエンコード処理で用いられている量子化ステップの値をログから監視し、所定の制限値を超えた場合に画質の劣化が起こったとみなす。また、画質劣化検出部22cは、画質の劣化を検出すると、エンコード・デコード部22bにその旨を通知する。
【0043】
ディスティネーションノード23は、制御部、記憶部、通信制御部を備えるコンピュータから構成される。記憶部は制御部が実行する動作プログラムや処理に必要な各種のデータを記憶しており、制御部が記憶部に記憶される動作プログラム等を実行することにより、結合部23aを論理的に実現する。
結合部23aは、各トランスコーディングノード22から変換処理後の各セグメントを受信して記憶部に蓄積記憶し、サーバ1からの結合指示に従って、集積されたセグメントを所定の結合順序に従って順次結合し、結合処理の完了後に結合完了信号をサーバ1に送信する。
【0044】
次に、本発明のフォーマット変換システムにおける全体的な処理の流れを図4を参照して説明する。
まず、サーバ1は、初期スケジューリング処理を行って、ソースを各トランスコーディングノード22に割り当てるためのスケジュールデータを作成し(ステップS1)、分割・転送指示をソースノード21に送信する(ステップS2)。ソースノード21は、サーバ1からの分割・転送指示に従って、ソースを指定されたセグメント長のセグメントに分割し、各トランスコーディングノード22にセグメントを転送する(ステップS3)。
また、サーバ1は、各トランスコーディングノード22に対して、転送されたセグメントについてのトランスコーディング指示を送信する(ステップS4)。
【0045】
各トランスコーディングノード22は、ソースノード21から転送されるセグメントを受信して記憶部に記憶する。また、サーバ1からのトランスコーディング指示に従って、セグメントのトランスコーディングを実行する(ステップS5)。トランスコーディングノード22は、セグメントのトランスコーディングを実行しながら、バックグラウンドで次のセグメントを受信して記憶する。また、トランスコーディングノード22は、トランスコーディング処理においてログにおける量子化ステップを監視等して、画質の劣化を検出するための処理も行う(ステップS6)。なお、トランスコーディングが完了したセグメントについては順次ディスティネーションノード23に送信する(又は、一括送信でもよい)。
【0046】
そして、いずれのトランスコーディングノード22においてもトランスコーディング処理中に画質の劣化が検出されなかった場合には(ステップS7:No)、各トランスコーディングノード22はトランスコーディングの終了をサーバ1に通知する(ステップS11)。
サーバ1は、全トランスコーディングノード22からトランスコーディングが終了した旨の通知を受信すると、ディスティネーションノード23にセグメントの結合指示を送信する(ステップS12)。
これに応じて、ディスティネーションノード23は、集積されたセグメントを結合し、結合完了信号をサーバ1に送信する(ステップS13、S14)。
【0047】
また、ステップS7において、例えば、いずれかのトランスコーディングノード22において画質の劣化が検出された場合には、そのトランスコーディングノード22はトランスコーディング処理を中止し(ステップS8)、画質劣化検出通知をサーバ1に送信する(ステップS9)。
画質劣化検出通知を受信したサーバ1は、再スケジューリング処理を行って、画質劣化検出ノードにおいて、後続のセグメントのトランスコーディングのスケジュールに影響を与えないようなデータの長さ、即ち、後続のセグメントのトランスコーディング開始予定時刻までにトランスコーディング処理が可能なデータ長Lcを求める。また、このデータ長Lcに基づいて、残りの部分のデータLrを求め、ノード数で等分する等して各ノードに割り当てるデータ長を決定する(ステップS10)。
【0048】
そして、サーバ1は、画質劣化検出セグメントについて再分割と転送を指示するための指示(再分割・転送指示)をソースノード21に送信する(ステップS2)。また、サーバ1は、画質劣化を検出したセグメントの再割当データをエンコード処理の際に使用するエンコードパラメータを画質劣化セグメントを特定する情報とともに各トランスコーディングノード22に送信する。
【0049】
再分割・転送指示を受信したソースノード21は、指定されたセグメント(画質劣化セグメント)を指定されたデータ長Lcと残りの部分に分割する。そして、画質劣化セグメントについてデータ長Lcのデータを画質劣化検出ノードに転送するとともに、残りの部分を、指定された長さに分割し、各ノードについての転送スケジュールの末尾にその転送予定を追加する(ステップS3)。
また、サーバ1は、各トランスコーディングノード22に対して、再転送されたセグメントについてのトランスコーディング指示を送信する(ステップS4)。
【0050】
そして、各トランスコーディングノード22は、ノードから転送された全セグメント(当初の転送スケジュール分のセグメント及び画質劣化の検出により再割り当てされたセグメント)について全て無事にトランスコーディングを終えると、その旨の通知をサーバ1に送信する(ステップS5〜8,11)。
これに応じて、サーバ1がセグメントの結合指示をディスティネーションノード23に送信し(ステップS12)、ディスティネーションノード23が集積されたセグメントを結合して、結合完了信号をサーバ1に送信する(ステップS13、S14)。
【0051】
以上説明したように、本発明によれば、セグメント単位で画質の劣化を検出し、そのセグメントについてのみトランスコーディング処理を再試行するため、全体的な処理時間を短縮して処理効率を向上させることができる。
また、画質劣化検出セグメントについては、当初予定されていた処理時間内で処理可能な長さに当該セグメントを分割して再割り当てし、残りの部分を各ノードに追加で再配分することにより、当初の作業スケジュールに殆ど影響を与えずに済むことができる。
【0052】
なお、上記説明では、画質劣化検出部22cは、量子化ステップの異常を検出することで画質の劣化を検出するようにしているが、これに限定されず他の種々の方法を採りうる。例えば、エンコード・デコード部22bの出力するS/N比(信号対雑音比)が閾値を下回っていないかをチェックすることにより、画質の劣化を検出するようにしてもよい。
【0053】
また、上記のシステム構成は一例であり、例えば、1台のコンピュータの機能を複数台のコンピュータにより実現してもよく、また、複数台のコンピュータの機能を1台のコンピュータにより実現してもよい。
例えば、ソースノード21は複数でもよく、複数のソースノード21で上述のソースの分割・転送に関する処理を分担してもよい。
また、ソースノード21とディスティネーションノード23の少なくとも一方が、トランスコーディングノード22を兼ねるようにしてもよい。
【0054】
なお、この発明のシステムは、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。例えば、上述の動作を実行するためのプログラムをコンピュータ読み取り可能な記録媒体(FD、CD−ROM、DVD等)に格納して配布し、該プログラムをコンピュータにインストールすることにより、上述の処理を実行するサーバ1、ソースノード21と、複数のトランスコーディングノード22と、ディスティネーションノード23等を構成してもよい。また、インターネット等のネットワーク上のサーバ装置が有するディスク装置に格納しておき、例えば搬送波に重畳してコンピュータにダウンロード等するようにしてもよい。
また、上述の機能を、OSが分担又はOSとアプリケーションの共同により実現する場合等には、OS以外の部分のみを媒体に格納して配布してもよく、また、搬送波に重畳してコンピュータにダウンロード等してもよい。
【0055】
【発明の効果】
このような構成によれば、映像データのフォーマット変換処理において全体的な処理時間を短縮して処理効率を向上させることができる。
【図面の簡単な説明】
【図1】この発明の実施の形態に係るフォーマット変換システムの構成を示す図である。
【図2】初期スケジューリング処理を説明するための図である。
【図3】再スケジューリング処理を説明するための図である。
【図4】図1のフォーマット変換システムにおける全体的な処理の流れを説明するための図である。
【符号の説明】
1 サーバ
1a スケジューリング部
1b ノード制御部
2 ノード
10 ネットワーク
21 ソースノード
21a 分割部
22 トランスコーディングノード
22a 変換制御部
22b エンコード・デコード部
22c 画質劣化検出部
23 ディスティネーションノード
23a 結合部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a video data format conversion system for re-encoding video data encoded in one format in another format.
[0002]
[Prior art]
In recent years, original video data is divided and assigned to a plurality of computers (nodes), format conversion (transcoding) is performed in parallel, and the transcoded data is finally combined to increase the processing speed. Distributed transcoding is being studied.
In addition, in a system having a plurality of computers, there is a system in which jobs are assigned to a plurality of computers and distributedly processed. (For example, refer to Patent Document 1).
[0003]
[Patent Document 1]
Japanese Patent Laid-Open No. 2001-166958 (
[0004]
[Problems to be solved by the invention]
However, in the conventional distributed transcoding system for processing video data, after the format conversion is completed and combined, the image quality of the video is checked. For this reason, when the image quality has deteriorated in the converted video, it is necessary to transcode the entire original video again, and the processing efficiency cannot be said to be good.
[0005]
The present invention has been made in view of the above circumstances, and an object thereof is to provide a video data format conversion system and method that can further improve the processing efficiency of video data format conversion.
[0006]
[Means for Solving the Problems]
In order to achieve the above object, a video data format conversion system according to the first aspect of the present invention provides:
A server, a first computer that divides video data into a plurality of segments, a plurality of second computers that transcode the divided segments, and a third computer that combines the transcoded segments, A video data format conversion system for performing video data format conversion using distributed processing,
The server
Schedule generating means for generating schedule data indicating a schedule relating to video data allocation to each of the second computers based on the transcoding speed and data transfer speed of each of the second computers;
Division transfer instruction means for transmitting an instruction to divide and transfer video data based on the allocation schedule to the first computer,
The first computer includes means for dividing video data in accordance with an instruction from the server and sequentially transferring the video data to each of the second computers,
Each said second computer is
Means for sequentially receiving segments from the first computer;
Means for sequentially transcoding the received segments;
Image quality deterioration detection means for detecting image quality deterioration according to a predetermined criterion in segment transcoding;
Means for transmitting an image quality deterioration detection notification including information identifying the segment to the server when image quality deterioration is detected by the image quality deterioration detecting means during the transcoding process of one segment;
The server, in response to receiving the image quality degradation detection notification, re-segmentation instruction means for transmitting a segment division and transfer instruction for which image quality degradation has been detected to the first computer; Means for transmitting to each transcoding node encoding parameters used to re-encode the detected segments;
It is characterized by that.
[0007]
According to such a configuration, degradation in image quality is detected on a segment basis and the transcoding process is retried only for that segment, so that the overall processing time can be shortened and the processing efficiency can be improved.
[0008]
The schedule data created by the schedule creation means of the server may indicate at least a transfer start time and a transcoding start scheduled time of each segment assigned to each of the second computers,
The server subdivision instructing means refers to the schedule data, and with respect to the second computer that has detected the degradation of image quality during the transcoding process of one segment, the scheduled transcoding start time of the next segment Means for instructing the first computer to divide and transfer again the one segment by a data length that can be processed by the process, and to transfer the remaining divided part of the one segment to all the second segments And a means for transmitting to the first computer an instruction to perform redistribution to the computer after the division and transfer processing of the video data instructed by the division transfer instruction means.
[0009]
As a result, when image quality degradation is detected in one segment, reassignment of the segment can be instructed with little influence on the original schedule.
[0010]
The schedule creation means includes
In order to create a schedule for the first round of data transfer to a plurality of second computers, a segment having a predetermined length is assigned to the computer having the last data transfer order among the plurality of second computers, and the segment is transcoded. Time and transfer time are calculated, and the time obtained by adding the calculated transcoding time and transfer time is determined as the transcoding time of the computer whose data transfer order is one before, and the transcoding time is determined within the determined transcoding time. The transfer time of data with a codeable data length is calculated, and the time obtained by adding the determined transcoding time and the transfer time calculated based on the transcoding time is one order before the data transfer order. Computer transcoding time By repeating the process of determining and means for determining a data length and a data transfer time and transfer data transcoding time in the data transfer of the first cycle,
In order to create a schedule for the N-th data transfer (N is a positive number of 2 or more) for a plurality of second computers, the transfer order is transferred to the last computer in the (N-1) -th data transfer. The data length that can be transmitted with the determined transfer time is determined as the data transfer time of each second computer in the N-th data transfer by dividing the transcoding time of the segment to be divided by the total number of the second computers Is calculated from the data transfer rate of the second computer, and the transcoding time of each second computer in the N-th data transfer is determined from the calculated data length and the transcoding rate of the second computer. The data length, data transfer time, and transfer data transcoding time of the round data transfer Means for constant may be provided.
[0011]
Thus, for example, when the second computer performs transfer processing in the background during transcoding, and the data transfer rate of the second computer is sufficiently faster than the transcoding rate, the video to each second computer When creating a schedule relating to data allocation, an optimal schedule can be created from the viewpoint of both processing time and image quality of transferred data.
[0012]
A video data format conversion method according to the second aspect of the present invention is as follows:
A first computer dividing video data into a plurality of segments, a plurality of second computers transcoding the divided segments, and a third computer combining the transcoded segments; A video data format conversion method for performing video data format conversion using distributed processing,
A schedule generation step in which a server generates schedule data indicating a schedule relating to video data allocation to each of the second computers based on a transcoding speed and a data transfer speed of each of the second computers;
A division transfer instruction step in which the server transmits an instruction to divide and transfer video data based on the allocation schedule to the first computer;
The first computer dividing the video data in accordance with an instruction from the server and sequentially transferring the divided video data to the second computers;
The second computer receiving segments from the first computer and sequentially transcoding the received segments;
When the second computer detects image quality degradation based on a predetermined standard during the transcoding process of one segment, the image quality degradation detection notification including information specifying the segment is transmitted to the server;
In response to receiving the image quality degradation detection notification, the server transmits an instruction to divide and transfer a segment in which image quality degradation is detected to the first computer; and
Sending the encoding parameters used by the server to re-encode the segment in which the degradation of image quality is detected to each transcoding node;
It is characterized by providing.
[0013]
According to such a configuration, degradation in image quality is detected on a segment basis and the transcoding process is retried only for that segment, so that the overall processing time can be shortened and the processing efficiency can be improved.
[0014]
The schedule data created by the schedule generation step may indicate at least a transfer start time and a scheduled transcoding start time of each segment assigned to each of the second computers,
The re-segmentation instructing step refers to the schedule data, with respect to the second computer that has detected the degradation of image quality during the transcoding process of one segment, by the scheduled transcoding start time of the next segment. Instructing the first computer to divide and transfer the one segment by a processable data length, and to transfer the remaining divided portion of the one segment to all the second computers. A step of transmitting to the first computer an instruction to perform the redistribution processing after the division and transfer processing of the video data instructed by the division transfer instruction step.
[0015]
As a result, when image quality degradation is detected in one segment, reassignment of the segment can be instructed with little influence on the original schedule.
[0016]
The schedule creation step includes:
In order to create a schedule for the first round of data transfer to a plurality of second computers, a segment having a predetermined length is assigned to the computer having the last data transfer order among the plurality of second computers, and the segment is transcoded. Time and transfer time are calculated, and the time obtained by adding the calculated transcoding time and transfer time is determined as the transcoding time of the computer whose data transfer order is one before, and the transcoding time is determined within the determined transcoding time. The transfer time of data with a codeable data length is calculated, and the time obtained by adding the determined transcoding time and the transfer time calculated based on the transcoding time is one order before the data transfer order. Computer transcoding time By repeating the process of determining by the steps of determining a data length and data transfer transcoding time time and transfer data in the data transfer of the first cycle,
In order to create a schedule for the N-th data transfer (N is a positive number of 2 or more) for a plurality of second computers, the transfer order is transferred to the last computer in the (N-1) -th data transfer. The data length that can be transmitted with the determined transfer time is determined as the data transfer time of each second computer in the N-th data transfer by dividing the transcoding time of the segment to be divided by the total number of the second computers Is calculated from the data transfer rate of the second computer, and the transcoding time of each second computer in the N-th data transfer is determined from the calculated data length and the transcoding rate of the second computer. The data length, data transfer time, and transfer data transcoding time of the round data transfer A step of constant, may be provided.
[0017]
According to such a configuration, degradation in image quality is detected on a segment basis and the transcoding process is retried only for that segment, so that the overall processing time can be shortened and the processing efficiency can be improved.
[0018]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below with reference to the drawings as a format conversion system for converting the format of video data encoded in a predetermined format into another format.
[0019]
FIG. 1 is a diagram showing the configuration of a format conversion system according to an embodiment of the present invention.
As shown in FIG. 1, the format conversion system includes a server computer (hereinafter referred to as a server) 1 and a plurality of computers (nodes), which are connected to each other via a
[0020]
The
[0021]
The scheduling unit 1 a performs an initial scheduling process for assigning video data to be processed to each transcoding
In this initial scheduling process, on the basis of the segment transfer rate and transcoding rate of each transcoding
[0022]
The initial scheduling process will be specifically described with reference to FIG. In the first round of data transfer, the scheduling unit 1a first transfers a segment sequentially to a plurality of transcoding nodes 22 (
[0023]
Next, for the data transfer in the Nth cycle (after the second cycle), in the data transfer in the (N-1) th cycle, the data assigned to the last node in the transfer order (
[0024]
Then, for example, the scheduling unit 1a adds each segment sequentially transferred to each node by sequentially adding the initial transfer time of the segment and the transcoding time of each subsequent segment with reference to a predetermined scheduled transfer start time. The transfer start time, the scheduled transcoding start time, and the like are obtained and stored in the storage unit as schedule data.
In general, since the data transfer rate of the
[0025]
In addition, the scheduling unit 1a responds to a notification (degradation of image quality detection) that the image quality degradation is detected from the transcoding
[0026]
The rescheduling process will be described with reference to FIG. First, the scheduling unit 1a obtains a time Ta from the time when the image quality deterioration is detected until the transcoding of the next segment starts at the node (image quality deterioration detection node) where the image quality deterioration is detected. Specifically, when the time when image quality degradation is detected is tc [s] and the scheduled transcoding start time of the segment following the image quality degradation is tn [s], time Ta [s] is It is calculated | required by the formula shown.
[0027]
[Expression 1]
Ta [s] = tn−tc
[0028]
Note that the information on the time tc [s] at which the image quality degradation is detected may be included in the image quality degradation detection notification to the
[0029]
Next, the scheduling unit 1a obtains the data length Lc that can be transcoded during the time Ta by using the equation shown in
[0030]
[Expression 2]
Lc [bit] = Ta / V
[0031]
In addition, the scheduling unit 1a sets the total length of the image quality degradation detection segment to L [bit], and calculates the data length Lr of the remaining portion that is not transcoded at the time Ta among the segments in which the image quality degradation has been detected by the equation (3) .
[0032]
[Equation 3]
Lr [bit] = L−Lc
[0033]
The data length to be allocated to each node is determined by, for example, equally dividing the remaining data length Lr [bit] by all the
For example, for data redistributed to each transcoding
[0034]
The node control unit 1b performs a process of transmitting various instructions to each node (
For example, the node control unit 1b transmits to the source node 21 a division / transfer instruction that instructs the source to be divided into segments of a predetermined length and transferred to each node. The source to be processed may be transmitted in advance, or may be transmitted together with the division / transfer instruction. This division / transfer instruction instructs to divide the source into segments of a predetermined segment length based on the schedule data generated by the initial scheduling process, and transfer it to each transcoding
[0035]
In addition, the node control unit 1b transmits to the source node 21 a subdivision / transfer instruction for retrying transcoding for the image quality degradation detection segment. The re-division / transfer instruction is an instruction to divide the image quality detection segment into predetermined length parts and immediately transfer them to the image quality deterioration detection node, and to redistribute the remaining divided parts to the
[0036]
In addition, the node control unit 1 b transmits a transcoding instruction for the transferred segment to the
In addition, the node control unit 1b supplies the encoding parameter information used when re-encoding the divided data of the image quality deterioration detection segment together with information (segment number or the like) for specifying the image quality deterioration detection segment to each transcoding
[0037]
In addition, the node control unit 1b transmits an instruction to combine the accumulated segments to the
[0038]
The
The dividing unit 21 a divides the video data into a plurality of segments having a predetermined segment length in accordance with a division / transfer instruction from the
Further, the dividing unit 21a divides the segment having the image quality degradation into the data length Lc and the data length Lr in accordance with the re-division / transfer instruction from the
[0039]
The transcoding
[0040]
The
[0041]
The encode /
In addition, the encoding /
[0042]
The image quality
[0043]
The
The combining unit 23a receives each segment after the conversion process from each transcoding
[0044]
Next, the overall processing flow in the format conversion system of the present invention will be described with reference to FIG.
First, the
Further, the
[0045]
Each transcoding
[0046]
When no transcoding
When the
In response to this, the
[0047]
Further, in step S7, for example, when image quality degradation is detected in any of the
The
[0048]
Then, the
[0049]
The
In addition, the
[0050]
When each transcoding
In response to this, the
[0051]
As described above, according to the present invention, degradation in image quality is detected on a segment basis and the transcoding process is retried only for that segment, thereby reducing the overall processing time and improving the processing efficiency. Can do.
In addition, for the image quality degradation detection segment, the segment is divided and reassigned to a length that can be processed within the originally scheduled processing time, and the remaining part is additionally redistributed to each node. The work schedule can be hardly affected.
[0052]
In the above description, the image quality
[0053]
The above system configuration is an example. For example, the function of one computer may be realized by a plurality of computers, and the functions of a plurality of computers may be realized by a single computer. .
For example, there may be a plurality of
Further, at least one of the
[0054]
The system of the present invention can be realized using a normal computer system, not a dedicated system. For example, a program for executing the above operation is stored in a computer-readable recording medium (FD, CD-ROM, DVD, etc.) and distributed, and the program is installed in the computer to execute the above processing. A
Further, when the OS realizes the above functions by sharing the OS or jointly with the OS and the application, only the part other than the OS may be stored and distributed in a medium, or may be superimposed on a carrier wave to a computer. You may download it.
[0055]
【The invention's effect】
According to such a configuration, it is possible to shorten the overall processing time and improve the processing efficiency in the video data format conversion processing.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of a format conversion system according to an embodiment of the present invention.
FIG. 2 is a diagram for explaining initial scheduling processing;
FIG. 3 is a diagram for explaining rescheduling processing;
4 is a diagram for explaining an overall processing flow in the format conversion system of FIG. 1; FIG.
[Explanation of symbols]
1 server
1a Scheduling part
1b Node control unit
2 nodes
10 network
21 Source node
21a Dividing part
22 Transcoding node
22a Conversion control unit
22b Encoding / decoding part
22c Image quality deterioration detection unit
23 Destination node
23a joint
Claims (6)
前記サーバは、
各前記第2のコンピュータのトランスコーディング速度とデータ転送速度に基づいて、各前記第2のコンピュータに対する映像データの割当に関するスケジュールを示すスケジュールデータを生成するスケジュール生成手段と、
前記割当スケジュールに基づく映像データの分割及び転送指示を前記第1のコンピュータに送信する分割転送指示手段と、を備え、
前記第1のコンピュータは、前記サーバからの指示に従って映像データを分割し、各前記第2のコンピュータに順次転送する手段を備え、
各前記第2のコンピュータは、
前記第1のコンピュータからセグメントを順次受信する手段と、
前記受信したセグメントのトランスコーディングを順次行う手段と、
セグメントのトランスコーディングにおいて所定の基準により画質の劣化を検出する画質劣化検出手段と、
一のセグメントのトランスコーディング処理中において、前記画質劣化検出手段により画質の劣化が検出されたとき、当該セグメントを特定する情報を含む画質劣化検出通知を前記サーバに送信する手段と、を備え、
前記サーバは、前記画質劣化検出通知の受信に応答して、画質の劣化が検出されたセグメントの分割及び転送の指示を前記第1のコンピュータに送信する再分割指示手段と、前記画質の劣化が検出されたセグメントの再エンコードに使用するエンコードパラメータを各トランスコーディングノードに送信する手段と、をさらに備える、
ことを特徴とする映像データフォーマット変換システム。A server, a first computer that divides video data into a plurality of segments, a plurality of second computers that transcode the divided segments, and a third computer that combines the transcoded segments, A video data format conversion system for performing video data format conversion using distributed processing,
The server
Schedule generating means for generating schedule data indicating a schedule relating to video data allocation to each of the second computers based on the transcoding speed and data transfer speed of each of the second computers;
Division transfer instruction means for transmitting an instruction to divide and transfer video data based on the allocation schedule to the first computer,
The first computer includes means for dividing video data in accordance with an instruction from the server and sequentially transferring the video data to each of the second computers,
Each said second computer is
Means for sequentially receiving segments from the first computer;
Means for sequentially transcoding the received segments;
Image quality deterioration detection means for detecting image quality deterioration according to a predetermined criterion in segment transcoding;
Means for transmitting an image quality deterioration detection notification including information identifying the segment to the server when image quality deterioration is detected by the image quality deterioration detecting means during the transcoding process of one segment;
The server, in response to receiving the image quality degradation detection notification, re-segmentation instruction means for transmitting a segment division and transfer instruction for which image quality degradation has been detected to the first computer; Means for transmitting to each transcoding node encoding parameters used to re-encode the detected segments;
A video data format conversion system characterized by that.
前記サーバの再分割指示手段は、前記スケジュールデータを参照して、一のセグメントのトランスコーディング処理中に画質の劣化を検出した前記第2のコンピュータに対して、次のセグメントのトランスコーディング開始予定時刻までに処理可能なデータ長だけ前記一のセグメントを分割して再度転送することを前記第1のコンピュータに指示する手段と、前記一のセグメントの分割された残りの部分を全ての前記第2のコンピュータに再分配する処理を前記分割転送指示手段により指示された映像データの分割及び転送の処理の後に行う旨の指示を前記第1のコンピュータに送信する手段と、を備える、
ことを特徴とする請求項1に記載の映像データフォーマット変換システム。The schedule data created by the schedule generating means of the server indicates at least the transfer start time and the transcoding start scheduled time of each segment allocated to each of the second computers,
The server subdivision instructing means refers to the schedule data, and with respect to the second computer that has detected the degradation of image quality during the transcoding process of one segment, the scheduled transcoding start time of the next segment Means for instructing the first computer to divide and transfer again the one segment by a data length that can be processed by the process, and to transfer the remaining divided part of the one segment to all the second segments Means for transmitting, to the first computer, an instruction to perform redistribution to the computer after the division and transfer processing of the video data instructed by the division transfer instruction means.
The video data format conversion system according to claim 1, wherein:
複数の第2のコンピュータに対する1巡目のデータ転送におけるスケジュールを作成するために、複数の第2のコンピュータのうちデータ転送の順番が最後のコンピュータに所定長のセグメントを割り当て、該セグメントのトランスコーディング時間と転送時間を算出し、前記算出したトランスコーディング時間と転送時間を加算した時間をデータ転送の順番が一つ前のコンピュータのトランスコーディング時間として決定し、前記決定されたトランスコーディング時間内にトランスコード可能なデータ長のデータの転送時間を算出し、前記決定されたトランスコーディング時間と該トランスコーディング時間に基づいて算出された前記転送時間を加算した時間をデータ転送の順番がさらに一つ前のコンピュータのトランスコーディング時間として決定する処理を繰り返すことにより、1巡目のデータ転送におけるデータ長とデータ転送時間と転送データのトランスコーディング時間を決定する手段と、
複数の第2のコンピュータに対するN巡目(Nは2以上の正数)のデータ転送におけるスケジュールを作成するために、(N−1)巡目のデータ転送において転送の順番が最後のコンピュータに転送されるセグメントのトランスコーディング時間を第2のコンピュータの総数で等分した時間をN巡目のデータ転送における各第2のコンピュータのデータ転送時間として決定し、決定した転送時間で送信可能なデータ長を第2のコンピュータのデータ転送速度から算出し、算出したデータ長と第2のコンピュータのトランスコーディング速度からN巡目のデータ転送における各第2のコンピュータのトランスコーディング時間を決定することにより、N巡目のデータ転送のデータ長とデータ転送時間と転送データのトランスコーディング時間を決定する手段と、を備える、
ことを特徴とする請求項1又は2に記載の映像データフォーマット変換システム。The schedule creation means includes
In order to create a schedule for the first round of data transfer to a plurality of second computers, a segment having a predetermined length is assigned to the computer having the last data transfer order among the plurality of second computers, and the segment is transcoded. Time and transfer time are calculated, and the time obtained by adding the calculated transcoding time and transfer time is determined as the transcoding time of the computer whose data transfer order is one before, and the transcoding time is determined within the determined transcoding time. The transfer time of data with a codeable data length is calculated, and the time obtained by adding the determined transcoding time and the transfer time calculated based on the transcoding time is one order before the data transfer order. Computer transcoding time By repeating the process of determining and means for determining a data length and a data transfer time and transfer data transcoding time in the data transfer of the first cycle,
In order to create a schedule for the N-th data transfer (N is a positive number of 2 or more) for a plurality of second computers, the transfer order is transferred to the last computer in the (N-1) -th data transfer. The data length that can be transmitted with the determined transfer time is determined as the data transfer time of each second computer in the N-th data transfer by dividing the transcoding time of the segment to be divided by the total number of the second computers Is calculated from the data transfer rate of the second computer, and the transcoding time of each second computer in the N-th data transfer is determined from the calculated data length and the transcoding rate of the second computer. The data length, data transfer time, and transfer data transcoding time of the round data transfer And means for constant, a
3. The video data format conversion system according to claim 1, wherein the video data format conversion system is a video data format conversion system.
サーバが、各前記第2のコンピュータのトランスコーディング速度とデータ転送速度に基づいて、各前記第2のコンピュータに対する映像データの割当に関するスケジュールを示すスケジュールデータを生成するスケジュール生成ステップと、
前記サーバが、前記割当スケジュールに基づく映像データの分割及び転送指示を前記第1のコンピュータに送信する分割転送指示ステップと、
前記第1のコンピュータが、前記サーバからの指示に従って前記映像データを分割し、各前記第2のコンピュータに順次転送するステップと、
前記第2のコンピュータが、前記第1のコンピュータからセグメントを受信し、前記受信したセグメントのトランスコーディングを順次行うステップと、
前記第2のコンピュータが、一のセグメントのトランスコーディング処理中において、所定の基準により画質の劣化を検出した場合、当該セグメントを特定する情報を含む画質劣化検出通知を前記サーバに送信するステップと、
前記サーバが、前記画質劣化検出通知の受信に応答して、画質の劣化が検出されたセグメントの分割及び転送の指示を前記第1のコンピュータに送信する再分割指示ステップと、
前記サーバが、前記画質の劣化が検出されたセグメントの再エンコードに使用するエンコードパラメータを各トランスコーディングノードに送信するステップと、
を備えることを特徴とする映像データフォーマット変換方法。A first computer dividing video data into a plurality of segments, a plurality of second computers transcoding the divided segments, and a third computer combining the transcoded segments; A video data format conversion method for performing video data format conversion using distributed processing,
A schedule generation step in which a server generates schedule data indicating a schedule relating to video data allocation to each of the second computers based on a transcoding speed and a data transfer speed of each of the second computers;
A division transfer instruction step in which the server transmits an instruction to divide and transfer video data based on the allocation schedule to the first computer;
The first computer dividing the video data in accordance with an instruction from the server and sequentially transferring the divided video data to the second computers;
The second computer receiving segments from the first computer and sequentially transcoding the received segments;
When the second computer detects image quality degradation based on a predetermined standard during the transcoding process of one segment, the image quality degradation detection notification including information specifying the segment is transmitted to the server;
In response to receiving the image quality degradation detection notification, the server transmits an instruction to divide and transfer a segment in which image quality degradation is detected to the first computer; and
Sending the encoding parameters used by the server to re-encode the segment in which the degradation of image quality is detected to each transcoding node;
A video data format conversion method comprising:
前記再分割指示ステップは、前記スケジュールデータを参照して、一のセグメントのトランスコーディング処理中に画質の劣化を検出した前記第2のコンピュータに対して、次のセグメントのトランスコーディング開始予定時刻までに処理可能なデータ長だけ前記一のセグメントを分割して再度転送することを前記第1のコンピュータに指示するステップと、前記一のセグメントの分割された残りの部分を全ての前記第2のコンピュータに再分配する処理を前記分割転送指示ステップにより指示された映像データの分割及び転送の処理の後に行う旨の指示を前記第1のコンピュータに送信するステップと、を備える、
ことを特徴とする請求項4に記載の映像データフォーマット変換方法。The schedule data created by the schedule generation step indicates at least a transfer start time and a transcoding start scheduled time of each segment assigned to each of the second computers,
The re-segmentation instructing step refers to the schedule data, with respect to the second computer that has detected the degradation of image quality during the transcoding process of one segment, by the scheduled transcoding start time of the next segment. Instructing the first computer to divide and transfer the one segment by a processable data length, and to transfer the remaining divided portion of the one segment to all the second computers. Transmitting to the first computer an instruction to perform the redistribution processing after the division and transfer processing of the video data instructed by the division transfer instruction step.
The video data format conversion method according to claim 4, wherein:
複数の第2のコンピュータに対する1巡目のデータ転送におけるスケジュールを作成するために、複数の第2のコンピュータのうちデータ転送の順番が最後のコンピュータに所定長のセグメントを割り当て、該セグメントのトランスコーディング時間と転送時間を算出し、前記算出したトランスコーディング時間と転送時間を加算した時間をデータ転送の順番が一つ前のコンピュータのトランスコーディング時間として決定し、前記決定されたトランスコーディング時間内にトランスコード可能なデータ長のデータの転送時間を算出し、前記決定されたトランスコーディング時間と該トランスコーディング時間に基づいて算出された前記転送時間を加算した時間をデータ転送の順番がさらに一つ前のコンピュータのトランスコーディング時間として決定する処理を繰り返すことにより、1巡目のデータ転送におけるデータ長とデータ転送時間と転送データのトランスコーディング時間を決定するステップと、
複数の第2のコンピュータに対するN巡目(Nは2以上の正数)のデータ転送におけるスケジュールを作成するために、(N−1)巡目のデータ転送において転送の順番が最後のコンピュータに転送されるセグメントのトランスコーディング時間を第2のコンピュータの総数で等分した時間をN巡目のデータ転送における各第2のコンピュータのデータ転送時間として決定し、決定した転送時間で送信可能なデータ長を第2のコンピュータのデータ転送速度から算出し、算出したデータ長と第2のコンピュータのトランスコーディング速度からN巡目のデータ転送における各第2のコンピュータのトランスコーディング時間を決定することにより、N巡目のデータ転送のデータ長とデータ転送時間と転送データのトランスコーディング時間を決定するステップと、を備える、
ことを特徴とする請求項4又は5に記載の映像データフォーマット変換方法。The schedule creation step includes:
In order to create a schedule for the first round of data transfer to a plurality of second computers, a segment having a predetermined length is assigned to the computer having the last data transfer order among the plurality of second computers, and the segment is transcoded. Time and transfer time are calculated, and the time obtained by adding the calculated transcoding time and transfer time is determined as the transcoding time of the computer whose data transfer order is one before, and the transcoding time is determined within the determined transcoding time. The transfer time of data with a codeable data length is calculated, and the time obtained by adding the determined transcoding time and the transfer time calculated based on the transcoding time is one order before the data transfer order. Computer transcoding time By repeating the process of determining by the steps of determining a data length and data transfer transcoding time time and transfer data in the data transfer of the first cycle,
In order to create a schedule for the N-th data transfer (N is a positive number of 2 or more) for a plurality of second computers, the transfer order is transferred to the last computer in the (N-1) -th data transfer. The data length that can be transmitted with the determined transfer time is determined as the data transfer time of each second computer in the N-th data transfer by dividing the transcoding time of the segment to be divided by the total number of the second computers Is calculated from the data transfer rate of the second computer, and the transcoding time of each second computer in the N-th data transfer is determined from the calculated data length and the transcoding rate of the second computer. The data length, data transfer time, and transfer data transcoding time of the round data transfer Comprising the steps of: a constant, a,
6. The video data format conversion method according to claim 4, wherein the video data format is converted.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003152737A JP4286061B2 (en) | 2003-05-29 | 2003-05-29 | Video data format conversion system and method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003152737A JP4286061B2 (en) | 2003-05-29 | 2003-05-29 | Video data format conversion system and method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2004357002A JP2004357002A (en) | 2004-12-16 |
| JP4286061B2 true JP4286061B2 (en) | 2009-06-24 |
Family
ID=34047874
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2003152737A Expired - Lifetime JP4286061B2 (en) | 2003-05-29 | 2003-05-29 | Video data format conversion system and method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4286061B2 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20220417304A1 (en) * | 2013-09-25 | 2022-12-29 | Iheartmedia Management Services, Inc. | Transmitting media item to different destinations using different sized chunks |
Families Citing this family (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006339855A (en) * | 2005-05-31 | 2006-12-14 | Toshiba Corp | Network control apparatus, encoding system conversion apparatus, and content data reproduction system |
| WO2008114393A1 (en) * | 2007-03-19 | 2008-09-25 | Fujitsu Limited | Bit stream converting method, bit stream converting device, bit stream coupling device, bit stream dividing program, bit stream converting program and bit stream coupling program |
| JP2009171134A (en) * | 2008-01-15 | 2009-07-30 | Nippon Hoso Kyokai <Nhk> | Video format converter |
| KR101306386B1 (en) | 2012-03-16 | 2013-09-09 | 김종하 | System for transcoding service of multimedia and method for the same |
| KR20130104943A (en) | 2012-03-16 | 2013-09-25 | 삼성전자주식회사 | Method and apparatus for automatically managing radio resource of ims-based wireless video surveillance according to viedo analysis |
| JP6541933B2 (en) * | 2012-12-28 | 2019-07-10 | ヤマハ株式会社 | Signal processing apparatus and signal processing method |
| CN107153574A (en) * | 2016-03-03 | 2017-09-12 | 北京大学 | Picture code-transferring method and system |
| CN111757118B (en) * | 2020-06-29 | 2023-04-21 | 北京百度网讯科技有限公司 | Video transcoding processing method, device, equipment and medium |
| CN112584156B (en) * | 2020-11-18 | 2022-08-02 | 卓旺(安徽)航空科技产业股份有限公司 | Transcoding 4K video algorithm based on 2K video data deep learning |
-
2003
- 2003-05-29 JP JP2003152737A patent/JP4286061B2/en not_active Expired - Lifetime
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20220417304A1 (en) * | 2013-09-25 | 2022-12-29 | Iheartmedia Management Services, Inc. | Transmitting media item to different destinations using different sized chunks |
| US11979445B2 (en) * | 2013-09-25 | 2024-05-07 | Iheartmedia Management Services, Inc. | Transmitting media item to different destinations using different sized chunks |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2004357002A (en) | 2004-12-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR100939863B1 (en) | Stream data processing device, stream data processing method, recording medium | |
| US8793695B2 (en) | Information processing device and information processing method | |
| JP4286061B2 (en) | Video data format conversion system and method | |
| KR100987746B1 (en) | Computer-readable recording media recording work management devices, cluster systems, and work management programs. | |
| JP5667210B2 (en) | Distributed video transcoding system with adaptive file processing | |
| US20040098718A1 (en) | Task allocation method in multiprocessor system, task allocation program product, and multiprocessor system | |
| JP2008146577A (en) | Control device, control system, and control program | |
| CN107122232B (en) | Device and method for processing multimedia tasks | |
| CN112910937A (en) | Object scheduling method and device in container cluster, server and container cluster | |
| JP4526539B2 (en) | Computer system and information processing method | |
| US20170344266A1 (en) | Methods for dynamic resource reservation based on classified i/o requests and devices thereof | |
| JP2020156053A (en) | Network disaster recovery system, computer program and network disaster recovery method | |
| JP2011096110A (en) | Job net control program and job net control device | |
| JP4485592B2 (en) | Computer system and computer system control method | |
| US9838324B2 (en) | Information processing system, information management apparatus, and data transfer control method | |
| US20170317886A1 (en) | Systems and Methods for Configuring a Radio Access Network Process in a Communications Network | |
| JP7435521B2 (en) | Controller, control method and control program | |
| JPH10187387A (en) | Print system | |
| JP6957910B2 (en) | Information processing device | |
| JP2004151809A (en) | Information processor and program | |
| JP2008544371A (en) | How to handle lock-related inconsistencies | |
| JP5056346B2 (en) | Information processing apparatus, information processing system, virtual server movement processing control method, and program | |
| JP7057178B2 (en) | Management node, node, cluster system and node control method | |
| CN113709522A (en) | Method, device and equipment for processing monitoring video and storage medium | |
| CN116185676B (en) | Job recovery methods and computing equipment |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060126 |
|
| 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: 20090324 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090324 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120403 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4286061 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120403 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130403 Year of fee payment: 4 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130403 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140403 Year of fee payment: 5 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| EXPY | Cancellation because of completion of term |