JP5072572B2 - サーバ - Google Patents

サーバ Download PDF

Info

Publication number
JP5072572B2
JP5072572B2 JP2007327948A JP2007327948A JP5072572B2 JP 5072572 B2 JP5072572 B2 JP 5072572B2 JP 2007327948 A JP2007327948 A JP 2007327948A JP 2007327948 A JP2007327948 A JP 2007327948A JP 5072572 B2 JP5072572 B2 JP 5072572B2
Authority
JP
Japan
Prior art keywords
frame
error
frames
encoded
decoder
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
JP2007327948A
Other languages
English (en)
Other versions
JP2008219862A5 (ja
JP2008219862A (ja
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.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from FR0655646A external-priority patent/FR2910218A1/fr
Application filed by Canon Inc filed Critical Canon Inc
Publication of JP2008219862A publication Critical patent/JP2008219862A/ja
Publication of JP2008219862A5 publication Critical patent/JP2008219862A5/ja
Application granted granted Critical
Publication of JP5072572B2 publication Critical patent/JP5072572B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/164Feedback from the receiver or from the transmission channel
    • H04N19/166Feedback from the receiver or from the transmission channel concerning the amount of transmission errors, e.g. bit error rate [BER]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/177Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a group of pictures [GOP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/179Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scene or a shot
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • H04N19/895Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder in combination with error concealment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6583Acknowledgement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • H04N5/77Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • H04N5/775Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television receiver
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/78Television signal recording using magnetic recording
    • H04N5/781Television signal recording using magnetic recording on disks or drums
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/84Television signal recording using optical recording
    • H04N5/85Television signal recording using optical recording on discs or drums
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/8042Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/87Regeneration of colour television signals
    • H04N9/88Signal drop-out compensation
    • H04N9/888Signal drop-out compensation for signals recorded by pulse code modulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Television Signal Processing For Recording (AREA)

Description

本発明は、信頼性の低いネットワークを介して送信元から1以上の受信側にマルチメディアコンテンツを送信することに関し、特に、損傷ビデオストリームを再同期化することに関する。
一般に、信頼性の低いネットワークを介して送信元から1人以上の受信者にマルチメディアコンテンツを送信するシステムは、サーバ及び1つ以上のクライアントから構成される。図1は、分散型データ交換網を概略的に示す。そのようなネットワークは、クライアント端末及び/又はサーバの集合を含む。各端末は、ネットワークに接続され且つ通信手段を有する。例えばネットワークは、WiFiネットワーク(802.11a又は802.11b又は802.11g)、イーサネット(登録商標)網又はインターネット等の無線ネットワークであってもよい。サーバ100は、特にビデオ取得又は記憶システム、符号器及びネットワークモジュールから構成される。クライアント105は、特に復号器及びネットワークモジュールから構成される。端末100及び105の各々は、揮発性記憶メモリ110(キャッシュメモリ)、ファイルサーバ115及びユーザからの要求を通信できるマンマシンインタフェース120を具備するのが好ましい。端末は、グローバルネットワーク125を使用して直接通信できる。
一般に、符号化は、種々のビデオ圧縮を使用するビデオ規格に基づく。ビデオ圧縮方法は、フレーム内の空間的冗長性を減少するいわゆる「フレーム内」又は空間的方法と空間的冗長性及び時間的冗長性の減少を組み合わせるいわゆる「フレーム間」方法又はハイブリッド符号化との2種類に区別される。フレーム間ビデオストリームは、主に時間的予測フレーム(Pフレーム又はBフレーム)及び全ての他のフレームに依存しないフレーム内符号化フレーム(Iフレーム)から成る。圧縮に関して、Pフレーム及びBフレームはIフレームより非常に小さい。Pフレーム及びBフレームは、ネットワークを特徴付ける帯域幅の制約をより適切に満たす。Iフレームは時間依存性を低減するため、Iフレームを挿入することによりパケット損失及び送信エラーに対する耐性は増加する。従って、エラー伝播現象は低減される。
サーバのネットワークモジュールは、ビデオストリームをパケットに配置し、主にネットワークの状態、並びにクライアントの能力及び要求により規定される速度でそれらパケットを送信する役割を果たす。受信機は、ビデオの連続フレームを受信及び復号化し、後続するパケットを受信し続ける一方でそれらフレームを表示する。
送信エラーを管理する単純な方法は、損失パケット又はエラーパケットを再送信することである。ARQアルゴリズムは、そのような方法の一例である。しかし、一般にこの方法による遅延は、テレビ会議等の「リアルタイム」アプリケーションには大きすぎる。
別の方法は、元のデータの劣化したバージョン又はエラー訂正符号の形式でビデオストリームに冗長性を導入することから成る。FEC(Forward Error Correction(順方向誤り訂正)の略語)システムは、送信エラーの修正を可能にする。この種のツールに固有の問題は、冗長性レベルの効果的な調整にある。冗長性レベルは、損失を修正するのに十分であるが、有用なデータの割合を最大限にするために制限される。
再送信(ARQ)又は冗長性の挿入(FEC)によるエラー訂正の機構が全ての送信エラーを修正できない場合、あるいはそのような機構が実現されない場合、残存する送信エラーは復号化ビデオストリームにおいて可視であるアーティファクトとも呼ばれる復号化エラーを引き起こす。それら復号化エラーは、使用される予測符号化により1つの画像から別の画像に伝播する可能性がある。
そのため、フレーム間符号化を使用する多くのシステムは、エラー伝播を終了できるIフレームを周期的に挿入することにより、ストリームのリフレッシュ(又は再同期化)をデフォルトで実行する。しかし、フレーム内符号化のコストはフレーム間符号化のコストより非常に高いため、フレームレートを必要以上に速くしないように、フレーム周波数を減少する必要がある。更に、パケット確認応答機構は、サーバにパケットの損失を示し、クライアントのビデオストリームにおけるエラー伝播を停止するためにフレーム内符号化フレームを明示的に送信してもよい(要求時リフレッシュ又はフレーム内リフレッシュとも呼ばれる)。
送信エラー訂正機構は、損失により損傷したフレームの領域を補間する復号化エラー隠蔽方法により補足されることが多い。それら方法は、ネットワークリソース(ボリューム及び遅延)に関してコストがかからないという利点を有する。それら方法の実現は、実際には、クライアント上に存在する情報及びデータのみに基づく。それら方法は、失われたデータを再構成するためにフレームの有効領域に依存することにより同一フレーム内の空間補間に基づくか、あるいは現在のフレームを再構成するためにブロックの推定された動き及び先のフレームのデータを使用する時間補間に基づく。
それら技術が復号化エラー隠蔽に対して開発されたにも関わらず、現在、特に「リアルタイム」アプリケーションの場合にビデオの損傷フレームの完璧な再構成を保証できない。これにより、ユーザに対する視覚的な快適性に問題が生じる。
尚、この点に関して、定量化するのが困難な種々の視覚心理判定基準を測定値が満たす必要があるため、ビデオの視覚品質は自動的に評価するのは困難である。元のフレームと再構成されたフレームとの全体の差分を推定するPSNR(Peak Signal to Noise Ratio(ピーク信号/雑音比)の略語)の測定値等のいわゆる特定の客観的な測定値は、フレームの再構成の品質を推定するための基準ツールである。
米国特許第6,683,988号公報において、損失隠蔽及びビデオストリームの再同期化に関する方法が説明される。フレームにおいて復号化エラーが発生した場合、復号器はその損失を符号器に示し、符号器は復号器上で実行される損失隠蔽をシミュレートする。従って、その損失の隠蔽は厳密に同一の方法を使用して復号器及び符号器上で実行されるため、ネットワークの各側に同一の参照フレームが存在することが保証される。次に、修正されたフレームは、後続する予測フレームに対して符号化レベルで参照フレームとして使用される。データ損失の修正は、最小限の符号化のコストで自動的に実行され、ビデオの品質は劣化する。
復号化エラー隠蔽が改善されることが判明しても、隠蔽の視覚効果は十分に考慮されるとは限らない。
米国特許第6,697,126号公報において、損傷フレーム又はビデオに対する損失隠蔽の視覚再生を改善する方法が説明される。この方法は、採用される損失隠蔽方法に依存せず且つそれを補完しない。この方法は、修正された領域とフレームの有効部分との遷移を空間的に平滑化することを提案し、それら2つの領域間に不自然に突然境界が現れることを防止する。しかし、この方法は、損傷領域に対して行なわれる修正の視覚的影響を十分に低減しない。
本発明により、上述の問題のうち少なくとも1つを解決できる。
本発明の目的を達成するために、例えば、本発明のサーバは以下の構成を備える。即ち、各フレームを動き予測符号化により符号化してクライアントに送信するサーバであって、
t番目のフレームである現フレームと該現フレームに対する参照フレームとから予測した該現フレームの予測フレーム中の損失を要求に応じて隠蔽し、該隠蔽後の予測フレームと前記現フレームとの差分を求め、該求めた差分を符号化した後で復号した復号差分を前記隠蔽後の予測フレームに加算し、該加算後の予測フレーム中の損失を前記要求に応じて隠蔽したフレームを出力する第1の手段と、
前記現フレームの1フレーム前のフレーム若しくは供給されたフレームを参照フレームとして用いて、前記現フレームの動き予測符号化データを復号し、該復号により得られる復号現フレーム中の損失を前記要求に応じて隠蔽し、前記復号差分を該隠蔽後の復号現フレームに加算し、該加算後の復号現フレーム中の損失を前記要求に応じて隠蔽したフレームを出力する第2の手段と、
前記第1の手段から出力されたフレームをA、前記第2の手段から出力されたフレームをBとし、ディゾルブ指数をiとすると、フレームCを、C=i/N×B+(N−i)/N×Aを計算することで求める手段と、
前記フレームCの1フレーム前のフレーム若しくは供給されたフレームを参照フレームとして用いて、前記フレームCの動き予測符号化を行うことで生成した動き予測符号化データを前記クライアントに送信する第3の手段と、
k(<t)番目のフレームに影響を及ぼす送信エラーが前記クライアント側で検出されたことに応じて該クライアントから送信されたメッセージを受信した場合、
前記ディゾルブ指数をN(Nは2以上の自然数)に設定し、前記ディゾルブ指数が非0である場合には、該ディゾルブ指数をフレームごとに1減算し、
前記k番目のフレームの動き予測符号化データを復号して得られる復号フレームkを参照フレームとして用いて(k+1)番目のフレームを動き予測符号化により符号化し、該符号化の結果を、該復号フレームk中の損失を隠蔽した隠蔽復号フレームを参照フレームとして参照して復号し、該復号の結果をI(τ)とした場合に、p=τ+1、τ+2、…、tの順にp番目のフレームの動き予測符号化結果をI(p−1)を参照フレームとして用いて符号化すると共に該符号化結果を復号したフレームをI(p)として得る処理により得られるI(t)を、前記第2の手段及び前記第3の手段に参照フレームとして供給する処理手段と
を備えることを特徴とする。
本発明の他の利点、目的及び特徴は、添付の図面と関連して限定しない例として与えられる以下の詳細な説明から分かるだろう。
本発明に係る方法及びデバイスの目的は、再同期化ビデオへの損傷ビデオのプログレッシブなディゾルブを実行することである。プログレッシブなディゾルブは、復号器又は符号器において実施される。
概略的に、第1の実施形態及び第2の実施形態によると、説明される解決策は所定の遷移期間にわたり2つの並列ビデオストリームを作成及び管理することを必要とする。
・受信されたフレーム内符号化フレームから開始する再同期化された有効ストリーム
・フレーム内符号化フレームがまだ到着していないかのように、フレーム内符号化フレームが受信された瞬間を過ぎてエラーが伝播される損傷ストリーム
損傷ストリームは、プログレッシブなディゾルブ機構がクライアントにより実現される場合はクライアントによる処理の結果として得られる実際のストリームに対応し、プログレッシブなディゾルブがサーバにより実現される場合はシミュレートされたストリームに対応する。
再同期化ストリームと損傷ストリームとのプログレッシブなディゾルブにより取得されるストリームは、プログレッシブなディゾルブ機構がクライアントにより実現される場合は表示されたストリームに対応し、プログレッシブなディゾルブ機構がサーバにより実現される場合は符号化ストリームに対応する。取得されたストリームにより、損傷ストリームから有効ストリームに緩やかに移ることが可能になり、実行される修正処理を隠蔽する。
尚、損失隠蔽機構の使用は、プログレッシブなディゾルブを補完するが任意である。
プログレッシブなディゾルブがサーバにより、すなわち符号器により実現される場合、否定応答を受信した際、現在のフレームまでのエラー伝播及び復号器により実行される損失隠蔽をシミュレートし、連続するディゾルブを考慮して復号器の参照フレームを再計算することによりディゾルブの中間フレームを符号化する必要がある。エラーパケットに関して通知された否定応答が送出され、特にフレームの損失領域を示すと、復号器は特に処理を行なわず、受信したストリームは緩やかな再同期化を本質的に含む。従って、この解決策は符号器の変更のみを含む。
プログレッシブなディゾルブがクライアントにより、すなわち復号器により実現される場合、再同期化の開始時、ストリームを実際に再同期化するフレーム内符号化フレームと、エラーの伝播を可能にし且つ遷移期間にわたり損傷ストリームをシミュレートするフレーム間予測符号化フレームとを利用可能にする必要がある。復号器によるそのフレームの内挿は、オプションとして損失隠蔽技術により可能であるが、複雑な動きの場合には危険を伴う。しかし、この解決策は、復号器のみを変更するという利点を有する。より品質の良いプログレッシブなストリームを取得するために、復号器が別個に識別及び処理できるIフレーム及びPフレームを送出することにより再同期化フレームを複写するように符号器に指示するのが好ましい。そのような解決策は、符号器の変更を更に必要とする。
第3の実施形態によると、プログレッシブなディゾルブはクライアントにより実現される。劣化したフレーム間予測符号化フレームに後続するフレーム内符号化フレームは、対応する劣化していないフレーム間予測符号化フレームを予測するために使用される。それらフレーム間予測符号化フレームは、劣化の影響をプログレッシブに減少するために組み合わされる。
本発明又は本発明の一部を実現する装置を図2に示す。例えば装置200は、マイクロコンピュータ、ワークステーション、デジタルアシスタント、移動電話、デジタルビデオカメラ、スチールカメラ、ビデオ監視カメラ(Webcam)、DVDリーダ又はマルチメディアサーバである。この装置がデジタル画像処理装置を直接搭載していない場合、装置は、グラフィックスカードに接続され且つ装置にマルチメディアデータを供給するデジタルビデオカメラ201(あるいは、アナログ/デジタル変換器又は任意の他のビデオ取り込み手段)等の種々の周辺装置に任意に接続されてもよい。
装置200は通信バス202を具備し、通信バス202には以下が接続される。
−中央処理装置又はマイクロプロセッサ203(CPU)。
−プログラム「Prog」、「Prog1」及び「Prog2」を含むことができる読み出し専用メモリ204(ROM、Read Only Memoryの略語)。
−上記プログラムの実行中に作成及び変更される変数及びパラメータを記録するように適応されたレジスタを含むランダムアクセスメモリ又はキャッシュメモリ(RAM、Random Access Memoryの略語)206。
−インターネット等の分散型通信網220に接続され且つデータの送受信が可能な通信インタフェース218。
オプションとして、装置200は以下を更に有してもよい。
−キーボード210、あるいは例えばマウス211であるポインティングデバイス、光学スタイラス、タッチパネル又はリモートコントロールデバイス等の任意の他の手段を使用して本発明に係るプログラムと対話できるユーザに対するグラフィカルインタフェースとしての役割を果たし且つ/又はデータを閲覧するための画面208。
−例えばオーディオデータの場合にマイクロフォン222に接続される入出力カード(不図示)。
−上記プログラム「Prog」、「Prog1」及び「Prog2」、並びに本発明に従って処理されたデータ又は処理されるデータを含むことができるハードディスク212。
−ディスケット216を受け入れ、本発明に従って処理されたデータ又は処理されるデータを読み出すか又は書き込むように適応されたディスケットドライブ214。
−本発明に従って処理されたデータ又は処理されるデータを読み出すか又は書き込むように適応されたメモリカードのリーダ。
通信バスは、装置200に含まれるか又はそれに接続される種々の要素間で通信及び相互動作が可能である。バスの表現は限定せず、特に中央処理装置は、装置200の任意の要素に対して、装置200の別の要素を使用して又は直接命令を通信できる。
プログラマブル装置が本発明に従って処理を実施するのを可能にする各プログラムの実行可能なコードは、例えばハードディスク212又は読み出し専用メモリ204に格納されてもよい。
一変形例によると、ディスケット216は、装置200により読み出されるとハードディスク212に格納される上記プログラムの実行可能なコード及びデータを含むことができる。
第2の変形例として、プログラムの実行可能なコードは、上述と同一の方法で格納されるために通信網220の仲介によりインタフェース218を介して受信される。
ディスケットは、コンパクトディスク(CD−ROM)又はメモリカード等の情報媒体で置換できる。一般に、ディスケットは情報記憶手段により置換されてもよい。ここで情報記憶手段は、装置に搭載されるか又は搭載されないコンピュータ又はマイクロプロセッサにより読み出し可能であり、取外し可能であってもよく、また実行ファイルが本発明に係る方法の実現を可能にする1つ以上のプログラムを格納するように適応される。
更に一般的には、1つ以上のプログラムは、実行前に装置200の記憶手段のうちの1つにロードされてもよい。
中央処理装置203は、本発明に係る1つ以上のプログラムのソフトウェアコードの部分又は命令の実行を制御及び指示する。それら命令は、ハードディスク212又は読み出し専用メモリ204、あるいは他の上述の記憶素子に格納される。電源が投入されると、ハードディスク212又は読み出し専用メモリ204等の不揮発性メモリに格納された1つ以上のプログラムは、本発明の実現に必要な変数及びパラメータを格納するためのレジスタ、並びにランダムアクセスメモリ206に転送される。ランダムアクセスメモリ206は、本発明に係る1つ以上のプログラムの実行可能なコードを含む。
尚、本発明に係るデバイスを具備する通信装置は、プログラムされた装置であってもよい。この装置は、例えば特定用途向け集積回路(ASIC)に固定の1つ以上のコンピュータプログラムのコードを含む。
図3は、第1の実施形態に従って、送信エラーの影響を受けたビデオストリームの低速な再同期化処理の第1の例の原理を示すタイムチャートである。「低速な」再同期化及び「緩やかな」遷移という用語は、クライアントに提示されたビデオストリームがフレーム内符号化フレームによる再同期化の後の最適な品質を有するシーケンスに向けてプログレッシブに収束することを示す。図3を参照して説明する処理は、符号器において、すなわちサーバにおいて実現される低速な再同期化処理である。
参照300は、サーバとクライアントとの間のある期間にわたるデータ交換を示す。時間の尺度305は、サーバがデータを送信又は受信する瞬間を示し、時間の尺度310は、クライアントがデータを送信又は受信する瞬間を示す。例えば時間kにおいて、サーバはP(k)フレームを送信し(参照315)、P(k)フレームは、時間k'においてサーバにより受信される。
サーバは、ビデオパケットをクライアントに送出し、それらパケットが受信されると、クライアントは、それらを受信、格納及び復号化する。例えばP(k)フレームに影響を及ぼす送信エラーが検出された場合、クライアントはフレームkのデータを失ったことを示すために、サーバにメッセージNACK(k)(Negatie ACKnowledgment(否定応答)の略語)を返す(参照320)。この間、サーバはIフレーム内符号化フレーム又はPフレーム間予測符号化フレームに対応するパケットを送出し続ける。この例において、サーバは、クライアントがP(k)フレーム間予測符号化フレームのエラーを検出した際に基づいた情報を受信するまでにP(k+1)〜P(k+10)フレーム間予測符号化フレームを送信した。
NACK(k)を受信すると(図3の時間t=k+10)、サーバの符号器は、再同期化フレーム内符号化フレームの送出の必要性を評価する。フレーム内符号化フレームは、送出されるとは限らない。例えば符号器は、その間に通常の周期に従って再同期化を既に実行した別のフレーム内符号化フレームを送出していた場合、フレーム内符号化フレームを送出しない。同様に、サーバがクライアント上で実行される損失隠蔽をシミュレートでき、それが効果的であると考える場合、サーバは再同期化を実行する必要がないと決定してもよい。
説明の必要条件として、以下において、サーバがエラー伝播を停止するためにストリームをリフレッシュすることを決定すると仮定する。同様の理由のために、符号器が受信したNACK(i)により宣言される損失に従って復号器の参照フレームをシミュレートできるため、後続するフレームの伝播エラーをシミュレートできることが受け入れられる。
標準的な処理と異なり、符号器は急峻なフレーム内(t+1)再同期化フレームを直接送出しない。符号器は、時間kにおいて損失隠蔽をシミュレートし、現在の時間tまでのエラー伝播を計算する。従って、符号器は、時間tにおいて復号器からの損傷参照フレームを利用可能にする。
その後、緩やかな遷移の期間を判定するN回のフレーム符号化の期間にわたり、符号器は以下の動作を実行する。ここで、例えばN=5である。
−符号器の参照フレームの構成I t(実際のビデオ)。
−エラー伝播のシミュレーションを使用する復号器からの参照フレームの構成I t * (損傷ビデオ)。
−例えば2つのストリーム間の線形ディゾルブを実行する式It':=i/N×I t *+(N-i)/N×I tに従うI tとI t *との間の重み付きIt'フレームの計算。
−I't-1フレームを参照とするI'tへのI'tの符号化。
−そのI'tフレームに対応するP'(t)フレーム間予測符号化フレームのクライアントへの送出。
それら(N-1)個の中間フレームの送出の終了時、他にエラーが発生していなかった場合、復号器は、参照I tフレームを使用するP(i)フレーム間符号化フレームへの符号化を正常に継続する符号器と完全に再同期化される。
参照350は、ある期間にわたるPSNRの変動、すなわちクライアントにより表示されるフレームで発生するエラーの量子化の変動を示す。曲線355は、符号化及び送信の前のビデオのPSNR、すなわちエラーを含まないビデオストリームのPSNRを表す。曲線360は、符号化され且つクライアントに送信されるビデオストリームのPSNRを示す。時間k'において、エラーを含むP(k)フレーム間予測符号化フレームが受信された場合、PSNRは突然低下する。エラーの伝播のために、サーバがNACKを受信し且つ修正フレームを送信する時までPSNRは低下し続ける。この時、PSNRは突然修正されないが、プログレッシブに増加する。
図4は、図3を参照して説明されたタイムチャートを取得するための可能なハードウェア実現例を示す。図4に提示される符号器の予測スキーマは、適切なフレームとシミュレートされた損傷フレームとの間の現在の中間フレームの計算を示す。
本発明によると、中間フレームは、適切なストリーム及び符号器によりシミュレートされる損傷ストリームから計算される。中間フレームは、常に復号器からの参照フレームに対して符号化される。
実線で示される部分は、入力(有効)Itフレームに対する主な符号化ループを表し、ENC_DEC(図5aを参照して説明する)で示される符号化モジュールを含む。符号器は、再構成I tフレームを供給する。点線で示される部分は、損失を信号伝送する際の低速な再同期化に対する符号器の初期化処理を表す。この部分は、その時点で符号器により復号器の損傷参照フレームを再構成する関数「PropagateLosses」を含むエラー伝播手順を使用する。細線の部分は、復号器の低速な再同期化に対する中間I'tフレームの符号化ループを表す。その部分は、現在の時間を過ぎてエラーI t *の伝播をシミュレートするために、DEC*(図5bを参照して説明する)で示される復号器DECと、低速な再同期化I'tフレームを符号化するENC_DEC'で示される符号器ENC_DECとを使用する。
I t *とI tとの間の中間I'tフレームは、例えば式It':=i/N×I t *+(N-i)/N×I tに従って単純に計算される。式中、iはディゾルブ指数であり、以下の方法で定義される:
−ディゾルブが実行中でない場合、iはゼロである(I'tフレームはI tフレームと同一である)。
−再同期化の開始時、iは値N-1に初期化される。
−iが厳密にゼロより大きい場合、ディゾルブ指数iは低速な再同期化に伴ってプログレッシブに減分され、低速な再同期化の終了時には値ゼロになる(同期化の開始時はI't≒I t *であり、同期化の終了時はI't=I tである)。
−シーケンス又はGOP(Group Of Picturesの略語)の最初において、iは値ゼロにされる。
初期化ステップ401の間、現在のフレームの番号を表す変数tは値t0に初期化される。
主な符号化ループにおいて、ストレージ周辺装置402(又はビデオ取得周辺装置)はItフレームを供給する。Itフレームがシーケンスフレーム内符号化フレーム(又はGOP)の最初であるかを判定するためにテスト403が実行される。
Itフレームがシーケンスフレーム内符号化フレームの最初である場合、ディゾルブ指数iは値ゼロに初期化又は再度初期化され(ステップ404)、実行中の再同期化を停止する。
Itフレームがシーケンスフレーム内符号化フレームの最初でない場合、ディゾルブ指数iが厳密にゼロより大きいかを判定するために第2のテストが実行される(ステップ405)。ディゾルブ指数iが厳密にゼロより大きくない場合、ディゾルブ指数iは1減分される(ステップ406)。
ディゾルブ指数iがゼロに初期化又は再度初期化されるか、あるいは厳密にゼロより大きくない場合、復号器からの参照フレームI t *は、先に計算されたI tフレームに従って再度初期化される(参照410)。
次に、ステップ408において、符号器ENC_DECは、動きべクトルデータ及びPフレーム間予測符号化フレームに対する残留値又はIフレーム内符号化フレームに対する空間圧縮フレームを主な出力(参照409)として供給し、再構成I tフレームを2次出力(参照710)として供給する。符号器ENC_DECは、それ自体の参照フレームを更新する。
参照フレーム(参照724)が損傷フレームの値に初期化されるため、再同期化が実行中である場合、復号化モジュールDEC*は、符号化フレームを受信し且つ損失の伝播をシミュレートする(ステップ411)。エラーが発生しなかった場合、復号器DEC*は符号器ENC_DECと同一の参照フレームを利用可能にする。尚、復号器DEC*は、エラーのない次のフレーム内符号化フレームまで又は次の初期化まで(参照フレーム424)ドリフトし続ける。ディゾルブ指数iがゼロである場合、復号器DEC*から得られる誤ったI t *フレームは送信されたI'tフレームに対して影響を与えない。
ステップ412において、適切なビデオストリーム(参照410)と損傷ビデオストリーム(参照411)との間のディゾルブ指数iにより重み付けされた中間フレーム(参照413)が計算される。
符号器ENC_DEC'は、参照I'refフレーム(参照414)を使用して中間I'tフレーム(参照413)を符号化する(ステップ415)。
符号化I'tフレーム(参照416)はデータパケットに変換され、データパケットは送信機418に送信される(ステップ417)。送信機418は、パケットをクライアントに送出する。
エラーNACK(k)がクライアントにより信号伝送されない場合(ステップ419)、現在のフレーム番号は増分され(ステップ420)、図示されるように先のステップが繰り返される。
一方、エラーNACK(k)がクライアントにより信号伝送される場合(ステップ419)、ディゾルブ指数iは値Nに初期化され、時間kにおける損失隠蔽が受信された損失情報「LossInfo」(参照422)を使用してシミュレートされる。ステップ421において損傷ビデオの参照フレームIt *(参照423)を取得するために、エラーの伝播は現在の時間tまで追跡される。このIt *フレームは、復号器DEC*(参照424)及び符号器ENC_DEC'(参照414)により参照フレームとして再生成される。現在のフレーム番号は増分され(ステップ420)、図示されるように先のステップが繰り返される。
図5は、図5a及び図5bを含み、符号器及び復号器において実現されるアルゴリズムをそれぞれ示す。
図5aは、符号化される元のItフレーム及び参照Irefフレームすなわち復号器により再構成された先のI t-1フレームからの関連する動きベクトルMVtを使用して、フレーム内符号化フレームすなわち直接空間圧縮されたフレーム又はフレーム間予測符号化フレームすなわち量子化残留予測エラーのフレームEt qを配信するために、時間tにおいて符号器ENC_DECにより実行される動作の構成及びシーケンスをより正確に説明する。
更に、図及び関連する説明を簡単にするために、処理動作は一般に入力フレームの各マクロブロックMBに適用されるが、フレーム全体に対して処理動作を説明する。また表示は、フレームのマクロブロックを示すべきであるが、フレーム全体に簡単化される。従って、例えばDCT(Discrete Cosine Transform(離散コサイン変換)の略語)処理動作及びItフレーム上に表される動き補償の推定は、実際には、Itフレームを構成する各マクロブロックMBに対して実行される。更に、Iフレーム及びPフレームの符号化及び復号化のみが考慮される(本発明の好適な実施形態によると、Bフレームは使用されない)。
符号器ENC_DECは、損失隠蔽及びそのドリフトをシミュレートできる。
時間tにおいて、符号化されるフレーム(又は更に正確にはマクロブロック)Itは、符号器の入力501に送信され、符号器は、復号器からの参照Irefフレーム、すなわち一般に符号器の入力Iref(501”)により再構成されるか又は初期化される先のフレーム(t-1)I t-1を内部的に利用可能にする。クライアントの復号器からのデータ損失がサーバ上でシミュレートされた場合、リターンチャネルを介して回復されたデータ「LossInfo」は入力501’において入手可能である。
動き推定モジュールは、ItフレームのマクロブロックMB毎に、最も類似する参照Irefフレームと同一サイズの領域を標準の「ブロックマッチング」アルゴリズムにより識別する。動き推定モジュールは、予測エラーを最小限にする動きベクトルMVtをその領域から得る(ステップ502)。
動き補償モジュールは、参照Irefフレーム及びステップ502で計算された動きベクトルMVtから補償(又は予測)I^tフレームを計算する。
データが失われた場合、時間的損失隠蔽モジュールは、パラメータとして供給された損失情報「LossInfo」からの予測I^tフレームの損傷領域又は失った領域を修復しようとする。時間的損失隠蔽モジュールは、修正I^t Cフレームを構成する(ステップ504)。損失が信号伝送されない場合、I^t CはI^tと同一である。
未処理の残留補償エラーのフレームは、式Et=It-I^t Cに従って計算される(ステップ505)。動きベクトルMVtはEtフレームを符号化するために使用される。フレーム内符号化フレームを符号化する場合、ベクトルはゼロであり、I^t Cはゼロにされ、それによりItフレームの単純な空間圧縮が行なわれる。
ネットワーク層に送信される前に、エラーのフレームEtはDCT変換により圧縮され、送信されるデータサイズを最小限にするために量子化される(ステップ506)。この圧縮により、エラーのフレームEtは量子化エラーのフレームEt qに劣化する。Et qは、残留予測エラーの最終的なフレームである。VLC(Variable-Length Code(可変長コード)の略語)エントロピー符号化及びデータパケットの形式への変換の後、その最終的なフレームは動きベクトルMVtと共に送信される(参照512)。理解し易いように、エントロピー符号化及び復号化モジュール(周知である)は図示しない。
次の参照フレームを構成し、復号器により再構成された現在のI^tフレームを計算するために復号器により実際に再構成されたエラーのフレームを入手可能にするように、逆変換、すなわち逆量子化及び逆DCT変換を実行する必要がある(ステップ507)。
新しい参照フレームは、式I^t=I^t C+E tに従って現在のフレームの再構成として計算される。式中、I^t Cは、実質上送信された動きベクトルを含む旧参照フレームの補償及び可能性として修正されたフレームであり(ステップ503及びステップ504)、E tは、送信された残留エラーの伸張フレームである(ステップ507)。符号化フレームがフレーム内符号化フレームである場合、予測I^t Cフレームはヌルであり、I tフレームは伸張E tフレームに対応する(ステップ507)。
データが失われた場合、空間的損失隠蔽モジュールは、ステップ508においてI tフレームの再構成から生じる最新の損傷領域を空間的に補間する(ステップ509)。図示するように、I tフレーム510は、符号器ENC_DECの出力において入手可能であり、新しい参照Irefフレームとして格納される(ステップ511)。
残留及び動きベクトルMVtは、データパケット作成モジュールに送信されるために、符号器ENC_DECの主な出力として供給される。
図5aは、フレーム内符号化に対しても有効であり、主な相違点は、動きの推定が行なわれないこと(ベクトルMVtがヌルであること)及び残留Etが0にされることである。
図5bは、量子化残留エラーのフレームEt q及び関連する動きベクトルMVt、並びに一般に復号化された先の画像に対応する参照IrefフレームからI tフレームを配信するために、時間tにおいて復号器DECにより実行される動作の構成及びシーケンスを更に正確に説明する。復号器DECは、符号器と同一の時間的及び空間的損失隠蔽モジュールを利用可能にする。
時間tにおいて、復号器DECは、入力521において復号化されるフレームのデータ(Et q , MVt)を受信し、フレーム間予測符号化フレーム(P)の残留のフレームEt q及び動きベクトルMVt、あるいはフレーム内符号化フレーム(I)の圧縮Et qフレームをそこから抽出する。損失情報は、復号器DECの入力521’において入手可能である。復号器DECは、参照Irefフレーム、一般に復号器DECの入力Iref521”により先に再構成されたか(t-1)又は初期化されたフレームを利用可能にする。
動き補償モジュールは、参照Irefフレーム及び動きベクトルMVtから補償(又は予測)I^tフレームを計算する(ステップ522)。
データが失われた場合、時間的損失隠蔽モジュールは、受信された損失情報「LossInfo」から予測I^tフレームの損傷領域又は失われた領域を修復しようとする(ステップ523)。修正フレームはI^t Cフレームである。データが失われなかった場合、I^t CフレームはI^tフレームと同一である。
ステップ522及びステップ523と並行して、エラーのフレームEt qは、エラーのフレームE t(あるいは、復号化されるフレームがフレーム内符号化フレームである場合は完全なフレーム)を再構成するために、逆量子化後に逆DCT変換を行なうことにより伸張される(ステップ524)。
最終的なI tフレームは、ステップ524から生じる残留のフレームE tをステップ523から生じる補償I^t Cフレームと加算することにより再構成される(ステップ525)。復号化されるフレームがフレーム内符号化フレームである場合、補償I^t Cフレームはゼロにされる。
エラー(残留損傷)が残っている場合、空間的損失隠蔽モジュールは、ステップ525においてI tフレームの再構成から生じる最新の損傷領域を空間的に補間する(ステップ526)。必要に応じてステップ526において修正されるI tフレームは、例えばストレージ周辺装置のために又は表示されるために、復号器DECの出力において入手可能である。I tフレームは、新しい参照Irefフレームとして格納されるのが好ましい。
符号器ENC_DEC及び復号器DECの各々は、必要に応じて参照フレームの初期化を可能にする入力Irefを有する。上述の可能性は、実際には常に利用可能であるとは限らないので、この可能性が必須ではないということを考慮する必要がある。これは、要求されたビデオシーケンスの処理の前にフレームを符号化及び/又は復号化することによりフレームを参照フレームとして初期化することが当業者には明らかなためである。フレームを自動的に復号化又は符号化することにより、そのフレームは符号器又は復号器の参照フレームとなる。
図6は、時間tにおいて復号器に対する参照としての役割を果たす現在の損傷I t *フレームを計算するために図4において使用される関数PropagateLoss(k, t)を概略的に示す。現在の損傷I t *フレームは、損失隠蔽I k *をシミュレートし、フレームkからエラーを伝播することにより取得される。
現在の損傷I t *フレームの計算は、時間kにおける損失隠蔽の計算(破線により示す)及びk+1〜tのエラーの伝播の計算(実線により示す)の2つのステップで実行される。尚、損失隠蔽モジュールの存在は任意である。
時間kにおける損失隠蔽の計算に関して、符号器は復号器と同一の損失隠蔽モジュールを有すると仮定される。否定応答信号NACK(i)は、少なくとも失われたパケットの番号及び可能性としてこの損失に対して復号器により実行された損失隠蔽のパラメータ等の他の情報を含む。符号器は、送出されたフレームの場所を管理でき、従って確認応答されていないパケットの損失により損傷した領域を認識できる。符号器は、時間kにおいて復号器により行なわれる修正をシミュレートできる。
損失隠蔽を実行し且つ時間kにおいて損傷I k *フレームを再構成するために(ステップ601)、符号器は、否定応答NACK(k)の時に供給される被った損失の厳密な情報(LossInfo)及び隠蔽の時に復号器に存在する参照I k-1フレームと共に受信されるフレーム(Et q , MVt)を利用可能にする必要がある。
同時に、符号器は、後続するステップにおいて符号器ENC_DECに対して参照としての役割を果たすI kフレームを再構成する(ステップ602)。
時間k+1〜時間tまでのエラーの伝播を計算するために、符号器はフレームkの損失隠蔽の欠陥によるエラーの伝播をシミュレートする。
その目的のため、関数PropagateLoss(k, t)は、P(k+1)〜P(t)フレーム間予測符号化フレームにおいてクライアントの復号器で発生するドリフトをシミュレートするために、上述のような従来の符号器/復号器(ENC_DEC)、適切なビデオのフレーム(特に時間k+1〜t)及び上述のような従来の復号器(DEC*)を有する。
ループは、時間k+1とtとの間の各瞬間における累積エラーを含むフレームを判定するために実行される。フレームk+1をメモリにロードするために、このループは、変数tを値k+1(t:=k+1)に初期化することにより初期化される。復号器ENC_DECの参照フレームは、先に符号化されたI kフレームを使用して初期化される。復号器DEC*の参照フレームは、損失隠蔽モジュールにより先に計算されたI k *フレームを使用して初期化される。
各フレームtに対して、符号器ENC_DECは、時間tに対応するフレームのpフレーム間予測符号化フレームを符号化し、通常は再構成フレームによりその参照をリフレッシュする(ステップ603)。復号器DEC*は、損傷参照I τ-1 *フレームを使用して復号化するPフレーム間予測符号化フレーム(Eτ q , MVτ)を回復する(ステップ604)。DEC*からの出力フレームI τ *は、先のエラーが伝播された損傷フレームである。後続するフレームにおける伝播を追跡するために、このフレームは復号器DEC*の新しい参照になる。テストが処理されたフレームの番号に対して実行され(ステップ605)、τ=tの時、すなわちI t *フレームが判定された時、ループから抜けることを可能にする。処理されたフレームがフレームtでない場合、変数tは1増分され、先のステップが繰り返される。
あるいは、第2の実施形態によると、低速な再同期化機構はクライアント上で実現されてもよい。その原理においては、復号化時t及び緩やかな遷移期間にわたり、一方では再同期化ストリーム及び他方ではエラー伝播により損傷したストリームをクライアント上で利用可能にできる。
サーバは、再同期化Iフレーム内符号化フレームのすぐ後に、補助ポートでPフレーム間予測符号化フレームを送信するように変更される必要がある。
復号器のみが、損失の影響を受けるかをリアルタイムで認識する。ある特定のIフレーム内符号化フレームは、損失後に明示的に要求されることなく、mフレーム毎に周期的に送出される。各Iフレーム内符号化フレームは、ビデオにドリフトが発生した場合に潜在的に突然の再同期化の影響を与える可能性がある。従って、送信エラーのために、1つの通常の再同期化フレーム内符号化フレームと別のフレーム内符号化フレームとの間の処理を区別する必要はない。その結果、Iフレーム内符号化フレームがリフレッシュ期間に結び付けられても又は否定応答に結び付けられても、Iフレーム内符号化フレームに対してPフレーム間予測符号化フレームを補助リンクで常に転送する必要がある。低速な再同期化処理は、エラーが存在する場合に任意のフレーム内符号化フレームに対して実行される。シーケンスの変更があった場合、符号器は、補助リンクを介して例えば空の画像である特定のPフレーム間予測符号化フレームを送出し、シーケンスの開始及びディゾルブが抑制される必要があることを復号器に示す。
サーバとクライアントとの間に2つのリンクが作成される。主リンク(ポート1)はビデオの従来の送信に対するものであり、補助リンク(ポート2)はビデオの低速な再同期化のためのフレーム間予測符号化フレーム送信に対するものである。
サーバは、It 1フレーム内符号化フレーム(指数はポートの番号を示す)を主リンクを介してクライアントに送信し、その後m個のPk(k=t+1 → t+m) 1フレーム間予測符号化フレームを送信する。It 1フレームが送信されると、サーバはPt 2フレームをクライアントに更に送信する。It 1がシーケンス(GOP)の第1のフレームに対応する場合、Pt 2はヌルであるのが好ましく、対応しない場合、Pt 2は現在のフレームに対応するフレーム間予測符号化フレームである。指数が示すように、Pt 2フレームは補助ポートを介して送信される。
Pk(k=t+1 → t+m) 1フレーム間予測符号化フレームを受信すると、クライアントは、標準的な方法でビデオストリームを復号化する。復号器がエラーの状態にある場合、復号化フレームはエラーの伝播の処理を実行される。
エラーパケット、すなわちデータが少なくとも1つのエラーを含むパケットを受信すると、クライアントは否定応答NACKをサーバに送出する。復号器がエラー隠蔽モジュールを有する場合、復号器はエラーをマスクし且つエラー状態になる。
再同期化It 1フレームを受信すると、復号器がエラー状態にない場合、復号器は、通常通りにビデオを復号化し、不必要なPt 2フレーム間予測符号化フレームを考慮しない。復号器がエラー状態にある場合、復号器はディゾルブの間にPt 2フレーム間予測符号化フレームを使用してエラーの伝播をシミュレートする。ディゾルブ指数iは、値N-1に初期化される。復号器は、エラー状態から抜け、N個の後続するP1フレーム間予測符号化フレームの間に徐々に再同期化する。N個の後続するP1フレーム間予測符号化フレームの各々に対して、符号器は、中間フレームを計算及び表示し、ディゾルブ指数iを減分する。
図7は、第2の実施形態に従って復号器上で実行される低速な再同期化段階の一例を示す。この例において、Nは5である。すなわち、完全な再同期化には5つのフレームが必要とされる。右側のグラフは、クライアントの復号器により復号化されるフレームに対するPSNRによって測定される品質700の変化及びサーバによる符号化の前のフレームに対するPSNRによって測定される品質705を示す。
期間710の間、エラーは検出されず、1次ストリームにおいて受信されるP1(j<k)フレーム間予測符号化フレームは適切に復号化された。復号化I tフレーム及び結果として得られるI'tフレームは同一であり(ディゾルブ指数iはゼロである)、従って復号化フレームのPSNRは最大である。
時間715において、損失隠蔽を行なうにも関わらず、エラーはP1(k)フレーム間予測符号化フレームにおいて検出される。ディゾルブ指数iは依然としてゼロであり、I t及びI'tフレームは、エラーの伝播に関連する同一のドリフトの影響を受ける。復号化フレームのPSNRは突然低下する。クライアントは、否定応答NACKをサーバに送信する。
次の期間720の間、P1(k)フレーム間予測符号化フレームにおいて受信されたエラーは、P1(k+1)〜P1(k+10)フレーム間予測符号化フレームの復号化中に伝播される。ディゾルブ指数iは依然としてゼロであり、I t及びI'tフレームは依然としてエラーの伝播に関連する同一のドリフトの影響を受ける。PSNRは低いままである。
クライアントから否定応答を受信すると、サーバは、主ストリームを介してI1(k+11)フレーム内符号化フレームを送信し、2次ストリームを介してP2(k+11)フレームを送信する。
時間725において、低速な再同期化を可能にするために、I1(k+11)及びP2(k+11)フレームはクライアントにより受信される。I t *フレームは受信したP2(k+11)フレーム間予測符号化フレームを使用して初期化され、I tフレームは受信したI1(k+11)フレーム内符号化フレームと再同期化され、ディゾルブ指数は値N-1に初期化される。新しいフレームは、先の(It':=i/N×I t *+(N-i)/N×I t)と同一の式に従って計算される。PSNRは徐々に増加する。
期間730の間、P1(k+12)〜P1(k+15)フレーム間予測符号化フレームにより、低速な再同期化を追跡できる。I t *フレームはドリフトし続け、I tフレームは依然として再同期化される。ディゾルブ指数iは、受信されるフレーム毎に1減分され、結果として得られるI'tフレームを復号化I tフレームに近づける。PSNRは増加し続ける。
時間735において、低速な再同期化を可能にするN個のフレーム間予測符号化フレームが受信された(ディゾルブ指数は値ゼロになる)。I t *フレームはドリフトし続ける。I t及びI'tフレームは同一である。PSNRは再び最大になった。
期間740の間、通常の復号化が継続し、ディゾルブ指数iはゼロである。I t *フレームの偶発的なドリフトが継続する場合であっても、I'tフレームはI tフレームと同期化されたままである。
図8は、図7を参照して説明されるアルゴリズムを実現するように適応された復号化システムを示す図であり、それに従って、現在の中間フレームは適切なフレーム及びシミュレートされた損傷フレームから計算される。
フレームカウンタtを値t0に初期化した(ステップ801)後、復号化システムは、参照803を有するポート1でI1フレーム内符号化フレーム又はP1フレーム間予測符号化フレームを受信し、可能性として参照804を有するポート2でP2フレーム間予測符号化フレームを受信する(ステップ802)。
I tフレームを再構成するために、標準的な復号器DECは、受信したI1フレーム内符号化フレーム又は受信したP1フレーム間予測符号化フレームを復号化する(ステップ806)。
I t *フレームが復号器DEC*から取得された場合(以下に説明するステップ819)、中間I'tフレームはディゾルブ指数iに従って計算される(ステップ809)。ディゾルブ指数iが厳密にゼロより大きいかを判定するためにテストが実行される(ステップ810)。ディゾルブ指数iが厳密にゼロより大きい場合、ディゾルブ指数iは1減分され(ステップ811)、ディゾルブ指数がゼロであるかを判定するために新しいテストが実行される(ステップ812)。ディゾルブ指数がゼロである場合、参照I t *フレームは復号化I tフレームにより置換される(ステップ813)。
結果として得られるI'tフレームは、表示するためにディスプレイ周辺装置のフレームバッファメモリに格納される(ステップ814)。
フレームカウンタtは1増分され(ステップ815)、先のステップはシーケンスの最後まで繰り返される。
I tフレームの復号化と並行して、復号化システムは参照I t *フレームを判定する。この目的で、受信したフレームがI1フレーム内符号化フレームであるか又はP1フレーム間予測符号化フレームであるかを判定するためにテストが実行される(ステップ816)。
受信したフレームがP1フレーム間予測符号化フレームである場合、新しい参照I t *を判定するために、復号器DEC*は参照Iref *を使用してP1フレームを復号化する(ステップ819)。
受信したフレームがI1フレーム内符号化フレームである場合、第1のポートで受信したフレームがシーケンス(GOP)の第1のフレームに対応するフレーム内符号化フレームであるかを判定するために、第2のポートで受信したP2フレームが空であるかを判定するための別のテストが実行される(ステップ817)。第2のポートで受信したP2フレームが空である場合、ディゾルブ指数iは値ゼロに初期化され(ステップ818)、復号器DEC*は、新しい参照I t *を判定するために参照Iref *を使用してI1フレームを復号化する(ステップ819)。
受信したフレームがI1フレーム内符号化フレームであり且つ第2のポートで受信したP2フレームが空でない場合、復号化システムが最後の否定応答以降に新しいエラーを検出したかを判定するために別のテストが実行される(ステップ820)。新しいエラーが最後の否定応答以降に検出された場合、受信したI1フレーム内符号化フレームがストリームを再同期化するために使用されるように、ディゾルブ指数は値N-1に初期化される(ステップ821)。P2フレーム間予測符号化フレームは、エラーの伝播を追跡するように新しい参照I t *を判定するために参照Iref *から復号器DEC*により復号化される(ステップ819)。
あるいは、クライアント(復号器)における本発明の別の実現例によると、解決策は、フレーム内符号化フレームが到着していないかのように実際の損傷I t *フレームをシミュレートしないが、I't-1 *=P(I't-1 *)である先の中間I't-1 *フレームにおいてPフレーム間予測符号化フレームによるエラーを伝播することより新しい損傷I t *フレームをシミュレートすることから構成される。
I't *とI tとの間の中間I'tフレームは、式I't=i/N×I't *+(N-i)/N×I tに従って計算される。
この式により、ドリフト、ディゾルブ及び再同期化の処理が容易に定義される。
ディゾルブ指数iがゼロである場合、復号器のエラーの状態に関わらず、中間フレームは復号化フレームと同一である(I't=I t)。
この解決策により、必要なバッファメモリは減少され、再同期化処理は簡単化され(損傷フレームがt+Nにおいて再同期化する:ディゾルブ指数がゼロに近づいている時、中間I't+Nフレームは中間I t+Nフレームに近づく)、ディゾルブのドリフトは制限される。
復号化ビデオが損傷していない場合、I't *、I't及びI tフレームは同一であり且つ同期している。
受信したビデオストリームのフレームがエラーを含む場合、I't *、I't及びI tフレームは受信されたP1フレーム間予測符号化フレームによる同一のドリフトの影響を受ける。従って、それらフレームは同一であり且つ同期している。
I1フレーム内符号化フレーム及びP2フレーム間予測符号化フレームがエラー後に到着した場合、I't *フレームはドリフトの状態で保持され、I tフレームは再同期化されるため適切であり、I'tフレームは上記式に従ってI tフレームとI't *フレームとの間のディゾルブにより計算される。この処理は、低速な再同期化の終了まで繰り返される。
時間t+Nにおいて、ディゾルブ指数iは値ゼロであり、I't+NフレームはI t+Nフレームと等しい。ドリフトの状態で保持されるI't+N *フレームは、時間t+N+1においてI't+NフレームによりI't+N+1及びI t+N+1フレームと再同期する。
あるいは、本発明の特定の実現例は、フレームを符号器からの過去のフレームと再同期化することから構成され、低速な再同期化の開始を早めることができる。
この目的のために、符号器は、復号器により表示されるフレームdの番号を周期的に評価し、ネットワークの状態に従って、t>t-D>dとなるように値Dを判定する。フレーム(t-D)は、まだ表示されていない復号器の過去のフレームに対応する。各フレームの復号化時、符号器はI(t-D)フレーム内符号化フレームを永続的に格納し且つ更新する。その部分に対して、復号器は、受信した最新のDフレーム間予測符号化フレームを永続的に格納する(Dの値は符号器又は復号器に周知であるのが好ましく、あるいは復号器は値Dmaxを使用できる)。
送信されるP(k)フレーム間予測符号化フレームが復号器により検出された損失の影響を受ける場合、復号器は否定応答NACK(k)をすぐに送出し、符号器はP(d)及びP(t-D)を含む後続するフレームを送出し続ける。
番号tのフレームが符号器により符号化される時間に対応してNACK(k)を受信すると、符号器は格納されたI(t-D)フレーム内符号化フレームを送出し、同一周期で同一のP(t)フレーム間予測符号化フレームを送信する。通常、符号器は、符号化並びにフレームt+1及びそれに後続するフレームの送信を再開する。
I(t-D)フレーム内符号化フレームが受信された場合、復号器は、t-D+1〜tのフレーム間予測符号化フレーム、並びにフレームt-Dのフレーム内符号化フレーム及びフレーム間予測符号化フレームを有し、P(t-D)フレームは復号器により既に受信されている。P(t-D+1)〜P(t)フレーム間予測符号化フレームを再送出する必要がないことが、ここでは受け入れられる。これは、ディゾルブが緩やかな遷移における量子化誤差を消去するからである。従って、再同期化によるPフレームは、再構成ストリームと十分に互換性があると仮定される。復号器は、低速な再同期化処理を実現するのに必要なデータを有する。
I(t-D)フレーム内符号化フレームが受信された場合、復号器は既に復号化されたt-Dより大きいフレームを削除する。低速な再同期化を含む復号化は、フレームt-Dに初期化される。
復号化の原理は、図7及び図8を参照して上述した原理と同様であるが、復号器に格納される再同期化P1(t-D+1)〜P1(t-d+N)フレーム間予測符号化フレームの送信元を変更する。エラーの伝播を可能にするP2(t-D)フレーム間予測符号化フレームは、格納されたP(t-D)フレームである。遷移の欠陥を回避し且つ処理を簡単化するために、t-D+N〜tのフレームを再復号化するのが好ましい。低速な再同期化が終了した場合、通常、復号化は送信されたフレームに対して再開し、図7及び図8を参照して上述したように、低速な再同期化はtの後も継続される。t-Dとtとの間の低速な再同期化を再構成する段階は、過去の再調整により発生した遅延を挽回するために可能な限り迅速に行なわれる必要がある(例えば、ビデオストリームの25フレーム/秒より速い速度で)。
この実現例により、リフレッシュが加速され、送信に関連するリソースに関して追加のコストなしでエラーの伝播が制限される。しかし、それを使用するために、符号器は符号器の過去から選択されたフレーム(復号器によりまだ復号化又は表示されていないフレーム)を永続的に格納する必要がある。符号器は、エラー信号の際にそのフレームを復号器に送信できる。復号器は、迅速にそのフレームを復号化して低速な再同期化処理を適切に行なうために、受信後すぐにバッファメモリにおいてそのフレームを阻止できる必要がある。例えば、復号器において、FIFO(先入れ先出し)方式の従来のメモリの代わりに、優先度を管理しないフレームの数(表示の時)により索引を付けられた受信フレームの記憶装置を使用することで十分である。フレーム内符号化フレームの時間指標が既に処理されている場合、それは、復号器が実現でき且つ実現する必要がある再同期化の例である。最後に、復号器は、再同期化を再度シミュレートするために、過去のD個のPフレーム間予測符号化フレームを永続的に格納する必要がある。
第3の実施形態によると、クライアントは、劣化したフレーム間予測符号化フレームに後続するフレーム内符号化フレームを使用して、劣化のない対応するフレーム間予測符号化フレームを遡って予測する。フレーム間予測符号化フレームのそれらの対は、劣化の影響をプログレッシブに低減するために組み合わされる。図9は、本実施形態の一般的な原理を示す。
フレーム間予測符号化フレーム及びフレーム内符号化フレームを含むビデオシーケンスは、クライアントにより受信及び復号化される。例えばクライアントは、図示するように、P(t-3)フレーム間予測符号化フレームを受信し、その後P(t-2)フレーム間予測符号化フレーム、P(t-1)フレーム間予測符号化フレーム、I(t)フレーム内符号化フレーム及びP(t+1)フレーム間予測符号化フレームを受信する。900で示されるP(t-3)フレーム間予測符号化フレームは、ビデオシーケンスのオブジェクトを記号で表す領域902を含む。図示するように、ビデオシーケンスに結び付けられる動きのために、領域902は1つのフレームから他のフレームに位置を変更する。
黒色の矩形903は、送信において失われたフレームの一部に対応する。この部分は、部分的に修正されてもされなくてもよい。エラーの伝播、並びにエラー及びその伝播に結び付けられるドリフトのために、黒色の矩形903は、後続するフレーム間予測符号化フレーム、すなわちP(t-2)及びP(t-1)フレームに送信される。
後続するフレーム内符号化フレーム、すなわち901で示されるI(t)フレームが受信されると、図示するように、エラーは突然消滅する。不快な視覚効果を回避するために、I(t)フレームは表示されないが、エラーをプログレッシブに除去するために使用される。
まず、907で参照され且つP(t-1)^で示されるP(t-1)フレーム間予測符号化フレームの推定が判定される(ステップ905)。P(t-1)^フレームは、受信したP(t-1)フレーム間予測符号化フレームと関連付けられる動きベクトルを使用することにより受信されたI(t)フレーム内符号化フレームに基づいて計算される。そのような推定されたフレームの計算を可能にするアルゴリズムの一例は、本明細書の以下において提示される。
尚、P(t-1)^フレームは、I(t)フレームに基づいて判定されるため、P(t-3)フレームの黒色の矩形903で表される送信エラーを含まない。
次に、904で示されるP(t-1)フレームと907で示されるP(t-1)^フレームとの差分が、送信に関連するエラー又はエラーのドリフトを推定するために計算される(ステップ908)。差分の計算により取得されたフレームは、910で参照され且つE(t-1)^で示される。推定されたP(t-1)^フレームが完璧でないため、P(t-1)フレームとP(t-1)^フレームとの差分は、エラーを含むフレームの一部においてのみ実行されるのが好ましい。この部分は、以下に説明するようにP(t-2)フレーム及びP(t-1)フレームに適用される追跡アルゴリズムを使用して特に判定されてもよい。
図示するように、フレーム910の黒色の矩形912は、フレーム904の黒色の矩形により表されるエラーに対応する推定されたエラー、すなわちエラーを含む部分におけるP(t-1)フレームとP(t-1)^フレームとの差分を表す。
本実施形態において、復号化エラー及びフレーム内符号化フレームのリフレッシュによる輝度の変動は、P(t-1)フレームに対して推定される。この予測によりエラー画像が得られる(909)。尚、時間tにおけるP(t-1)フレームの動きの方向に投影することによるI^(t)フレームの予測によってI(t)フレーム(901)上のエラーを推定できる。この予測されたフレームは復号化エラーを含む。エラー画像(時間tのE(t-1)^と等しい)は、画素毎にI^(t)をI(t)から減算することにより取得される。
本発明により、緩やかな遷移を使用してフレーム内符号化フレームの受信時の送信エラーの削除を減衰できる。そのために、矩形912で表される推定されたエラーは、ある期間にわたり減衰される一方で、受信したフレーム内符号化フレーム及び後続するフレーム内符号化フレームに転送される(ステップ911)。この追跡及び減衰の結果は、灰色の矩形913及び914で表される。矩形913及び914で表されるエラーは、表示されるフレーム919及び920(ステップ917)を形成するために、フレーム901及び915、すなわちI(t)フレーム内符号化フレーム及びP(t+1)フレーム間予測符号化フレームに転送される(ステップ916)。
フレーム918、919及び920により示されるように、送信エラーの修正は緩やかな遷移を使用して実行される。この例において、フレーム918はフレーム904に対応する。尚、緩やかな遷移は3つの連続フレームにわたり実行されるが、実際には、この緩やかな遷移は更に多くのフレームに影響を及ぼす。そのフレーム数は、特にユーザの要望及びフレームの表示の頻度に依存する。
エラーの追跡及び減衰により、ユーザにとって不快なビデオシーケンスの突然の修正を回避できる。
図10は、第3の実施形態に従って本発明を実現するために使用される処理動作を概略的に示す。ネットワークインタフェースは、好ましくはパケットの形態で、ネットワークからデータを受信するために使用される(ステップ1000)。
受信されたパケットに含まれるデータは抽出され(ステップ1001)、ビデオストリームのビットストリーム1002を形成する。ビデオ復号器は、受信したデータから得られるビットストリームを伸張するために使用される(ステップ1003)。ビデオ復号器は、復号化中、受信したフレームにエラーを空間的に配置できると仮定される。それらエラーは、特にパケット送信の問題から発生する。
検出されたエラーの位置のマッピングは、生成され且つ最新の状態に維持される(ステップ1004)。エラーの位置のマッピングは、ある期間にわたり追跡されたエラーの位置及びビデオ復号器から得られた検出された新しいエラーの位置を含む。エラーの追跡では、フレーム間予測符号化フレームを使用して判定された動きベクトルが使用される。図9を参照すると、エラーの位置のマッピングは、903で示される黒色の矩形の位置を追跡することを可能にする。
復号化中のフレームがフレーム内符号化フレームである場合、エラー画像1007が生成される(ステップ1006)。エラー画像は、例えば図9の参照909を有するE^(t-1)フレームである。エラー画像は、ある期間にわたりエラーを追跡及び減衰するために使用される(ステップ1008)。図9のステップ911に対応するこのステップでは、フレーム間予測符号化フレームを使用して判定された動きベクトルが使用される。エラーの追跡及び減衰のステップ1008と同時にエラーがビデオ復号器により検出される場合、それらエラーは、エラーの位置のマッピングを更新するために送信され(ステップ1004)、ステップ1008及び1009とは無関係に、ビデオ復号器に位置するエラー隠蔽モジュール(不図示)により修正されると考えられる。ビデオ復号器から得られる復号化フレーム1005は、ステップ1008で処理されたエラー画像と加算される(ステップ1009)。その結果は表示されてもよい(ステップ1010)。尚、フレーム間予測符号化フレームの場合、ステップ1004とステップ1006、1007、1008及び1009とが並行して実行される。
図11は、図10の詳細な表現である。データは、好ましくはデータパケットの形式で通信インタフェースを介してネットワークから受信される(ステップ1100)。上述したように、受信したパケットに含まれるデータは抽出され(ステップ1101)、サーバにより送信された符号化ビデオストリームのビットストリーム1102を形成する。ビデオ復号器は、受信したデータから得られるビットストリームを伸張し且つビデオフレーム1105を形成するために使用される(ステップ1103)。
同時に、復号化フレームの動きベクトル1104が判定及び格納される。特に、動きベクトルは、検出されたエラーの追跡及び減衰のために後で使用される。
更に、受信したフレームの復号化と並行して、ビデオ復号器により検出されたエラーの位置が判定される(ステップ1106)。それら位置は、ビデオ復号器においてパケットの送信エラーを修正するように適応されたエラー隠蔽モジュールに送信される(ステップ1107)。
同時に、ピクチャグループにおけるエラーの位置に対応する参照フレーム1116が更新される。更新は、ある期間にわたる先のエラーの追跡(ステップ1114及び1115)から構成され、また最新の復号化フレームにおいて検出されたエラー1106の新しい位置の加算(ステップ1115及び1119)から構成される。図12に関連して、追跡モジュールを詳細に説明する。フレーム内符号化フレームが受信されると、フレーム1116はゼロに再度初期化される。
復号化フレームがフレーム内符号化フレームである場合(ステップ1108)、シーンの変化を検出するためにシーン解析が実行される(ステップ1109)。このステップにより、解析されたフレームが先のフレームと時間的に相関するかを判定することが可能になる。シーンの変化が検出されなかった場合、すなわち解析されたフレームと先のフレームとの間に高い空間相関性がある場合、エラー予測が実行される(ステップ1110)。図14及び図15を参照して、図10のステップ1006に対応するこのエラー予測ステップを詳細に説明する。このステップにより、エラー画像とも呼ばれる参照1111(図9の参照909)で示されるドリフトE^(t-1)の推定を生成できる。
ある特定のフレーム内符号化フレームに対して、処理1110が実行されない可能性がある。それら特定の例は、新しいエラーが検出されない(1106)一方でフレーム内符号化フレームが到着した時、並びにエラーの追跡及び減衰の処理(ステップ1112)がゼロに近いフレームに収束していない時に対応する。
復号化フレーム1105の種類に関わらず、エラーを減衰する一方で、エラーの追跡がある期間にわたりエラー画像1111に対して実行される(ステップ1112及び1113)。このエラーの追跡は、動きベクトル1104に基づく。図13を参照して、図9のステップ911に対応するステップ1112を詳細に説明する。
エラー画像1111は、解析されたフレームが表示される前に解析されたフレームに加算される(ステップ1117及び1118)。
尚、エラーを追跡及び減衰するステップ1112、並びに解析されたフレームにエラー画像を加算するステップ1117は、制限された数のフレームにのみ適用される。エラー及びエラーのドリフトの推定は、フレーム内符号化フレームの表示における突然の変化の影響を回避するために相対的に迅速に消滅する必要がある。その結果、エラー画像は、例えばNフレーム毎に規則的にゼロに再度初期化されるのが好ましい。Nは10個又は15個のフレームに対応できる。Nは、ピクチャグループのサイズより小さいのが有利である。
図12は、エラーの位置のマッピングにおけるエラーの追跡を示す。ELMt-1と呼ばれるフレーム1200は、時間t-1におけるエラーの位置のマッピングに対応する(ELMはError Location Map(エラー位置マップ)の略語である)。フレーム1200の灰色の部分1201は、受信した最新のフレーム内符号化フレームと時間t-1におけるフレームとの間で判定された累積エラーの位置に対応する。ELMt-1フレームは、以下のように定義されてもよい。
| 0 white |
ELMt-1(x,y)=| |
| 1 gray |
ELMtと呼ばれるフレーム1206は、生成中の時間tにおけるエラーの位置のマッピングに対応する。復号化中の時間tにおいて受信されたフレーム間予測符号化フレームに基づいて判定される動きベクトルの一部を参照1204及び1205により示す。参照1204は動きベクトルを特徴付け、その動きベクトルに従って、フレーム1206のブロック1208の位置がフレーム1200のブロック1202の位置に対応する。同様に、参照1205は動きベクトルを特徴付け、その動きベクトルに従って、フレーム1206のブロック1207の位置がフレーム1200のブロック1203の位置に対応する。
尚、フレーム間予測符号化フレームが受信された場合、動きベクトルはそのフレームのブロック毎に判定される。動きベクトルは、解析中のフレームの符号化表現から得られる。それら動きベクトルは、先のフレームのブロックに基いて解析中のフレームの各ブロックを予測するために使用される。
本発明は、エラーの位置を追跡するためにフレーム間予測符号化フレームの符号化中に使用される動きベクトルにより与えられる情報を使用する。
まず、ELMtフレームの全ての画素(pixel(画素)はPicture Elementの略語)がゼロに初期化される。次に、ELMtフレームの全てのブロックが処理される。
時間tにおいてエラーの位置のマッピングELMtを表すフレーム1206のブロック1207が考慮される場合、そのブロックと関連付けられる動きベクトル1205が選択される。動きベクトル1205により、先のフレームにおいてブロック1207に対応するブロック、すなわちELMt-1フレームのブロック1203の判定が可能になる。ブロック1203の位置は、以下の関係に従って判定される。
(xt-1 , yt-1) = (xt+vx, yt+vy)
式中、(xt-1, yt-1)はブロック1203の中心の座標を表し、(xt, yt)はブロック1207の中心の座標を表す。(vx, vy)は、ブロック1207と関連付けられる動きベクトル、すなわち動きベクトル1205の成分を表す。
ブロック1203の画素の値は、ブロック1207において再生成される。
同様に、ELMtフレームのブロック1208の位置及びそのブロックと関連付けられる動きベクトル1204に基づいてELMt-1フレームのブロック1202の位置を判定できる。同様に、ブロック1202の画素の値は、ブロック1208において再生成される。
ELMtフレームの全てのブロックが処理される。これにより、累積エラーの位置の追跡が可能になる。ELMt-1フレームと同様に、ELMtフレームは以下のように定義される。
| 0 white |
ELMt-1(x,y)=| |
| 1 gray |
ここで、灰色はエラーに対応する位置を表し、白色は適切に復号化された領域に対応する。
上述したように、図11のステップ1119を参照すると、復号器により識別されたエラーの位置は、エラー追跡機構により判定される位置に加算される必要がある。図12において、復号器により識別されたエラー1210の位置は、1209で示されるフレームに格納される。このフレームは、エラー追跡機構により判定された位置を表すフレーム1206に画素毎に加算される(ステップ1211)。尚、加算は論理和と考えられてもよい。
その加算の結果、時間tにおけるエラーの位置のマッピングに対応するフレーム1212、すなわちELMtフレームが得られる。
図13は、図11に示されるエラーを追跡及び減衰するステップ1112を示す。フレーム1300は、時間t-1におけるエラー画像に対応し、EMt-1とも呼ばれる。これは、ある期間にわたり追跡される図9の909で示される予測エラーである。図15を参照して、フレーム内符号化フレームの受信時にエラー画像を計算する方法を更に詳細に説明する。ここでは、この画像エラーがある期間にわたり追跡及び減衰される方法を示す。白色の領域は、エラーが識別されなかった領域に対応し、灰色の領域1301は、エラーが識別された領域に対応する。灰色の領域が簡単化のために単色で表される場合でも、それら領域は任意の値をとってもよい。
図12を参照して先に提示された追跡の原理と同様に、追跡の原理の目的は時間tにおいてエラーフレームEMtを判定することである。フレーム1306は評価中のエラーフレームEMtを表し、フレーム1310は評価終了時のエラーフレームEMtを表す。
まず、フレーム1306の全ての画素はゼロに初期化される。
復号化中のフレームの符号化表現に関して、フレーム1306は、ビデオ符号器により実行される区分と同一の区分に従ってブロックに分解される。動きベクトルは、復号化中のフレームの各ブロックと関連付けられる。
復号化中のフレームがフレーム内符号化フレームである場合、動きベクトルは、図14を参照して以下に提示される方法で判定される。
復号化中のフレームから得られる時間tにおけるエラー画像を表すフレーム1306のブロックと関連付けられる動きベクトルは、時間t-1におけるエラー画像を表すフレーム1300の対応するブロックの判定を可能にする。フレームEMtの各ブロックに対して、フレームEMt-1のブロックがそれと関連付けられる。例えば、動きベクトル1304は、フレーム1300のブロック1302をフレーム1306のブロック1308と関連付けることを可能にする。同様に、動きベクトル1305は、フレーム1300のブロック1303をフレーム1306のブロック1307と関連付けることを可能にする。
フレーム1306の各ブロックのコンテンツは、フレーム1300において関連付けられるブロックのコンテンツにより置換される。フレーム1306の画素毎に値を判定するために、フレーム1306の全てのブロックが処理される。
追跡ステップが実行される場合、減衰ステップ1309が実行される。そのために、フレーム1306の各画素の値は、以下のように係数αと乗算される。
EMt(x, y) = α.EMt(x, y)
係数αの値は、エラーを含むフレームとエラーを含まないフレーム又は同一の場所にエラーを含まないフレームとの間の遷移、すなわち特にフレーム間予測符号化フレームとフレーム内符号化フレームとの間の遷移を可能にするように判定される。遷移は、2つの連続するフレーム内符号化フレームにより規定される期間より短い期間にわたり実行されるのが有利である。フレーム内符号化フレームがNフレーム毎に受信される場合、遷移はN個のフレームにわたり実行されるのが好ましい。ここで、Nは10個又は15個のフレームに対応できる。換言すると、フレーム内符号化フレームが時間tにおいて受信される場合、遷移は時間t+N-1において終了する必要がある。2つの連続するフレーム内符号化フレームの間の期間が長い場合、例えば25より大きい場合、遷移期間は好ましくは12フレームを超えるべきではないと考えられる。
係数αの値を判定するために、変数AFが使用されてもよい。変数AFの値は、フレーム内符号化フレームを受信する度に値Nに初期化され、値AFはフレームを受信する度に1減分される。係数αの値は、以下の関係に従って判定されてもよい。
α=(AF−1)/AF
係数αの値が負の場合、係数αの値はゼロに固定され、エラーを追跡及び減衰する方法は停止される。遷移は終了したと考えられる。
復号化中のフレームがフレーム内符号化フレームである場合、動きベクトルはそのフレームの各ブロックと関連付けられない。この場合、処理中のフレームの各ブロックと関連付けられる動きベクトルを判定する必要がある。
この問題を回避するためにE^(t-1)ではなくE^(t)を計算できるが、この解決策はP(t-1)フレームの代わりにI(t)フレームの予測を必要とし、その結果、同一の問題が発生する。尚、E^(t-1)が計算される場合、エラーはP(t-1)フレーム間予測符号化フレーム及び動きベクトルから予測されるP^(t)フレーム間予測符号化フレームとI(t)フレーム内符号化フレームとの比較により推定される。
図14は、ベクトル場がフレーム内符号化フレームに関連して判定される方法を示す。フレーム1400は、図9に表されるようなP(t-1)フレーム間予測符号化フレームの記号表現である。このフレームがビデオ符号器により使用された方法と同一の方法でブロックに分割され、動きベクトルがそれらブロックの各々と関連付けられると考えられる。動きベクトルは、P(t-1)フレーム間予測符号化フレームの符号化表現から得られる。ベクトル場は、以下の方法でフレーム1402に投影される(ステップ1401)。中心の座標が(x, y)であるP(t-1)フレーム間予測符号化フレームのブロック及び動きベクトル(vx, vy)を考慮することにより、投影は、同一の動きベクトル及び以下の座標の点を含むブロックにより特徴付けられる。
(x', y') = (x-vx, y-vy)
ここで、フレーム1402は同一の区分に従ってブロックに分割される。
例えば、フレーム1400のブロック1405の投影により、ブロック1406が取得される。ブロック1406の中心を含むブロックはブロック1407である。次にブロック1405と関連付けられる動きベクトルが再生成され、ブロック1407と関連付けられる。
そのような投影は、フレーム1400の全てのブロックに対して実行されるのが有利である。
ステップ1403の目的は、補間することにより、投影中に動きベクトルが関連付けられなかったフレーム1402の各ブロックに対する動きベクトルを判定することである。補間の一例は、投影により取得される動きベクトルにメディアンフィルタを適用することから構成される。例えば、フレーム1402の各ブロックは画素と考えられる。フレーム1402は、メディアンフィルタが適用される場合、2次元のベクトルのフレームと考えられる。2次元の動きベクトルは各画素に対応する。処理1401の結果、動きベクトルがブロックの属性でない場合、動きベクトルはヌルと考えられる。メディアンフィルタリングは、例えば大きさが5×5のグリッドの中心をある画素にすること及びグリッドにより囲まれるフレーム1402の25画素の中央値を得ることから構成される。フレーム1402が2次元のベクトルから構成されるため、中央値は各構成要素に当てはまる。
取得されたフレーム1404は、動きベクトルが周知であるP(t-1)フレーム間予測符号化フレームに後続するI(t)フレーム内符号化フレームの各ブロックと関連付けられる動きベクトルを含む。
当然ながら、フレーム内符号化フレームと関連付けられる動きベクトルを取得する他の方法が存在する。
図15は、エラー画像を生成する図10のステップ1006又は図11のステップ1110を示す。このステップは、P(t-1)フレーム間予測符号化フレームとそのフレームの推定P^(t-1)との間の差分を評価するステップに対応する。この差分は、図9においてE^(t-1)と呼ばれ且つ909で示される。
フレーム1500は、P(t-1)フレーム間予測符号化フレームの記号表現である。フレーム1500は、ビデオ符号器により実行される区分と同一の区分に従ってブロックに分割される。動きベクトルは各ブロックと関連付けられる。ビデオ符号器により判定されるベクトルに対応する動きベクトル1502は、P(t-1)フレーム間予測符号化フレームの復号化中に抽出される。
フレーム1501は、復号化I(t)フレーム内符号化フレームの表現である。フレーム1507は、時間t-1におけるエラーの位置のマッピングを表し、ELMt-1とも呼ばれる。図12を参照して説明されたように、灰色の領域1508は追跡されたエラーの位置を表し、白色の領域はエラーが検出されなかった領域に対応する。以下の表記は、エラーの位置を特徴付けるために使用されてもよい。
| 0 white |
ELMt-1 = | |
| 1 gray |
ステップ1503は、1504で示されるP(t-1)フレーム間予測符号化フレームの推定P^(t-1)の判定を可能にする投影で構成される。フレーム1504の座標(x, y)の各画素の値は、以下の関係に従って推定される。
| I(t)(x-vx, y-vy) if ELMt-1(x,y)=1
P^(t-1)(x,y) = |
| γ if ELMt-1(x,y)=0
式中、γは特定の値であり、例えばγは1000である。
この関係において、動きベクトル(vx, vy)は、座標(x, y)のP(t-1)フレーム間予測符号化フレームに対して判定される動きベクトルである。座標(x, y)の画素がブロックBに位置する場合、座標(x, y)の画素にはそのブロックBと関連付けられる動きベクトルがある。
推定P^(t-1)が計算された場合、P(t-1)フレーム間予測符号化フレームとそのフレームの推定P^(t-1)との間の差分E^(t-1)が判定される(ステップ1505)。
E^(t-1)(x,y)=P(t-1)(x,y)-P^(t-1)(x,y)
P^(t-1)(x,y)がγと異なる場合、差分は計算される。P^(t-1)(x,y)がγと等しい場合、E^(t-1)(x,y)はゼロと等しい。
図16は、エラーを含むフレームとエラーを含まないフレーム又は異なるエラーを含むフレームとの間の遷移を改善するために、エラーの位置のマッピングにおいてエラーを追跡する図12を参照して説明された方法に対する代替方法を示す。
図12によると、フレーム1206において判定されたエラーの位置は、追跡されたエラーの位置を表すフレーム1209に加算される。
先に示したように、フレーム内符号化フレームを考慮した後の低速な遷移は、P(t-1)フレーム間予測符号化フレームとそのフレームの推定P^(t-1)との間の差分E^(t-1)の推定を必要とする。しかし、P(t-1)フレームの予測P^(t-1)が低品質である場合、後続するフレームに対してエラーの追跡及び減衰が実行される差分E^(t-1)は、低品質のエラー隠蔽に対応しないが低品質の予測から発生するアーティファクトを生じる危険性がある。図16に示す代替方法の目的はその危険性を低減することである。
その解決策は、エラー隠蔽機構が非効果的である場合に検出されたエラーの位置(図12のフレーム1209)を加算すること(図12の参照1211)から構成される。
復号化フレーム1600は、データが失われた部分を含む。図示する目的で、データが失われた部分は4つの領域1601、1602、1603及び1604に分割される。エラー隠蔽機構は、それら領域の各々に適用される。
エラー隠蔽の品質は、各領域に対して評価される(ステップ1605)。例えば、連続するフレーム間の動きの規則性は、エラー隠蔽の品質を判定するために使用されてもよい。動きが先のフレームにわたり規則的であると考えられる場合、エラー隠蔽手順の品質が良いと考えられる。それに対して、先のフレームにわたる動きが実質的に不規則である場合、エラー隠蔽手順は効果的ではないと考えられる。
図16に提示される例において、領域1602及び1604に対するエラー隠蔽の品質は良いと考えられる。その結果、それら領域は、後続するフレーム内符号化フレームの表示において突然の遷移の発端になることはない。しかし、領域1601及び1603に対するエラー隠蔽の品質は不十分であると考えられる。それら領域は、後続するフレーム内符号化フレームの表示において突然の遷移の発端になる危険性がある。
エラー画像は、隠蔽が不十分であるエラーの位置を考慮するために変更される。図16に関連して示される機構によると、図12において、フレーム1209は、全ての検出エラーを表すのではなく、領域1607によりフレーム1606に示されるような隠蔽品質が不十分である検出エラーのみを表す。
エラーの隠蔽の品質を評価する解決策は、隠蔽されていないエラーに対応する領域と隠蔽されたエラーに対応する領域との間の連続性が満足するものであるか否かを判定することから構成される。
変形例において、まず、P^(t-1)の予測の品質は、予測が適切である部分を判定するために評価される。隠蔽が適用された領域のある特定の部分において予測が十分に行なわれないと判定される場合、それら部分はエラー画像から除外される。
当然ながら、特定の要求に応じるために、当業者は上記説明に対して修正を行なうことができる。
サーバがマルチメディアコンテンツをクライアントに送信できる分散型ネットワークを概略的に示す図である。 本発明を少なくとも部分的に実現することを可能にする装置の一例を示す図である。 第1の実施形態に従って、送信エラーの影響を受けたビデオストリームの低速な再同期化処理の一例の原理を示すタイムチャートである。 先の図を参照して説明されるタイムチャートの可能なハードウェア実現例を示す図である。 図5a及び図5bを含み、図4の符号器及び復号器において実現されるアルゴリズムを示す図である。 復号器に対する参照としての役割を果たす現在の損傷フレームを計算するために図4において使用されるPropagateLoss(k,t)関数を概略的に示す図である。 第2の実施形態に従って、復号器において実行される低速な再同期化段階の一例を示す図である。 図7を参照して説明されるアルゴリズムを実現するように適応された復号化システムを示す図であり、それに従って、現在の中間フレームは適切なフレーム及びシミュレートされた損傷フレームから計算される。 第3の実施形態に従って、低速な再同期化処理の一例の原理を示す図である。 第3の実施形態に従って、本発明を実現するのに使用される処理動作を概略的に示す図である。 図10の詳細な表現を示す図である。 第3の実施形態の実現を可能にするエラーの位置のマッピングにおけるエラーの追跡を示す図である。 図11に示すエラーを追跡及び減衰するステップを示す図である。 第3の実施形態の実現のために、ベクトル場がフレーム内符号化フレームに対して判定される方法を示す図である。 図10のエラー画像を生成するステップを示す図である。 エラーを含むフレームとエラーを含まないフレーム又は異なるエラーを含むフレームとの遷移を改善するために、エラーの位置のマッピングにおいてエラーを追跡する図12を参照して説明された方法に対する代替方法を示す図である。

Claims (1)

  1. 各フレームを動き予測符号化により符号化してクライアントに送信するサーバであって、
    t番目のフレームである現フレームと該現フレームに対する参照フレームとから予測した該現フレームの予測フレーム中の損失を要求に応じて隠蔽し、該隠蔽後の予測フレームと前記現フレームとの差分を求め、該求めた差分を符号化した後で復号した復号差分を前記隠蔽後の予測フレームに加算し、該加算後の予測フレーム中の損失を前記要求に応じて隠蔽したフレームを出力する第1の手段と、
    前記現フレームの1フレーム前のフレーム若しくは供給されたフレームを参照フレームとして用いて、前記現フレームの動き予測符号化データを復号し、該復号により得られる復号現フレーム中の損失を前記要求に応じて隠蔽し、前記復号差分を該隠蔽後の復号現フレームに加算し、該加算後の復号現フレーム中の損失を前記要求に応じて隠蔽したフレームを出力する第2の手段と、
    前記第1の手段から出力されたフレームをA、前記第2の手段から出力されたフレームをBとし、ディゾルブ指数をiとすると、フレームCを、C=i/N×B+(N−i)/N×Aを計算することで求める手段と、
    前記フレームCの1フレーム前のフレーム若しくは供給されたフレームを参照フレームとして用いて、前記フレームCの動き予測符号化を行うことで生成した動き予測符号化データを前記クライアントに送信する第3の手段と、
    k(<t)番目のフレームに影響を及ぼす送信エラーが前記クライアント側で検出されたことに応じて該クライアントから送信されたメッセージを受信した場合、
    前記ディゾルブ指数をN(Nは2以上の自然数)に設定し、前記ディゾルブ指数が非0である場合には、該ディゾルブ指数をフレームごとに1減算し、
    前記k番目のフレームの動き予測符号化データを復号して得られる復号フレームkを参照フレームとして用いて(k+1)番目のフレームを動き予測符号化により符号化し、該符号化の結果を、該復号フレームk中の損失を隠蔽した隠蔽復号フレームを参照フレームとして参照して復号し、該復号の結果をI(τ)とした場合に、p=τ+1、τ+2、…、tの順にp番目のフレームの動き予測符号化結果をI(p−1)を参照フレームとして用いて符号化すると共に該符号化結果を復号したフレームをI(p)として得る処理により得られるI(t)を、前記第2の手段及び前記第3の手段に参照フレームとして供給する処理手段と
    を備えることを特徴とするサーバ。
JP2007327948A 2006-12-19 2007-12-19 サーバ Expired - Fee Related JP5072572B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
FR0655646 2006-12-19
FR0655646A FR2910218A1 (fr) 2006-12-19 2006-12-19 Procedes et dispositifs de re-synchronisation lente d'un flux video endommage
FR0757905 2007-09-27
FR0757905A FR2910211A1 (fr) 2006-12-19 2007-09-27 Procedes et dispositifs pour re-synchroniser un flux video endommage.

Publications (3)

Publication Number Publication Date
JP2008219862A JP2008219862A (ja) 2008-09-18
JP2008219862A5 JP2008219862A5 (ja) 2011-01-20
JP5072572B2 true JP5072572B2 (ja) 2012-11-14

Family

ID=39273316

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007327948A Expired - Fee Related JP5072572B2 (ja) 2006-12-19 2007-12-19 サーバ

Country Status (4)

Country Link
US (1) US8494061B2 (ja)
EP (1) EP1937000B1 (ja)
JP (1) JP5072572B2 (ja)
FR (1) FR2910211A1 (ja)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2895172A1 (fr) * 2005-12-20 2007-06-22 Canon Kk Procede et dispositif de codage d'un flux video code suivant un codage hierarchique, flux de donnees, procede et dispositif de decodage associes
US8340179B2 (en) * 2006-03-21 2012-12-25 Canon Kabushiki Kaisha Methods and devices for coding and decoding moving images, a telecommunication system comprising such a device and a program implementing such a method
FR2907575B1 (fr) * 2006-10-18 2009-02-13 Canon Res Ct France Soc Par Ac Procede et dispositif de codage d'images representant des vues d'une meme scene
FR2915342A1 (fr) * 2007-04-20 2008-10-24 Canon Kk Procede et dispositif de codage video
WO2009027094A1 (en) * 2007-08-31 2009-03-05 Canon Kabushiki Kaisha A method and device for video sequence decoding with error concealment
FR2920632A1 (fr) * 2007-08-31 2009-03-06 Canon Kk Procede et dispositif de decodage de sequences video avec masquage d'erreurs
FR2929787B1 (fr) 2008-04-04 2010-12-17 Canon Kk Procede et dispositif de traitement d'un flux de donnees
FR2930387B1 (fr) * 2008-04-17 2010-09-24 Canon Kk Procede de traitement d'un flux de donnees codes
FR2931025B1 (fr) * 2008-05-07 2010-05-21 Canon Kk Procede de determination d'attributs de priorite associes a des conteneurs de donnees, par exemple dans un flux video, procede de codage, programme d'ordinateur et dispositifs associes
FR2932050B1 (fr) * 2008-06-03 2010-05-21 Canon Kk Procede et dispositif de transmission de donnees video
FR2939593B1 (fr) * 2008-12-09 2010-12-31 Canon Kk Procede et dispositif de codage video
US8387045B2 (en) * 2009-03-12 2013-02-26 International Business Machines Corporation Cloning image creation using virtual machine environment
EP2257073A1 (en) * 2009-05-25 2010-12-01 Canon Kabushiki Kaisha Method and device for transmitting video data
EP2265026A1 (en) * 2009-06-16 2010-12-22 Canon Kabushiki Kaisha Method and device for deblocking filtering of SVC type video streams during decoding
EP2285122B1 (en) * 2009-07-17 2013-11-13 Canon Kabushiki Kaisha A method and device for reconstructing a sequence of video data after transmission over a network
US8438131B2 (en) * 2009-11-06 2013-05-07 Altus365, Inc. Synchronization of media resources in a media archive
FR2955995B1 (fr) * 2010-02-04 2012-02-17 Canon Kk Procede et dispositif de traitement d'une sequence video
JP5588949B2 (ja) * 2011-09-30 2014-09-10 富士フイルム株式会社 内視鏡システム及び内視鏡の外部制御装置
US9906815B2 (en) * 2011-11-08 2018-02-27 Texas Instruments Incorporated Delayed duplicate I-picture for video coding
US20150264359A1 (en) * 2012-02-24 2015-09-17 Vid Scale, Inc. Video coding using packet loss detection
CN102685509A (zh) * 2012-04-26 2012-09-19 中山大学 一种基于场景转换的视频差错控制方法
CN103634577B (zh) * 2012-08-22 2014-12-31 华为技术有限公司 多媒体质量的监控方法和设备
GB2505912B (en) * 2012-09-14 2015-10-07 Canon Kk Method and device for generating a description file, and corresponding streaming method
EP2750105A1 (en) * 2012-12-31 2014-07-02 Dassault Systèmes Streaming a simulated three-dimensional modeled object from a server to a remote client
GB2525137A (en) * 2013-08-30 2015-10-21 Amberfin Ltd Conversion of video frame rate
CN105451071B (zh) * 2015-11-18 2021-05-07 腾讯科技(深圳)有限公司 一种视频流的处理方法、装置和系统
CN110971457B (zh) * 2019-11-20 2022-05-24 西华大学 一种基于elm的时间同步方法
US11811541B2 (en) 2020-09-08 2023-11-07 Qualcomm Incorporated Sending feedback at radio access network level

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4704628A (en) * 1986-07-16 1987-11-03 Compression Labs, Inc. Combined intraframe and interframe transform coding system
US5212549A (en) * 1991-04-29 1993-05-18 Rca Thomson Licensing Corporation Error concealment apparatus for a compressed video signal processing system
JPH06237451A (ja) * 1993-02-10 1994-08-23 Hitachi Ltd 動画通信方式および端末装置
JP3606306B2 (ja) * 1998-10-08 2005-01-05 沖電気工業株式会社 画像符号化装置、画像復号化装置及び画像伝送システム
JP3166736B2 (ja) * 1998-11-25 2001-05-14 日本電気株式会社 動画像符号化装置および動画像符号化方法
JP3623679B2 (ja) * 1999-01-06 2005-02-23 日本電気株式会社 動画像符号化装置
FR2812502B1 (fr) * 2000-07-25 2002-12-20 Canon Kk Insertion et extraction de message dans des donnees numeriques
GB2366464A (en) * 2000-08-14 2002-03-06 Nokia Mobile Phones Ltd Video coding using intra and inter coding on the same data
US8559797B2 (en) * 2000-10-10 2013-10-15 Broadcom Corporation System and method for personal video recording
FR2816153B1 (fr) * 2000-10-27 2002-12-20 Canon Kk Procede de controle prealable de la detectabilite d'un signal de marquage
US6697126B2 (en) * 2001-02-09 2004-02-24 Webtv Networks, Inc. Intra-frame video error concealment
EP1374429A4 (en) * 2001-03-05 2009-11-11 Intervideo Inc SYSTEMS AND METHOD FOR CODING AND DECODING REDUNDANT MOTION VECTORS IN COMPRESSED VIDEO BITSTRAMS
US8923688B2 (en) * 2001-09-12 2014-12-30 Broadcom Corporation Performing personal video recording (PVR) functions on digital video streams
US7020203B1 (en) * 2001-12-21 2006-03-28 Polycom, Inc. Dynamic intra-coded macroblock refresh interval for video error concealment
FR2837330B1 (fr) * 2002-03-14 2004-12-10 Canon Kk Procede et dispositif de selection d'une methode de transcodage parmi un ensemble de methodes de transcodage
US7072394B2 (en) * 2002-08-27 2006-07-04 National Chiao Tung University Architecture and method for fine granularity scalable video coding
KR20050035539A (ko) * 2002-09-06 2005-04-18 코닌클리케 필립스 일렉트로닉스 엔.브이. 개선된 효율 및 에러 복구를 위한 컨텐츠-적응형의 다수의설명 움직임 보상 방법
US7466755B2 (en) * 2002-10-04 2008-12-16 Industrial Technology Research Institute Method for video error concealment by updating statistics
FR2851397B1 (fr) * 2003-02-14 2005-05-13 Canon Europa Nv Procede et dispositif d'analyse de sequences video dans un reseau de communication
US7324698B2 (en) * 2003-11-20 2008-01-29 Mitsubishi Electric Research Laboratories, Inc. Error resilient encoding method for inter-frames of compressed videos
US7127655B2 (en) * 2004-01-20 2006-10-24 Qualcomm, Inc. Methods and apparatus to optimize delivery of multicast content using probabilistic feedback
FR2894421B1 (fr) * 2005-12-07 2008-01-18 Canon Kk Procede et dispositif de decodage d'un flux video code suivant un codage hierarchique
US8315308B2 (en) * 2006-01-11 2012-11-20 Qualcomm Incorporated Video coding with fine granularity spatial scalability
FR2897741B1 (fr) * 2006-02-17 2008-11-07 Canon Kk Procede et dispositif de generation de donnees representatives d'un degre d'importance de blocs de donnees et procede et dispositif de transmission d'une sequence video encodee
US8340179B2 (en) * 2006-03-21 2012-12-25 Canon Kabushiki Kaisha Methods and devices for coding and decoding moving images, a telecommunication system comprising such a device and a program implementing such a method
KR101378079B1 (ko) * 2006-04-20 2014-03-28 톰슨 라이센싱 중복 비디오 코딩을 위한 방법 및 장치
FR2903556B1 (fr) * 2006-07-04 2008-10-03 Canon Kk Procedes et des dispositifs de codage et de decodage d'images, un systeme de telecommunications comportant de tels dispositifs et des programmes d'ordinateur mettant en oeuvre de tels procedes
FR2904494B1 (fr) * 2006-07-26 2008-12-19 Canon Kk Procede et dispositif de compression d'image, systeme de telecommunication comportant un tel dispositif et programme mettant en oeuvre un tel procede
FR2906433B1 (fr) * 2006-09-22 2009-02-27 Canon Kk Procedes et dispositifs de codage et de decodage d'images, programme d'ordinateur les mettant en oeuvre et support d'informaton permettant de les mettre en oeuvre
FR2907575B1 (fr) * 2006-10-18 2009-02-13 Canon Res Ct France Soc Par Ac Procede et dispositif de codage d'images representant des vues d'une meme scene
FR2908585B1 (fr) * 2006-11-15 2008-12-26 Canon Kk Procede et dispositif de transmission de donnees video.

Also Published As

Publication number Publication date
FR2910211A1 (fr) 2008-06-20
US20080144725A1 (en) 2008-06-19
EP1937000B1 (en) 2015-10-28
EP1937000A2 (en) 2008-06-25
US8494061B2 (en) 2013-07-23
EP1937000A3 (en) 2011-11-02
JP2008219862A (ja) 2008-09-18

Similar Documents

Publication Publication Date Title
JP5072572B2 (ja) サーバ
JP5917638B2 (ja) エラーフィードバックに応答するビデオリフレッシュ適合アルゴリズム
ES2348730T3 (es) Uso de almacenamiento en cache de trama para mejorar la recuperacion de perdidas de paquetes.
US8599929B2 (en) Distributed video decoder and distributed video decoding method
EP2908532B1 (en) Concealment of data loss for video decoding
US20070009039A1 (en) Video encoding and decoding methods and apparatuses
US8259802B2 (en) Reference pictures for inter-frame differential video coding
JP2009528798A (ja) アーチファクト評価による向上した画像/ビデオ品質
JP2004507178A (ja) ビデオ信号符号化方法
JP2011091794A (ja) 動き推定の探索範囲の適応選択方法及び装置
EP2186343B1 (en) Motion compensated projection of prediction residuals for error concealment in video data
WO2009027093A1 (en) Error concealment with temporal projection of prediction residuals
US9681146B2 (en) Decoding frames
KR101639434B1 (ko) 와이너-지브 부호화 및 복호화 시스템 및 방법
JP2010010917A (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法、及び動画像復号方法
TWI528793B (zh) 用以提供數位視訊內容錯誤復原的方法
JP2002027485A (ja) 動き予測とブロック効果フィルタリングを用いたビデオソース符号化
JPH0993592A (ja) 画像符号化装置
JP4794711B2 (ja) エラー隠蔽制御方法及び符号化装置及び画像信号伝送システム
US20040261111A1 (en) Interactive mulitmedia communications at low bit rates
JPH07111654A (ja) 動画像伝送システム
KR101072626B1 (ko) 비트율 제어 방법과 장치 및 이를 이용한 분산 비디오 코딩 방법과 장치
JP2006196960A (ja) 動画データ受信装置
KR100397133B1 (ko) 영상 데이터 압축 전송 시스템 및 그 방법
JPH0275247A (ja) 可変レート画像階層符号化装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101201

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120507

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120703

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

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

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

Free format text: PAYMENT UNTIL: 20150831

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees