JP4928726B2 - ビデオストリーム中の有効エントリポイントの指示 - Google Patents

ビデオストリーム中の有効エントリポイントの指示 Download PDF

Info

Publication number
JP4928726B2
JP4928726B2 JP2004329653A JP2004329653A JP4928726B2 JP 4928726 B2 JP4928726 B2 JP 4928726B2 JP 2004329653 A JP2004329653 A JP 2004329653A JP 2004329653 A JP2004329653 A JP 2004329653A JP 4928726 B2 JP4928726 B2 JP 4928726B2
Authority
JP
Japan
Prior art keywords
frame
field
interlaced
entry point
bitstream
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.)
Active
Application number
JP2004329653A
Other languages
English (en)
Other versions
JP2005151570A (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.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2005151570A publication Critical patent/JP2005151570A/ja
Application granted granted Critical
Publication of JP4928726B2 publication Critical patent/JP4928726B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8455Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44016Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement

Landscapes

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

Description

本発明は、デジタルビデオを符号化/復号化するための技法およびツールに関する。例えば、本発明に係わるビデオ符号器は、説明する技法およびツールを使用して、ビデオストリーム中で有効エントリポイントを定義し、指示する。
本特許文献の開示の一部には、著作権保護の対象となる部分が含まれる。著作権者は、特許商標局の特許ファイルまたは記録にある場合、特許開示のいずれか1つによる複製については異議を唱えないが、その他についてはどのようなものであれ、すべての著作権の権利を保有する。
デジタルビデオは、大量の記憶領域および通信容量を消費する。典型的な生のデジタルビデオシーケンスは、毎秒15または30のフレームを含む。各フレームは、数万または数十万のピクセル(ペルとも呼ばれる)を含むことができる。各ピクセルは、画像の微細要素に相当する。生の形式では、一般的にコンピュータは、全体で24ビットの3つのサンプルを含む組としてピクセルを表現する。したがって、典型的な生のデジタルビデオシーケンスの毎秒のビット数、すなわちビットレートは、5百万ビット/秒またはそれより大きくなり得る。
多くのコンピュータおよびコンピュータネットワークは、生のデジタルビデオを処理するためのリソースを欠いている。そのため、技術者らは、デジタルビデオのビットレートを低下させるために圧縮(コーディングまたは符号化とも呼ばれる)を用いる。圧縮は、ビデオをより低いビットレート形式に変換することによって、ビデオを記憶し、送信するコストを減少させる。伸張(復号化とも呼ばれる)は、圧縮形式から元の形式のビデオを再構成する。「コーデック(codec)」とは、符号化/復号化システムのことである。圧縮は可逆圧縮とすることができ、その場合、ビデオ品質は損なわれないが、ビットレートの減少はビデオデータ毎に特有のばらつき量(エントロピーと呼ばれることもある)によって制限される。あるいは、圧縮は非可逆圧縮とすることができ、その場合、ビデオ品質は損なわれるが、より効率的なビットレートの減少を達成することができる。非可逆圧縮は可逆圧縮と併せてしばしば用いられ、そのようなシステム設計においては、非可逆圧縮によって情報の近似形式を生成し、可逆圧縮技法を利用してその近似形式を表現する。
一般に、ビデオ圧縮技法には、「イントラ符号化画像」圧縮(“intra−picture”compression)と「インター符号化画像」圧縮(“inter−picture”compression)が含まれ、画像は、例えば、プログレッシブスキャンビデオフレーム(progressively scanned video frame)である。プログレッシブビデオフレーム(progressive video frame)の場合、イントラフレーム圧縮(intra frame compression)では、フレーム(一般にIフレームまたはキーフレーム(key frame)と呼ばれる)は個別に圧縮される。インターフレーム圧縮(inter frame compression)では、フレーム(一般に予測フレーム(predicted frame)またはPフレームと呼ばれ、双方向予測(bi−directional prediction)の場合はBフレームと呼ばれる)は先行フレームおよび/または後続フレーム(一般に基準フレーム(reference frame)またはアンカーフレーム(anchor frame)と呼ばれる)を基準にして圧縮される。
I.インターレースビデオおよびプログレッシブビデオ
典型的なインターレースビデオフレーム(interlaced video frame)は、異なる時間に走査が開始される2つのフィールドから構成される。例えば、インターレースビデオフレームは、トップフィールド(top field)とボトムフィールド(bottom field)を含む。一般に、偶数番目のライン(トップフィールド)は、1つの時間(例えば、時間t)に走査が開始され、奇数番目のライン(ボトムフィールド)は、異なる(普通は遅れた)時間(例えば、時間t+1)に走査が開始される。2つのフィールドは異なる時間に走査が開始されるので、そのようなタイミングは、動きの存在するインターレースビデオフレームの領域にぎざぎざの歯のような特徴を生み出し得る。このため、インターレースビデオフレームは、フィールド構造に従って符号化するため、再構成することができ、1つのフィールドとして符号化するために奇数ラインをグループ化し、別のフィールドとして符号化するために偶数ラインをグループ化することができる。フィールド符号化(field coding)として知られるこの構成は、ハイモーション画像においてぎざぎざのエッジの出現を抑制するのに役に立つ。異なるフィールド符号化インターレースフレーム(field−coded interlaced frame)中のフィールドは、異なる仕方で符号化することができる。例えば、フィールド符号化インターレースフレーム中のフィールドは、イントラ符号化フィールド(例えば、インターレースIフィールド)とすることも、インター符号化フィールド(例えば、インターレースPフィールドまたはインターレースBフィールド)とすることもできる。
一方、静止領域では、インターレースビデオフレーム中のイメージ詳細は、上記の符号化再構成を行わなくても、より効率的に保存することができる。したがって、静止またはローモーションのインターレースビデオフレーム中では、フレーム符号化(frame coding)がしばしば用いられ、その場合、元の交替するフィールドライン構成が保存される。異なるフレーム符号化インターレースフレーム(frame−coded interlaced frame)も、異なる仕方で符号化することができる。例えば、そのようなフレームは、イントラ符号化フレーム(例えば、インターレースIフレーム)とすることも、インター符号化フレーム(例えば、インターレースPフレームまたはインターレースBフレーム)とすることもできる。
典型的なプログレッシブビデオフレームは、交替しないラインによる内容の1つのフレームから構成される。インターレースビデオとは対照的に、プログレッシブビデオは、ビデオフレームを別個のフィールドに分割せず、単一の時間から開始して、フレーム全体を左から右、上から下に走査する。プログレッシブフレームは、イントラ符号化フレーム(例えば、プログレッシブIフレーム)とすることも、インター符号化フレーム(例えば、プログレッシブPフレームまたはプログレッシブBフレーム)とすることもできる。
II.ビデオ圧縮および伸張のための規格
ビデオ圧縮および伸張には、複数の国際規格が関係する。そのような規格として、動画専門家グループ[「MPEG」]1、2、4規格、国際電気通信連合[「ITU」]のH.261、H.262(MPEG2の別名)、H.263、H.264(JVT/AVCとも呼ばれる)規格がある。これらの規格は、ビデオ復号器の態様、および圧縮ビデオ情報の形式を規定する。これらの規格は、符号器についても、直接的または含意的に、ある程度の詳細を規定するが、それを超える詳細については規定していない。これらの規格は、イントラフレームの伸張、圧縮、インターフレームの伸張、圧縮の異なる組合せを用いる(または用いるための支援を行う)。具体的には、これらの規格は、復号器および/または編集器用の異なる「アクセスポイント」を使用し、または使用するための支援を行う。
MPEG2/H.262規格は、イントラ符号化画像(例えば、符号化Iフレーム)およびグループオブピクチャ(GOP)(group−of−pictures)ヘッダについて説明する。MPEG2では、イントラ符号化画像は、他の画像を基準としないで符号化され、復号化を開始できる符号化シーケンスへのアクセスポイントを提供する。イントラ符号化画像は、ビデオシーケンス中の異なる場所で使用することができる。例えば、イントラ符号化画像は、定期的に挿入することができ、またはシーンチェンジが生じる場所もしくはその他の方法では動き補償が非効率になる場所で使用することができる。符号化Iフレームは、Iフレームピクチャであるか、または第1のフィールドピクチャがIピクチャであり、第2のフィールドピクチャがIピクチャもしくはPピクチャである1対のフィールドピクチャである。MPEG2規格では、第1のフィールドピクチャがPピクチャであり、第2のフィールドピクチャがIピクチャである符号化Iフレームは許されない。
GOPヘッダは、グループオブピクチャの開始を通知するMPEG2ビットストリーム中の構造である。一般にグループオブピクチャは、すべて同じIフレームを基準にして符号化された1組のビデオフレーム/フィールドの境界を示すのに使用される。GOPヘッダは、ビットストリーム中で符号化Iフレームの直後に続く(しかし、一般に表示順では符号化Iフレームに先行する)連続するBピクチャの第1のBピクチャが(存在するならば)、ランダムアクセスが行われた際に正確に再構成可能かどうかを示すため、符号化Iフレームの直前で提示される任意選択のヘッダである。そのようなBピクチャでは、現在の符号化Iフレームの前の基準ピクチャが利用可能でない場合、Bピクチャが現在の符号化Iフレーム以降の後方予測またはイントラ符号化だけを利用するのでない限り、それを正確に再構成することはできない。復号器は、正しく復号化できないBピクチャを表示しないように、この情報を用いることができる。したがって、GOPヘッダは、復号器から見た場合、GOPヘッダがビデオシーケンスの中程にあるとしても、復号器がどのようにGOPヘッダからの復号化を実行できるかを示すものである。GOPヘッダは、group_start_codeと呼ばれる開始コードを含む。GOPヘッダ開始コードは、GOPヘッダ開始コード値(16進表示でB8)が後に続く、24ビットの開始コードプレフィックス(23個の0の後に1個の1)を含む。MPEG2における開始コードは、バイト境界に合わされ、バイト境界合わせを保証するため、開始コードプレフィックスが開始する前に0が挿入される。さらなる情報については、H.262規格を参照されたい。
MPEG4規格は、イントラ符号化ビデオオブジェクトプレーン(I−VOP)(intra−coded video object plane)およびグループオブビデオオブジェクトプレーン(VOP)(group of video object plane)ヘッダについて説明する。I−VOPは、VOP自体の情報だけから符号化されたVOPである。非イントラ符号化VOP(non−intra−coded VOP)は、プログレッシブまたはインターレースフレームから導出することができる。MPEG4では、I−VOPは、他のピクチャを基準としないで符号化され、復号化を開始できる符号化シーケンスへのアクセスポイントを提供する。グループオブVOPヘッダは、符号化Iフレームの直後に続く第1の連続するB−VOPが、ランダムアクセスが行われた際に正確に再構成可能かどうかを復号器に示すため、符号化I−VOPの直前で使用される任意選択のヘッダである。グループオブVOPヘッダの後には、符号化I−VOPが続かなければならない。グループオブVOP開始コードは、グループオブVOP開始コード値(16進表示でB3)が後に続く、24ビットの開始コードプレフィックス(23個の0の後に1個の1)を含む。MPEG4における開始コードは、バイト境界に合わされ、バイト境界合わせを達成するため、この規格ではビットスタッフィング(bit stuffing)が提供される。例えば、1個から8個のビットをスタッフィングするには、直前のコードが開始コードでないならば、0とそれに続く1個から7個の1を開始コードの前に挿入する。さらなる情報については、MPEG4規格を参照されたい。
JVT/AVCビデオ規格のJVT−d157草案によれば、Iピクチャは、復号化を開始できる符号化シーケンスへのアクセスポイントを提供し、復号化の際に使用される様々な情報が、ネットワーク抽象化層(「NAL」)単位(network abstraction layer unit)で通知される。NAL単位は、どのようなタイプのデータが、エミュレーション防止データを散在させた、データ自体が後に続くNAL単位内に期待されるかを示す。補足エンハンス情報(「SEI」)NAL単位(supplemental enhancement information NAL unit)は、NAL単位の1タイプである。SEI NAL単位は、1つまたは複数のSEIメッセージを含む。各SEIメッセージは、SEIヘッダとSEIペイロードから構成される。SEIペイロードのタイプおよびサイズは、拡張可能構文を用いて符号化される。SEIペイロードは、SEIペイロードヘッダをもつことができる。例えば、ペイロードヘッダは、特定のデータがどのピクチャに属しているかを示すことができる。
JVT−d157草案の付録Cは、仮説基準復号器(「HRD」)バッファ(hypothetical reference decoder buffer)を取り扱うためのルールを定めている。例えば、各復号器リフレッシュポイントにおいて、バッファリング期間SEIメッセージ(buffering period SEI message)は、復号器リフレッシュ前の最後のピクチャの最後のNAL単位の後に続き、復号器リフレッシュ後の最初のピクチャの最初のNAL単位の前に位置する。HRDピクチャSEIメッセージは、各ピクチャの最後のNAL単位の後に続き、次のピクチャの最初のNAL単位の前に位置しなければならない。これらのSEIメッセージは各々、その後に続くピクチャに関連する。
JVT−d157草案の付録Dは、ランダムアクセスポイントSEIメッセージ(random access point SEI message)について説明する。ランダムアクセスポイントSEIメッセージは、ランダムアクセスエントリポイントを示す復号器用の標識(indicator)を含む。エントリポイントは、現在のピクチャのフレーム番号に先立つ符号化フレーム数を単位とする、SEIメッセージの位置に関連するカウントとして示される。付録Dは、HRDバッファモデルの初期化を行うため、ランダムアクセスポイントSEIメッセージによって指示されるランダムアクセスエントリポイントの場所でバッファリング期間SEIメッセージを送信するべきであると述べている。
これらの国際規格は、いくつかの重要な点で制限がある。例えば、MPEG2では、GOPヘッダの後の最初の符号化フレームは、「符号化Iフレーム」、すなわちイントラ符号化フレームピクチャであるか、または第1のフィールドピクチャがIピクチャであり、第2のフィールドピクチャがIピクチャもしくはPピクチャである1対のフィールドピクチャでなければならない。GOPヘッダは、その他のどのようなフレームタイプの前に位置することも許されない。MPEG4では、グループオブVOPヘッダの後には、符号化I−VOPが続かなければならない。
デジタルビデオにおいてビデオ圧縮および伸張はきわめて重要であるので、ビデオ圧縮および伸張の分野で開発が盛んなことは驚くに当たらない。しかし、従来のビデオ圧縮および伸張技法がどのように役立つにしろ、以下に示す技法およびツールがもつ利点はもっていない。
要約すると、デジタルビデオを符号化/復号化するための様々な技法およびツールについて詳細な説明が行われる。具体的には、本明細書で説明する実施形態は、ビデオストリーム中でエントリポイントを決定し、指示するための技法およびツールを含む。
一般にビデオ圧縮では、ビデオ内容を効率的に圧縮可能かどうかは、ビデオフィールドまたはビデオフレーム間の時間的な相関に依存する。結果として、ビデオフィールド/フレームの圧縮は、これらのフィールドまたはフレーム間の時間的な依存関係を導入する。 本明細書で説明する技法およびツールは、受信機、編集システム、または挿入システムが圧縮ビデオ中に有効エントリポイントを検出するのに使用できる、エントリポイント標識情報をビットストリーム中に埋め込むために用いられる。埋め込まれた情報は、ビデオ復号器が1つのエントリポイントまたはキーフレームから別のエントリポイントまたはキーフレームにジャンプすることを可能にすることで、例えば、「トリック」モード(例えば、早送り、早巻き戻しなど)を実施する際に使用することができる。様々な技法およびツールは、組み合わせて用いることも、単独で用いることもできる。
本発明のさらに別の特徴および利点は、添付の図面を参照しながら行われる、異なる実施形態についての以下の詳細な説明から明らかになるであろう。
本出願は、圧縮ビデオ中で有効エントリポイントを決定し、指示するための技法およびツールに関する。本明細書の文脈において、「決定する」とは、例えば、圧縮後にビデオフレームがビットストリーム中の有効エントリポイントであるかどうかを検出したり、圧縮時に有効エントリポイントの生成を保証するルールまたはポリシーを実施したりすることを意味し得る。ビットストリーム形式または構文は、本発明の技法を具体化するため、フラグまたはその他のコードを含む。ビットストリーム形式は、異なるレイヤまたはレベル(例えば、シーケンスレベル、フレーム/ピクチャ/イメージレベル、マクロブロックレベル、ブロックレベル)から構成される。
本明細書で説明する技法およびツールは、ビデオフレームまたはビデオフィールドがビットストリーム中で有効エントリポイントとなる条件を導入する。そうした条件は、ビデオ符号器がビデオシーケンスを符号化する際、(例えば、「トリック」モードが使用できるように)ビットストリーム中にエントリポイントを生成するために実施するポリシーを表す。ポリシーは、ビットストリーム中の異なる場所にエントリポイントを生成することができる。例えば、ポリシーは、シーンチェンジが発生したときにエントリポイントが提供されるようにすることができ、またはビデオ要約およびスライシングなどの活動がそれぞれ容易になるようにコマーシャルを挿入可能な場所をエントリポイントに指示させることもできる。ビットストリーム中へのエントリポイントの挿入を管理するポリシーは、エントリポイントが一定の間隔および(例えば、サービスに適合させる際の待ち時間を最短にする)特殊な時間間隔で提供されるように設計することもできる。本明細書で説明する技法およびツールは、基本ストリーム中でエントリポイントを明確に指示し得る機構にも冠する。これはエントリヘッダが後に続く特殊な開始コードによって達成することができる。
様々な技法およびツールは、組み合わせて用いることも、単独で用いることもできる。異なる実施形態は、本明細書で説明する1つまたは複数の技法およびツールを実施する。
I.コンピューティング環境
図1には、本明細書で説明する複数の実施形態を実施できる適切なコンピューティング環境100の一般化された例が示されている。本発明の技法およびツールは様々な汎用または専用コンピューティング環境で実施可能であり、コンピューティング環境100は、本発明の使用または機能の範囲についていかなる制限も示唆するものではない。
図1を参照すると、コンピューティング環境100は、少なくとも1つのプロセッシングユニット110とメモリ120を含む。図1では、この最も基本的な構成130は、破線で囲われている。プロセッシングユニット110は、コンピュータ実行可能命令を実行し、実プロセッサとすることも、仮想プロセッサとすることもできる。マルチプロセッシングシステムでは、複数のプロセッシングユニットでコンピュータ実行可能命令を実行して、処理能力を向上させる。メモリ120は、揮発性メモリ(例えば、レジスタ、キャッシュ、RAM)とすることも、不揮発性メモリ(例えば、ROM、EEPROM、フラッシュメモリなど)とすることも、それらの何らかの組合せとすることもできる。メモリ120は、エントリポイント処理を行うビデオ符号器または復号器を実施するソフトウェア180を格納する。
コンピューティング環境は、さらに別の機能を有することもできる。例えば、コンピューティング環境100は、記憶装置140、1つまたは複数の入力装置150、1つまたは複数の出力装置160、および1つまたは複数の通信コネクション170を含む。バス、コントローラ、またはネットワークなどの相互接続機構(図示せず)は、コンピューティング環境100のコンポーネントを相互接続する。一般に、オペレーティングシステムソフトウェア(図示せず)は、コンピューティング環境100で実行される他のソフトウェアのための動作環境を提供し、コンピューティング環境100のコンポーネントの活動を調整する。
記憶装置140は、着脱可能とすることも、着脱不能とすることもでき、磁気ディスク、磁気テープもしくはカセット、CD−ROM、DVD、または情報を記憶するのに使用でき、コンピューティング環境100内でアクセスされ得るその他の任意の媒体を含む。 記憶装置140は、ビデオ符号器または復号器を実施するソフトウェア180の命令を記憶する。
入力装置150は、キーボード、マウス、ペン、トラックボールなどのタッチ入力装置、音声入力装置、スキャニング装置、またはコンピューティング環境100に入力を提供するその他の装置とすることができる。オーディオまたはビデオ符号化の場合、入力装置150は、サウンドカード、ビデオカード、TVチューナ、またはアナログもしくはデジタル形式でオーディオもしくはビデオ入力を受け入れる類似の装置、またはオーディオもしくはビデオサンプルをコンピューティング環境100に読み込むCD−ROMもしくはCD−RWとすることができる。出力装置160は、ディスプレイ、プリンタ、スピーカ、CDライタ、またはコンピューティング環境100から出力を提供するその他の装置とすることができる。
通信コネクション170は、通信媒体を介した別のコンピューティングエンティティとの通信を可能にする。通信媒体は、コンピュータ実行可能命令、オーディオ入力もしくは出力またはビデオ入力もしくは出力、またはその他のデータなどの情報を変調データ信号として伝送する。変調データ信号とは、情報を信号に符号化するための方式で設定または変化させられた1つまたは複数の特性を有する信号のことである。例えば、通信媒体には、電気的、光学的、RF、赤外線、音響的、またはその他の搬送波を用いて実施される有線または無線技法があるが、これらに限定されるものではない。
本発明の技法およびツールは、コンピュータ可読媒体の一般的文脈において説明することができる。コンピュータ可読媒体とは、コンピューティング環境内でアクセスされ得る任意の利用可能媒体のことである。例えば、コンピューティング環境100内のコンピュータ可読媒体には、メモリ120、記憶装置140、通信媒体、および上記の任意の組合せがあるが、これらに限定されるものではない。
本発明の技法およびツールは、プログラムモジュールに含まれるような、コンピューティング環境のターゲット実プロセッサまたは仮想プロセッサ上で実行されるコンピュータ実行可能命令の一般的文脈において説明することができる。一般に、プログラムモジュールには、特定のタスクを実行し、または特定の抽象データ型を実施するルーチン、プログラム、ライブラリ、オブジェクト、クラス、コンポーネント、データ構造などがある。プログラムモジュールの機能は、様々な実施形態で望ましいように、プログラムモジュール間で結合し、または分割することができる。プログラムモジュール用のコンピュータ実行可能命令は、ローカルコンピューティング環境内で実行することも、分散コンピューティング環境内で実行することもできる。
本発明を開示するため、詳細な説明では、コンピューティング環境におけるコンピュータ動作を説明するのに「決定する」、「実施する」、「提供する」といった言葉を用いる。これらの言葉は、コンピュータによって実行される動作を高いレベルの抽象性で表現しており、人間によって行われる行為と混同してはならない。これらの言葉に対応する実際のコンピュータ動作は、実施内容に応じて変化する。
II.一般化されたビデオ符号器および復号器
図2には、一般化されたビデオ符号器200が示されており、図3には、一般化されたビデオ復号器300が示されている。符号器および復号器内のモジュール間に示された関係は、符号器および復号器内の情報の主な流れを示しており、その他の関係は、図を簡略にするため示されていない。具体的には、一般に図2および図3には、ビデオシーケンス、フレーム、マクロブロック、ブロック用などに用いられる符号器設定、モード、テーブルなどを指示する副次情報は示されていない。そのような副次情報は、一般に副次情報のエントロピー符号化を行った後、出力ビットストリームで送信される。出力ビットストリームの形式は、Windows(登録商標)Media Video形式またはその他の形式とすることができる。
符号器200および復号器300は、ブロックベースであり、4:2:0のマクロブロック形式を用いる。代替的には、符号器200および復号器300は、オブジェクトベースであり、または異なるマクロブロックもしくはブロック形式を用いる。
実施および望ましい圧縮のタイプに応じて、符号器または復号器のモジュールは、追加し、省略し、複数のモジュールに分割し、他のモジュールと結合し、かつ/または類似のモジュールで置き換えることができる。代替実施形態では、異なるモジュールおよび/または他のモジュール構成を有する符号器または復号器が、本明細書で説明する1つまたは複数の技法を実行する。
A.ビデオ符号器
図2は、一般的なビデオ符号器システム200のブロック図である。符号器システム200は、現在のフレーム205を含むビデオフレームのシーケンスを受信し、圧縮ビデオ情報295を出力として生成する。一般にビデオ符号器の具体的な実施形態は、一般化された符号器200の変形形態または補足形態を使用する。
符号器システム200は、予測フレームおよびキーフレームを圧縮する。本発明を開示するため、図2には、符号器システム200によるキーフレーム用のパスと、予測フレーム用のパスが示されている。符号器システム200のコンポーネントの多くは、キーフレームと予測フレームの両方を圧縮するために使用される。これらのコンポーネントによって実行される正確な動作は、圧縮される情報のタイプに応じて変化し得る。
予測フレーム(Pフレーム、双方向予測の場合はBフレーム、またはインター符号化フレームとも呼ばれる)は、1つまたは複数の基準(またはアンカー)フレームからの予測(または差分)によって表現される。予測誤差(prediction residual)は、予測されたものと元のフレームとの差である。対照的に、キーフレーム(Iフレーム、またはイントラ符号化フレームとも呼ばれる)は、他のフレームを基準としないで圧縮される。イントラ符号化フレームは、プログレッシブIフレーム、インターレースIフレーム(フレームインターレースモード)、およびI/Iフレーム(フィールドインターレースモード)を含む。その他のフレームの部分も、他のフレームを基準としないで圧縮される。例えば、I/PフレームおよびP/IフレームのIフィールドは、他のフレームを基準としないで圧縮され、これについては以下で詳しく説明する。場合によっては、I/PフレームのPフィールドも、以下で詳しく説明するように、他のフレームを基準としないで圧縮される。
現在のフレーム205が前方予測フレーム(forward−predicted frame)である場合、動き推定器(motion estimator)210は、基準フレームに関係する現在のフレーム205のマクロブロックまたはピクセルのその他の組の動きを推定する。基準フレームは、フレームストア(例えば、フレームストア220)にバッファリングされている再構成された先行フレーム225である。現在のフレーム205が双方向予測フレーム(Bフレーム)である場合、動き推定器210は、再構成された2つの基準フレームに関係する現在のフレーム205内の動きを推定する。一般に、動き推定器は、時間的に先行する基準フレームと時間的に後続する基準フレームに関係するBフレームの動きを推定する。
動き推定器210は、動きベクトルなどの動き情報215を副次情報として出力する。 動き補償器(motion compensator)230は、動き情報215を再構成されたフレーム225に適用して、動き補償が施された現在のフレーム235を形成する。しかし、予測が完璧であることは稀であり、動き補償が施された現在のフレーム235と元の現在のフレーム205との差が、予測誤差245である。代替的には、動き推定器および動き補償器は、別のタイプの動き推定/補償を利用する。
周波数変換器260は、空間領域ビデオ情報を周波数領域(すなわち、スペクトル)データに変換する。次に量子化器270が、スペクトルデータ係数のブロックを量子化する。量子化に加えて、符号器200は、フレームドロッピング(frame dropping)、適応フィルタリング、またはレート制御のためのその他の技法を用いることができる。
再構成された現在のフレームが以降の動き推定/補償のために必要とされる場合、逆量子化器276が、量子化されたスペクトルデータ係数について逆量子化を実行する。次に逆周波数変換器266が、周波数変換器260の動作の逆を実行して、再構成された予測誤差(予測フレームについて)または再構成されたキーフレームを生成する。現在のフレーム205がキーフレームである場合、再構成されたキーフレームが、再構成された現在のフレーム(図示せず)として採用される。現在のフレーム205が予測フレームである場合、再構成された予測誤差が、動き補償が施された現在のフレーム235に加えられて、再構成された現在のフレームを形成する。フレームストア(例えば、フレームストア220)は、別のフレームの予測に用いるため、再構成された現在のフレームをバッファリングする。
エントロピー符号化器280は、量子化器270の出力と一定の副次情報(例えば、動き情報215、量子化ステップサイズ)を圧縮する。一般的なエントロピー符号化技法には、算術符号化、差分符号化、ハフマン符号化、ランレングス符号化、LZ符号化、辞書型符号化、および上記の組合せがある。
エントロピー符号化器(entropy coder)280は、圧縮されたビデオ情報295をバッファ290に格納する。バッファレベル指標が、ビットレート適応モジュールにフィードバックされる。圧縮されたビデオ情報295は、一定または相対的に一定のビットレートでバッファ290から排出され、そのビットレートで後続のストリーミングのために格納される。したがって、バッファ290のレベルは主に、フィルタリングされ量子化されるビデオ情報のエントロピーの関数であり、エントロピー符号化の効率に影響を与える。代替的には、符号器システム200は、圧縮後直ちに圧縮されたビデオ情報をストリーム送出し、バッファ290のレベルも、情報が送信のためバッファ290から排出されるレートに依存する。
ネットワークを介して送信するため、バッファ290の前または後で、圧縮されたビデオ情報295にチャネル符号化を施すことができる。チャネル符号化によって、圧縮されたビデオ情報295に誤り検出および訂正データを付加することができる。
B.ビデオ復号器
図3は、一般的なビデオ復号器システム300のブロック図である。復号器システム300は、圧縮されたビデオフレームのシーケンスについての情報395を受信し、再構成されたフレーム305を含む出力を生成する。一般にビデオ復号器の具体的な実施形態は、一般化された復号器300の変形形態または補足形態を使用する。
復号器システム300は、予測フレームおよびキーフレームを伸張する。本発明を開示するため、図3には、復号器システム300によるキーフレーム用のパスと、予測フレーム用のパスが示されている。復号器システム300のコンポーネントの多くは、キーフレームと予測フレームの両方を伸張するために使用される。これらのコンポーネントによって実行される正確な動作は、伸張される情報のタイプに応じて変化し得る。
バッファ390は、圧縮されたビデオシーケンスについての情報395を受信し、受信情報をエントロピー復号化器380が利用できるようにする。一般にバッファ390は、長期にわたってほぼ一定のレートで情報を受信し、帯域または送信における短期的な変動を平滑にするジッタバッファ(jitter buffer)を含む。バッファ390は、再生バッファおよびその他のバッファをさらに含むこともできる。代替的には、バッファ390は、可変レートで情報を受信する。バッファ390の前または後で、圧縮されたビデオ情報にチャネル復号化を施し、誤り検出および訂正処理を実行することができる。
エントロピー復号化器(entropy decoder)380は、エントロピー符号化された量子化データとエントロピー符号化された副次情報(例えば、動き情報315、量子化ステップサイズ)をエントロピー復号化し、一般に符号器で実行されたエントロピー符号化の逆の処理を行う。
動き補償器330は、動き情報315を1つまたは複数の基準フレーム325に適用して、再構成されるフレーム305の予測335を形成する。例えば、動き補償器330は、基準フレーム325中のマクロブロックを見つけるため、マクロブロック動きベクトルを用いる。フレームバッファ(例えば、フレームバッファ320)は、先に再構成されたフレームを基準フレームとして用いるために格納する。一般にBフレームは、1つより多い基準フレーム(例えば、時間的に先行する基準フレームと時間的に後続する基準フレーム)を有する。動き補償器による予測が完璧であることは稀であり、復号器300は予測誤差も再構成する。
復号器が後続の動き補償のために再構成されたフレームを必要とする場合、フレームバッファ(例えば、フレームバッファ320)は、別のフレームの予測に用いるため、再構成されたフレームをバッファリングする。
逆量子化器370は、エントロピー復号化されたデータを逆量子化する。逆周波数変換器360は、量子化された周波数領域データを空間領域ビデオ情報に変換する。
III.有効エントリポイントの決定および指示
ビットストリーム中の有効エントリポイントとは、ビットストリーム中のどのような先行情報(ビット)も必要とせず、システム(例えば、受信機、ビデオスライサ、コマーシャル挿入ツール、ビデオ編集器、要約エンジンなど)がそのポイントからビットストリームを復号化し、処理できる基本ビットストリーム中の場所のことである。先行フレームを基準とせずに復号化が可能なフレームは一般に、「キー」フレームと呼ばれる。
エントリポイントは、ビットストリーム中でエントリポイント標識によって指示される。エントリポイント標識の目的は、復号化を開始または再開できるビットストリーム中の特殊な場所(例えば、エントリポイント標識直後のビデオフレームは、それ以前に復号化されたビデオフィールドまたはフレームに依存することなく復号化できる)の存在を示すことである。エントリポイント標識は、ビットストリーム中に規則的な間隔または不規則な間隔で挿入することができる。したがって、符号器は、ビットストリーム中へのエントリポイント標識の挿入を決定するのに、異なるポリシーを採用することができる。
図4は、ビットストリーム中でエントリポイントを決定し、指示する技法400を示したフローチャートである。410において、エントリポイントが、エントリポイントポリシーに基づいてビットストリーム中で決定される。次に420において、エントリポイント標識が、ビットストリーム中に挿入される。図5は、エントリポイント標識を有する圧縮されたビデオストリームを(例えば、ビデオ復号器で)処理する技法500を示したフローチャートである。510において、1つまたは複数のエントリポイント標識を有する圧縮されたビデオが、(例えば、ビデオ復号器、ビデオ編集器、スライサなどによって)受信される。次に520において、圧縮されたビデオが、少なくとも部分的に1つまたは複数のエントリポイント標識に基づいて処理される。
一例として、エントリポイント標識は、エントリポイント開始コードとエントリポイントヘッダで構成することができる。
いくつかの実施においては、エントリポイント開始コードが、ビットストリーム中のエントリポイントを指示する。エントリポイント開始コードは、ビットストリーム中の他の場所には出現しない特殊な32ビットコードから構成することができる。例えば、エントリポイント開始コードは、先頭の3バイトが0x000001であり、最後のバイトで開始コードがエントリポイント開始コードであることを識別する、32ビットの一意のシーケンスをもった形式とすることができる。しかし、基礎をなすトランスポートが同種の情報を提供するのに十分な信号伝達を含む場合は、開始コードをよりコンパクトに表現することもできる。例えば、エントリポイント開始コードは、エントリポイント開始コードをビットストリーム中のその他のタイプの開始コードから十分に区別できる短縮された開始コード(例えば、1バイトまたは数ビット)とすることができる。いくつかの実施では、エントリポイント開始コードは、最後のビデオフレームの後、次のビデオフレームが開始する前に設定される。
エントリポイント開始コードは、シーケンス開始コード、フレーム開始コード、フィールド開始コード、スライス開始コード、およびユーザデータ開始コードなど、ビットストリーム中のその他の開始コードと共に使用することができる。いずれのタイプの開始コードも、32ビットフィールドとすることができる。開始コードのタイプによって、最終バイトを異なるものとすることができ、その開始コードがシーケンス開始コード、フレーム開始コード、フィールド開始コード、スライス開始コード、ユーザデータ開始コードなどのどれなのかを識別することができる。
開始コードの前には「0」値のビットを任意の数だけ置くことができ、「0」値ビットの前には「1」値のビットが1つ置かれる。先行構造の末尾と開始コードの先頭の間に「10...0」という形のフラッシュビット(flushing bit)シーケンスを使用する目的は、連続する開始コードを整数個のバイトで分割できるようにして、受信機による開始コードの分析を容易にすることにある。開始コードの前、最後の「0」値フラッシュビットの後に、0x00値のバイトを任意の数だけ追加することもできる。
いくつかの実施においては、エントリポイント開始コードの直後にエントリポイントヘッダが続く。2つの連続するビデオフレームの間にシーケンス開始コードとシーケンスヘッダがすでに存在するビットストリーム中の位置に、エントリポイント開始コードとエントリポイントヘッダを挿入する必要がある場合、エントリポイント開始コードとエントリポイントヘッダは、シーケンス開始コードとシーケンスヘッダの後に続く。
エントリポイント開始コードとエントリポイントヘッダは、ビットストリーム中に規則的な間隔または不規則な間隔で挿入することができるので、符号器は、エントリポイント開始コードと関連するヘッダの挿入を決定するのに、異なるポリシーを採用することができる。
IV.実施例
いくつかの実施においては、エントリポイント開始コードと関連するヘッダは、ビットストリーム中の有効エントリポイントを指示する。別の表現を用いると、エントリポイント開始コードおよび/またはヘッダは、エントリポイント開始コードおよびヘッダの後のキーフレームに(時間順で)先立って復号化されたビデオフィールドまたはフレームに依存することなく、エントリポイント開始コードおよびヘッダの後のキーフレームに(時間順で)すぐ続くビデオフレームを復号化できる特殊な場所の存在を示す。したがって、エントリポイントキーフレームに続くことのできるフレームには、以下で説明する一定の条件が課される、それ自体がエントリポイントフレームになることのできるフレーム(例えば、プログレッシブIフレーム、フレームインターレースIフレーム、フィールドインターレースI/Iフレーム、フィールドインターレースI/Pフレーム、フィールドインターレースP/Iフレームなど)と予測フレームの両方が含まれる。これを達成するための条件が、図6〜図10を参照する以下の例に示されている。ビデオフレームおよび/またはフィールドは、画像のタイプに応じて一定の条件を満たさなければならない。これらの条件は例に過ぎない。その他の条件を用いることもできる。
これらの条件は、エントリポイント後の最初のフレーム/フィールドのタイプに依存する。これらの例では、エントリポイント開始コードヘッダの後に続く最初のフレームのタイプは、画像符号化タイプがプログレッシブまたはフレームインターレースに設定されている場合は、Iとなる。画像符号化タイプがフィールドインターレースに設定されている場合は、エントリポイント開始コードおよびヘッダの後に続く最初の2つのフレームのタイプは、I/P(IおよびP)、P/I(PおよびI)、またはI/I(IおよびI)となる。
図6〜図10には、その定義が以下の一覧中に見出し得る、一定のビットストリーム構造が示されている。
SEQ_SC:シーケンス開始コード
SEQ_HDR:シーケンスヘッダ
ENTRY_SC:エントリポイント開始コード
ENTRY_HDR:エントリポイントヘッダ
FRAME_SC:フレーム開始コード
FRAME_HDR:フレームヘッダ
FIELD_SC:フィールド開始コード
FIELD_HDR:フィールドヘッダ
UD_SC:ユーザデータ開始コード
UD_HDR:ユーザデータヘッダ
さらに、図6〜図10は、FCMフィールドについて触れている。FCMは、ビデオフレーム用に用いられる画像符号化タイプを示す可変サイズのフィールドである。値「0」は、画像符号化タイプが「プログレッシブ」であることを示す。値「10」は、フレームが「フィールドインターレース」として符号化されていることを示す。フィールドインターレース画像では、フレームは、一般におよそ15ミリ秒ずれた2つの異なるビデオフィールド、すなわち、トップフィールドとボトムフィールドから構成される。値「11」は、「フレームインターレース」タイプの画像を示す。フレームインターレース画像では、インターレースビデオフレームは、フィールドモードまたはフレームモードのマクロブロックから構成される。これは、(マクロブロック内の別々のフィールドとしてフィールドモードで符号化される)画像内の縮小領域で前景には動きが多く、一方、背景は静止している(マクロブロック内のインターレースラインとしてフレームモードで符号化される)ような状況で役に立つ。FCM値は、各個別の図のタイトルと関連がある。有効エントリポイントの条件は、画像がどのように符号化されたか(プログレッシブ、フィールドインターレース、またはフレームインターレース)に応じて異なる。フレームおよびフィールドのI、P、またはBのタイプは、フレームおよびフィールドそれぞれのヘッダ内で指示することができる。例えば、フィールドインターレースモードのフレームの場合、最初のフィールドの画像タイプは、最初のフィールドデータの前に置かれるフレームまたはフィールドヘッダ内で指示され、第2のフィールドの画像タイプは、第2のフィールドデータの前に置かれるフィールドヘッダ内で指示される。代替的には、フレームヘッダ中のフィールドが、フィールド対のフィールドタイプの組合せ、例えば、I/I、P/I、またはI/Pなどを指示する。
以下の図および説明は、基準フィールドおよびフレームの位置についての一定のルールを具体化したものである。一般に、プログレッシブPフレームの基準フレームは、当該フレームの前方に位置する最初のIまたはPフレームであり、プログレッシブBフレームの基準フレームは、当該フレームの後方に位置する最初のIまたはPフレームをさらに含むことができる。同じようなルールが、フレームインターレースモードのPフレームおよびBフレームに適用される。フィールドインターレースフレームの場合、Pフィールドの基準フィールドは、例えば、当該フィールドの前方に位置する最初のIおよびPフィールドの一方か両方である。Bフィールドの基準フィールドは、例えば、時間的に先行する2つのフィールドと時間的に後続する2つのフィールドである。
A.プログレッシブモードのIフレーム
図6には、画像符号化タイプ(FCMフィールド)が2進値の「0」(プログレッシブモード)に設定された場合、エントリポイント開始コードおよびヘッダがIフレームの前でどのように存在し得るかが図示されている。図6には、エントリポイント開始コードの前にシーケンス開始コードおよびシーケンスヘッダも示されているが、これは必須ではない。エントリポイント開始コードの前に、常にこのような構造が置かれる必要はない。
フレームはイントラ符号化されているので、このIフレームをビットストリーム中の有効エントリポイントとするのに、追加の条件は必要とされない。エントリポイントは、エントリポイント開始コードおよびヘッダの後に続くIフレームに設定される。エントリポイントは、ビットストリーム中で前記Iフレームの後に続き、前記Iフレームより早い時点で再生されるBフレームデータまたはBフィールドデータには設定されない。
B.フィールドインターレースモードのI/Pフレーム
図7には、画像符号化タイプ(FCMフィールド)が2進値の「10」(フィールドインターレースモード)に設定された場合、エントリポイント開始コードおよびヘッダがI/Pフレームの前でどのように存在し得るかが図示されている。図7には、エントリポイント開始コードの前にシーケンス開始コードおよびシーケンスヘッダは示されていないが、そのような構造がエントリポイント開始コードの前に置かれる場合もある。
フレームはIフィールドとそれに続くPフィールドから構成されるので、以下の条件が満たされた場合に、このI/Pフレームはビットストリーム中の有効エントリポイントとなる。
・エントリI/PフレームのPフィールドのフィールドヘッダ中の「numref」フィールドの値は、2進値の「0」である。
・エントリI/PフレームのPフィールドのフィールドヘッダ中の「reffield」フィールドの値は、2進値の「0」である。
これらの条件は、PフィールドがIフィールドからだけ予測され、エントリポイントの前のフレームまたはフィールドには依存しないことを保証する(言い換えれば、「numref」(基準の数)フィールドは、Pフィールドの基準フィールドの数が1(numref=0)であることを示し、「reffield」(基準フィールド)フィールドは、Pフィールドの1つの基準フィールドが時間的に直近のフィールド、すなわち、Iフィールド(reffield=0)であることを示す)。
エントリポイントは、エントリポイント開始コードおよびヘッダの後に続くI/Pフレームに設定されるが、ビットストリーム中で前記I/Pフレームの後に続き、前記I/Pフレームより早い時点で再生されるBフレームデータまたはBフィールドデータには設定されない。
C.フィールドインターレースモードのP/Iフレーム
図8には、画像符号化タイプ(FCMフィールド)が2進値の「10」(フィールドインターレースモード)に設定された場合、エントリポイント開始コードおよびヘッダがP/Iフレームの前でどのように存在し得るかが図示されている。図8には、エントリポイント開始コードの前にシーケンス開始コードおよびシーケンスヘッダは示されていないが、そのような構造がエントリポイント開始コードの前に置かれる場合もある。
フレームはPフィールドとそれに続くIフィールドから構成されるので、以下の条件が満たされた場合に、このP/Iフレームはビットストリーム中の有効エントリポイントとなる。
・P/IフレームのエントリIフィールドの後で、プログレッシブモードまたはフレームインターレースモードのPフレームが発生するには、その前にフィールドインターレースモードのP/Pフレームがビットストリーム中で存在する。
・エントリP/Iフレームの後に続く最初のPフィールドのフィールドヘッダ中の「numref」フィールドの値は、2進値の「0」である。
・エントリP/Iフレームの後に続く最初のPフィールドのフィールドヘッダ中の「reffield」フィールドの値は、2進値の「0」である。
・ビットストリーム中でエントリP/Iフレームの後に続き、そのエントリP/Iフレームより遅い時点で再生されるBフレームは、P/Iフレームに依存して符号化されない。
・ビットストリーム中でエントリP/Iフレームの後に続き、そのエントリP/Iフレームより遅い時点で再生されるB/Bフレームの(時間順で)最初のBフレームは、エントリP/IフレームのPフィールドに依存して符号化されない。
これらの条件は、ビットストリーム中の次のP/PフレームおよびB/Bフレームが、エントリIフィールドから予測され、その前のPフィールドから予測されないことを保証する。P/Iフレームから予測されたPフレームがある場合、それがエントリP/IフレームのPフィールドに対する依存性を生じさせるので、ここに有効エントリポイントを設定することはできないことも留意されたい。
エントリポイントは、エントリポイント開始コードおよびヘッダの後に続くIフィールドに設定されるが、ビットストリーム中で前記Iフィールドの後に続き、前記Iフィールドより早い時点で再生されるBフレームデータには設定されない。さらに、エントリポイントは、エントリポイント開始コードとそれに続くエントリP/IフレームのIフィールドの間に位置するPフィールドデータには設定されない。
D.フィールドインターレースモードのI/Iフレーム
図9には、画像符号化タイプ(FCMフィールド)が2進値の「10」(フィールドインターレースモード)に設定された場合、エントリポイント開始コードおよびヘッダがI/Iフレームの前でどのように存在し得るかが図示されている。図9には、エントリポイント開始コードの前にシーケンス開始コードおよびシーケンスヘッダは示されていないが、そのような構造がエントリポイント開始コードの前に置かれる場合もある。
I/Iフレームは2つのIフィールドから構成されるので、このフレームをビットストリーム中の有効エントリポイントとするのに、追加の条件は必要とされない。
エントリポイントは、エントリポイント開始コードおよびヘッダの後に続くI/Iフレームに設定されるが、ビットストリーム中で前記I/Iフレームの後に続き、前記I/Iフレームより早い時点で再生されるBフレームデータまたはBフィールドデータには設定されない。
E.フレームインターレースモードのIフレーム
図10には、画像符号化タイプ(FCMフィールド)が2進値の「11」(フレームインターレースモード)に設定された場合、エントリポイント開始コードおよびヘッダがIフレームの前でどのように存在し得るかが図示されている。図10には、エントリポイント開始コードの前にシーケンス開始コードおよびシーケンスヘッダも示されているが、エントリポイント開始コードの前に、常にこのような構造が置かれる必要はない。
フレームはイントラ符号化されているので、このIフレームをビットストリーム中の有効エントリポイントとするのに、追加の条件は必要とされない。エントリポイントは、エントリポイント開始コードおよびヘッダの後に続くIフレームに設定されるが、ビットストリーム中で前記Iフレームの後に続き、前記Iフレームより早い時点で再生されるBフレームデータまたはBフィールドデータには設定されない。
V.拡張機能
上記の様々な代替形態と併せて、またはそれらに加えて、符号器および復号器は以下のように動作することができる。
ポリシーは、ビットストリーム中のポイントが有効エントリポイントであるかどうか評価する。符号器は、有効エントリポイントとしてシーンチェンジを定義(し、その結果、圧縮エンジンが上記の制約条件の1つを生じさせることを保証)するポリシーを用いることができる。この場合、シーンチェンジは、符号器とリアルタイムにインターフェースをとる(通信を行う)ことのできるシーンチェンジ検出器コンポーネントによって検出することができる。符号器はさらに、一定の時間間隔でIフレームまたはIフィールドを発生するためのポリシーを用いる。
符号器は、生成した圧縮ビデオのタイプおよび属性を監視することもでき、上述したI、I/P、P/I、I/Iフレームの例で説明したような条件のいずれかが満たされているかを確認するビットストリーム中のポイントを検出することもできる。そのようなイベントを検出した際、符号器は、エントリポイント開始コードとエントリポイントヘッダを最後のビットストリーム中に挿入することができる。
早送りまたは早巻き戻しなどのモードでは、ビデオ復号器は、エントリポイント開始コードを探すことによって、エントリポイントフレームを探し、そこから再生することができる。
エントリポイントは、アプリケーションによってビデオシーケンスの要約版(サムネイル)を圧縮ビットストリームから直接生成し、表示するのに利用することができる。ビデオ編集アプリケーションまたはデジタルテレビ電子番組ガイドを、そのようなアプリケーションとすることができる。
ビデオスライシングを実行するため、ビデオスライサは、エントリポイントを探して、適切なスライシングが行えるシーンチェンジを見つけることができる。
エントリポイントヘッダは、バッファステータスに関する情報を含むことができる。この情報は、バッファのアンダフローまたはオーバフローを回避できるようにするのに必要なバッファステータスを示す。バッファステータス情報は、エントリヘッダ内のフィールドに格納される。例えば、バッファ余裕要件(buffer fullness requirement)情報をエントリヘッダに書き込むことによって、復号化を開始できるようになるには、バッファに少なくともどれだけ余裕が必要かを、復号器に知らせることができる。
上記の複数の例では、エントリポイントは、ビットストリーム中でエントリIフレームまたはIフィールドの後に続き、そのIフレームまたはIフィールドより早い時点で再生されるBフレームまたはBフィールドデータには設定されない。代替的には、BフレームまたはBフィールドデータがイントラ符号化されており、エントリポイントのIフレームまたはIフィールドからだけ予測される場合、エントリポイントは、BフレームまたはBフィールドデータに設定される。
様々な実施形態を参照しながら本発明の原理を説明し図示してきたが、本発明の原理から逸脱することなく、そうした様々な実施形態に構成上および細部の変更を施し得ることは理解されよう。本明細書で説明したプログラム、処理、または方法は、別途明示されない限り、どのような特定のタイプのコンピューティング環境に関連付けられることも、または限定されることもない。様々なタイプの汎用または専用コンピューティング環境が、本明細書で説明された教示に従う動作と共に使用でき、これを実行することができる。ソフトウェアで示された実施形態の要素は、ハードウェアでも実施可能であり、その逆も可能である。
本発明の原理を適用できる実施形態が数多く存在することに鑑みて、本発明の発明者らは、添付の特許請求の範囲およびその均等物の範囲および主旨に包含され得るすべての実施形態を本発明として主張する。
本明細書で説明する複数の実施形態を実施できる適切なコンピューティング環境のブロック図である。 本明細書で説明する複数の実施形態で使用される一般化されたビデオ符号器のブロック図である。 本明細書で説明する複数の実施形態で使用される一般化されたビデオ復号器のブロック図である。 ビットストリーム中のエントリポイントを決定し指示する技法を示したフローチャートである。 エントリポイント標識を有する圧縮ビデオストリームを処理する技法を示したフローチャートである。 プログレッシブIフレームの前でエントリポイントを指示するビットストリーム構文を示した図である。 I/Pフレームの前でエントリポイントを指示するビットストリーム構文を示した図である。 P/Iフレームの前でエントリポイントを指示するビットストリーム構文を示した図である。 I/Iフレームの前でエントリポイントを指示するビットストリーム構文を示した図である。 インターレースIフレームの前でエントリポイントを指示するビットストリーム構文を示した図である。
符号の説明
100 コンピューティング環境
110 プロセッシングユニット
120 メモリ
140 記憶装置
150 入力装置
160 出力装置
170 通信コネクション

Claims (32)

  1. エントリポイント標識をビットストリームに挿入する方法であって、
    ビデオ符号器により複数のビデオフレームで構成されるシーケンスのために1つまたは複数のエントリポイントをエントリポイントポリシーに基づいて決定するステップと、
    前記ビデオ符号器により前記複数のビデオフレーム中の第1のフレーム前記1つまたは複数のエントリポイントの1つのエントリポイントであることを示すエントリポイント標識をビットストリーム中に挿入するステップであって、前記第1のフレームは、Iフィールドが続くPフィールドを含むフィールドインターレースP/Iフレームであり、前記Pフィールドと前記Iフィールドは、個々のフィールドとして復号化するために前記ビットストリームに構成され、第2のフレームは、前記フィールドインターレースP/Iフレームに続き、前記第2のフレームは、動き補償予測されたフレームであり、前記ビデオ符号器は、前記エントリポイントポリシーに従って、前記第2のフレームに対する符号化の決定を行い、前記フィールドインターレースP/Iフレームの前記Iフィールドより前のフレームに依存しないことを備え、
    前記エントリポイントポリシーは、
    前記フィールドインターレースP/Iフレームの後で、プログレッシブPフレーム又はフレームインターレースPフレームの前の前記ビットストリーム中に、少なくとも1つのフィールドインターレースP/Pフレームが存在し、前記フィールドインターレースP/Pフレームは、2つのPフィールドを含み、
    前記フィールドインターレースP/Iフレームの後で、前記ビットストリーム中の次のPフィールドは、前記フィールドインターレースP/Iフレームの前記Iフィールドを参照するが、前記フィールドインターレースP/Iフレームの前記Pフィールドを参照せず、
    前記フィールドインターレースP/Iフレームの後で、前記フィールドインターレースP/Iフレームよりも遅い存在時点を有する前記ビットストリーム中のプログレッシブBフレーム又はフレームインターレースBフレームは、前記フィールドインターレースP/Iフレームに依存して符号化されず、
    前記フィールドインターレースP/Iフレームの後で、前記フィールドインターレースP/Iフレームよりも遅い存在時点を有する前記ビットストリーム中の次のBフィールドは、前記フィールドインターレースP/Iフレームの前記Pフィールドに依存して符号化されないという条件を備えることを特徴とする方法。
  2. 前記1つまたは複数のエントリポイントは、異なる間隔で配置された複数のエントリポイントを含むことを特徴とする請求項1に記載の方法。
  3. 前記エントリポイント標識は、エントリポイントヘッダを含むことを特徴とする請求項1に記載の方法。
  4. 前記エントリポイントヘッダは、バッファ余裕情報を含むことを特徴とする請求項3に記載の方法。
  5. 前記エントリポイント標識は、エントリポイント開始コードを含むことを特徴とする請求項1に記載の方法。
  6. 前記エントリポイント開始コードは、前記エントリポイント開始コードを前記ビットストリーム中の他の種類の開始コードから区別するのに十分な短縮型の開始コードであり、前記短縮型の開始コードは、前記他の種類の開始コードよりも少ないビットを含むことを特徴とする請求項5に記載の方法。
  7. 前記ビットストリームは、複数の構文レベルを有し、前記エントリポイント標識は、エントリポイントのレベルに含まれることを特徴とする請求項1に記載の方法。
  8. 前記エントリポイント標識は、前記ビットストリーム中でシーケンスヘッダの直後に続くことを特徴とする請求項1に記載の方法。
  9. 前記エントリポイント標識は、ビデオスプライシングを容易にするためコマーシャル挿入ポイントを指示することを特徴とする請求項1に記載の方法。
  10. ビデオ符号化中に請求項1に記載の方法をコンピュータシステムに実行させるコンピュータ実行可能命令を格納することを特徴とするコンピュータ可読媒体。
  11. ビットストリーム中のエントリポイント標識を用いて前記ビットストリームからのビデオを復号化する方法であって、
    ビデオ復号器により、複数のビデオフレームで構成されるシーケンスのビットストリームを受信するステップであって、前記複数のビデオフレームの各々は、フレーム符号化のタイプを有し、前記複数のビデオフレームの各々の前記フレーム符号化のタイプは、プログレッシブ、フィールドインターレース、又はフレームインターレースであることと、
    前記ビデオ復号器により前記ビットストリーム中でエントリポイント標識を検出するステップであって、前記エントリポイント標識は、前記複数のビデオフレーム中の第1のフレームを復号化のためのエントリポイントとして指示し、エントリポイントポリシーに従って前記ビットストリーム中に配置されることと、
    前記ビデオ復号器により前記ビットストリームの少なくとも一部分を前記エントリポイント標識に基づいて復号化するステップとを備え、
    記第1のフレームは、Iフィールドが続くPフィールドを含むフィールドインターレースP/Iフレームであり、前記Pフィールドと前記Iフィールドは、個々のフィールドとして復号化するために前記ビットストリームに構成され、第2のフレームは、前記フィールドインターレースP/Iフレームに続き、前記第2のフレームの前記フレーム符号化のタイプは、エントリポイントとなる前記フィールドインターレースP/Iフレームに依存し、前記第2のフレームは、動き補償予測されたフレームであり、前記エントリポイントポリシーに従って、動き補償のための前記フィールドインターレースP/Iフレームの前記Pフィールドに依性しないこと、
    前記エントリポイントポリシーは、エントリポイント標識を配置するために、
    前記フィールドインターレースP/Iフレームの後で、プログレッシブPフレーム又はフレームインターレースPフレームの前の前記ビットストリーム中に、少なくとも1つのフィールドインターレースP/Pフレームが存在し、前記フィールドインターレースP/Pフレームは、2つのPフィールドを含み、
    前記フィールドインターレースP/Iフレームの後で、前記ビットストリーム中の次のPフィールドは、前記フィールドインターレースP/Iフレームの前記Iフィールドを参照するが、前記フィールドインターレースP/Iフレームの前記Pフィールドを参照せず、
    前記フィールドインターレースP/Iフレームの後で、前記フィールドインターレースP/Iフレームよりも遅い存在時点を有する前記ビットストリーム中のプログレッシブBフレーム又はフレームインターレースBフレームは、前記フィールドインターレースP/Iフレームに依存して符号化されず、
    前記フィールドインターレースP/Iフレームの後で、前記フィールドインターレースP/Iフレームよりも遅い存在時点を有する前記ビットストリーム中の次のBフィールドは、前記フィールドインターレースP/Iフレームの前記Pフィールドに依存して符号化されないという条件を含むことを特徴とする方法。
  12. 前記ビットストリームは、複数の構文レベルを有し、前記エントリポイント標識は、エントリポイントのレベルにあることを特徴とする請求項11に記載の方法。
  13. 前記エントリポイント標識は、エントリポイント開始コードとエントリポイントヘッダとを含むことを特徴とする請求項11に記載の方法。
  14. 前記1つまたは複数の条件は、前記フィールドインターレースP/Iフレームの後に続くフィールドインターレースP/PフレームのPフィールドが、前記フィールドインターレースP/Iフレームの前記Pフィールドから予測されず、前記フィールドインターレースP/Pフレームは、2つのPフィールドを含むことを含むことを特徴とする請求項11に記載の方法。
  15. 前記1つまたは複数の条件は、前記フィールドインターレースP/Iフレームの後に続くフィールドインターレースB/BフレームのBフィールドが、前記フィールドインターレースP/Iフレームの前記Pフィールドから予測されず、前記フィールドインターレースB/Bフレームは、2つのBフィールドを含むことを含むことを特徴とする請求項11に記載の方法。
  16. 前記フィールドインターレースP/Iフレームの後に続くフレームは、フレームインターレースIフレーム、フィールドインターレースI/Pフレーム、フィールドインターレースI/Iフレーム、プログレッシブIフレーム、およびフィールドインターレースP/Iフレームを含む組から選択されるフレームであり、
    前記フィールドインターレースI/Pフレームは、Pフィールドが続くIフィールドを含み、前記フィールドインターレースI/Iフレームは、2つのIフィールドを含むことを特徴とする請求項11に記載の方法。
  17. 前記エントリポイントに基づいて、前記シーケンスのサムネイルを生成するステップをさらに備えることを特徴とする請求項11に記載の方法。
  18. 前記サムネイルを生成する前記ステップが、ビデオ編集アプリケーションによって実行されることを特徴とする請求項17に記載の方法。
  19. 復号化する前記ステップが、トリックモードで実行されることを特徴とする請求項11に記載の方法。
  20. 前記トリックモードは、早巻き戻しであることを特徴とする請求項19に記載の方法。
  21. 前記トリックモードは、早送りであることを特徴とする請求項19に記載の方法。
  22. ビットストリーム中のエントリポイント標識を用いて前記ビットストリームからのビデオを復号化する方法であって、
    ビデオ復号器により、複数のビデオフレームで構成されるシーケンスのビットストリームを受信するステップと、
    前記ビデオ復号器により前記ビットストリーム中でエントリポイント標識を検出するステップであって、前記エントリポイント標識の直後に続く第1のフレームは、前記ビットストリーム中の前記エントリポイント標識以前のフレームを参照することなく復号化され、前記第1のフレームは、フィールドインターレースP/Iフレームであり、前記フィールドインターレースP/Iフレームは、Iフィールドが続くPフィールドを含み、前記Pフィールドと前記Iフィールドは、個々のフィールドとして復号化するために前記ビットストリームに構成されることと、
    前記ビデオ復号器により前記ビットストリームの少なくとも一部分をエントリポイント標識に基づいて復号化するステップであって、前記フィールドインターレースP/Iフレームがエントリポイントとして決定されると、前記フィールドインターレースP/Iフレームの前記Pフィールドを動き補償における基準フィールドとして用いる前記フィールドインターレースP/Iフレームに続くフィールドは、前記フィールドインターレースP/Iフレームの前記Pフィールドを、動き補償における基準フィールドとして用いないように制限されることとを備え
    ることを特徴とする方法。
  23. 前記エントリポイント標識を検出する前記ステップは、エントリポイント開始コードを検出するステップを備えることを特徴とする請求項22に記載の方法。
  24. 前記エントリポイント標識は、エントリポイント開始コードとエントリポイントヘッダを含むことを特徴とする請求項22に記載の方法。
  25. 前記エントリポイントヘッダは、バッファ余裕情報を含むことを特徴とする請求項24に記載の方法。
  26. ビットストリーム中のエントリポイント標識を用いて前記ビットストリームからのビデオを復号化する方法であって、
    ビデオ復号器により、複数のビデオフレームで構成されるシーケンスのビットストリームを受信するステップと、
    前記ビデオ復号器により前記ビットストリーム中でエントリポイント標識を検出するステップと、
    前記ビデオ復号器により前記ビットストリーム中で前記エントリポイント標識によって指示されるエントリポイントを開始位置として復号化するステップであって、
    前記エントリポイントは、前記複数のビデオフレームのフィールドインターレースP/Iフレームであり、
    前記ビットストリームは、前記エントリポイント標識の後に、前記エントリポイントの以下の要素、すなわち、フレームヘッダ、第1のフィールドヘッダ、第1のフィールドデータ、第2のフィールドヘッダ、および第2のフィールドデータを含
    前記第1のフィールドヘッダおよび前記第1のフィールドデータは、Pフィールドに対するものであり、前記第2のフィールドヘッダおよび前記第2のフィールドデータは、Iフィールドに対するものであり、前記Pフィールドと前記Iフィールドは、個々のフィールドとして復号化するために前記ビットストリームに構成され、
    第2のフレームは、前記フィールドインターレースP/Iフレームに続き、前記第2のフレームは、動き補償予測されたフレームであり、
    前記フィールドインターレースP/Iフレームがエントリポイントとして決定されると、前記第2のフレームは、フィールドインターレースP/Iフレームの前記Pフィールドに依存性しないこと
    を備えることを特徴とする方法。
  27. 前記ビットストリームは、前記フレームヘッダの直前のフレーム開始コードと、前記第2のフィールドヘッダの直前のフィールド開始コードをさらに含むことを特徴とする請求項26に記載の方法。
  28. 前記エントリポイント標識は、エントリポイント開始コードとエントリポイントヘッダを含むことを特徴とする請求項26に記載の方法。
  29. 前記フィールドインターレースP/Iフレームが、前記エントリポイント指標によりエントリポイントとして決定されると
    前記フィールドインターレースP/Iフレームの前記Pフィールドを動き補償における基準フィールドとして用いる前記フィールドインターレースP/Iフレームに続くフィールドは、前記フィールドインターレースP/Iフレームの前記Pフィールドを、動き補償における基準フィールドとして用いないように制限され、
    前記フィールドインターレースP/Iフレームを動き補償における基準フレームとして用いる前記フィールドインターレースP/Iフレームに続くフレームは、前記フィールドインターレースP/Iフレームを、動き補償における基準フィールドとして用いないように制限されることを特徴とする請求項1に記載の方法。
  30. 前記シーケンス中のBフレームは、前記フィールドインターレースP/Iフレームの前に存在するが、符号化された順番では、前記フィールドインターレースP/Iフレームの後であり、前記フィールドインターレースP/Iフレームを基準フレームとして用いることを特徴とする請求項1に記載の方法。
  31. 前記フィールドインターレースP/Iフレームが、前記エントリポイント指標によりエントリポイントとして決定されると
    前記フィールドインターレースP/Iフレームの前記Pフィールドを動き補償における基準フィールドとして用いる前記フィールドインターレースP/Iフレームに続くフィールドは、前記フィールドインターレースP/Iフレームの前記Pフィールドを、動き補償における基準フィールドとして用いないように制限され、
    前記フィールドインターレースP/Iフレームを動き補償における基準フレームとして用いる前記フィールドインターレースP/Iフレームに続くフレームは、前記フィールドインターレースP/Iフレームを、動き補償における基準フィールドとして用いないように制限されることを特徴とする請求項11に記載の方法。
  32. 前記符号化されたビットストリームは、
    前記フィールドインターレースP/Iフレームの後で、プログレッシブPフレーム又はフレームインターレースPフレームの前の前記ビットストリーム中に少なくとも1つのフィールドインターレースP/Pフレームが存在し、前記フィールドインターレースP/Pフレームは、2つのPフィールドを含み、
    前記フィールドインターレースP/Iフレームの後で、前記ビットストリーム中の次のPフィールドは、前記フィールドインターレースP/Iフレームの前記Iフィールドを参照するが、前記フィールドインターレースP/Iフレームの前記Pフィールドを参照せず、
    前記フィールドインターレースP/Iフレームの後で、前記フィールドインターレースP/Iフレームよりも遅い存在時点を有する前記ビットストリーム中のプログレッシブBフレーム又はフレームインターレースBフレームは、前記フィールドインターレースP/Iフレームに依存して符号化されず、
    前記フィールドインターレースP/Iフレームの後で、前記フィールドインターレースP/Iフレームよりも遅い存在時点を有する前記ビットストリーム中の次のBフィールドは、前記フィールドインターレースP/Iフレームの前記Pフィールドに依存して符号化されない、
    という条件に従うことを特徴とする請求項22に記載の方法。
JP2004329653A 2003-11-13 2004-11-12 ビデオストリーム中の有効エントリポイントの指示 Active JP4928726B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US52054303P 2003-11-13 2003-11-13
US60/520,543 2003-11-13
US10/882,739 2004-06-30
US10/882,739 US7839930B2 (en) 2003-11-13 2004-06-30 Signaling valid entry points in a video stream

Publications (2)

Publication Number Publication Date
JP2005151570A JP2005151570A (ja) 2005-06-09
JP4928726B2 true JP4928726B2 (ja) 2012-05-09

Family

ID=34556570

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004329653A Active JP4928726B2 (ja) 2003-11-13 2004-11-12 ビデオストリーム中の有効エントリポイントの指示

Country Status (5)

Country Link
US (1) US7839930B2 (ja)
EP (1) EP1549064B1 (ja)
JP (1) JP4928726B2 (ja)
KR (1) KR101122898B1 (ja)
CN (1) CN100568970C (ja)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7852919B2 (en) * 2003-09-07 2010-12-14 Microsoft Corporation Field start code for entry point frames with predicted first field
US8213779B2 (en) * 2003-09-07 2012-07-03 Microsoft Corporation Trick mode elementary stream and receiver system
US7609762B2 (en) * 2003-09-07 2009-10-27 Microsoft Corporation Signaling for entry point frames with predicted first field
US7924921B2 (en) * 2003-09-07 2011-04-12 Microsoft Corporation Signaling coding and display options in entry point headers
US20050169376A1 (en) * 2004-01-30 2005-08-04 Pai Ramadas L. Motion vector address computer error detection
US9208824B2 (en) * 2004-05-18 2015-12-08 Broadcom Corporation Index table generation in PVR applications for AVC video streams
US8150232B2 (en) * 2004-09-03 2012-04-03 Panasonic Corporation Recording medium, recording device, program, and recording method
FR2888424A1 (fr) * 2005-07-07 2007-01-12 Thomson Licensing Sas Dispositif et procede de codage et de decodage de donnees video et train de donnees
US20070014346A1 (en) * 2005-07-13 2007-01-18 Nokia Corporation Coding dependency indication in scalable video coding
KR100723507B1 (ko) * 2005-10-12 2007-05-30 삼성전자주식회사 I-프레임 움직임 예측을 이용한 동영상 압축 장치의 적응양자화 제어기 및 적응 양자화 제어 방법
JP4871598B2 (ja) * 2006-01-19 2012-02-08 キヤノン株式会社 画像処理装置および画像処理装置の起動方法およびプログラム
US8094997B2 (en) * 2006-06-28 2012-01-10 Cyberlink Corp. Systems and method for embedding scene processing information in a multimedia source using an importance value
JP4997243B2 (ja) * 2006-08-08 2012-08-08 パナソニック株式会社 画像符号化装置、その方法およびその集積回路
US20080240227A1 (en) * 2007-03-30 2008-10-02 Wan Wade K Bitstream processing using marker codes with offset values
EP2137972A2 (en) * 2007-04-24 2009-12-30 Nokia Corporation System and method for implementing fast tune-in with intra-coded redundant pictures
WO2010092740A1 (ja) * 2009-02-10 2010-08-19 パナソニック株式会社 画像処理装置、画像処理方法、プログラムおよび集積回路
WO2011138900A1 (ja) 2010-05-06 2011-11-10 日本電信電話株式会社 映像符号化制御方法および装置
EP2568705B1 (en) * 2010-05-07 2018-09-26 Nippon Telegraph And Telephone Corporation Moving image encoding control method, moving image encoding apparatus and moving image encoding program
KR101391661B1 (ko) 2010-05-12 2014-05-07 니폰덴신뎅와 가부시키가이샤 동화상 부호화 제어 방법, 동화상 부호화 장치 및 동화상 부호화 프로그램
KR102450324B1 (ko) 2011-02-09 2022-10-04 엘지전자 주식회사 영상 부호화 및 복호화 방법과 이를 이용한 장치
KR101718954B1 (ko) 2011-10-17 2017-03-22 주식회사 케이티 영상 부호화/복호화 방법 및 그 장치
CN104041031B (zh) 2011-12-29 2018-04-24 Lg电子株式会社 视频编码和解码方法和使用该方法的装置
JP5891975B2 (ja) 2012-07-02 2016-03-23 富士通株式会社 動画像符号化装置、動画像復号装置、動画像符号化方法および動画像復号方法
KR102341826B1 (ko) 2012-07-02 2021-12-21 엘지전자 주식회사 영상 정보 코딩 방법 및 이를 이용하는 장치
US10187680B2 (en) * 2014-11-11 2019-01-22 Cisco Technology, Inc. Adaptive bit rate system architectures using named domain networking
CN104754332A (zh) * 2015-03-24 2015-07-01 深圳第一蓝筹科技有限公司 一种智能穿戴设备的视频图片传输方法

Family Cites Families (102)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3437182A1 (de) * 1984-10-10 1986-04-10 Telefunken Fernseh Und Rundfunk Gmbh, 3000 Hannover Verfahren zur aufzeichnung und/oder wiedergabe digital kodierter signale
US4847877A (en) 1986-11-28 1989-07-11 International Business Machines Corporation Method and apparatus for detecting a predetermined bit pattern within a serial bit stream
DE68925011T2 (de) 1988-09-16 1996-06-27 Philips Electronics Nv Hochauflösungs-Fersehsystem.
US5023727A (en) 1989-10-12 1991-06-11 Ian A. R. Boyd Method and device for producing a substantially continuous composite video signal
EP0424026B1 (en) 1989-10-14 1997-07-23 Sony Corporation Video signal transmitting system and method
JP2969782B2 (ja) 1990-05-09 1999-11-02 ソニー株式会社 符号化データ編集方法及び符号化データ編集装置
CA2043670C (en) 1990-06-05 2002-01-08 Wiebe De Haan Method of transmitting a picture sequence of a full-motion video scene, and a medium for said transmission
US5175618A (en) 1990-10-31 1992-12-29 Victor Company Of Japan, Ltd. Compression method for interlace moving image signals
US5621578A (en) 1992-02-06 1997-04-15 Matsushita Electric Industrial Co., Ltd. Method of transmitting digital video and audio signals between bit rate reduction encoded signal recording and reproducing systems
US5168356A (en) 1991-02-27 1992-12-01 General Electric Company Apparatus for segmenting encoded video signal for transmission
JP3119888B2 (ja) 1991-04-18 2000-12-25 松下電器産業株式会社 信号処理方法及び記録再生装置
US5212549A (en) * 1991-04-29 1993-05-18 Rca Thomson Licensing Corporation Error concealment apparatus for a compressed video signal processing system
US5428396A (en) 1991-08-03 1995-06-27 Sony Corporation Variable length coding/decoding method for motion vectors
JP2803693B2 (ja) * 1991-10-16 1998-09-24 インターナショナル・ビジネス・マシーンズ・コーポレイション アクチユエータ固定解除方法及びその装置
US6188428B1 (en) 1992-02-11 2001-02-13 Mark Koz Transcoding video file server and methods for its use
US5293229A (en) 1992-03-27 1994-03-08 Matsushita Electric Corporation Of America Apparatus and method for processing groups of fields in a video data compression system
US5325126A (en) 1992-04-01 1994-06-28 Intel Corporation Method and apparatus for real time compression and decompression of a digital motion video signal
US6226327B1 (en) 1992-06-29 2001-05-01 Sony Corporation Video coding method and apparatus which select between frame-based and field-based predictive modes
US5365552A (en) 1992-11-16 1994-11-15 Intel Corporation Buffer fullness indicator
JP3358835B2 (ja) 1992-12-14 2002-12-24 ソニー株式会社 画像符号化方法及び装置
JP3240017B2 (ja) * 1993-01-11 2001-12-17 ソニー株式会社 Mpeg信号記録方法およびmpeg信号再生方法
US5477397A (en) 1993-02-23 1995-12-19 Matsushita Electric Corporation Of America Digital high definition television receiver with features that facilitate trick-play modes on a digital VCR
EP0676756B1 (en) * 1993-09-21 2001-06-27 Sony Corporation Method and device for transmitting data, data decoder, and data recording medium
DE69422960T2 (de) * 1993-12-01 2000-06-15 Matsushita Electric Industrial Co., Ltd. Verfahren und Vorrichtung zum Editieren oder zur Mischung von komprimierten Bildern
US5586200A (en) 1994-01-07 1996-12-17 Panasonic Technologies, Inc. Segmentation based image compression system
US5864368A (en) * 1995-02-28 1999-01-26 Sony Corporation Picture signal editing and encoding method and apparatus, signal recording medium and picture signal decoding method and apparatus
EP0817480B1 (en) * 1995-03-20 1999-08-04 Matsushita Electric Industrial Co., Ltd. Device and method for recording picture information
SG80607A1 (en) 1995-09-29 2001-05-22 Matsushita Electric Ind Co Ltd Method and device for recording and reproducing interleaved bitstream on and from medium
US6026182A (en) 1995-10-05 2000-02-15 Microsoft Corporation Feature segmentation
US6018765A (en) 1996-01-23 2000-01-25 Storage Concepts, Inc. Multi-channel multimedia data server
US6957350B1 (en) 1996-01-30 2005-10-18 Dolby Laboratories Licensing Corporation Encrypted and watermarked temporal and resolution layering in advanced television
US5838823A (en) 1996-02-29 1998-11-17 Electronic Arts, Inc. Video image compression and decompression
EP0886398A4 (en) 1996-03-18 2001-01-17 Toshiba Kk ENCODER AND DECODER
US5870444A (en) 1996-04-23 1999-02-09 Scientific-Atlanta, Inc. Method and apparatus for performing very fast message synchronization
US5835636A (en) 1996-05-28 1998-11-10 Lsi Logic Corporation Method and apparatus for reducing the memory required for decoding bidirectionally predictive-coded frames during pull-down
JPH1070717A (ja) 1996-06-19 1998-03-10 Matsushita Electric Ind Co Ltd 画像符号化装置及び画像復号化装置
US5661665A (en) 1996-06-26 1997-08-26 Microsoft Corporation Multi-media synchronization
USRE39115E1 (en) 1996-07-05 2006-06-06 Matsushita Electric Industrial Co., Ltd. Method for display time stamping and synchronization of multiple video object planes
JPH1066036A (ja) 1996-08-15 1998-03-06 Oki Electric Ind Co Ltd Tv方式変換装置
US5898897A (en) 1996-10-18 1999-04-27 Samsung Electronics Company, Ltd. Bit stream signal feature detection in a signal processing system
JP4013286B2 (ja) 1997-01-22 2007-11-28 松下電器産業株式会社 画像符号化装置と画像復号化装置
US6201927B1 (en) 1997-02-18 2001-03-13 Mary Lafuze Comer Trick play reproduction of MPEG encoded signals
US6442604B2 (en) 1997-03-25 2002-08-27 Koninklijke Philips Electronics N.V. Incremental archiving and restoring of data in a multimedia server
US5955977A (en) 1997-03-31 1999-09-21 Sharp Laboratories Of America, Inc. System for avoiding start code emulation and long carry-over propagation
US6092107A (en) 1997-04-07 2000-07-18 At&T Corp System and method for interfacing MPEG-coded audiovisual objects permitting adaptive control
US6735253B1 (en) 1997-05-16 2004-05-11 The Trustees Of Columbia University In The City Of New York Methods and architecture for indexing and editing compressed video over the world wide web
US6061399A (en) * 1997-05-28 2000-05-09 Sarnoff Corporation Method and apparatus for information stream frame synchronization
US6169573B1 (en) 1997-07-03 2001-01-02 Hotv, Inc. Hypervideo system and method with object tracking in a compressed digital video environment
KR100555164B1 (ko) * 1997-07-25 2006-03-03 소니 가부시끼 가이샤 편집 장치, 편집 방법, 재부호화 장치, 재부호화 방법, 스플라이싱 장치 및 스플라이싱 방법
JPH11110915A (ja) 1997-09-30 1999-04-23 Sony Corp 信号記録再生装置及び方法
JP3665456B2 (ja) * 1997-11-19 2005-06-29 株式会社東芝 映像情報の記録再生システム及び同システムに適用する映像編集方法
US6154496A (en) * 1997-11-25 2000-11-28 Philips Electronics N.A. Corp. Video buffer for seamless splicing of MPEG streams
US5973743A (en) 1997-12-02 1999-10-26 Daewoo Electronics Co., Ltd. Mode coding method and apparatus for use in an interlaced shape coder
US6301428B1 (en) 1997-12-09 2001-10-09 Lsi Logic Corporation Compressed video editor with transition buffer matcher
US6198773B1 (en) 1997-12-18 2001-03-06 Zoran Corporation Video memory management for MPEG video decode and display system
US5946043A (en) 1997-12-31 1999-08-31 Microsoft Corporation Video coding using adaptive coding of block parameters for coded/uncoded blocks
US6414998B1 (en) 1998-01-27 2002-07-02 Sony Corporation Method and apparatus for inserting an image material
US6611624B1 (en) * 1998-03-13 2003-08-26 Cisco Systems, Inc. System and method for frame accurate splicing of compressed bitstreams
GB9807208D0 (en) 1998-04-03 1998-06-03 Nds Ltd Method and apparatus for detecting a sequence in a bitstream
AU3573099A (en) 1998-04-24 1999-11-16 Rockwell Science Center, Llc N-bit video coder and method of extending an 8-bit mpeg video coder
RU2287907C2 (ru) * 1998-05-08 2006-11-20 Конинклейке Филипс Электроникс Н.В. Способ сохранения сжатых цифровых аудио- и видеосигналов
KR20010022752A (ko) 1998-06-11 2001-03-26 요트.게.아. 롤페즈 디지털 비디오 레코더용 트릭 플레이 신호 발생
GB9813831D0 (en) * 1998-06-27 1998-08-26 Philips Electronics Nv Frame-accurate editing of encoded A/V sequences
EP1095520A2 (en) * 1998-06-29 2001-05-02 Limt Technology AB Method and apparatus for splicing data streams
US6415326B1 (en) 1998-09-15 2002-07-02 Microsoft Corporation Timeline correlation between multiple timeline-altered media streams
US6912251B1 (en) 1998-09-25 2005-06-28 Sarnoff Corporation Frame-accurate seamless splicing of information streams
FR2784845B1 (fr) * 1998-10-14 2001-02-23 France Telecom Procede de basculement de la ou des composantes video d'un premier programme audiovisuel sur la ou les composantes video d'un second programme audiovisuel numerique
KR100345235B1 (ko) * 1998-11-08 2005-07-29 엘지전자 주식회사 디지털데이터스트림기록방법및그장치
US6380991B1 (en) 1998-11-19 2002-04-30 Tektronix, Inc. Method for splicing MPEG-2 transport streams
US6434195B1 (en) * 1998-11-20 2002-08-13 General Instrument Corporaiton Splicing of video data in progressively refreshed video streams
EP1018840A3 (en) 1998-12-08 2005-12-21 Canon Kabushiki Kaisha Digital receiving apparatus and method
US7551672B1 (en) 1999-02-05 2009-06-23 Sony Corporation Encoding system and method, decoding system and method, multiplexing apparatus and method, and display system and method
US6499060B1 (en) 1999-03-12 2002-12-24 Microsoft Corporation Media coding for loss recovery with remotely predicted data units
JP4292654B2 (ja) 1999-03-19 2009-07-08 ソニー株式会社 記録装置および方法、再生装置および方法、並びに記録媒体
EP1276331A3 (en) 1999-04-01 2005-06-01 Ravisent Technologies, Inc. Method for preventing dual-step half-pixel motion compensation accumulation errors in prediction-rich MPEG-2 sequences
GB2353655B (en) * 1999-08-26 2003-07-23 Sony Uk Ltd Signal processor
GB2353653B (en) 1999-08-26 2003-12-31 Sony Uk Ltd Signal processor
KR100669896B1 (ko) 1999-11-10 2007-01-18 톰슨 라이센싱 Dvd 레코더를 위한 페이딩 특징
US6985188B1 (en) 1999-11-30 2006-01-10 Thomson Licensing Video decoding and channel acquisition system
JP3694888B2 (ja) 1999-12-03 2005-09-14 ソニー株式会社 復号装置および方法、符号化装置および方法、情報処理装置および方法、並びに記録媒体
GB9930788D0 (en) 1999-12-30 2000-02-16 Koninkl Philips Electronics Nv Method and apparatus for converting data streams
US7164844B1 (en) 2000-03-02 2007-01-16 The Directv Group, Inc. Method and apparatus for facilitating reverse playback
KR100698106B1 (ko) * 2000-03-07 2007-03-26 엘지전자 주식회사 엠펙(mpeg)압축 비디오 환경에서 계층적 혼합형장면 변화 검출 방법
GB2365647A (en) 2000-08-04 2002-02-20 Snell & Wilcox Ltd Deriving parameters for post-processing from an encoded signal
US6453115B1 (en) * 2000-08-31 2002-09-17 Keen Personal Media, Inc. Digital video recording system which generates an index data structure for displaying a video stream in trickplay mode
WO2002043385A2 (en) * 2000-10-10 2002-05-30 Broadcom Corporation System and method for special reproduction modes of a digitally encoded video data stream
US6765963B2 (en) 2001-01-03 2004-07-20 Nokia Corporation Video decoder architecture and method for using same
US6920175B2 (en) 2001-01-03 2005-07-19 Nokia Corporation Video coding architecture and methods for using same
US7143353B2 (en) * 2001-03-30 2006-11-28 Koninklijke Philips Electronics, N.V. Streaming video bookmarks
US6593392B2 (en) * 2001-06-22 2003-07-15 Corning Incorporated Curable halogenated compositions
US7646816B2 (en) 2001-09-19 2010-01-12 Microsoft Corporation Generalized reference decoder for image or video processing
JP2004007379A (ja) 2002-04-10 2004-01-08 Toshiba Corp 動画像符号化方法及び動画像復号化方法
US7149247B2 (en) 2002-01-22 2006-12-12 Microsoft Corporation Methods and systems for encoding and decoding video data to enable random access and splicing
US7116831B2 (en) 2002-04-10 2006-10-03 Microsoft Corporation Chrominance motion vector rounding
US7289663B2 (en) 2002-07-24 2007-10-30 Eastman Kodak Company Producing an extended color gamut luminance-chrominance digital image from a captured image
US7970056B2 (en) 2003-06-26 2011-06-28 Lsi Corporation Method and/or apparatus for decoding an intra-only MPEG-2 stream composed of two separate fields encoded as a special frame picture
US7924921B2 (en) 2003-09-07 2011-04-12 Microsoft Corporation Signaling coding and display options in entry point headers
US8213779B2 (en) 2003-09-07 2012-07-03 Microsoft Corporation Trick mode elementary stream and receiver system
US7609762B2 (en) 2003-09-07 2009-10-27 Microsoft Corporation Signaling for entry point frames with predicted first field
US7852919B2 (en) * 2003-09-07 2010-12-14 Microsoft Corporation Field start code for entry point frames with predicted first field
US8085844B2 (en) 2003-09-07 2011-12-27 Microsoft Corporation Signaling reference frame distances
US8600217B2 (en) 2004-07-14 2013-12-03 Arturo A. Rodriguez System and method for improving quality of displayed picture during trick modes

Also Published As

Publication number Publication date
US20050105883A1 (en) 2005-05-19
EP1549064A2 (en) 2005-06-29
CN100568970C (zh) 2009-12-09
EP1549064A3 (en) 2011-06-08
CN1617593A (zh) 2005-05-18
KR101122898B1 (ko) 2012-03-20
EP1549064B1 (en) 2014-06-25
US7839930B2 (en) 2010-11-23
KR20050046623A (ko) 2005-05-18
JP2005151570A (ja) 2005-06-09

Similar Documents

Publication Publication Date Title
JP4928726B2 (ja) ビデオストリーム中の有効エントリポイントの指示
KR100698938B1 (ko) 비디오 코딩시 이미지 프레임들의 그루핑
US7924921B2 (en) Signaling coding and display options in entry point headers
KR100959573B1 (ko) 비디오 코딩시 이미지 프레임들의 그루핑
US7609762B2 (en) Signaling for entry point frames with predicted first field
US7852919B2 (en) Field start code for entry point frames with predicted first field
KR101944565B1 (ko) 비디오 인코딩 및 디코딩시의 레이턴시 저감 기법
JP5007012B2 (ja) ビデオ符号化方法
KR101354833B1 (ko) 디지털 비디오의 가변 해상도 인코딩 및 디코딩 기법
US8213779B2 (en) Trick mode elementary stream and receiver system
CN110896486B (zh) 利用高层语法架构进行编解码的方法和设备
KR20150105431A (ko) 비디오 스플라이싱을 단순화시키기 위한 버퍼링 정보에 대한 구문 및 의미
JP2009531999A (ja) スケーラビリティを有する映像処理
JP2003284078A (ja) 画像符号化方法及び装置並びに画像復号化方法及び装置
KR20060043051A (ko) 영상 신호의 인코딩 및 디코딩 방법
US10432946B2 (en) De-juddering techniques for coded video
KR101915079B1 (ko) 동화상 예측 부호화 및 복호 장치, 방법, 그리고 프로그램
US8312499B2 (en) Tunneling information in compressed audio and/or video bit streams
KR20040077765A (ko) 랜덤 액세스 및 스플라이싱을 가능하게 하기 위해 비디오데이터를 인코딩 및 디코딩하는 방법 및 시스템

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071112

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110204

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110506

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110511

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110704

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110722

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111024

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20111027

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111122

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20111128

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111222

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20111228

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120120

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

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

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

Free format text: PAYMENT UNTIL: 20150217

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4928726

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250