JP2005020729A - ストリーミングメディアを処理する(servicing)方法およびシステム - Google Patents
ストリーミングメディアを処理する(servicing)方法およびシステム Download PDFInfo
- Publication number
- JP2005020729A JP2005020729A JP2004171990A JP2004171990A JP2005020729A JP 2005020729 A JP2005020729 A JP 2005020729A JP 2004171990 A JP2004171990 A JP 2004171990A JP 2004171990 A JP2004171990 A JP 2004171990A JP 2005020729 A JP2005020729 A JP 2005020729A
- Authority
- JP
- Japan
- Prior art keywords
- transcoding
- streaming media
- processing
- caching
- metadata
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 230000008569 process Effects 0.000 claims abstract description 25
- 230000009467 reduction Effects 0.000 claims description 19
- 239000013598 vector Substances 0.000 claims description 15
- 230000006870 function Effects 0.000 claims description 6
- 238000003672 processing method Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 12
- 238000013139 quantization Methods 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000013468 resource allocation Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 239000000872 buffer Substances 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0875—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/127—Prioritisation of hardware or computational resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/146—Data rate or code amount at the encoder output
- H04N19/152—Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/40—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/423—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/587—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
【解決手段】 本発明にかかる方法は、ストリーミングメディアを受け取ること、利用可能な処理資源およびメモリ資源の配分を決定することとを含む。さらに、本方法は、ストリーミングメディアに対して多段階処理を実行すること、多段階プロセスの中の1つの段階からの中間結果をキャッシングすることとを含む。中間結果は利用可能な処理資源およびメモリ資源に従って選択される。
【選択図】図6
Description
特に、本発明の実施形態は、ストリーミングメディアを処理する方法およびシステムに関する。
こういった資源に固有の制約により、処理プロセスにおけるボトルネックは確実に、これら制約がシステム資源の適宜配分によって調停されない限り緩和されない。
システム資源の制約は、システム資源の誤った配分に起因する非効率性によって悪化する。
これら非効率性によって助長されるボトルネックは、ストリーミングメディア処理システムの演算資源および記憶資源への過負荷および全体のパフォーマンスの悪化を助長する役割を果たす恐れがある。
実際、多くの従来のシステムは、問題を悪化させる可能性のある処理システムの出力からとられる完全に処理済みのデータのキャッシングに的を絞っている。
容易に認められるように、このように完全に処理済みのデータのキャッシングは、記憶資源に対して深刻な負荷をかける。
これは、このような方法が過度の量のシステム記憶資源を消費し、それによって、それ以降の処理を行うのに必要な演算資源の消費が減るためである。
しかし、記憶資源のこのような誤った配分に由来する記憶可用性の欠如に起因するボトルネックは蔓延している。
このようなメディア処理の誤った配分に起因する非効率性は、システムパフォーマンスを劣化させるボトルネックを助長する。
一実施形態において、本方法は、ストリーミングメディアを受け取ること、利用可能な処理資源およびメモリ資源の配分を決定することとを含む。
さらに、本方法は、ストリーミングメディアに対して多段階処理を実行すること、多段階プロセスの中の1つの段階からの中間結果をキャッシングすることとを含む。
中間結果は利用可能な処理資源およびメモリ資源に従って選択される。
本発明についてこれら実施形態と併せて説明するが、本発明をこれら実施形態に限定する意図がないことを理解されたい。
反対に、本発明は、添付の特許請求の範囲によって規定される本発明の精神および範囲内に包含し得る代替形態、変更形態、および同等物を保護範囲に含むことを意図する。
さらに、以下の本発明の詳細な説明では、本発明の完全な理解を提供するために多くの特定の詳細が述べられる。
しかし、本発明はこれら特定の詳細なしでも実施し得ることが当業者に認められよう。
一方、既知の方法、手順、構成要素、および回路については、本発明の態様を不必要に曖昧にしないように詳細に説明しなかった。
図1Aは、本発明の一実施形態によるトランスコードシステムの機能ブロック図100である。
機能ブロックは、図示および考察を明確にするために、図1において別個に示されていることが理解される。
しかし、これらブロックは、別個の要素として存在しなくてもよく、実用では、1つの装置または複数の装置として具現し得る。
一般に、本発明のトランスコードシステムは、これから説明する機能を提供する1つまたは複数(の装置)を含むことができる。
図1は、入力ストリーム101、メタトランスコーダ103、出力ストリーム105、資源バランサ107、メタキャッシュ109、正規のキャッシュ111、メタデータ113、オリジナルコンテンツサーバ115、およびクライアント装置(複数可)117を示す。
一実施形態によれば、入力ストリーム101は、システム資源を最適化する様式でトランスコーダ103によってトランスコーディングされる。
一実施形態によれば、入力ストリーム101はコンテンツサーバ115(たとえば、ビデオコンテンツプロバイダ等)によって供給される。
他の実施形態によれば、入力ストリームは他のソース(たとえば、ローカル記憶媒体、リモート記憶媒体)から提供される。
さらに、メタトランスコーダは、現在のセッションにおいて、それ以降の同様のトランスコードセッションに使用されるメタデータを生成することができる。
一実施形態によれば、本発明のメタトランスコーダ103は、メタデータ(メタキャッシュ109から検索される中間トランスコードデータ)およびデータ全体(たとえば、コンテンツサーバ115によって供給されるものなど)を両方とも入力として受け取ることができることに留意されたい。
メタトランスコーダ103は、メタキャッシュ109および正規のキャッシュ111に回復することができるキャッシュを備える。
処理されるデータは、トランスコーディングの最終結果および「メタデータ」113と呼ばれるトランスコーディングの中間結果の両方からなることができる。
これらデータ構成要素それぞれの最適な使用が、システムパフォーマンスの最適化につながり得る。
プロセスの1つの段階の結果は通常、少なくとも他の1つの段階への入力として使用される。
本明細書において使用する「中間結果」は、トランスコーディングの最終段階前の各種段階の出力前の各種段階の出力を指し、「最終結果」は、すべての段階を完了したデータを指す。
メタデータ113は、トランスコードプロセスの中間結果と定義することができる。
メタキャッシュ109は、中間トランスコード結果を表すメタデータ113をキャッシングする。
たとえば、データがa、b、およびcを加算することによってトランスコーディングされて「X」を得る場合を考える。
中間結果a+bをメタデータ(たとえば、113)とみなすことができる。
したがって、「X」を得るための後続のトランスコーディングで必要なのは、2つ(たとえば、a+bの加算、そしてこれにcを加算)ではなく1つの追加処理ステップ(たとえば、a+bへの加算)のみである。
分かるように、これは、処理の節約によりa+bの格納に追加のキャッシュ空間の使用が保証される場合に有利である。
本発明は、各種実施形態において、メタトランスコーダが利用できる処理資源および記憶資源の最適なバランスを実現する。
一実施形態によれば、これら結果は、キャッシングに消費する記憶空間が中間結果よりも少ない場合に格納することができる。
本実施形態によれば、本発明は、従来のシステムによって提供される単一レベルではなく複数レベルのキャッシュを導入する。
資源バランサは、キャッシュ資源よりも多いまたは少ないトランスコード(処理)資源を採用することができるか否かを決定する。
中間トランスコード結果であれ、最終トランスコード結果であれ、いずれもキャッシングすることができる。
資源バランサ107は、利用可能なキャッシュ空間および利用可能な演算サイクル等の要因に基づいて決定を行う。
一般に、システムが十分なアイドル演算サイクルを有するが十分なキャッシュ空間を有していない場合、最終トランスコード結果ではなく中間トランスコード結果(たとえば、メタデータ)をキャッシングすることができる。
これとは反対に、システムが十分なキャッシュ空間を有するが十分な演算サイクルを有していない場合、中間結果(たとえば、メタデータ)ではなく最終結果をキャッシングすることができる。
現在のトランスコードセッション中、トランスコーダはメタデータを生成することができ、そこから、続けて行われ得る同様のトランスコードセッション中に恩恵を受け得ることを理解されたい。
さらに、トランスコードセッション中、トランスコーダは、前のトランスコードセッションにおいて生成されたメタデータの恩恵を受けることができる。
トランスコードセッションは複数の離散したトランスコード段階(たとえば、図1B中の段階1〜段階Nとして示す)を含むことができ、それぞれトランスコード完了の中間(非最終)段階に存在するメタデータを出力することを理解されたい。
一実施形態によれば、任意のトランスコーダ段階それぞれから出力されるメタデータは、後続の同様のトランスコードセッションにおいてそれ以降に使用するためにキャッシングすることができる。
例示的な実施形態によれば、メタデータがキャッシングされるトランスコードプロセス段階は、最も有利な演算と記憶のバランスを提供するものが選択されることを理解されたい。
図1Bは、入力ストリーム101、メタトランスコーダ103、出力ストリーム105、および出力1〜出力Nと示された出力を有する(図1B参照)トランスコード段階1〜Nを示す。
図1Bに示すように、ストリーミングビデオは、最終トランスコード結果の出力ストリーム105が生成される(たとえば、クライアント装置に供給するためなどに)までにN個のトランスコーダ段階(たとえば、図1Bには段階1〜段階Nと示される)を通過しなければならない。
各トランスコーダ段階のいずれの出力も(たとえば、図1Bでは出力1〜出力Nと示される)キャッシングし、メタトランスコーダへの入力として使用することができ、それによってそれ以降の同様のセッションにおける演算負荷が低減することを理解されたい。
しかし、メタデータが実際にキャッシングされる段階は、最も有利な演算と記憶のバランスを提供するものが選択される。
一実施形態によれば、キャッシングするメタデータ(たとえば、113)の選択には、トランスコードセッションの処理ボトルネックを考慮に入れる必要がある。
文脈として、圧縮されたMPEG(モーションピクチャエキスパートグループ)ビデオストリームに対するビデオトランスコーディングを使用して、以下の図2を参照して行う考察において、これをどのように実現することができるかについて説明する。
図2は、本発明の一実施形態によりシーケンスレベルからピクセルレベルにキャッシングすることができる5つの中間レベルのメタデータの間の関係を示すグラフ200である。
図2は、「キャッシュヌル」201、「キャッシュフル」213、演算軸205、記憶軸207、シーケンス209、ピクチャ212、マクロブロック215、ブロック217、およびピクセル219を示す。
すなわち、(1)「キャッシュヌル」201、および(2)「キャッシュフル」213である。
「キャッシュヌル」201レベルは、最終結果も、また図2に示す5つのレベルのいずれも、トランスコード中の特定のビデオストリーム部分にキャッシングされない場合に得られる。
「キャッシュヌル」201の場合、ヌルキャッシュをもたらしたトランスコードセッション中に生成されたデータに対してそれ以降に要求がある場合、処理システムは、使用可能な最終結果も、またメタデータもキャッシングされていないため、100%の演算資源を要し得る新しいトランスコードセッションを開始する。
しかし、新しいトランスコードセッションでは、必要とされる記憶資源は0%である。
これは、前のトランスコードセッション中に、この空間を占有するものが何もキャッシングされなかったためである。
「キャッシュフル」213の場合、フルキャッシュをもたらしたトランスコードセッション中に生成されたデータに対してそれ以降に要求がある場合、トランスコーダは、キャッシュ記憶装置がフルであるため、100%の記憶資源を要し得る新しいトランスコードセッションを開始することができる。
しかし、新しいトランスコードセッションに必要な演算資源は0%であり、これは、前のトランスコードセッション中にキャッシングされた最終トランスコード結果を利用することができるためである。
一般に、シーケンスレベル209メタデータは、ビデオストリームのセグメント全体の全体的な特徴を記述し、通常、限られた量の記憶空間を占める。
一実施形態によれば、システムが中間データをシーケンスレベル209にキャッシングする場合、このデータに対するそれ以降の要求に応答してトランスコーディングの完了に必要な演算資源は、「キャッシュヌル」201の場合と比較して少ない。
たとえば、キャッシングされたシーケンスレベル209メタデータを使用することにより、ビデオの初期部分をパーズしてそこに提供される情報を得る必要なく、新しいトランスコードセッションを実行することができ、初期化プロセスの簡易化につながる。
さらに、使用されるキャッシング資源も低減される。
しかし、関わる記憶資源の量は、処理資源の利用が多くなるにつれて低減していく。
しかし、必要な演算資源の量は一般に、キャッシング資源の利用が多くなるにつれて低減していく。
本発明の実施形態は、提供される様々なキャッシングレベルを利用し、資源の配分を適応的に調整する。
たとえば、同じトランスコード処理に対して複数の要求がある状況に応答して、システムは、より多くのメタデータ(または演算要件が低いメタデータ)を格納するよう選択することにより、または極端な場合では、最終結果−出力ストリーム(たとえば、105)をキャッシングすることによって適応的に応答することができる。
こうして促進される細かい粒度により、処理プラットフォーム上で利用可能なすべての資源(たとえば、演算および記憶)をより効率的に利用することができる。
これらの種類の中間データのキャッシングにより、以下述べる記憶と演算の良好なトレードオフの実現を容易にすることができる。
図3は、本発明の一実施形態による、MPEGビデオストリームに対してフレームレート低減トランスコーディングを実行するシステムに採用される機能ブロックを示すブロック図300である。
一実施形態によれば、フレームレートの低減は、フレームドロップ等の対策を採用することによって実現することができる。
たとえば、2/3のフレームレート低減は、GOP(ピクチャグループ)構造IBBPBBPBBを有するMPEGビデオストリーム中の「B」ピクチャを落とすことによって実現される。
フレームを「通す」かそれとも「落とす」かについての決定に関わるメタデータをキャッシングすることにより、図1のメタトランスコーダ103にかかる演算負荷は、このキャッシングデータにアクセスする後続のトランスコードセッションにおいて低減される。
図3は、入力ビデオストリーム301、パーサ303、フレームレートコントローラ307、出力ビデオストリーム305、およびメタキャッシュ309を示す。
さらに、図3は、本発明の図3の実施形態のメタトランスコーダ(たとえば、103)の構成要素(たとえば、303および307)の周囲に線を描いた破線311の図を示す。
一実施形態によれば、パーズ機能の目的は、ピクチャタイプおよび各フレームに関連するバイト境界データを確認することである。
この情報はフレームレートコントローラ307に供給され、特定のフレームを「通す」かそれとも「落とす」かを判断する際に使用することができる。
先に触れたように、フレームを「通す」かそれとも「落とす」かの判断に関わるメタデータをキャッシングすることにより、このデータが使用される後続のトランスコードセッションにおいて、メタトランスコーダに対する演算負荷が低減する。
R=40fビット/秒
キャッシングビットレートは、ピクチャタイプ(たとえば、I、B、またはP)の記録に2ビット、およびピクチャ境界のバイトオフセットの記録に38ビット(組み合わせて5バイト、すなわち40ビット)を使用して計算することができる。
2ビットは4つのピクチャタイプを記録するに十分であり、38ビットは最大で512GB(たとえば、ギガバイト)サイズのメディアファイルにおけるオフセットを記録するに十分であることを理解されたい。
これは、現在利用可能なメディアファイルのタイプのすべてではなくともその大半をカバーするのに十分すぎると予期される。
一実施形態では、出力ストリームのターゲットビットレートがRよりも小さい場合、最終トランスコード結果(たとえば、「キャッシュフル」213)は、中間結果(たとえば、キャッシュメタ)とは対照的にキャッシングされる。
これは、メタデータのキャッシングに必要なデータレートがしきい値「R」を満たさないためである。
一実施形態によれば、資源バランサ(たとえば、107)が採用されて、最終トランスコード結果がキャッシングされるか、それとも中間トランスコード結果がキャッシングされるかが決定される。
上に提供した式(たとえば、R=40fビット/秒)を使用すると、キャッシングビットレートは40*30=1200ビット/秒(たとえば、1.2キロビット/秒)と計算することができる。
したがって、出力ストリーム305のターゲットビットレートがRよりも小さい場合、メタキャッシュ(たとえば、309)へのキャッシングではなく「キャッシュフル」を選択すべきである。
上で参照した式中の定数「40」は、MPEGビデオストリームが処理されている場合用に特別に導出されたものであることを理解されたい。
他の場合(たとえば、テキストからスピーチ、スピーチからテキストへのトランスコーディング等)では、他の定数を導出することができる。
さらに、ピクチャのタイプおよび関連するバイトオフセットはここではメタキャッシュ309において容易に利用することができるため、メタトランスコーダは、パーサ303なしで、後続の同じ種類のトランスコード要求を容易に処理することができる。
したがって、メタトランスコーダにかかる演算負荷が大幅に低減する。
したがって、シーケンスレベル(たとえば、209)にあるメタデータと比較して、このようなメタデータをキャッシングするにあたってより多くの記憶資源が使用され得るが、それ以降のトランスコード(たとえば、処理)セッションに必要な演算資源は大幅に低減することになる。
フレームレートの低減は通常、ビットレートの低減につながる。
出力ストリーム305のターゲットビットレートがRよりも小さい場合、メタキャッシュ(たとえば、309)へのキャッシングではなく「キャッシュフル」が選択される。
図4は、本発明の一実施形態による、MPEGビデオストリームに対してビットレート低減トランスコーディングを実行するシステムに採用される機能ブロックを示すブロック図400である。
一実施形態によれば、出力ストリーム(たとえば、409)のビットレートのみが、ビットレート低減トランスコーディングのために低減される。
一実施形態によれば、トランスコードビデオ信号のビデオフレームレートおよびビデオフレーム解像度等のパラメータが、ビットレート低減トランスコーディングのために一定レベルに維持される。
さらに、図4は、本発明の図4の実施形態のメタトランスコーダ(たとえば、103)の構成要素(例えば、403、405、407、および411)の周囲に線を描いた破線415の図を示す。
考え得る従来のプロセスにはいくつかのボトルネックがあるが、再量子化係数(Mquant)のキャッシングは、記憶資源の使用と演算資源の使用の間の良好なトレードオフを実現する。
再量子化係数は、最終トランスコード結果よりもキャッシングが容易な中間トランスコード結果である。
一実施形態によれば、この中間トランスコード結果のキャッシングにより、このようなデータを再生する必要なく、それ以降のトランスコードセッションを実行することが可能になる。
図4は、入力ビデオストリーム401、VLC(可変長コード)デコーダ403、逆量子化405、量子化407、ビットレートコントローラ411、メタキャッシュ413、および出力ストリーム409を示す。
キャッシングされたMquantデータは、それ以降のトランスコードセッションをスピードアップする役割を果たすことができる。
これは、このようなそれ以降のトランスコードセッション中にこのデータを生成する必要であった処理を報告する必要がないためである。
先に触れたように、中間トランスコード結果は、メモリ消費と残りの処理量の間のトレードオフに応じてキャッシングされる。
R=whf/32bps(ビット/秒)
これは、最終結果のキャッシングが同じくらい容易に対応することができる(たとえば、メタデータのキャッシングに必要なデータレートがしきい値「R」を満たさない)ためである。
一実施形態によれば、資源バランサ(たとえば、107)が採用されて、最終トランスコード結果をキャッシングするか、それとも中間トランスコード結果をキャッシングするかが決定される。
一実施形態によれば、30秒の352×288、30fpsのビデオクリップの場合、Mquantデータの格納に必要なキャッシュのサイズは356400バイトになり、Mquantメタデータのキャッシングに必要なデータレートは95040bpsになる(たとえば、毎秒95040ビットのMquantデータがキャッシングされる)。
したがって、ターゲットビットレートが95Kbps以上の場合、Mquantメタデータは、このようなメタデータをキャッシングしたほうが有利なため(たとえば、メタデータのキャッシングを促進するのに必要なデータレートが存在し、データにより、それ以降の同様のトランスコードセッションのスピードアップが図られる)、キャッシングされることになる。
しかし、ターゲットビットレートが95Kbps未満の場合、Mquantメタデータをキャッシングしないほうが有利である。
これは、最終トランスコード結果のキャッシングに同じくらい容易に対応することができる(たとえば、ターゲットデータレートがMquantメタデータのキャッシングに必要なデータレートよりも低い)ためである。
さらに、ランレングス符号化を使用して、後でMquantデータを圧縮する、または記憶空間の半分のバイトを個々のMquantデータに使用する(それにより、必要な空間が半分だけになる)等、キャッシュ空間の節約に他のキャッシュ記憶空間節約技法を採用してもよい。
キャッシングされるメタデータは、図2に示すグラフの(MPEGの場合、16×16サイズの)マクロブロックレベル215にあることを理解されたい。
出力ストリームのターゲットビットレートがRよりも小さい場合、「キャッシュメタ」413ではなく「キャッシュフル」(たとえば、213)が選択される。
図5は、本発明の一実施形態による、MPEGビデオストリームに対して空間または解像度低減トランスコーディングを実行するシステムに採用される機能ブロックを示すブロック図500である。
空間解像度の低減は、各フレームの解像度を低減し、その結果をより低いビットレートでコーディングすることによって実現することが可能である。
従来のプロセスにはいくつかのボトルネックが存在し得るが、動き情報および再量子化係数のキャッシングにより、記憶資源と演算資源の間の良好なトレードオフが実現される。
図5は、入力ストリーム501、動きベクトル発生器507、レート制御モジュール521、出力ストリーム523、動きベクトル(529および531)およびメタキャッシュ527を示す。
さらに、図5は、本発明の図5の実施形態のメタトランスコーダ(たとえば、103)の構成要素(たとえば、図5において破線537によって囲まれている構成要素を参照)の周囲に線を描いた破線537の図を示す。
しかし、一実施形態によれば、2つの機能ブロック、すなわち、動きベクトル発生器507およびレート制御モジュール521が、メタキャッシングを適用して良好な記憶と演算とのトレードオフを実現することができる、トランスコードプロセスにおけるポイントとして識別されている。
一実施形態によれば、動きベクトル発生器507のトランスコード結果をキャッシングすることにより(出力ストリーム523ではなく中間結果)、後続の同様の処理(たとえば、トランスコードセッション)に対する要求に、より少ない演算で応えることができる。
R=whf(n−1)/8n(ビット/秒)
これは、最終結果のキャッシングが同じくらい容易に対応することができる(たとえば、メタデータのキャッシングに必要なデータレートが存在しない)ためである。
一実施形態によれば、資源バランサ(たとえば、107)が採用されて、最終トランスコード結果をキャッシングするか、それとも中間トランスコード結果をキャッシングするかが決定される。
MPEG標準によれば、ピクチャ間にあるマクロブロックには、最大で4つの動きベクトル(たとえば、529、531)が関連付けられる。
各動きベクトルは1バイトで表すことが可能である。
出力ストリーム523が、ビットレート1Mbpsおよびフレームレート30fpsを有するサイズ352×240の典型的なウェブビデオであると仮定すると、メタデータのキャッシングに必要なデータレートは2*14*330*4*8=288Kbpsであり、これは最終結果のキャッシングに必要なレートの3分の1に近い。
これは、このようなメタデータのキャッシングがそれ以降の同様のセッションに有利であるためである(たとえば、メタデータのキャッシングの促進に必要なデータレートが存在し、そのデータにより、それ以降の同様のトランスコードセッションのスピードアップが図られる)。
しかし、288Kbps以下のターゲットビットレートの場合、動きベクトルメタデータのキャッシングは有利ではない可能性がある。
これは、このような場合、最終トランスコード結果のキャッシングに同じくらい容易に対応することができるためである(たとえば、ターゲットデータレートが、動きベクトルメタデータのキャッシングに必要なデータレートよりも低い)。
したがって、キャッシングし得る他のレベルのメタデータ(たとえば、ピクチャ、シーケンス)と比較してより多くの記憶資源を使用し得るが、それ以降の要求の処理に必要な演算資源は少なくなる。
他の事項として、空間解像度低減トランスコーディングのパフォーマンスは通常、ビットレートの低減につながることに留意されたい。
これら結果のキャッシングにより、すでに生成されキャッシングされている量子化係数を再生成する必要をなくすことができる。
図4を参照して考察したものと同じ解析がこの文脈にも当てはまることを理解されたい。
出力ストリーム523のターゲットビットレートがRよりも小さい場合、「キャッシュメタ」527ではなく「キャッシュフル」(たとえば、213)が選択される。
図6は、本発明の一実施形態によるストリーミングメディアを処理するコンピュータ制御方法を表すフローチャート600を示す。
フローチャート600は、一実施形態では、コンピュータ可読かつコンピュータ実行可能な命令の制御下でプロセッサおよび電子構成要素によって実行されるプロセスを含む。
コンピュータ可読かつコンピュータ実行可能な命令は、たとえば、コンピュータ使用可能な揮発性メモリおよび/またはコンピュータ使用可能な不揮発性メモリ等、データ記憶機構に常駐する。
しかし、コンピュータ可読かつコンピュータ実行可能な命令は、あらゆるタイプのコンピュータ可読媒体に常駐してよい。
特定のステップがフローチャートに開示されるが、このようなステップは例示である。
すなわち、本発明は、他の様々なステップまたはフローチャートに記されたステップの変形形態の実行に適している。
本実施形態内では、フローチャートのステップはソフトウェア、ハードウェア、またはこれら両方の組み合わせによって実行し得ることを理解されたい。
入力データはリモートサーバ、ローカル記憶媒体、リモート記憶媒体等から供給し得ることを理解されたい。
一実施形態によれば、資源の配分は、利用可能なキャッシュ空間および利用可能な演算サイクルに基づく。
キャッシュ空間は中間トランスコード結果(たとえば、メタデータ)に、または最終トランスコード結果に配分可能なことを理解されたい。
一実施形態によれば、実行される処理は、ビデオトランスコーディング、テキストからスピーチへのトランスコーディング、およびスピーチからテキストへのトランスコーディングを含むことができるがこれらに限定されない。
中間結果は、利用可能な処理資源およびメモリ資源に従って選択される。
一実施形態によれば、中間結果のキャッシングは、ストリーミングデータ出力のターゲットビットレートがレートしきい値を満たしていることに依存し得ることに留意されたい。
一実施形態によれば、このしきい値はキャッシングビットレートしきい値「R」である。
このしきい値が満たされると、資源配分を、一実施形態によれば、資源バランサによって決定することができる。
本方法は、ストリーミングメディアを受け取ること、利用可能な処理資源およびメモリ資源の配分を決定することとを含む。
さらに、本方法は、ストリーミングメディアに対して多段階処理を実行すること、多段階プロセスの中の1つの段階からの中間結果をキャッシングすることとを含む。
中間結果は利用可能な処理資源およびメモリ資源に従って選択される。
網羅的である、すなわち本発明を開示した厳密な形態に限定する意図はなく、明らかに、上記教示を鑑みて多くの変更形態および変形形態が可能である。
実施形態は、本発明の原理およびその実際の応用を最良に説明するように選択され説明され、それによって、当業者が、考えられる特定の用途に適した各種変更によって本発明および各種実施形態を最良に利用することができる。
本発明の範囲は添付の特許請求の範囲およびその等価物によって規定されることを意図する。
103・・・メタトランスコーダ、
105・・・出力ストリーム、
107・・・資源バランサ、
109・・・メタキャッシュ、
111・・・正規のキャッシュ、
113・・・メタデータ、
115・・・コンテンツサーバ、
117・・・クライアント装置、
301・・・入力ビデオストリーム、
303・・・パーサ、
305・・・出力ビデオストリーム、
307・・・フレームレートコントローラ、
309・・・メタキャッシュ、
401・・・入力ストリーム、
403・・・VLCデコーダ、
405・・・逆量子化、
407・・・量子化、
409・・・出力ストリーム、
411・・・ビットレートコントローラ、
413・・・メタキャッシュ、
501・・・入力ストリーム、
503・・・VLCデコーダ、
505・・・逆量子化器、
507・・・MV発生器、
509,513・・・動き補償、
511・・・ダウンサンプリング、
517・・・順方向量子化器、
519・・・VLCエンコーダ、
521・・・レート制御、
523・・・出力ストリーム、
527・・・メタキャッシュ、
529・・・動きベクトル、
531・・・新しい動きベクトル、
533,535 フレームバッファ、
Claims (9)
- ストリーミングメディアを処理する方法であって、
前記ストリーミングメディアを受け取ること(601)と、
利用可能な処理資源およびメモリ資源の配分を決定すること(603)と、
前記ストリーミングメディアに対して多段階処理を実行すること(605)と、
前記多段階プロセスの中の1つの段階からの中間結果をキャッシングすること(607)であって、前記結果は前記利用可能な処理資源およびメモリ資源に従って選択される中間結果をキャッシングすること(607)と
を含むストリーミングメディアを処理する方法。 - 前記処理は、演算集約的なメディア処理である
請求項1記載のストリーミングメディアを処理する方法。 - 前記資源は、
トランスコーダ、第1のキャッシュおよび第2のキャッシュからなる群から選択される
請求項2記載のストリーミングメディアを処理する方法。 - 前記処理は、
トランスコード機能
を含む
請求項1記載のストリーミングメディアを処理する方法。 - 前記結果は、最終トランスコード結果である
請求項1記載のストリーミングメディアを処理する方法。 - 前記トランスコード機能は、フレームレートの低減、ビットレートの低減および解像度の低減からなる群から選択される
請求項4記載のストリーミングメディアを処理する方法。 - 前記キャッシングすることは、
前記ストリーミングメディアの出力ストリームのターゲットビットレートが前記ストリーミングメディアのデータキャッシュレートよりも大きい場合、前記ストリーミングメディアの前記出力ストリームの中間トランスコード結果をキャッシングすること
を含む
請求項1記載のストリーミングメディアを処理する方法。 - 前記中間トランスコード結果は、
ピクセル、ブロック、マクロブロック、ピクチャおよびシーケンスからなる群から選択されるメタデータ
を含む請求項7記載のストリーミングメディアを処理する方法。 - 前記トランスコード機能は、動きベクトル発生器、ビットレートコントローラ、およびパーサからなる群から選択される資源によって実行される
請求項4記載のストリーミングメディアを処理する方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/603,428 US9612965B2 (en) | 2003-06-24 | 2003-06-24 | Method and system for servicing streaming media |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2005020729A true JP2005020729A (ja) | 2005-01-20 |
JP2005020729A5 JP2005020729A5 (ja) | 2007-01-11 |
JP3958305B2 JP3958305B2 (ja) | 2007-08-15 |
Family
ID=33539731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004171990A Expired - Fee Related JP3958305B2 (ja) | 2003-06-24 | 2004-06-10 | ストリーミングメディアを処理する(servicing)方法およびシステム |
Country Status (2)
Country | Link |
---|---|
US (1) | US9612965B2 (ja) |
JP (1) | JP3958305B2 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006311267A (ja) * | 2005-04-28 | 2006-11-09 | Toshiba Corp | 電子機器およびコンテンツ管理方法 |
JP2008136045A (ja) * | 2006-11-29 | 2008-06-12 | Fujifilm Corp | 動画送信サーバおよびその制御方法 |
JP2008526057A (ja) * | 2004-12-24 | 2008-07-17 | ▲騰▼▲訊▼科技(深▲セン▼)有限公司 | ストリーミングメディアをバッファリングする方法及び装置 |
JP2020030827A (ja) * | 2015-09-04 | 2020-02-27 | 株式会社ソニー・インタラクティブエンタテインメント | サッカード検出に基づいた動的グラフィックスレンダリングのための装置及び方法 |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9032097B2 (en) * | 2001-04-26 | 2015-05-12 | Nokia Corporation | Data communication with remote network node |
US9143545B1 (en) | 2001-04-26 | 2015-09-22 | Nokia Corporation | Device classification for media delivery |
US8180904B1 (en) | 2001-04-26 | 2012-05-15 | Nokia Corporation | Data routing and management with routing path selectivity |
US6813690B1 (en) * | 2001-06-12 | 2004-11-02 | Network Appliance, Inc. | Caching media data using content-sensitive identifiers |
US7155531B1 (en) * | 2001-06-12 | 2006-12-26 | Network Appliance Inc. | Storage methods and apparatus for streaming media data |
US7386627B1 (en) | 2002-01-29 | 2008-06-10 | Network Appliance, Inc. | Methods and apparatus for precomputing checksums for streaming media |
US7574514B2 (en) * | 2003-09-30 | 2009-08-11 | Sharp Laboratories Of America, Inc. | Systems and methods for identifying original streams of media content |
BRPI0417830B1 (pt) * | 2003-12-17 | 2021-02-17 | Praecis Pharmaceuticals Inc | métodos para síntese de uma molécula compreendendo uma porção funcional operativamente ligada a um oligonucleotídeo de codificação |
US20060041871A1 (en) * | 2004-04-27 | 2006-02-23 | Richard Friedman | Resource description framework transcoder repository and methods for exposing data assets |
US7818444B2 (en) | 2004-04-30 | 2010-10-19 | Move Networks, Inc. | Apparatus, system, and method for multi-bitrate content streaming |
US20060088105A1 (en) * | 2004-10-27 | 2006-04-27 | Bo Shen | Method and system for generating multiple transcoded outputs based on a single input |
KR100689489B1 (ko) * | 2004-12-07 | 2007-03-02 | 삼성전자주식회사 | 연속적인 비디오 디스플레이를 위한 트랜스코딩 방법 |
US9400875B1 (en) | 2005-02-11 | 2016-07-26 | Nokia Corporation | Content routing with rights management |
US20060248040A1 (en) * | 2005-05-02 | 2006-11-02 | Nokia Corporation | System and method for adaptive remote file caching |
US20070074265A1 (en) * | 2005-09-26 | 2007-03-29 | Bennett James D | Video processor operable to produce motion picture expert group (MPEG) standard compliant video stream(s) from video data and metadata |
US20070083711A1 (en) * | 2005-10-07 | 2007-04-12 | International Business Machines Corporation | Reconfiguring caches to support metadata for polymorphism |
US8140833B2 (en) * | 2005-10-07 | 2012-03-20 | International Business Machines Corporation | Implementing polymorphic branch history table reconfiguration |
US20100017836A1 (en) * | 2006-07-25 | 2010-01-21 | Elmar Trojer | Method and Device for Stream Adaptation |
US9143818B1 (en) | 2006-09-11 | 2015-09-22 | Nokia Corporation | Remote access to shared media |
US9438567B1 (en) | 2006-11-15 | 2016-09-06 | Nokia Corporation | Location-based remote media access via mobile device |
FR2915047B1 (fr) * | 2007-04-13 | 2009-10-30 | Streamwide Soc Par Actions Sim | Architecture de transcodage de flux multimedia. |
US20090028127A1 (en) * | 2007-07-26 | 2009-01-29 | Gordon Kent Walker | Methods and apparatus for providing computational load allocation in a network environment |
JP5018332B2 (ja) * | 2007-08-17 | 2012-09-05 | ソニー株式会社 | 画像処理装置、撮像装置、画像処理方法、およびプログラム |
US9047235B1 (en) | 2007-12-28 | 2015-06-02 | Nokia Corporation | Content management for packet-communicating devices |
US10135896B1 (en) * | 2014-02-24 | 2018-11-20 | Amazon Technologies, Inc. | Systems and methods providing metadata for media streaming |
CN108377394B (zh) * | 2018-03-06 | 2020-10-23 | 珠海全志科技股份有限公司 | 视频编码器的图像数据读取方法、计算机装置及计算机可读存储介质 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6574279B1 (en) * | 2000-02-02 | 2003-06-03 | Mitsubishi Electric Research Laboratories, Inc. | Video transcoding using syntactic and semantic clues |
US7738550B2 (en) * | 2000-03-13 | 2010-06-15 | Sony Corporation | Method and apparatus for generating compact transcoding hints metadata |
US6404814B1 (en) * | 2000-04-28 | 2002-06-11 | Hewlett-Packard Company | Transcoding method and transcoder for transcoding a predictively-coded object-based picture signal to a predictively-coded block-based picture signal |
US6647061B1 (en) * | 2000-06-09 | 2003-11-11 | General Instrument Corporation | Video size conversion and transcoding from MPEG-2 to MPEG-4 |
KR100433516B1 (ko) * | 2000-12-08 | 2004-05-31 | 삼성전자주식회사 | 트랜스코딩 방법 |
US7266148B2 (en) * | 2001-01-05 | 2007-09-04 | Lg Electronics Inc. | Video transcoding apparatus |
JP2002209215A (ja) * | 2001-01-09 | 2002-07-26 | Sony Corp | 符号量制御装置及び方法、並びに画像情報変換装置及び方法 |
GB2372657B (en) * | 2001-02-21 | 2005-09-21 | Sony Uk Ltd | Signal processing |
US7110664B2 (en) * | 2001-04-20 | 2006-09-19 | Front Porch Digital, Inc. | Methods and apparatus for indexing and archiving encoded audio-video data |
US6671322B2 (en) * | 2001-05-11 | 2003-12-30 | Mitsubishi Electric Research Laboratories, Inc. | Video transcoder with spatial resolution reduction |
JP2003116104A (ja) * | 2001-10-02 | 2003-04-18 | Sony Corp | 情報処理装置及び情報処理方法 |
US7292602B1 (en) * | 2001-12-27 | 2007-11-06 | Cisco Techonology, Inc. | Efficient available bandwidth usage in transmission of compressed video data |
JP4275358B2 (ja) * | 2002-06-11 | 2009-06-10 | 株式会社日立製作所 | 画像情報変換装置およびビットストリーム変換機ならびに画像情報変換送信方法 |
-
2003
- 2003-06-24 US US10/603,428 patent/US9612965B2/en active Active - Reinstated
-
2004
- 2004-06-10 JP JP2004171990A patent/JP3958305B2/ja not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008526057A (ja) * | 2004-12-24 | 2008-07-17 | ▲騰▼▲訊▼科技(深▲セン▼)有限公司 | ストリーミングメディアをバッファリングする方法及び装置 |
JP2006311267A (ja) * | 2005-04-28 | 2006-11-09 | Toshiba Corp | 電子機器およびコンテンツ管理方法 |
JP2008136045A (ja) * | 2006-11-29 | 2008-06-12 | Fujifilm Corp | 動画送信サーバおよびその制御方法 |
JP2020030827A (ja) * | 2015-09-04 | 2020-02-27 | 株式会社ソニー・インタラクティブエンタテインメント | サッカード検出に基づいた動的グラフィックスレンダリングのための装置及び方法 |
JP2021119456A (ja) * | 2015-09-04 | 2021-08-12 | 株式会社ソニー・インタラクティブエンタテインメント | サッカード検出に基づいた動的グラフィックスレンダリングのための装置及び方法 |
US11099645B2 (en) | 2015-09-04 | 2021-08-24 | Sony Interactive Entertainment Inc. | Apparatus and method for dynamic graphics rendering based on saccade detection |
JP7050980B2 (ja) | 2015-09-04 | 2022-04-08 | 株式会社ソニー・インタラクティブエンタテインメント | サッカード検出に基づいた動的グラフィックスレンダリングのための装置及び方法 |
US11416073B2 (en) | 2015-09-04 | 2022-08-16 | Sony Interactive Entertainment Inc. | Apparatus and method for dynamic graphics rendering based on saccade detection |
US11703947B2 (en) | 2015-09-04 | 2023-07-18 | Sony Interactive Entertainment Inc. | Apparatus and method for dynamic graphics rendering based on saccade detection |
Also Published As
Publication number | Publication date |
---|---|
JP3958305B2 (ja) | 2007-08-15 |
US9612965B2 (en) | 2017-04-04 |
US20040267954A1 (en) | 2004-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3958305B2 (ja) | ストリーミングメディアを処理する(servicing)方法およびシステム | |
KR100917543B1 (ko) | 다수의 트랜스코딩된 출력을 생성하는 방법 | |
US9918085B2 (en) | Media coding for loss recovery with remotely predicted data units | |
US6850564B1 (en) | Apparatus and method for dynamically controlling the frame rate of video streams | |
CN112073737B (zh) | 在直播视频流应用中重新编码预测的图像帧 | |
US20110246673A1 (en) | Method and System for Optimizing the Content and Transfer of Media Files | |
US20180184089A1 (en) | Target bit allocation for video coding | |
US6775325B1 (en) | Method and apparatus for converting the bitrate of an encoded bitstream without full re-encoding | |
JP2004514352A (ja) | Mpeg−2スケーラブル復号器内の複雑さの動的な適応 | |
US20100027617A1 (en) | Method and apparatus for compressing a reference frame in encoding/decoding moving images | |
US20110051815A1 (en) | Method and apparatus for encoding data and method and apparatus for decoding data | |
JP4586340B2 (ja) | 符号化装置、および、符号化方法、並びに、プログラム | |
KR20040104831A (ko) | 영상데이터의 압축 장치 및 방법 | |
JP4105676B2 (ja) | メディアストリームを非ブロック化しコード変換する方法 | |
US8817890B2 (en) | System and method for controlling the long term generation rate of compressed data | |
US6990144B2 (en) | System and method for overrun catch-up in a real-time software | |
JP4239734B2 (ja) | 符号化装置、および、符号化方法、並びに、プログラム | |
CN112004087A (zh) | 一种以双帧作为控制单元的码率控制优化方法及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061121 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20061121 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061221 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070320 |
|
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: 20070507 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070509 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3958305 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110518 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: 20120518 Year of fee payment: 5 |
|
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: 20130518 Year of fee payment: 6 |
|
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: 20130518 Year of fee payment: 6 |
|
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 |
|
LAPS | Cancellation because of no payment of annual fees |