JP4726097B2 - 適応制御を行うことができるmpegコード化オーディオ・ビジュアル対象物をインターフェースで連結するためのシステムおよび方法 - Google Patents

適応制御を行うことができるmpegコード化オーディオ・ビジュアル対象物をインターフェースで連結するためのシステムおよび方法 Download PDF

Info

Publication number
JP4726097B2
JP4726097B2 JP54300698A JP54300698A JP4726097B2 JP 4726097 B2 JP4726097 B2 JP 4726097B2 JP 54300698 A JP54300698 A JP 54300698A JP 54300698 A JP54300698 A JP 54300698A JP 4726097 B2 JP4726097 B2 JP 4726097B2
Authority
JP
Japan
Prior art keywords
interface
decoding
mpeg
visual
interface library
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP54300698A
Other languages
English (en)
Other versions
JP2000513179A (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.)
AT&T Corp
Original Assignee
AT&T 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 AT&T Corp filed Critical AT&T Corp
Publication of JP2000513179A publication Critical patent/JP2000513179A/ja
Application granted granted Critical
Publication of JP4726097B2 publication Critical patent/JP4726097B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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/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/44012Processing 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 rendering scenes according to scene graphs, e.g. MPEG-4 scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • H04N19/27Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding involving both synthetic and natural picture components, e.g. synthetic natural hybrid coding [SNHC]
    • 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/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4431OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB characterized by the use of Application Program Interface [API] libraries
    • 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/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4437Implementing a Virtual Machine [VM]
    • 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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47205End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for manipulating displayed content, e.g. interacting with MPEG-4 objects, editing locally
    • 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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47217End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
    • 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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/4728End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for selecting a Region Of Interest [ROI], e.g. for requesting a higher resolution version of a selected region
    • 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/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8543Content authoring using a description language, e.g. Multimedia and Hypermedia information coding Expert Group [MHEG], eXtensible Markup Language [XML]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/42Arrangements for resource management

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Library & Information Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Business, Economics & Management (AREA)
  • Business, Economics & Management (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

関連出願への相互参照
本出願は、優先権を主張する米国特許仮出願60/042,798に関連する。
発明の背景
発明の分野
本発明は、コード化マルチメディアおよびその記憶、ユーザへの配布に関し、特に、チャネルおよび解読資源のどちらかが制限され、時間により変動する場合、またはユーザ・アプリケーションが、コード化されたマルチメディア対象物との高度の相互作用を必要とする場合のコード化に関する。
関連技術の説明
デジタル・マルチメディアは、操作面、複数のものを発生できるという面およびエラーに影響されないという利点およびその他の利点を持っているが、送信帯域幅の記憶容量により制限を受ける。それ故、実際に使用する場合には、多くの場合、圧縮またはコード化する必要がある。さらに、インターネットおよび他のネットワーク上の、デジタル・マルチメディアに対する需要が急速に増大しているため、効率的な記憶装置、ネットワーク・アクセスおよびサーチおよび検索、多くのコード化スキーム、記憶フォーマット、検索技術および送信プロトコルが開発されてきた。例えば、画像およびグラフィックス・ファイル用には、GIF、TIFおよび他のフォーマットが使用されている。同様に、オーディオ・ファイルも、RealAudio、WAV、MIDIおよび他のフォーマットによりコード化され、記憶される。アニメーションおよびビデオ・ファイルは、多くの場合、GIF89a、Cinepak、Indeoおよび他のフォーマットにより記憶される。
非常に多数の現存のフォーマットを再生するために、多くの場合、デコーダおよびインタープリタが必要になるが、その場合、前記デコーダおよびインタープリタが、ハードウェアで実行されるのか、ソフトウェアで実行されるのかにより、特にソフトウェアの場合には、ホスト・コンピュータの能力により、速度、品質および性能がまちまちになる。マルチメディアの内容が、コンピュータ(例えば、パソコンのような)を通してアクセスされた、ウェブ・ページ内に含まれている場合には、ウェブ・ブラウザを予想されるすべての内容に対して正しく設定する必要があり、また前記内容を処理するために、各タイプの内容を認識し、内容ハンドラ(ソフトウェア・プラグインまたはハードウェア)の機構をサポートしなければならない。
相互動作が可能でなければならないこと、品質および性能が保証されていなければならないこと、チップ設計の際のスケールが小さくなければならないこと、また種々様々のフォーマットのための内容を発生する際にコストがかかること等の理由で、マルチメディア・コード化、パケット化および確実な配布の分野で標準化が促進されてきた。特に、ISO MPEG(国際規格組織動画専門家グループ)は、MPEG−1およびMPEG−2と呼ばれる、二つの規格の形のコード化マルチメディアに対するビット・ストリーム・シンタックスおよび解読意味論の標準化を進めてきた。MPEG−1は、主として、コンパクト・ディスク(CD)のようなデジタル記憶媒体(DSM)上で使用するためのものであり、一方、MPEG−2は、主として、放送環境(トランスポート・ストリーム)で使用するためものである。しかし、MPEG−2は、またDSM(プログラム・ストリーム)上で使用するための、MPEG−1類似の機構もサポートする。MPEG−2は、また独立のまたはネットワークに接続している、MPEG−2の標準化再生にために必要な場合がある、基本的なユーザの双方向通信のためのDSMコマンドおよび制御のような追加機能を含む。
安価なボード/PCMCIAカードが開発され、中央処理装置(CPU)が入手することができるようになったために、MPEG−1規格が、パソコン上の映画およびゲームの再生に共通に使用することができるようになった。一方、MPEG−2規格は、比較的高画質のアプリケーション用のものであるため、デジタル衛星TV、デジタル・ケーブルおよびデジタル汎用ディスク(DVD)からの、娯楽用アプリケーションに共通に使用されている。前記アプリケーション/プラットホームの他に、MPEG−1およびMPEG−2は、ネットワークを通して送られるストリーム、ハードディスク/CD上に記憶されているストリーム、およびネットワークによるアクセスおよびローカル・アクセスの組み合わせの種々の他のコンフィギュレーションでの使用が期待されている。
MPEG−1およびMPEG−2の成功、インターネットおよび移動チャネルの帯域幅制限、ブラウザを使用するウェブをベースとするデータ・アクセスの柔軟性、および双方向個人通信の必要が増大しているために、マルチメディア使用および制御のための新しいパラダイムが誕生した。それに応じて、ISO MPEGは、新しい規格、MPEG−4を制定に着手した。前記MPEG−4規格は、個々の対象物の形のオーディオ・ビジュアル情報のコード化、および前記対象物の合成および同期再生用のシステム向けのものである。前記固定パラメトリック・システムのMPEG−4の開発が、引き続き行われる一方で、通信、ソフトウェアおよびJava言語によるようなネットワーク運営用の新しいパラダイムにより、柔軟で、適応性を持ち、ユーザが双方向で通信できる新しい機会が生まれた。
例えば、Java言語の開発により、ユーザがアクセスしたウェブ・ページで、ホスト役をするウェブ・サーバからの、クライアント・パソコン上での、アプレット(ジャバ・クラス)のダウンローディングおよび実行に重要な、ネットワーク運営およびプラットホームの独立が可能になる。アプリットの設計により、サーバ側で記憶しているデータへの一回だけのアクセスが必要になる場合もあるし、すべての必要なデータを、クライアントのパソコン上に記憶することもできるし、または(スタートアップに必要な記憶スペースを少なくし、時間を短縮するために)数回の部分的アクセスが必要になる場合がある。後のシナリオは、ストリーム型再生と呼ばれる。
すでに説明したように、コード化マルチメディアを、例えば、パソコンのようなコンピュータ上で、インターネットおよびローカルのネットワーク接続アプリケーションのために使用し場合には、多くの状況が発生する。第一に、マルチメディアのネットワークによるアクセス用の帯域幅は、制限されるか、時間と共に変化するようになり、その場合には、最も重要な情報だけを送信し、その後で、もっと広い帯域幅を使用できるようになったとき、他の情報を送信しなければならない。
第二に、使用できる帯域幅がどのような幅のものであっても、解読を行わなければならないクライアント側の、パソコンのCPUおよび/またはメモリ資源は制限を受け、さらに、前記資源も時間により変化する。第三に、マルチメディア・ユーザ(消費者)は、高度に双方向の非直線ブラウジングおよび再生を必要とする場合がある。これは特別のことではない。何故なら、ウェブ・ページ上の多くのテキスト内容は、ハイパー・リンクされた機能を使用することにより、ブラウズすることができ、コード化オーディオ・ビジュアル対象物を使用する表示用に、同じパラダイムの使用が期待されるからである。パラメトリックMPEG−4システムは、非常に制限された方法でしか、前記の状況を処理できないだろう。すなわち、対象物の欠落または対象物の一時的な発生が起こり、解読または表示ができなくなり、その結果、オーディオ・ビジュアルの表示が不安定になる。さらに、MPEG−4を使用した場合、ユーザは、前記状況をうまく処理することができない。前記パラメトリック・システムの前記制限を回避するの、MPEG−4開発用の可能性のある一つの選択肢は、プログラムを使用するシステムの開発である。
ソフトウェア業界では、長い間、アプリケーション・プログラミング・インターフェース(API)が、多数の異なるタイプのコンピュータ・プラットホーム上での標準化動作および機能を達成するための手段として認識されてきた。通常、APIを定義することにより、種々の動作を標準化することができるが、前記動作の性能は、特定のプラットホームに関心を持つ特定のベンダが、そのプラットホーム用に最適化された実行を供給する場合があるので、種々のプラットホーム上で異なる場合がある。グラフィックの分野では、バーチャル・リアリティ・モデリング言語(VRML)は、シーン・グラフ・アプローチを使用することにより、対象物とシーンの説明との間の、空間的および時間的関係を指定する手段を使用することができる。MPEG−4は、リアルタイムのオーディオ/ビデオ・データ、および顔または体の動きを処理するために、多くの方法で、VRMLおよび拡張VRMLに対して、中心の構造物の二進表示(BIFS)を使用してきた。VRMLの機能を強化し、プログラムによる制御を行うことができるように、ディメンションX社は、一組のAPIを液体リアリティとして発売した。最近、サン・マイクロシステム社が、ジャバ3Dの初期バージョン、すなわち、他の機能も持っているが、とりわけ、合成オーディオ・ビジュアル対象物の、シーン・グラフとしての表示をサポートするAPI仕様を発表した。サン・マイクロシステム社は、ジャバ・メディア・フレームワーク・プレーヤAPI、すなわち、マルチメディア再生用のフレームワークを発売した。しかし、現在市販されているAPIパッケージは、どれもMPEG−4コード化および他の高度のマルチメディアの内容の種々の要求に適した広範でしっかりした機能を持っていない。
発明の概要
本発明は、パラメトリックMPEG−4のような非適応クライアント・システムが適応できるような方法で、コード化されたオーディオ・ビジュアル対象物を再生およびブラウズすることができるようにする、コード化オーディオ・ビジュアル対象物をインターフェースにより接続するためのシステムおよび方法を提供する。本発明のシステムおよび方法は、アーキテクチャ・レベルでプログラムを使用するもので、特に、MPEG−4コード化データにアクセスし、それを処理するために構成された、指定の組のアプリケーション・プログラミング・インターフェースにより、パラメトリック・システムの一番上に適応性のある一つの層を追加する。
当業者には周知のMPEG−4は、デジタル・メディア内蔵フレームワーク(DMIF)が監督するシステムズ・デマルチプレクス(Demux)、シーン・グラフ、およびメディア・デコーダ、バッファ、コンポジタおよび再現装置からなるパラメトリック・システムであると見なすことができる。標準MPEG−4に対して本発明のシステムおよび方法が行った強化または拡張としては、メディア解読の範囲に入る一組のと指定API、ユーザ機能およびクライアント・アプリケーションが内蔵することができるオーサリング等がある。強力なオーディオ・ビジュアル・インターフェース装置を提供することにより、ユーザの入力に応じて多数の強化リアルタイムおよび他の機能を実現することができ、MPEG−4クライアントが使用することができるシステム資源が少ない場合に、滑らかなデグラデーションを行うことができる。
本発明が行われた一つの理由は、ユーザの制御の下でMPEG−4の再生およびブラウズを行うための標準化インターフェースが、必要であったためである。本発明のインターフェースは、コード化メディア・データを、直ちに使用することができるターミナル資源に容易に適応させるためのものである。本発明のインターフェースは、また機能として直接、または近い将来に重要になると思われるオーディオ・ビジュアル・アプリケーションおよびサービスに埋設して、間接的に、ユーザが求めていると思われる相互作用を容易にする。
本発明は、いくつかの分野を含む、しっかりしたアプリケーション・プログラミング・インターフェース(API)の形の、インターフェースによる接続方法を指定する。メディア解読の分野においては、ビジュアル解読インターフェースが指定される。ユーザ機能の分野においては、順送り、ホット・オブジェクト、方向性、トリック・モードおよび透明なインターフェースが指定される。ユーザ・オーサリングの分野においては、ストリーム編集インターフェースが指定される。インターフェースの前記全体の組は、すべての組を網羅しているわけではないが適応性のかなりの部分を実行を容易にする。
【図面の簡単な説明】
添付の図面を参照しながら、本発明を説明する。図面中、類似の素子には類似の番号が使用されている。
図1は、本発明の一実施形態を示すシステムのハイ・レベルのブロック図である。
図2は、本発明の前記実施形態を詳細に示す前記システムのブロック図である。
図3、本発明のビジュアル解読のためのインターフェース方法である。
図4は、本発明の機能用のインターフェース方法である。
図5は、本発明のオーサリングのためのインターフェース方法である。
好適な実施形態の詳細な説明
本発明のシステムおよび方法を、MPEG−4解読環境で説明する。前記環境において、本発明は、一つのAPIではなく、種々のインターフェースを拡張MPEG−4システムのためのAPIの集合体を指定する。当業者には周知のJava言語が、APIを指定するために使用され、また当業者には周知の関連電子メモリ、記憶装置、バスおよび関連構成部分を持つ汎用プロセッサまたは特殊用途プロセッサ上で実行される。本発明においては、例示として、三つの分野のAPIが識別され、各分野において、代表的な機能が提供される。
上記三つのの例示としてのAPIは下記の通りである。
・メディア解読
・ユーザ機能
・オーサリング
本発明の特定のAPIおよび前記APIの実行を組織する方法を、下記表に最初まとめ、以下に説明する。
Figure 0004726097
パッケージは、APIの実行を組織するための手段である。本発明が表示するAPIのライブラリを考慮にいれた、パッケージの部分的なリストは下記の通りである。
・mpgj.dec
このパッケージは、相互作用を含むユーザ機能に対するクラスを含む。
・mpgj.func
このパッケージは、優先を含むユーザ機能に対するクラスを含む。
・mpgj.util
このパッケージは、種々の入力、出力、サウンドおよびビデオ装置へのインターフェースを提供する。
ここで、本発明のシステムおよび方法および関連インターフェース方法(API)について説明する。
図1は、本発明のシステム実行のハイ・レベルのブロック図である。前記実行は、二つの主要な構成部分からなる。第一の構成部分は、デジタル・メディア内蔵フレームワーク(DMIF)160からなる周知のパラメトリック・システムで、チャネル155に送付インターフェースを供給し、システムズ・デマックス165に接続している。前記システムの出力は、図を簡単にするため、BIFSおよびメディア・デコーダ、バッファ、コンポジタおよび再現装置170からなる一つの集合ブロックで示す、一連のブロックを通して送られる。レベル175上の前記集合ブロックの出力は、ディスプレイに送られる。第二の主要な構成部分は、MPEGアプリケーション/アプレット(MPEG App)100であり、この構成部分は、それぞれ、120を通して、外部オーサリング・ユニット130およびユーザ入力に、本発明のオーサリングAPIおよび機能APIをインターフェースする。さらに、ジャバ仮想機械、およびジャバ・メディア・フレームワーク(JVMおよびJMF)110は、BIFSおよびメディア・デコーダ、バッファ、コンポジタおよび再現装置170に接続するための下支え基盤として使用され、また、シーン・グラフAPI150(MPEGにより提供され、本発明で使用する)およびデコーダAPIを通して、BIFSおよびメディア・デコーダ、バッファ、コンポジタおよび再現装置170に直接インターフェースする。
図2は、図1の種々のブロック、構成部分およびインターフェースのさらに詳細な図面である。この図では、オーサリング・ユニット130が、ライン200上で、ライン205を通してインターフェースするユーザ入力140から独立して、MPEG App100にインターフェースしている。この図は、また各インターフェース、オーサリングAPI290および機能API295も含む。さらに、この図では、MPEG App100およびその下のJVMおよびJMF110が、ライン215を通してBIFSデコーダおよびシーン・グラフ225に働きかけ、207を通してシーン・グラフAPI210にインターフェースしている。BIFSデコーダおよびシーン・グラフ225は、ライン260、261、262を通して多数の例示としてのメディア・デコーダ270、271、272を制御し、また(ライン268および269を通して)コンポジタ282および再現装置284を制御する。MPEG App100に関連するJVMおよびJMF110は、同様に、各ライン263、264、265を通して、メディア・デコーダ270、271および272を制御する。図2について、種々のプログラムを使用する制御装置およびインターフェースを説明してきた。
図2の残りの部分は、MPEG−4のパラメトリック・システムを詳細に示す。この図の頂部の、本発明のプログラムを使用するシステムおよび方法の動作について説明する。解読されるMPEG−4システムのビットストリームは、チャネル155を通して、ネットワーク/記憶装置配布インターフェースDMIF160に送られる。前記インターフェースDMIF160は、前記ビットストリームをライン230を通して、Demux165に送る。パッケージから取り出され、分離されたビットストリームは、シーン叙述情報を含む複数の部分からなり、BIFSデコーダおよびシーン・グラフ225に送られる。前記ビットストリームは、また種々の各メディア・デコーダ用の他の部分も含み、それぞれ、ライン240、245および250、解読バッファ251、252および253、ライン255、256および257を通して、メディア・デコーダ270、271および272に送られ、前記メディア・デコーダは、合成バッファ276、277および278への入力である解読したメディアを、ライン273、274および275に出力する。ライン279上のバッファ276の出力は、ライン280上のバッファ277の出力およびライン281上のバッファ278の出力と一緒に、コンポジタへ送られる。
図には、(解読バッファ251、252、253、デコーダ270、271、272および合成バッファ276、277、278を通しての)三組のメディア解読動作しか示していないが、実際には、メディア・デコーダの数は、一つでもいいし、また幾つでも必要なだけ使用することができる。コンポジタ282は、BIFSシーン・グラフ(およびおそらくはユニット入力)に基づいて、解読したメディアを相互に配列し、シーンを合成する。前記情報は、ライン283を通して、再現装置284へ送られる。再現装置284は、ピクセルおよびオーディオ・サンプルを与え、それらをライン175を通して、ディスプレイ(図示していないスピーカを持つ)285に送る。
図3は、特定の例として、ビジュアル解読を使用する本発明のメディア解読機能である。説明を簡単にするために、メディア解読を単に解読と呼ぶことにする。ベースAV対象物またはビデオ・デコーダ構造体の使用可能性に関していくつかの仮定が必要である。前記仮定は、デフォールトまたはプレースホールダ動作を含む前記抽出クラスが、その構造体を無視することによって、多くの場合、拡張される、対象物指向プログラミングの状況としては普通のものである。
解読API220は、インターフェース、より詳しく説明すると、ビジュアル解読API301である。前記ビジュアル解読API301を使用して、多数の異なるビジュアル・デコーダ320を接続することができる。前記接続は、ブロック選択解読ロジック(SDL)306を通して行われる制御であると見なすことができる。図では、前記接続は、ロジックの他のいくつかの部分と一緒に、BIFSデコーダ・ロジック305、BIFSデコーダおよびシーン・グラフ225の一部または構成部分に属する。BIFS解読ロジック305は、制御ライン307を通してベース・ビデオ・デコーダ313のような種々のビジュアル・デコーダを制御し、制御ライン308を通して時間強化デコーダ314を制御し、制御ライン309を通して空間強化デコーダ315を制御し、制御ライン310を通して出力区分デコーダ316を制御し、制御ライン311を通して画像肌理デコーダ317を制御し、ライン312を通してメッシュ幾何学/運動デコーダ318を制御する。解読されるビットストリームは、ライン319(図2のメディア・デコーダ入力255または256または257に対応する)を通して、適当なデコーダに送られ、解読された出力は、ライン325(図2のメディア・デコーダ出力273または274または275に対応する)上で入手することができる。ベース・ビデオ・デコーダ313は、スケール不可能なビデオを解読し、空間強化デコーダ315は、空間スケール可能性ビデオ層を解読し、時間強化デコーダ314は、時間スケール可能性ビデオ層を解読し、データ区分デコーダ316は、データ分割ビデオ層を解読し、画像肌理デコーダ317は、静止画像の肌理の空間/SNRスケール可能な層を解読し、メッシュ幾何学/運動デコーダ318は、対象物の動きにより、波形メッシュ・ノード位置およびこれらノードの運動を解読する。前記デコーダは、当業者には周知のMPEG−4ビジュアル規格により指定される。柔軟で、一貫した方法でMPEG−4ビジュアル・デコーダに、アクセスするのに使用する本発明の前記分類を、以下に詳細に説明する。
解読API
Class mpgj.dec.BaseAVObject
public class BaseAVObject
これは、ベース AV対象物ストリームの解読を可能にする、基本的なクラスである。
構成装置
public BaseAVObject()
方法
public void startDec()
データ解読の開始
public void stopDec()
データ解読の停止
public void attachDecoder(Mp4Stream basestrm)
解読を行う有効なMPEG−4ストリームを解読するための、準備中のベース・ストリームへのデコーダの取り付け。
ビジュアル解読API
Class mpgj.dec.Mp4Decoder
public class Mp4VDecoderは、
ビデオ・デコーダの拡張。
このクラスは、ビデオ・デコーダ、抽出クラス(図示せず)を拡張する。このクラスは、種々のタイプのビジュアル・ビットストリームを解読するための方法を含む。
構成装置
public Mp4VDecoder()
方法
public VObject baseDecode(Mp4stream basestrm)
MPEG−4ビデオ・ストリーム、basestrmを解読し、解読したビジュアル対象物、VObjectを返す。
public VObject sptEnhDecode(Mp4stream enhstrm)
空間強化MPEG−4ビデオ・ストリーム、enhstreamを解読し、解読したビジュアル対象物、VObjectを返す。
public VObject tmpEnhDecode(Mp4stream enhstrm)
時間強化MPEG−4ビデオ・ストリーム、enhstrmを解読し、解読したビジュアル対象物、VObjectを返す。
public VObject snrEnhDecode(Mp4stream enhstrm、int level)は、
レベルに従って、snr強化MPEG−4ビデオ・ストリーム、enhstrmを解読し、解読したビジュアル対象物、VObjectを返す。
public VObject datapartDecode(Mp4stream enhstrm、int level)
レベルに従って、データ分割MPEG−4ビデオ・ストリーム、enhstrmを解読し、解読したビジュアル対象物、VObjectを返す。
public VObject trickDecode(Mp4stream trkstrm、int mode)は、
モードに従って、トリック・ストリームをスキップおよび解読し、解読したビジュアル対象物、VObjectを返す。
public MeshObject meshAuxDecode(Mp4Stream auxstrm)は、MPEG−4補助ビデオ・ストリームを解読し、メッシュ幾何学および動作ベクトルを含む、メッシュ対象物、MeshObjectを返す。
図4は、それに対して、インターフェースが他の分類のAPIにより定義される、多数の例示としての機能を使用する、本発明のいくつかの特徴の機能である。前記機能API295は、いくつかのインターフェースを示す。より詳しく説明すると、トリック・モード機能(401)用のインターフェース、方向性機能用のインターフェース(402)、透明機能用のインターフェース(403)、ホット・オブジェクト機能用のインターフェース(404)、および順送り機能用のインターフェース(405)を示す。各APIを使用して、多数の異なるデコーダを接続することができる。一例として、再びビジュアル・デコーダを使用する。前記接続は、この図の場合、BIFSデコーダおよびシーン・グラフ225および/またはMPEG−4 App100の構成部分である、APP/BIFS Dec(oder)に属する、いくつかのブロック選択解読ロジック(SDL)416、417、418、419、420を通しての制御と見なすことができる。APP/BIFS解読ロジック415は、制御ライン421、422、424、425を通して、ベース・ビデオ・デコーダ313のような種々のビジュアル・デコーダを制御し、制御ライン423および426を通して、時間強化デコーダ315を制御し、制御ライン427を通して、空間強化デコーダ315を制御し、制御ライン429を通して、データ分割デコーダ316を制御し、制御ライン430を通して、画像肌理デコーダ317を制御し、ライン428を通して、メッシュ幾何学/運動デコーダ318を制御する。
解読するビットストリームは、ライン431(図2のメディア・デコーダ入力255または256または257に対応する)を通して、適当なデコーダへ送られ、解読した出力は、ライン445(図2のメディア・デコーダ出力273または274または275に対応する)上で入手することができる。多くの場合、ビジュアル対象物に関するユーザ機能は、一つまたはそれ以上のビジュアル・デコーダを使用することにより、実現することができることを理解することが重要である。前記SLDは、各ビジュアル対象物を解読するために接続する特定のデコーダを選択するためばかりでなく、一つのビットストリームのために使用したデコーダ、および使用されるまたは使用されない特定の時間を選択するためにも使用される。図には多数のSDL416、417、418、419、420を示したが、各SLDは各機能に対応する。この図の各SDLは一つの制御入力を持つが、しかし、それはいくつかの可能性のある制御出力の中の一つである。もっと分かりやすく説明すると、図3の場合には、ベース・ビデオ・デコーダ313は、スケールすることができないビデオを解読し、空間強化デコーダ314は、空間スケール可能性ビデオ層を解読し、時間強化デコーダ315は、時間スケール可能性ビデオ層を解読し、データ分割デコーダ316は、データ分割ビデオ層を解読し、画像肌理デコーダ317は、静止画像肌理の空間/SNRスケール可能層を解読し、メッシュ幾何学/運動デコーダ318は、対象物の運動により、ワイヤフレーム・メッシュ・ノードおよび前記ノードの運動を解読する。前記デコーダは、ここでもMPEG−4ビジュアル規格により指定される。柔軟でしっかりした方法で前記機能を達成するために使用する、本発明のAPIのこの分類についての詳細について以下に説明する。
機能API
下記のAPIは、種々のユーザ相互作用機能のためのものである。
順送りAPI
Class mpgj.func.ProgAVOject
public class ProgAVOject
BaseAVObjetの拡張。
ProgAVObjectにより、ユーザ制御下のAV対象物の品質を順送りに洗練することができる。現在、ビジュアル対象物は、靜的なもの(任意に形成した対象物の時間どおりの一例である、静止画像「vops」、ビデオ対象物面と見なされる。前記形が長方形である場合には、vopは一つのフレームと同じものである。)
構成装置
public ProgAVObject()
方法
public void startDec()
データ解読の開始
public void stopDec()
データ解読の停止
public void pauseDec()
データ解読の一時的な中止
public void resumeDec()
現在の一時中止の状態からの、データ解読の再開
public int selectProgLevel()
変換(DCTまたはウェブレット)係数の解読が行われるまでのレベルの選択。一つのレベルは、走査順序中のある位置までの係数である。
public void attachDecoder(Mp4Stream srcstrm int proglvl)
有効なMPEG−4ストリームを解読するための、準備中のsrcstrmへのデコーダの取り付け、および解読が行われるまでのプログラム・レベルの指定。
public void offsetStream(Mp4Stream srcstrm、ulongoffset)
srctrmへの、解読開始目標としてのオフセットの挿入可能。実際には、現実の目標位置は、必要な目標より遠い場合があり、ストリーム内の有効なエントリの位置により異なる。
Hot Object/Region API
このAPIにより、ホット(能動)AV対象物と相互作用を行うことができる。前記APIは、一つの対象物の能動領域と、相互作用を行うことができるように拡張することができる。このAPIは、AV対象物の空間解像度強化、品質強化、時間的品質強化のような、一つまたはそれ以上の高度な機能を可能にするためのものである。実現する実際の強化は、(マウス.クリック/メニューを通しての)ローカルおよび遠隔地からのユーザ相互作用および強化ストリーム、および使用することができる強化デコーダにより異なる。
Class mpgj.func.HotAVObject
public class HotAVObject
BaseAVObjectの拡張
HotAVObjectは、その対象物がホット・オブジェクトである場合に、AVObjectの強化動作をトリガするクラスである。それ故、ホット対象物は、必要な場合にトリガされる、それ自身に関連するいくつかの強化ストリームを持つ。このクラスは、ベース(層)ストリームを解読するために主として使用される、BaseAVObjectを拡張する。さらに、ホット対象物の定義を、問題の領域(KeyRegion)を含むように拡張することができる。
構成装置
public HotAVObject()
方法
public void startDec()
データ解読の開始
public void stopDec()
データ解読の停止
public void pauseDec()
データ解読の一時的な中止
public void resumeDec()
現在の一時中止の状態からの、データ解読の再開
public int selectHotType()
(空間、品質、時間等の)強化のタイプの選択。
publicMp4Stream enhanceObject(int type)
必要な強化ストリームを入手するための、選択した強化タイプの使用。
public void attachDecoder(Mp4Stream srcstrm int type)
有効なMPEG−4ストリームを解読するための、準備中のsrcstrmへのデコーダの取り付け、および解読が行われるタイプの指定。
public void offsetStream(Mp4Stream srcstrm、ulongoffset)
srctrmへの、解読開始目標としてのオフセットの挿入可能。実際には、現実の目標位置は、必要な目標より遠い場合があり、ストリーム内の有効なエントリの位置により異なる。
方向性API
このAPIにより、方向を感知するAV対象物との相互作用を行うことができる。前記APIは、静的ビジュアル対象物(静止vop)、動的ビジュアル対象物(運動するvop)および方向性を持つ音声およびオーディオをサポートする。ビジュアル対象物の場合には、このAPIは、視点の選択を可能にし、対応するビットストリームだけが解読され、解読されたデータは、コンポジタへ送られる。音声対象物の場合には、必要な音声点により、アナログ動作が行われる。現在のところ、予め定めた方向性を持つ選択が行われる。
Class mpgj.func.DirecAVObject
public class DirecAVObject
BaseAVObjectの拡張。
DirecAVObjectは、(予め定めた量子化した方向の形での)空間の、x−y−z位置に応答する対象物の生成を可能にする。ユーザ相互作用により、一つまたはそれ以上の視点に対応するvopが、必要に応じて解読されるように、ビットストリームが、AV対象物としてコード化された多数の靜的ビジュアルvopからできていると仮定すると、もっと容易に説明することができる。前記クラスは、動的AVObjectをコード化するのにも適している。
構成装置
public DirecAVObject()
方法
public void startDec()
データ解読の開始
public void stopDec()
データ解読の停止
public void pauseDec()
データ解読の一時的な中止
public void resumeDec()
現在の一時中止の状態からの、データ解読の再開
public void loopDec()
この方法により、閉ループを形成する予め定めた順序の靜的vopとしての、動的ビジュアル対象物のユーザ相互作用解読が可能になる。この方法はオーディオの場合にも、適用することができる。ユーザの選択は、マウスのクリックまたはメニューにより行われる。
public int selectDirect()
方向(シーンの向き)の選択。対象物上のホット点上またはメニュー上で、マウスをクリックすることにより、多数の予め定めた方向を使用することができ、選択を行うことができる。
public Mp4Stream enhnceObjet(int orient)
必要な時間補助(強化)ストリームを入手するするための、選択したシーンの向きの使用。
public void attachDecoder(Mp4Stream srcstrm int orient)
有効なMPEG−4ストリームを解読するための、準備中のsrcstrmへの時間補助(強化)デコーダの取り付け、およびAV対象物の選択したシーン方向の指定。
srctrmへの、解読開始目標としてのオフセットの挿入可能。実際には、現実の目標位置は、必要な目標より遠い場合があり、ストリーム内の有効なエントリの位置により異なる。
トリック・モードAPI
トリック・モードAPIは、強化されたトリック・プレイ能力を使用することができるように、ユーザの制御の下での条件付き解読をサポートする。強化トリック・プレイは、FFまたはFR、フリーズ・フレーム、ランダム・アクセスおよび逆方向再生のような、他の動作に対する異なる速度のような、VCR/CDプレーヤのような機能を使用できるようにするようなものであると見なすことができる。しかし、合成された全シーンに基づく他に、個々のAV対象物に基づいて、MPEG−4がこれら能力を使用することができるという違いを持つ。
Class mpgj.func.TrickAVObject
public class TrickAVObject
BaseAVObjectの拡張。
TrickAVObjectは、トリック・プレイに適する解読を行うことができる、対象物を形成するのに使用することができるクラスである。
構成装置
public TrickAVObject()
方法
public void startDec()
データ解読の開始
public void stopDec()
データ解読の停止
public void pauseDec()
データ解読の一時的な中止
public void resumeDec()
現在の一時中止の状態からの、データ解読の再開
public void loopDec()
このクラスにより、種々の速度での順方向および逆方向への、srcstreamの選択した部分のユーザ相互作用解読が可能になる。
public boolean selectDirec()
解読方向の選択。トリック解読が(正規の)順方向に行われる場合には、真に戻る。逆方向のトリック解読が選択された場合には、偽に戻る。
publi cMp4Stream enhanceObject(boolean decdirec)
decdirecにより指定した方向へ解読するMPEG−4ストリームの入手。
public void attachDecoder(Mp4Stream srcstrm int decdirec)
有効なトリック・モードのMPEG−4ストリームを解読するための、準備中のsrcstrmにトリック・デコーダの取り付け、解読方向の指定。
public void offsetStream(Mp4Stream srcstrm、ulongoffset)
srctrmへの、解読開始目標としてのオフセットの挿入可能。実際には、現実の目標位置は、必要な目標より遠い場合があり、ストリーム内の有効なエントリの位置により異なる。
透明API
透明APIは、ユーザ制御下の一つの対象物の、複数の領域の選択的な解読をサポートする。ビジュアル対象物の場合には、その対象物内の他のピクセルの透明度を変化させることによって、大きな対象物をいくつかのより小さな領域に分割するという方法で、コード化が行われると仮定する。問題の領域に属さないピクセルは、コード化されている領域内に存在しない選択したキー・カラーを、前記ピクセルに割り当てることによりコード化される。このAPIにより、いくつかのまたは全部の領域をコード化することができるように、ユーザの制御下でコード化を行うことができる。さらに、問題の領域の場合には、空間および時間的品質を改善するために、強化ビットストリームが必要になる場合がある。各領域に対する前記キー・カラーは、コンポジタに対して識別される。ユーザは、帯域幅/計算資源が限定されていたり、対象物のいくつかの部分が隠れていて必要がないため、または他の領域ないに画像を削除するかその品質を犠牲にして、特定の領域に必要な遙かに高い品質のため、ユーザが、全部の領域の解読を必要としない場合がある。キー・カラーを使用する前記プロセスは、放送分野の「クロマキー」技術に類似している。
Class mpgj.svs.TranspAVObject
public clas TrasnspAVObject
BaseAVObjectの拡張
TrasnspAVObjectは、透明情報により対象物を形成するために使用することができるクラスである。音声およびビジュアル対象物タイプの両方が処理される。
構成装置
public TranspAVObject()
方法
public void startDec()
データ解読の開始
public void stopDec()
データ解読の停止
public void pauseDec()
データ解読の一時的な中止
public void resumeDec()
現在の一時中止の状態からの、データ解読の再開
public int getRegion()
リストの形のメニュー内の番号、または(同様に番号に翻訳される)ホット・ポイントを、クリックすることによる領域の選択。
public Mp4Stream enhanceObject
(int type,int regnum)
region regnumに対する必要な強化ストリームを入手するための、選択した強化タイプの使用。
public void attachDecoder(Mp4Stream srcstrm、int type、int regnum)
一つの領域およびそのキー・cカラーを解読するための準備中のsrcstrmにデコーダの取り付け。
public void offsetStream(Mp4Stream srcstrm、ulongoffset)
srctrmへの、解読開始目標としてのオフセットの挿入可能。実際には、現実の目標位置は、必要な目標より遠い場合があり、ストリーム内の有効なエントリの位置により異なる。
図5は、それに対して、インターフェースが他の分類のAPIで定義される、ストリーム編集の一例を使用する本発明のオーサリング機能である。オーサリングAPI290は、オーサリング関連のインターフェース、より詳しく説明すると、ストリーム編集API(501)を表す。前記APIを使用することにより、MPEG App(100)またはBIFSデコーダおよびシーン・グラフ(225)が使用するための、ビットストリームを編集/修正することができる。API501は、制御ライン505を通して、MPEG APP100を制御し、制御ライン506を通してBIFSデコーダおよびシーン・グラフ225を制御する。それ故、ストリーム編集APIは、種々のオーディオ・ビジュアル対象物およびBIFSシーン叙述を含む、MPEG−4の編集/修正を助けることができる。ストリーム編集APIの他に、他のAPIを使用することができるオーサリングも行うことができるが、本発明は指定しない。ストリーム編集APIの詳細を下記に説明する。
オーサリング
下記のAPIは、MPEG−4ビットストリームを部分的にオーサリングするためのものである。
ストリーム編集API
Class mpgj.util.StreamEdit
public class StreamEdit
このクラスは、MPEG−4ストリームの内容および修正を決定することができる。アクセス、コピー、追加、置き換え、削除のような動作および他の動作がサポートされる。
構成装置
public StreamEdit()
方法
public int[] getObjectList(Mp4Stream srcstrm)
ストリーム内の対象物のリストの返還。返還された対象物は、ビットストリーム内の対象物の累積表となる。
public boolean replaceObject(Mp4Stream srcstrm、ulongsrcobjid、Mp4Stream deststrm,、ulong destobjid)
ストリーム内の対象物id、destobjidを持つ対象物の発生の、srcstrm内の対象物id、srcobjidを持つ対象物の対応する発生による置き換え。対象物表はそれに従って更新される。更新が成功した場合には、動作は真に戻り、更新が失敗した場合には偽に戻る。
public boolean replaceObjectAt(Mp4Stream srcstrm、ulongsrcojid、ulong m、Mp4Stream deststrm、ulong destobjid、ulong n)
置き換えを開始する位置を除いて、replaceObject()と同じ意味論が指定される。destobjidのn番目の発生からの宛先対象物の、srcobjidのm番目の発生からのソース対象物による置き換え。m=n=0の場合には、replaceObject()と同じことが行われる。
public boolean containObjectType(Mp4Stream srcstrm、ulong objtype)
srcstrmがobjtypeの対象物を含んでいる場合には、真に戻り、そうでない場合には偽に戻る。
public boolean addObjects(Mp4Stream srcstrm、ulong srcobjid、Mp4Stream destsrm)
deststrmへのsrcstrmからのsrcobjidの追加。成功の場合は真に戻り、そうでない場合には偽に戻る。
public boolean addObjectAt(Mp4Stream srcstrm、ulong srcobjid、Mp4Stream destsrm、ulong destobjid、ulong n)
destobjidのn番目の発生の後から始まるdeststrmへの、srcstrmからのsrcobjidの追加。成功の場合は真に戻り、そうでない場合には偽に戻る。
public boolean copyObjects(Mp4Stream srccstrm、ulong srcobjid、Mp4Stream deststeam、destobjid)
srstrm内のsrcobjidを持つ対象物を、新しい対象物id、destobjidを持つdeststreamへコピー。deststrmが存在しない場合には、生成される。存在する場合には重ね書きされる。この動作は、以降の動作に対する多重化されていないストリームから、基本的ストリームを生成するために使用される。成功の場合は真に戻り、そうでない場合には偽に戻る。
public boolean deleteObjects(Mp4Stream sdeststrm、ulong destobjid)
deststrm内のdestobjidを持つストリーム対象物の削除。また、すべての合成情報の除去。成功の場合は真に戻り、そうでない場合には偽に戻る。
public boolean spliceAt(Mp4Stream deststrm、ulong destobjid、ulong n、Mp4Stream srcstrm)
destobjidのn番目の発生の後のdeststrmのスプライス、およびsrcstrmのペースト。成功の場合は真に戻り、そうでない場合には偽に戻る。
まとめると、図1−図5のAPIに反映された、一組のライブラリ機能を含む柔軟なシステムおよび方法は、コード化されたメディア・ストリームをリモート・ラップトップ・パソコンまたは他の装置にような解読ターミナル資源とマッチさせることができる、新しいレベルの適応性を提供する。さらに、本発明は、また適当なデコーダおよびコード化されたメディア対象物ビットストリームの選択的な解読と一緒に、高度の新しい機能を可能にする、ユーザ相互作用に対するサポートも含む。
本発明を実行する場合には、定義のAV関連機能を含む分類が導入され、すべての汎用で一貫している方法で、埋設されたオーディオ・ビジュアル対象物の解読と合成との間の、簡単でありながら、より複雑な相互作用を行うことができるように、一組のAPIが設定される。
本発明のシステムおよび方法の前記説明は、単に例示としてのものに過ぎず、当業者ならその構造および実行を種々に変更することができるだろう。例えば、三つの分類の入力、出力およびマッピング機能のコンパクトで汎用装置を説明してきたが、ネットワーク、アプリケーションまたは他のニーズの変更により、APIにいくつかの機能を追加したり、取り除いたりすることができる。本発明の範囲は、下記の請求の範囲だけにより制限される。

Claims (15)

  1. MPEG−4規格によりコード化されたオーディオ・ビジュアル・オブジェクトを復号するためのシステムであって、
    それぞれが、予め定義した機能呼出を持つ標準化プログラミング・インターフェースである、処理資源又はユーザの入力に適応できるインターフェースを提供するための、予め定めた組の標準化アプリケーション・プログラミング・インターフェースを含むインターフェース・ライブラリ、及び
    前記インターフェース・ライブラリにアクセスし、少なくとも一つの前記アプリケーション・プログラミング・インターフェースに関連する機能呼出に従って、オーディオ・ビジュアル・オブジェクトを復号し、提示するように構成されたプロセッサ
    を備え
    前記インターフェース・ライブラリが、ビットストリーム編集および操作能力を提供するオーサリング・インターフェースを備える、システム。
  2. 請求項1に記載のシステムにおいて、前記プロセッサが、前記機能呼出を呼び出すクライアント・アプリケーションを実行するシステム。
  3. 請求項1に記載のシステムにおいて、前記インターフェース・ライブラリが、ビジュアルオブジェクトビットストリームを復号するためのビジュアル復号インターフェースを備えるシステム。
  4. 請求項1に記載のシステムにおいて、前記インターフェース・ライブラリが、ユーザとの拡張された相互作用を提供するための機能インターフェースを備えるシステム。
  5. 請求項1に記載のシステムにおいて、さらに、前記インターフェース・ライブラリをサポートするビデオ復号および再生ユニットを備えるシステム。
  6. 請求項1に記載のシステムにおいて、さらに、ユーザ閲覧用に、前記インターフェース・ライブラリを使用するマルチメディア・ブラウザ・モジュールを備えるシステム。
  7. 請求項1に記載のシステムにおいて、さらに、前記インターフェース・ライブラリを使用するウェブ・ブラウザから呼び出されたマルチメディア・プラグイン・モジュールを備えるシステム。
  8. 処理資源又はユーザの入力に適応できるインターフェースを提供するための予め定めた組の標準化アプリケーション・プログラミング・インターフェースを備える前記インターフェース・ライブラリを生成するステップ、
    前記インターフェース・ライブラリの一組のインターフェース定義の少なくとも一つに関連する変数を使用して、オーディオ・ビジュアル・オブジェクトにアクセスするステップ、及び
    前記変数により表される前記オーディオ・ビジュアル・オブジェクトを復号するステップ
    を含み、
    前記インターフェース・ライブラリが、ビットストリーム編集および操作能力を提供するオーサリング・インターフェースを備える、MPEG−4規格により符号化されたオーディオ・ビジュアル・オブジェクトを復号する方法。
  9. 請求項に記載の方法において、さらに、下層にあるMPEG−4復号システムを制御する適応システムを形成するクライアント・アプリケーションを実行するステップを含む方法。
  10. 請求項に記載の方法において、前記インターフェース・ライブラリが、ビジュアルオブジェクトビットストリームを復号するためのビジュアル復号インターフェースを備える方法。
  11. 請求項に記載の方法において、前記インターフェース・ライブラリが、ユーザとの拡張された相互作用を提供するための機能インターフェースを備える方法。
  12. 請求項に記載の方法において、さらに、前記インターフェース・ライブラリを使用するユーザに、ビジュアル復号、機能およびオーサリング・インターフェースを使用するオペレーティング・システムを提供するステップを含む方法。
  13. 請求項に記載の方法において、さらに、前記インターフェース・ライブラリを使用して、ビデオ情報を復号および再生するステップを含む方法。
  14. 請求項に記載の方法において、さらに、前記インターフェース・ライブラリを使用するマルチメディア・ブラウザを起動するステップを含む方法。
  15. 請求項に記載の方法において、さらに、前記インターフェース・ライブラリを使用する、ウェブ・ブラウザから呼び出されたマルチメディア・プラグイン・モジュールを提供するステップを含む方法。
JP54300698A 1997-04-07 1998-04-07 適応制御を行うことができるmpegコード化オーディオ・ビジュアル対象物をインターフェースで連結するためのシステムおよび方法 Expired - Fee Related JP4726097B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US4279897P 1997-04-07 1997-04-07
US60/042,798 1997-04-07
PCT/US1998/006802 WO1998046006A2 (en) 1997-04-07 1998-04-07 System and method for interfacing mpeg-coded audiovisual objects permitting adaptive control

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2007276004A Division JP4959504B2 (ja) 1997-04-07 2007-10-24 適応制御を行うことができるmpegコード化オーディオ・ビジュアルオブジェクトをインターフェイスで連結するためのシステムおよび方法

Publications (2)

Publication Number Publication Date
JP2000513179A JP2000513179A (ja) 2000-10-03
JP4726097B2 true JP4726097B2 (ja) 2011-07-20

Family

ID=21923810

Family Applications (2)

Application Number Title Priority Date Filing Date
JP54300698A Expired - Fee Related JP4726097B2 (ja) 1997-04-07 1998-04-07 適応制御を行うことができるmpegコード化オーディオ・ビジュアル対象物をインターフェースで連結するためのシステムおよび方法
JP2007276004A Expired - Fee Related JP4959504B2 (ja) 1997-04-07 2007-10-24 適応制御を行うことができるmpegコード化オーディオ・ビジュアルオブジェクトをインターフェイスで連結するためのシステムおよび方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2007276004A Expired - Fee Related JP4959504B2 (ja) 1997-04-07 2007-10-24 適応制御を行うことができるmpegコード化オーディオ・ビジュアルオブジェクトをインターフェイスで連結するためのシステムおよび方法

Country Status (5)

Country Link
US (1) US6092107A (ja)
EP (1) EP0922360A4 (ja)
JP (2) JP4726097B2 (ja)
CA (1) CA2257577C (ja)
WO (1) WO1998046006A2 (ja)

Families Citing this family (95)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE331390T1 (de) 1997-02-14 2006-07-15 Univ Columbia Objektbasiertes audiovisuelles endgerät und entsprechende bitstromstruktur
US6801575B1 (en) * 1997-06-09 2004-10-05 Sharp Laboratories Of America, Inc. Audio/video system with auxiliary data
JPH114417A (ja) * 1997-06-12 1999-01-06 Toshiba Corp ビット・ストリーム情報表示方法、ビット・ストリーム情報作成方法及び記録媒体
US6535530B1 (en) * 1997-07-23 2003-03-18 Matsushita Electric Industrial Co., Ltd. Apparatus and method for demultiplexing multiplexed data
US6654931B1 (en) 1998-01-27 2003-11-25 At&T Corp. Systems and methods for playing, browsing and interacting with MPEG-4 coded audio-visual objects
US7199836B1 (en) * 1998-02-13 2007-04-03 The Trustees Of Columbia University In The City Of New York Object-based audio-visual terminal and bitstream structure
US7809138B2 (en) 1999-03-16 2010-10-05 Intertrust Technologies Corporation Methods and apparatus for persistent control and protection of content
US6631403B1 (en) * 1998-05-11 2003-10-07 At&T Corp. Architecture and application programming interfaces for Java-enabled MPEG-4 (MPEG-J) systems
JP3593883B2 (ja) * 1998-05-15 2004-11-24 株式会社日立製作所 映像ストリーム送受信システム
US6973641B1 (en) * 1998-06-04 2005-12-06 Microsoft Corporation Persistent representations for complex data structures as interpreted programs
EP1090505A1 (en) * 1998-06-26 2001-04-11 General Instrument Corporation Terminal for composing and presenting mpeg-4 video programs
EP1042921A1 (en) * 1998-07-17 2000-10-11 Koninklijke Philips Electronics N.V. Device for demultiplexing coded data
EP0986267A3 (de) * 1998-09-07 2003-11-19 Robert Bosch Gmbh Verfahren zur Einbindung von audiovisueller codierter Information in einen vorgegebenen Übertragungsstandard sowie Endgeräte hierzu
JP3976932B2 (ja) * 1999-03-31 2007-09-19 キヤノン株式会社 データ処理方法及び装置並びに記憶媒体
US6934906B1 (en) 1999-07-08 2005-08-23 At&T Corp. Methods and apparatus for integrating external applications into an MPEG-4 scene
JP2001119666A (ja) * 1999-08-16 2001-04-27 Univ Of Washington ビデオシーケンスの対話型処理方法と、その記憶媒体およびシステム
WO2001016757A1 (en) * 1999-09-01 2001-03-08 Audiobase, Inc. A system and method for streaming data in java
JP2003513538A (ja) * 1999-10-22 2003-04-08 アクティブスカイ,インコーポレイテッド オブジェクト指向ビデオシステム
JP2001145020A (ja) * 1999-11-12 2001-05-25 Canon Inc 画像編集装置及び方法
US7093028B1 (en) * 1999-12-15 2006-08-15 Microsoft Corporation User and content aware object-based data stream transmission methods and arrangements
US7389356B2 (en) 1999-12-15 2008-06-17 Microsoft Corporation Generalized differentiation methods and arrangements for adaptive multimedia communications
US20020115477A1 (en) * 2001-02-13 2002-08-22 Raja Singh Portable high speed internet access device with scrolling
US7068381B1 (en) * 2000-02-02 2006-06-27 Raja Tuli Portable high speed internet access device
US7289244B2 (en) 2000-02-02 2007-10-30 Raja Singh Tuli Portable high speed internet access device
US20020030843A1 (en) * 2000-02-02 2002-03-14 Tuli Raja Singh Portable high speed internet access device
US6633314B1 (en) 2000-02-02 2003-10-14 Raja Tuli Portable high speed internet device integrating cellular telephone and palm top computer
US7356570B1 (en) 2000-08-29 2008-04-08 Raja Tuli Portable high speed communication device
US7023572B2 (en) * 2000-02-02 2006-04-04 Raja Singh Tuli Portable high speed internet access device
US6941382B1 (en) 2000-02-07 2005-09-06 Raja Tuli Portable high speed internet or desktop device
US6874009B1 (en) 2000-02-16 2005-03-29 Raja Tuli Portable high speed internet device with user fees
KR100429838B1 (ko) 2000-03-14 2004-05-03 삼성전자주식회사 인터랙티브 멀티미디어 콘텐츠 서비스에서 업스트림채널을 이용한 사용자 요구 처리방법 및 그 장치
FR2806570B1 (fr) * 2000-03-15 2002-05-17 Thomson Multimedia Sa Procede et dispositif de codage d'images video
US7127526B1 (en) * 2000-03-20 2006-10-24 Nortel Networks Limited Method and apparatus for dynamically loading and managing software services on a network device
FR2807268A1 (fr) * 2000-04-04 2001-10-05 Koninkl Philips Electronics Nv Reseau, terminal d'emission et methode de constitution d'un point d'acces dans un flux de donnees
CN1199464C (zh) * 2000-05-23 2005-04-27 皇家菲利浦电子有限公司 通信系统和数据交换的方法
US6763069B1 (en) * 2000-07-06 2004-07-13 Mitsubishi Electric Research Laboratories, Inc Extraction of high-level features from low-level features of multimedia content
US7191211B2 (en) * 2000-10-03 2007-03-13 Raja Tuli Portable high speed internet access device priority protocol
US6842777B1 (en) 2000-10-03 2005-01-11 Raja Singh Tuli Methods and apparatuses for simultaneous access by multiple remote devices
US7463683B2 (en) * 2000-10-11 2008-12-09 Koninklijke Philips Electronics N.V. Method and apparatus for decoding spatially scaled fine granular encoded video signals
US20020071030A1 (en) * 2000-10-19 2002-06-13 Zvi Lifshitz Implementation of media sensor and segment descriptor in ISO/IEC 14496-5 (MPEG-4 reference software)
US6915327B1 (en) 2000-10-30 2005-07-05 Raja Singh Tuli Portable high speed communication device peripheral connectivity
FR2819669B1 (fr) * 2001-01-15 2003-04-04 Get Int Procede et equipement pour la gestion des interactions entre un peripherique de commande et une application multimedia exploitant la norme mpeg-4
FR2819604B3 (fr) * 2001-01-15 2003-03-14 Get Int Procede et equipement pour la gestion des interactions multimedias mono-ou multi-uitilisateurs entre des peripheriques de commande et des applications multimedias exploitant la norme mpeg-4
US6928461B2 (en) 2001-01-24 2005-08-09 Raja Singh Tuli Portable high speed internet access device with encryption
US20030163815A1 (en) * 2001-04-06 2003-08-28 Lee Begeja Method and system for personalized multimedia delivery service
US8060906B2 (en) * 2001-04-06 2011-11-15 At&T Intellectual Property Ii, L.P. Method and apparatus for interactively retrieving content related to previous query results
US20030088687A1 (en) * 2001-12-28 2003-05-08 Lee Begeja Method and apparatus for automatically converting source video into electronic mail messages
US6792044B2 (en) 2001-05-16 2004-09-14 Koninklijke Philips Electronics N.V. Method of and system for activity-based frequency weighting for FGS enhancement layers
US7161599B2 (en) * 2001-10-18 2007-01-09 Microsoft Corporation Multiple-level graphics processing system and method
US6919891B2 (en) 2001-10-18 2005-07-19 Microsoft Corporation Generic parameterization for a scene graph
US7619633B2 (en) 2002-06-27 2009-11-17 Microsoft Corporation Intelligent caching data structure for immediate mode graphics
US7064766B2 (en) 2001-10-18 2006-06-20 Microsoft Corporation Intelligent caching data structure for immediate mode graphics
US7443401B2 (en) * 2001-10-18 2008-10-28 Microsoft Corporation Multiple-level graphics processing with animation interval generation
GB2416099B (en) * 2001-10-24 2006-05-31 Accenture Global Services Gmbh Data processing system and method
US7751628B1 (en) 2001-12-26 2010-07-06 Reisman Richard R Method and apparatus for progressively deleting media objects from storage
US20030156108A1 (en) * 2002-02-20 2003-08-21 Anthony Vetro Consistent digital item adaptation
US7613727B2 (en) 2002-02-25 2009-11-03 Sont Corporation Method and apparatus for supporting advanced coding formats in media files
US20030163477A1 (en) * 2002-02-25 2003-08-28 Visharam Mohammed Zubair Method and apparatus for supporting advanced coding formats in media files
US20040199565A1 (en) * 2003-02-21 2004-10-07 Visharam Mohammed Zubair Method and apparatus for supporting advanced coding formats in media files
US20040006575A1 (en) * 2002-04-29 2004-01-08 Visharam Mohammed Zubair Method and apparatus for supporting advanced coding formats in media files
US7831990B2 (en) * 2002-04-29 2010-11-09 Sony Corporation Generic adaptation layer for JVT video
US8176428B2 (en) * 2002-12-03 2012-05-08 Datawind Net Access Corporation Portable internet access device back page cache
US7417645B2 (en) * 2003-03-27 2008-08-26 Microsoft Corporation Markup language and object model for vector graphics
US7466315B2 (en) * 2003-03-27 2008-12-16 Microsoft Corporation Visual and scene graph interfaces
US7088374B2 (en) * 2003-03-27 2006-08-08 Microsoft Corporation System and method for managing visual structure, timing, and animation in a graphics processing system
US7486294B2 (en) * 2003-03-27 2009-02-03 Microsoft Corporation Vector graphics element-based model, application programming interface, and markup language
US7882510B2 (en) * 2003-08-06 2011-02-01 Microsoft Corporation Demultiplexer application programming interface
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
US7839930B2 (en) 2003-11-13 2010-11-23 Microsoft Corporation Signaling valid entry points in a video stream
US7852919B2 (en) 2003-09-07 2010-12-14 Microsoft Corporation Field start code 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
US7958535B2 (en) * 2003-09-25 2011-06-07 Sharp Laboratories Of America, Inc. URI pointer system and method for the carriage of MPEG-4 data in an MPEG-2 transport stream
US7511718B2 (en) * 2003-10-23 2009-03-31 Microsoft Corporation Media integration layer
US20050094732A1 (en) * 2003-10-30 2005-05-05 Debargha Mukherjee Data communications methods, compressed media data decoding methods, compressed media data decoders, articles of manufacture, and data communications systems
US8302111B2 (en) 2003-11-24 2012-10-30 Time Warner Cable Inc. Methods and apparatus for hardware registration in a network device
US7266726B1 (en) 2003-11-24 2007-09-04 Time Warner Cable Inc. Methods and apparatus for event logging in an information network
US20050198336A1 (en) * 2004-01-22 2005-09-08 Edward Eytchison Methods and apparatuses for automatic adaptation of different protocols
US9213538B1 (en) 2004-02-06 2015-12-15 Time Warner Cable Enterprises Llc Methods and apparatus for display element management in an information network
US8078669B2 (en) * 2004-02-18 2011-12-13 Time Warner Cable Inc. Media extension apparatus and methods for use in an information network
WO2006061308A1 (fr) * 2004-12-07 2006-06-15 France Telecom Procédé d'animation temporelle d'un avatar à partir d'un signal source comprenant des informations d'aiguillage, dispositif, programme d'ordinateur, moyen de stockage et signal source correspondants.
US9043691B2 (en) 2005-02-28 2015-05-26 James Monro Productions Inc. Method and apparatus for editing media
US7634727B2 (en) * 2005-04-26 2009-12-15 Microsoft Corporation System for abstracting audio-video codecs
CN101176341B (zh) * 2005-05-18 2010-05-19 松下电器产业株式会社 内容再现装置
US7681200B2 (en) * 2005-07-22 2010-03-16 Microsoft Corporation Secure hardware desktop buffer composition
FR2892883B1 (fr) * 2005-11-02 2008-01-25 Streamezzo Sa Procede d'optimisation de rendu d'une scene multimedia, programme, signal, support de donnees, terminal et procede de reception correspondants.
US8370818B2 (en) 2006-12-02 2013-02-05 Time Warner Cable Inc. Methods and apparatus for analyzing software interface usage
US8259082B2 (en) 2008-09-12 2012-09-04 At&T Intellectual Property I, L.P. Multimodal portable communication interface for accessing video content
US8810598B2 (en) 2011-04-08 2014-08-19 Nant Holdings Ip, Llc Interference based augmented reality hosting platforms
US9563971B2 (en) 2011-09-09 2017-02-07 Microsoft Technology Licensing, Llc Composition system thread
US9582516B2 (en) 2013-10-17 2017-02-28 Nant Holdings Ip, Llc Wide area augmented reality location-based services
US11716558B2 (en) 2018-04-16 2023-08-01 Charter Communications Operating, Llc Apparatus and methods for integrated high-capacity data and wireless network services
CN112840728A (zh) 2018-10-12 2021-05-25 特许通讯运营公司 用于无线网络中的小区标识的设备及方法
US11129171B2 (en) 2019-02-27 2021-09-21 Charter Communications Operating, Llc Methods and apparatus for wireless signal maximization and management in a quasi-licensed wireless system
US11026205B2 (en) 2019-10-23 2021-06-01 Charter Communications Operating, Llc Methods and apparatus for device registration in a quasi-licensed wireless system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69531265T2 (de) * 1994-03-19 2004-06-03 Sony Corp. Optische Platte und Methode und Gerät zur Aufzeichnung auf und danach Wiedergabe von Informationen von dieser Platte
US5563648A (en) * 1994-04-28 1996-10-08 Thomson Consumer Electronics, Inc. Method for controlling execution of an audio video interactive program
JP3078215B2 (ja) * 1995-01-06 2000-08-21 ミツビシ・エレクトリック・インフォメイション・テクノロジー・センター・アメリカ・インコーポレイテッド ディスプレイ装置
US5794250A (en) * 1995-10-20 1998-08-11 Ncr Corporation Method and apparatus for extending existing database management system for new data types

Also Published As

Publication number Publication date
EP0922360A2 (en) 1999-06-16
US6092107A (en) 2000-07-18
JP2000513179A (ja) 2000-10-03
WO1998046006A3 (en) 1999-01-07
JP4959504B2 (ja) 2012-06-27
CA2257577C (en) 2002-03-19
JP2008118637A (ja) 2008-05-22
WO1998046006A2 (en) 1998-10-15
EP0922360A4 (en) 1999-12-29
CA2257577A1 (en) 1998-10-15

Similar Documents

Publication Publication Date Title
JP4726097B2 (ja) 適応制御を行うことができるmpegコード化オーディオ・ビジュアル対象物をインターフェースで連結するためのシステムおよび方法
EP0909509B1 (en) System and method for generation and interfacing of bitstreams representing mpeg-coded audiovisual objects
Koenen MPEG-4 multimedia for our time
Koenen et al. MPEG-4: Context and objectives
US6414996B1 (en) System, method and apparatus for an instruction driven digital video processor
US6631403B1 (en) Architecture and application programming interfaces for Java-enabled MPEG-4 (MPEG-J) systems
US6490324B1 (en) System, method and apparatus for a variable output video decoder
KR101560183B1 (ko) 사용자 인터페이스를 제공/수신하는 방법 및 장치
Signes et al. MPEG-4's binary format for scene description
US20090016438A1 (en) Method and apparatus for a motion compensation instruction generator
CN1921610B (zh) 基于客户端的视频流互动处理方法及处理系统
JP2001167037A (ja) Javaを利用した動的なマルチメディア・ウェッブ・カタロギング・システムおよびその方法
EP1024668B1 (en) Method and apparatus for a motion compensation instruction generator
JP2003153254A (ja) データ処理装置及びデータ処理方法、並びにプログラム、記憶媒体
EP1912438A2 (en) System and method for interfacing MPEG-coded audiovisual objects permitting adaptive control
Signès et al. MPEG-4: Scene Representation and Interactivity
KR20090110200A (ko) 사용자 인터페이스를 제공/수신하는 방법 및 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050331

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070424

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070723

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070910

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071024

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080311

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080709

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080827

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20081009

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20090326

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100712

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100715

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20100830

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110217

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110408

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140422

Year of fee payment: 3

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