JP5335416B2 - 音声/映像コーデックを抽象化するためのシステム - Google Patents

音声/映像コーデックを抽象化するためのシステム Download PDF

Info

Publication number
JP5335416B2
JP5335416B2 JP2008508930A JP2008508930A JP5335416B2 JP 5335416 B2 JP5335416 B2 JP 5335416B2 JP 2008508930 A JP2008508930 A JP 2008508930A JP 2008508930 A JP2008508930 A JP 2008508930A JP 5335416 B2 JP5335416 B2 JP 5335416B2
Authority
JP
Japan
Prior art keywords
media
class
encoded
renderer
decoder
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2008508930A
Other languages
English (en)
Other versions
JP2008542855A (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 JP2008542855A publication Critical patent/JP2008542855A/ja
Application granted granted Critical
Publication of JP5335416B2 publication Critical patent/JP5335416B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、一般にゲームシステムに関し、より詳細には、ゲームシステムアプリケーションを様々なコーデックにインターフェイス接続するアプリケーションプログラミングインターフェイス(API)に関する。
当分野では、いくつかのゲームシステムが知られている。ゲームシステムの例には、Microsoft(登録商標)社のXbox(登録商標)やXenonゲームシステムなどがある。絶え間なく変化する動的なマルチメディア業界は、ゲームシステムに影響を与えている。さらに、ユーザの好みは変化する。今日人気があったものが明日には人気がないかもしれない。新しい、改良されたマルチメディアフォーマットおよび圧縮方式が絶え間なく市場に出されている。例えば、新しい/改良されたコーデックが頻繁に開発され、実装される。コーデックは、圧縮/復元アルゴリズム(compression and decompression algorithm)であり、ソフトウェア、ハードウェア、またはその組み合わせに実装することができる。一般に、コーデックは、メディア(映像、音声、画像、ゲームなど)を、その格納されたまたは送信された圧縮形式と、レンダリングされた非圧縮形式との間で変換するために使用される。一般に、新しいコーデックが実装されるとき、新しいコーデックとインターフェイス接続するアプリケーションは、新しいコーデックと互換性があるように変更されなければならない。これは、時間がかかり、煩わしく、費用がかかる可能性がある。これは特に、ゲームシステムにおいてそうである。というのは、すでにユーザの手にあるゲームシステムは、容易に変更できないからである。
新しいコーデックが開発されるとき、既存のコーデックが変更されるとき、またはユーザの好みが変わるとき、ゲームアプリケーションの変更の必要なく、ゲームシステムが新しい/変更されたコーデックと互換性があることが有利である。したがって、ゲームアプリケーションコードへの変更の必要なく、新しい、かつ/または変更されたコーデックの実装を可能にするゲームシステムが求められている。
本発明の一実施形態例では、メディアソースとゲームアプリケーションとの間にコーデック抽象化層(codecs abstraction layer)が実装される。コーデック抽象化層(CAL)は、1つまたは複数のコンピュータプログラムの形で実装され、一実施形態例では、アプリケーションプログラミングインターフェイス(API)として実装される。CALは、様々なコーテックに従って符号化された、様々なソースからのメディアを処理することができる。また、CALは、適切なコーデックに従って、符号化されたメディアを復号することもできる。CALは、復号されたメディアをゲームアプリケーションに提供する。CALは、メディアのソース、受信されるメディアのタイプ、およびメディアの圧縮に使用されるコーデックを決定する。メディアソースには、メモリ、ファイル、httpソース、キュー、カスタムソース、外部ドライブ、またはゲームメディアソース(XMediaなど)などがある。メディアタイプには、例えば、音声メディア、映像メディア、画像メディア、動画、ゲームメディア、またはその組み合わせなどがある。CALは、メディアがメディアソースから適切に取得され、フォーマットされること、および符号化されたメディアがゲームメディアプレーヤを介してレンダリングするために適切に復号されることを確実にする。ゲームアプリケーションは、CALと対話し、コーデックとは対話しない。コーデック間の差は、ゲームアプリケーションには関係ない。新しいコーデックは、既存のアプリケーションコードを変更することなく、既存のアプリケーションによって導入され、使用され得る。
技術が向上し、ユーザの要求が高まるにつれて、新しいコーデックが開発され、既存のコーデックが変更される。したがって、ゲーム開発者にとって、新しいコーデックおよび変更されたコーデックに対応することができるゲームシステムを開発することが有利である。本発明の一実施形態例によるゲームシステムは、ゲームアプリケーションへの変更を必要とすることなく、新しいコーデック、および変更されたコーデックに対応することができる。これは、拡張可能なコーデック抽象化層(CAL)を実装することによって達成される。CALは、ゲームアプリケーションが特定のコーデックとではなく、CALと対話するように、異なるコーデックおよびメディアフォーマットを管理する。
コーデックは、圧縮および復元の略語である。メディアは、メディア情報のサイズまたは量を低減するために圧縮される。圧縮されたメディアは、元のメディア、または元のメディアに近いものを得るために復元される。一般に、圧縮技術は損失が多く、これは、冗長な、またはユーザに知覚できない情報が破棄され、取り出すことができないことを意味する。圧縮および復元は、一般に、その名前が暗示するよりも、より高度である。メディアの圧縮は、高度な信号処理技術に従ってメディアを符号化することを伴い、圧縮されたメディアの復元は、同じコーデックの高度な信号処理技術に従ってメディアを復号することを伴う。
現在多くのタイプのコーデックが存在しており、多くの既存のコーデックは、様々なフォーマットと共に使用される。例えば、パルス符号変調(PCM)は、圧縮されていないメディアを送信し、格納するために使用される。PCMは、例えばCDやデジタルオーディオテープ(DAT)など、多くのアプリケーションおよび装置によって使用される汎用アルゴリズムである。PCMの変形には、差分パルス符号変調(DPCM)および適応的差分パルス符号変調(ADPCM)などがある。DPCMは、メディアの連続するサンプル間の差を使用する、非可逆圧縮技術(lossy compression technique)である。ADPCMは、サンプル間の差を表すために使用されるビットの数がメディア信号の特徴に応じて変わることを除いて、DPCMとほぼ同じである。PCMおよびその変形体は、通常、WAVファイルに使用される。WAVファイルは、WINDOWS(登録商標)のPCにおいて使用されるデフォルトのフォーマットである。WAVファイルは、MP3フォーマットで符号化することもできる。MP3は、MPEG(moving picture experts group)Layer−IIIフォーマットである。MP3は、相対的に高レベルの圧縮を提供し、したがって、通常、インターネットを介してメディアを提供して、制限された記憶容量を有する装置およびポータブルプレーヤにメディアを格納するために使用される。AAC(Advanced Audio Coding)は、MP4とも呼ばれ、MP3より低いビットレートでより良質のメディアを提供する符号化/復号技術である。μ−law圧縮として知られている別のフォーマットは、WAVファイルで使用することができる損失が多いフォーマットである。さらに、Microsoft(登録商標)社は、WMA(Windows Media Audio)フォーマットに従ってフォーマットされるメディアと共に使用するためのコーデックを開発している。
図1は、本発明の一実施形態例によるメディアプレーヤにメディアを提供するシステム10のブロック図である。システム10は、受信機部14、デコーダ部16、メモリ部18、およびレンダラ部20を含む。メディアは、メディアソース12によって提供され、メディアプレーヤ22を介してレンダリングされる。本明細書に記載されているように、システム10の実施形態例は、メディアをゲームメディアプレーヤ(Xenonなど)に提供するが、システム10はこれだけに限定されない。システム10は、例えばDVDプレーヤ、CDプレーヤ、モニタ、および音声プレーヤなど、他の適切なタイプのメディアプレーヤに適用可能である。
メディアは、メディアソース12を介してシステム10に提供される。メディアソース12は、単一のメディアソースまたは複数のメディアソースを含み得る。メディアソースの例には、ファイル、キュー、メモリ(半導体メモリ、レジスタなど)、HTTPソース、ゲームソース(Xmediaなど)、外部ドライブ(ハードディスクドライブ、DVDプレーヤ、CDプレーヤ、メモリスティックなど)、カスタムメディアソース、ネットワーク、またはその組み合わせなどがある。システム10に提供されるメディアは、次のフォーマット、WAV、MP3、AAC(MP4)、WMA、PCM、DPCM、およびADPCMの任意の組み合わせに従うことができる。システム10は、少なくとも前述のメディアフォーマットに対応することができる。システム10に提供されたメディアは、複数のタイプのメディアの任意の組み合わせを含み得る。メディアのタイプの例には、音声メディア、映像メディア、画像メディア(JPEGフォーマット、BMPフォーマット、TIFFフォーマットなど)、ゲームメディア(Xmediaなど)、動画メディア、映画メディア、マルチメディア、またはその組み合わせなどがある。以下でより詳細に説明されるように、メディアソース12によってシステム10に提供されたメディアは、生でもよく、フォーマットまたは符号化されてもよく、またはその組み合わせでもよい。
メディアは、受信機部14に提供される。受信機部14は、メディアソース12からメディアを受信することができる任意の適切な受信機を含み得る。本発明の一実施形態例では、受信機14は、受信されたメディアをストリーミングメディアにフォーマットする。当分野で知られているように、ストリーミングメディアは、絶え間ない流れで提供される。絶え間ないメディアの流れが達成可能であるため、ストリーミングメディアは、多くのタイプのメディアと共に使用するのに有利である。ユーザは、ゲームプレイ中に間隙または中断を経験したくないため、ストリーミングメディアは、特にゲームメディアに適切である。受信機部14によって提供されたメディアは、ストリーミングメディアとして示されているが、それだけに限定されない。受信機部14によって提供されたメディアは、(ダウンロードされるなど)別々のエンティティで提供することができる。
デコーダ部16は、受信機部14からメディアを受信する。メディアが符号化された場合、デコーダ部16は、適切なデコーダに従ってメディアを復号する。デコーダ部16は、上述した復号技術のいずれかに従ってメディアを復号する。
メモリ部18は、デコーダ部16から復号されたメディアを受信する。メモリ部18は、任意の適切なメモリを含み得る。適切なメモリの例には、半導体メモリ、磁気メモリ、静的メモリ、揮発性メモリ、光メモリ、レジスタ、またはその組み合わせなどがある。本発明の一実施形態例では、メモリ部16は、メモリキューとして実装される。デコーダ部16は、復号されたメディアをそれぞれのメモリキューに提供する。すなわち、コーデックタイプごとに、復号されたメディアは、個別の専用メモリキューに提供される。復号されたメディアのタイプごとに専用の個別のメモリキューによって、メディアの迅速な処理が容易になる。
復号されたメディアは、メモリ部18を介してレンダラ20に提供される。レンダラ20は、メディアプレーヤ22用にメディアを処理し、かつ/またはフォーマットする。システム10は、1つまたは複数のメディアプレーヤ22を備え得る。レンダラ20は、実装されている各メディアプレーヤ22用にメディアを適切にレンダリングする。例えば、メディアプレーヤ22がDVDプレーヤを備えている場合、レンダラ20は、メディアを、DVDプレーヤによってレンダリングできるように処理し、フォーマットする。メディアプレーヤ22がゲームメディアプレーヤ(Xenonなど)である場合、レンダラは、音声、映像、および/または動画のメディアを、ゲームメディアプレーヤによって適切にレンダリングできるように処理し、フォーマットする。
図2は、本発明の一実施形態例によるCALの単一のインスタンスの図である。CALは、ストリームオブジェクト24、デコーダオブジェクト26、メモリキュー28、およびレンダラオブジェクト30を含む。メディアプレーヤオブジェクト32は、制御信号34、36、および38を介して、それぞれデコーダオブジェクト26、メモリキュー28、およびレンダラオブジェクト30を制御する。制御オブジェクト32によって提供された制御のタイプの例には、いくつか挙げただけでも、ストリームの再生、停止、巻き戻し、シーク、中止、および選択などがある。
ストリームオブジェクト24は、所与のメディアソース(ファイル、キュー、メモリ(半導体メモリ、レジスタなど)、HTTPソース、ゲームソース(Xmediaなど)、外部ドライブ(ハードディスクドライブ、DVDプレーヤ、CDプレーヤ、メモリスティックなど)、カスタムメディアソース、ネットワークなど)からメディアをロードし、それを他のオブジェクトに公開するために使用される。デコーダオブジェクト26は、符号化されたメディアストリームを取得し、適切なコーデックを使用してそれを復号する。後述するように、ゲームシステム(Xenonなど)によって使用されるように想定されたコーデックごとにデコーダクラスがある。レンダラオブジェクト30は、デコーダオブジェクト26から出力され、メモリキュー28を介して提供されたストリームを取得し、中間のプレーヤオブジェクト32によって制御されるように復号されたメディアを(音声出力、映像出力などを介して)レンダリングする。デコーダのベースクラスごとに1つのレンダラクラスが実装される。例えば、すべての音声デコーダが導出されるベースクラスのデコーダがあり、対応する音声レンダラクラスがある。プレーヤオブジェクト32は、例えば音声の再生、映像の再生、DVD映画の再生など、特定のタスクのために設計された他のクラスのクライアントである。メディアプレーヤオブジェクトは、それぞれ制御信号34、36、および38を介して、デコーダオブジェクト26、メモリキュー28、およびレンダラオブジェクト30を制御する。
図3は、本発明の一実施形態例による複数のメディアソース121〜12K、複数のデコーダオブジェクト261〜26N、複数のメモリキュー281〜28N、および複数のレンダラオブジェクト301〜30Nを示すCALの図である。メディアソース121から12Kまでは、CALによって対応することができる所定の数のメディアソースを表す。ストリームオブジェクト24は、メディアソース121〜12Kによって提供された符号化されたメディアをストリーミングメディアにフォーマットする。ストリームオブジェクト24は、符号化され、フォーマットされたメディアをデコーダオブジェクト261から26Nまでに提供する。下付文字1からNまでは、CALによって対応することができる所定の数の複数のコーデックを表す。所定の数Kは、必ずしも所定の数Nに等しい必要はないことに留意されたい。特定の符号化技術で符号化された各メディアストリームは、そのそれぞれのデコーダオブジェクトに提供される。例えば、メディアソース121から受信されたWMAメディアを、ストリームオブジェクト24によってストリームメディアにフォーマットし、復号するためにデコーダオブジェクト261に提供することができ、メディアソース122から受信されたMP3メディアを、ストリームオブジェクト24によってストリームメディアにフォーマットし、復号するためにデコーダオブジェクト262に提供することができる。各デコーダオブジェクト261から26Nまでは、復号されたストリームメディアを、それぞれのメモリキュー281から28Nまでを介してそれぞれのレンダラオブジェクト301から30Nまでに提供する。したがって、メディアソースが追加される、削除される、または変更されるとき、メディアフォーマットが追加される、削除される、または変更されるとき、あるいはコーデックが追加される、削除される、または変更されるとき、CALは、処理チェーン(processing chain)のそれぞれのインスタンスを通すようにメディアを導く。
図4は、本発明の一実施形態例によるベースクラスを示すCALのクラス階層図である。CALは、すべての特定のCALクラスが派生する2〜3のベースクラスを含む。図4に示されているベースクラスには、CALベースクラス40、メディア情報ベースクラス42、レンダラベースクラス44、映画デコーダベースクラス46、映画プレーヤベースクラス48、ストリームベースクラス50、プレーヤベースクラス52、およびデコーダベースクラス54などがある。メディア情報ベースクラス42、レンダラベースクラス44、映画デコーダベースクラス46、映画プレーヤベースクラス48、ストリームベースクラス50、プレーヤベースクラス52、およびデコーダベースクラス54は、CALベースクラス40に応答する。メディア情報ベースクラス42は、メディアソースに関連づけられているオブジェクトの変数およびメソッドを定義する。ストリームベースクラス50は、ストリームオブジェクト24の変数およびメソッドを定義する。デコーダベースクラス54および映画デコーダベースクラス46は、デコーダオブジェクト26の変数およびメソッドを定義する。レンダラベースクラス44は、レンダラオブジェクト30の変数およびメソッドを定義する。プレーヤベースクラス52および映画プレーヤベースクラス48は、中間のプレーヤオブジェクト32の変数およびメソッドを定義する。各ベースクラス42、44、46、48、50、52、および54は、それぞれそれに応答するそれ自体のサブクラスを含む。ベースクラスは、より特定の導出クラスに共通の機能を提供するために使用される。例えば、音声デコーダおよび映像デコーダは、データのタイプに関係なく、データをある形式から別の形式に変換するため、いくつかの類似性を有する。コードを統合するために、この共通の機能は、音声および映像のデコーダが派生するデコーダのベースクラスに移る。
図5は、本発明の一実施形態例によるベースクラス42、44、46、48、50、52、および54のそれぞれのサブクラスを示すCALのより詳細なクラス階層図である。メディア情報ベースクラス42には、それに応答する以下のサブクラス、音声情報クラス、映像情報クラス、および画像情報クラスがある。レンダラベースクラス44には、それに応答する以下のサブクラス、音声レンダラクラス、映像レンダラクラス、サブレンダラクラス、および画像レンダラクラスがある。サブレンダラクラスは、メインの映像ストリームの上に字幕などの2次映像ストリームをレンダリングするために使用される。映画デコーダベースクラス46には、それに応答する以下のサブクラス、WMV(Windows Media Video)デコーダクラスおよびMP2デコーダクラスがある。映画プレーヤベースクラス48には、それに応答するDVDプレーヤクラスがある。ストリームベースクラス50には、それに応答する以下のサブクラス、ファイルストリームクラス、HTTPストリームクラス、カスタムストリームクラス、メモリストリームクラス、およびメモリキュークラスがある。プレーヤベースクラス52には、それに応答する以下のサブクラス、音声プレーヤクラス、映像プレーヤクラス、および画像プレーヤクラスがある。デコーダベースクラス54には、それに応答する以下のサブクラス、音声デコーダクラス、映像デコーダクラス、サブデコーダクラス、および画像デコーダクラスがある。音声デコーダクラスには、それに応答するPCMデコーダクラス、WAVデコーダクラス、MP3デコーダクラス、WMAデコーダクラス、およびAACデコーダクラスがある。映像デコーダクラスには、それに応答するRCVデコーダクラスがある。画像デコーダクラスには、それに応答するBMPデコーダクラス、JPEGデコーダ、およびTIFFデコーダがある。
本発明の説明は、複数のコーデックに対応することができるゲームシステム例との関連で説明してきたが、本発明は、複数のコーデックに対応できるより一般的なコンピューティング環境にも適用できる。図6は、本発明の一実施形態例を実施できる適したコンピューティングシステム環境600の一例を示している。コンピューティングシステム環境600は、適したコンピューティング環境の一例にすぎず、本発明の使用または機能の範囲に関する限定を示唆するものではない。また、コンピューティング環境600を、動作環境600の例に示した構成要素のいずれか1つ、またはその組み合わせに関連する任意の依存性または必要条件を有しているものと解釈すべきではない。
本発明は、他の多くの汎用または専用コンピューティングシステム環境または構成で動作可能である。本発明との使用に適したよく知られているコンピューティングシステム、環境、および/または構成の例には、それだけには限定されないが、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドまたはラップトップ装置、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能家庭用電化製品、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、上記の任意のシステムまたは装置を含む分散コンピューティング環境などがある。
本発明は、コンピュータによって実行されるプログラムモジュールなどのコンピュータ実行可能命令との一般的な関連で説明することができる。一般にプログラムモジュールは、特定のタスクを実行する、または特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、構成要素、データ構造などを含む。また、本発明は、タスクが通信ネットワークまたは他のデータ通信媒体によってリンクされているリモート処理装置によって実行される分散コンピューティング環境でも実施することができる。分散コンピューティング環境では、プログラムモジュールおよび他のデータを、メモリ記憶装置を含むローカルおよびリモートのコンピュータ記憶媒体に置くことができる。
図6を参照すると、本発明を実施するシステムの例は、汎用コンピューティング装置をコンピュータ610の形で含んでいる。本発明の一実施形態例では、コンピュータ610は、ゲームコンソールを含む。コンピュータ610の構成要素は、それだけには限定されないが、処理ユニット620、システムメモリ630、およびシステムメモリを含む様々なシステム構成要素を処理ユニット621に結合するシステムバス620を含み得る。システムバス621は、様々なバスアーキテクチャのうちの任意のものを使用するメモリバスまたはメモリコントローラ、周辺バス、およびローカルバスを含むいくつかのタイプのバス構造のうちどんなものでもよい。こうしたアーキテクチャには、それだけには限定されないが一例として、業界標準アーキテクチャ(ISA)バス、マイクロチャネルアーキテクチャ(MCA)バス、拡張ISA(EISA)バス、ビデオ電子装置規格化協会(VESA)ローカルバス、および(メザニンバスとしても知られている)周辺部品相互接続(PCI)バスなどがある。
コンピュータ610は、一般に様々なコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピュータ610からアクセスできる使用可能な任意の媒体とすることができ、揮発性および不揮発性媒体、取外式および固定式媒体を含む。コンピュータ可読媒体は、それだけには限定されないが一例として、コンピュータ記憶媒体および通信媒体を含み得る。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなど、情報を記憶するための任意の方法または技術で実施される揮発性および不揮発性の取外式および固定式媒体がある。コンピュータ記憶媒体には、それだけには限定されないが、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、デジタル多用途ディスク(DVD)または他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶装置、または所望の情報の格納に使用でき、コンピュータ610からアクセスできる他の任意の媒体などがある。通信媒体は一般に、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータを搬送波または他の搬送機構などの変調されたデータ信号に組み込む。これには任意の情報配送媒体がある。「変調されたデータ信号」という用語は、信号に情報を符号化するように1つまたは複数のその特性が設定または変更された信号を意味する。通信媒体には、それだけには限定されないが一例として、有線ネットワーク、または直接配線された接続などの有線媒体、および、音響、RF、赤外線、およびその他の無線媒体などの無線媒体がある。また、上記のどんな組み合わせでもコンピュータ可読媒体の範囲内に含まれるものとする。
システムメモリ630は、ROM631やRAM632など、揮発性および/または不揮発性メモリの形のコンピュータ記憶媒体を含む。基本入出力システム633(BIOS)は、例えば起動中など、コンピュータ610内の要素間での情報の転送を助ける基本ルーチンを含み、一般にROM631に格納されている。RAM632は一般に、処理ユニット620から直接アクセス可能な、および/または処理ユニット620が現在処理しているデータおよび/またはプログラムモジュールを含む。図6は、それだけには限定されないが一例として、オペレーティングシステム634、アプリケーションプログラム635、他のプログラムモジュール636、およびプログラムデータ637を示している。
コンピュータ610は、他の取外式/固定式、揮発性/不揮発性コンピュータ記憶媒体を含むこともできる。一例にすぎないが、図6は、固定式不揮発性磁気媒体から読み取り、あるいはそこに書き込むハードディスクドライブ641、取外式不揮発性磁気ディスク652から読み取り、あるいはそこに書き込む磁気ディスクドライブ651、およびCD−ROMや他の光媒体など、取外式不揮発性光ディスク656から読み取り、あるいはそこに書き込む光ディスクドライブ655を示している。動作環境の例で使用できる他の取外式/固定式、揮発性/不揮発性コンピュータ記憶媒体には、それだけには限定されないが、磁気テープカセット、フラッシュメモリカード、デジタル多用途ディスク、デジタルビデオテープ、半導体RAM、半導体ROMなどがある。ハードディスクドライブ641は一般に、インターフェイス640などの固定式メモリインターフェイスを介してシステムバス621に接続され、磁気ディスクドライブ651および光ディスクドライブ655は一般に、インターフェイス650などの取外式メモリインターフェイスによってシステムバス621に接続される。
ドライブおよびその関連のコンピュータ可読媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、およびコンピュータ610の他のデータの記憶域を提供する。図6では例えば、ハードディスクドライブ641は、オペレーティングシステム644、アプリケーションプログラム645、他のプログラムモジュール646、およびプログラムデータ647を記憶するものとして示されている。これらの構成要素は、オペレーティングシステム634、アプリケーションプログラム635、他のプログラムモジュール636、およびプログラムデータ637と同じであっても、異なっていてもよいことに留意されたい。オペレーティングシステム644、アプリケーションプログラム645、他のプログラムモジュール646、およびプログラムデータ647は少なくとも異なるコピーであることを示すために、ここではそれらに異なる番号を付している。
ユーザは、キーボード662、および一般にマウス、トラックボール、またはタッチパッドと呼ばれるポインティングデバイス661などの入力装置を介してコマンドおよび情報をコンピュータ610に入力することができる。他の入力装置(図示せず)には、マイクロフォン、ジョイスティック、ゲームパッド、衛星パラボラアンテナ、スキャナなどがある。これらおよび他の入力装置は、しばしばシステムバスに結合されているユーザ入力インターフェイス660を介して処理ユニット620に接続されるが、パラレルポート、ゲームポート、ユニバーサルシリアルバス(USB)など他のインターフェイスおよびバス構造で接続してもよい。
モニタ691または他のタイプの表示装置もまた、グラフィック処理ユニット(GPU)およびビデオメモリ690を含み得る、ビデオインターフェイスなどのインターフェイスを介してシステムバス621に接続される。モニタに加えて、コンピュータは、出力周辺インターフェイス695を介して接続できるスピーカ697、プリンタ696などの他の周辺出力装置を含むこともできる。
コンピュータ610は、リモートコンピュータ680など1つまたは複数のリモートコンピュータへの論理接続を使用してネットワーク式環境で動作することができる。リモートコンピュータ680は、パーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ピア装置、または他の一般のネットワークノードでよく、一般にコンピュータ610に関連して上述した多くまたはすべての要素を含むが、図6にはメモリ記憶装置681のみを示している。示された論理接続は、LAN671およびWAN673を含んでいるが、他のネットワークを含むこともできる。こうしたネットワーキング環境は、オフィス、全社規模のコンピュータネットワーク、イントラネット、およびインターネットではごく一般的である。
LANネットワーキング環境で使用する場合、コンピュータ610は、ネットワークインターフェイスまたはアダプタ670を介してLAN671に接続される。WANネットワーキング環境で使用する場合、コンピュータ610は一般に、モデム672、またはインターネットなどWAN673を介して通信を確立する他の手段を含む。モデム672は、内蔵のものでも外付けのものでもよく、ユーザ入力インターフェイス660または他の適切な機構を介してシステムバス621に接続することができる。ネットワーク式環境では、コンピュータ610に関連して示したプログラムモジュール、またはその一部をリモートメモリ記憶装置に格納することができる。図6は、それだけには限定されないが一例として、リモートアプリケーションプログラム685をメモリ装置681上に存在するものとして示している。図示したネットワーク接続は例であり、コンピュータ間の通信リンクを確立する他の手段を使用することができることは理解されよう。
上述したように、本発明の実施形態例を、様々なコンピューティング装置との関連で説明してきたが、基礎を成す概念を、新しい、かつ/または変更されたコーデックを介して処理されたメディアを使用してアプリケーションコードを変更することを必要とせずに、新しい、かつ/または変更されたコーデックに対応することが求められる、任意のコンピューティング装置またはシステムに適用することができる。
本明細書に記載した様々な技術を、ハードウェア、ソフトウェア、または必要に応じてその組み合わせと共に実装することができる。したがって、本発明の方法および装置、またはそのいくつかの態様または一部は、フロッピーディスク、CD−ROM、ハードドライブ、または他の任意のマシン可読記憶媒体など、有形の媒体に組み込まれるプログラムコード(すなわち命令)の形をとることができ、プログラムコードがコンピュータなどのマシンにロードされ、それによって実行されると、そのマシンは本発明を実施する装置となる。プログラム可能コンピュータ上でプログラムコードを実行する場合、コンピューティング装置は一般に、プロセッサ、プロセッサによって読み取り可能な記憶媒体(揮発性および不揮発性メモリおよび/または記憶要素を含む)、少なくとも1つの入力装置、および少なくとも1つの出力装置を含む。必要に応じて、プログラムは、アセンブリ言語またはマシン言語で実施することができる。どんな場合でも、言語はコンパイル型またはインタプリタ型言語とすることができ、ハードウェア実装と組み合わせることができる。
本発明の方法および装置は、電子配線またはケーブルなどを介して、光ファイバを介して、または他の任意の送信形式を介してなど、何らかの送信媒体を介して送信されるプログラムコードの形式で組み込まれる通信を介して実施することもでき、プログラムコードは、EPROM、ゲートアレイ、プログラム可能論理装置(PLD)、クライアントコンピュータなど、マシンによって受信され、そこにロードされ、それによって実行されると、そのマシンは本発明を実施する装置になる。汎用プロセッサ上に実装されるとき、プログラムコードは、プロセッサと組み合わされて、本発明の機能を呼び出すように動作する一意の装置を提供する。さらに、本発明との関連で使用される任意の記憶技術は、常にハードウェアとソフトウェアとの組み合わせとすることができる。
本発明の一実施形態例によるCALは、統合された簡単なインターフェイスを、異なるソースから来る複数のコーデックに提供する。新しいコーデックの追加の複雑さが低減される。低レベルのコーデックライブラリは、クライアントアプリケーションコードを修正する必要なく、いつでも交換することができる。開発時間は、コードの再利用の能力により短縮される。CALは、任意のコーデックがXMediaライブラリAPIを介してゲーム開発者に公開される簡単で統合された機構を提供する。CALオブジェクトからの入力および出力は、メモリ、ファイル、ネットワーク、キュー、ユーザ定義の入力など、ほぼすべてのストリームクラスを介して抽象化される。CALの実装により、データをストリームとの間でやり取りすることによってシステムテストが改善され、個々の構成要素が正しく働いているかを容易に確認することができる。
本発明を様々な図の好ましい実施形態と共に説明してきたが、本発明から逸脱することなく本発明の同じ機能を実行するために、他の同様の実施形態を使用し、または変更および追加を記載した実施形態に加えることができることを理解されたい。例えば、本発明の一実施形態例は、例えば図1に示されているように、メディアソースとストリームオブジェクトの間に実装されるメディアソース抽出層(MSAL)を含んでいてもよい。ストリームオブジェクトは、MSALと対話し、メディアソースとは対話しない。メディアソース間の差は、ストリームオブジェクトには関係ない。新しいメディアソースは、ストリームオブジェクトを変更することなく、ストリームオブジェクトによって導入され、使用され得る。したがって、本発明は、任意の単一の実施形態に限定されるべきではなく、むしろ添付の特許請求の範囲による幅および範囲で解釈すべきである。
本発明の一実施形態例によるメディアプレーヤにメディアを提供するシステムを示すブロック図である。 本発明の一実施形態例によるコーデック抽象化層(CAL)の単一のインスタンスを示す図である。 本発明の一実施形態例による複数のメディアソース、複数のデコーダオブジェクト、複数のメモリキュー、および複数のレンダラオブジェクトを示すCALの図である。 本発明の一実施形態例によるCALのクラス階層図である。 本発明の一実施形態例によるサブクラスを示すCALのより詳細なクラス階層図である。 本発明の態様が実装され得るコンピューティング環境例を示すブロック図である。

Claims (18)

  1. メディアをメディアプレーヤに提供する方法であって、
    所定の数の符号化技術のうちの少なくとも1つの符号化技術に従って符号化された符号化メディアを複数のメディアソースのうちの少なくとも1つから受信するステップと、
    所定の数の復号技術のうち、前記少なくとも1つの符号化技術に対応する復号技術に従って、当該受信した符号化メディアをアプリケーションプログラミングインターフェース(API)を用いて復号するステップであって、前記APIは、前記複数のメディアソースの各々に対応する前記符号化メディアを処理するための複数のコーデックを備え、前記APIは、各コーデック毎に、CALベースクラス、デコーダベースクラス及びレンダラベースクラスを有するクラス階層を有するように構造化され、前記デコーダベースクラスは、音声デコーダクラス、映像デコーダクラス、サブデコーダクラス、および画像デコーダクラスを含むサブクラスを有する、ステップと、
    前記復号技術に対応するレンダリング技術に基づいて当該復号されたメディアが複数のメディアプレーヤのうちの少なくとも1つによってレンダリングされるように、前記復号されたメディアを前記APIを用いて処理するステップであって、前記復号技術ごとに1つのレンダリング技術が関連付けられ、前記レンダラベースクラスは、音声レンダラクラス、映像レンダラクラス、サブレンダラクラス、および画像レンダラクラスを含むサブクラスを有する、ステップと
    を含み、
    前記CALベースクラスは、前記クラス階層において前記デコーダベースクラス及び前記レンダラベースクラスよりも上位に位置付けられていることを特徴とする方法。
  2. 前記受信した符号化メディアを所定のフォーマットに従ってフォーマットするステップと、
    当該フォーマットされた符号化メディアを復号するために提供するステップと
    をさらに含むことを特徴とする請求項1に記載の方法。
  3. 前記複数のメディアソースは、ファイル、メモリ、httpソース、キュー、カスタムソース、ネットワーク、およびゲームメディアソースのうちの少なくとも1つを含むことを特徴とする請求項1に記載の方法。
  4. 前記符号化メディアは、符号化された音声メディア、符号化された映像メディア、符号化された画像メディア、符号化された動画メディア、および符号化されたゲームメディアのうちの少なくとも1つを含むことを特徴とする請求項1に記載の方法。
  5. 前記メディアは、WAV、MP3、AAC、MP4、WMA、PAC、DPCM、ADPCM、JPEG、TIFF、およびBMPのうちの少なくとも1つに従ってフォーマットされることを特徴とする請求項1に記載の方法。
  6. メディアをメディアプレーヤに提供するシステムであって、
    所定の数の符号化技術のうちの少なくとも1つの符号化技術に従って符号化された符号化メディアを複数のメディアソースのうちの少なくとも1つから受信し、当該受信した符号化メディアを所定のフォーマットで提供する受信機と、
    当該フォーマットされたメディアを受信し、所定の数の復号技術のうち、前記少なくとも1つの符号化技術に対応する復号技術に従って前記フォーマットされたメディアをアプリケーションプログラミングインターフェース(API)を用いてそれぞれ復号するデコーダであって、前記APIは、前記複数のメディアソースの各々に対応する前記符号化メディアを処理するための複数のコーデックを備え、前記APIは、各コーデック毎に、CALベースクラス、デコーダベースクラス及びレンダラベースクラスを有するクラス階層を有するように構造化され、前記デコーダベースクラスは、音声デコーダクラス、映像デコーダクラス、サブデコーダクラス、および画像デコーダクラスを含むサブクラスを有する、デコーダと、
    当該復号されたメディアを受信し、前記復号技術に対応するレンダリング技術に基づいて前記復号されたメディアが複数のメディアプレーヤのうちの少なくとも1つによってレンダリングされるように、前記復号されたメディアを前記APIを用いて処理するレンダラであって、前記復号技術ごとに1つのレンダリング技術が関連付けられ、前記レンダラベースクラスは、音声レンダラクラス、映像レンダラクラス、サブレンダラクラス、および画像レンダラクラスを含むサブクラスを有する、レンダラと
    を含み、
    前記CALベースクラスは、前記クラス階層において前記デコーダベースクラス及び前記レンダラベースクラスよりも上位に位置付けられていることを特徴とするシステム。
  7. 前記所定の数の復号技術のうちのそれぞれ1つに従って復号された復号メディアを受信し、前記復号されたメディアを前記レンダラに提供する少なくとも1つのメモリキューをさらに含むことを特徴とする請求項6に記載のシステム。
  8. 前記複数のメディアソースは、ファイル、メモリ、httpソース、キュー、カスタムソース、ネットワーク、およびゲームメディアソースのうちの少なくとも1つを含むことを特徴とする請求項6に記載のシステム。
  9. 前記符号化メディアは、符号化された音声メディア、符号化された映像メディア、符号化された画像メディア、符号化された動画メディア、および符号化されたゲームメディアのうちの少なくとも1つを含むことを特徴とする請求項6に記載のシステム。
  10. 前記メディアは、WAV、MP3、AAC、MP4、WMA、PAC、DPCM、ADPCM、JPEG、TIFF、およびBMPのうちの少なくとも1つに従ってフォーマットされることを特徴とする請求項6に記載のシステム。
  11. 当該レンダリングされたメディアは、音声メディア、映像メディア、画像メディア、映画メディア、およびゲームメディアのうちの少なくとも1つを含むことを特徴とする請求項6に記載のシステム。
  12. 前記メディアプレーヤは、音声メディアプレーヤ、映像メディアプレーヤ、動画映像メディアプレーヤ、DVD、CD、およびゲームメディアプレーヤのうちの少なくとも1つを含むことを特徴とする請求項6に記載のシステム。
  13. メディアをメディアプレーヤに提供するシステムであって、
    所定の数の符号化技術のうちの少なくとも1つの符号化技術に従って符号化された符号化メディアを複数のメディアソースのうちの少なくとも1つから受信し、前記符号化メディアを所定のフォーマットで提供するストリームオブジェクトと、
    当該フォーマットされたメディアを受信し、所定の数の復号技術のうち、前記少なくとも1つの符号化技術に対応する復号技術に従って前記フォーマットされたメディアをアプリケーションプログラミングインターフェース(API)を用いてそれぞれ復号するデコーダオブジェクトであって、前記APIは、前記複数のメディアソースの各々に対応する前記符号化メディアを処理するための複数のコーデックを備え、前記APIは、各コーデック毎に、CALベースクラス、デコーダベースクラス及びレンダラベースクラスを有するクラス階層を有するように構造化され、前記デコーダベースクラスは、音声デコーダクラス、映像デコーダクラス、サブデコーダクラス、および画像デコーダクラスを含むサブクラスを有する、デコーダオブジェクトと、
    当該復号されたメディアを受信し、前記復号技術に対応するレンダリング技術に基づいて前記復号されたメディアが複数のメディアプレーヤのうちの少なくとも1つによってレンダリングされるように、前記復号されたメディアを前記APIを用いて処理するレンダラオブジェクトであって、前記復号技術ごとに1つのレンダリング技術が関連付けられ、前記レンダラベースクラスは、音声レンダラクラス、映像レンダラクラス、サブレンダラクラス、および画像レンダラクラスを含むサブクラスを有する、レンダラオブジェクトと
    を含み、
    前記CALベースクラスは、前記クラス階層において前記デコーダベースクラス及び前記レンダラベースクラスよりも上位に位置付けられていることを特徴とするシステム。
  14. 前記復号されたメディアを受信し、前記復号されたメディアを前記レンダラオブジェクトに提供する、少なくとも1つのメモリキューをさらに含むことを特徴とする請求項13に記載のシステム。
  15. 前記複数のメディアソースは、ファイル、メモリ、httpソース、キュー、カスタムソース、ネットワーク、およびゲームメディアソースのうちの少なくとも1つを含むことを特徴とする請求項13に記載のシステム。
  16. 前記符号化メディアは、符号化された音声メディア、符号化された映像メディア、符号化された画像メディア、符号化された動画メディア、および符号化されたゲームメディアのうちの少なくとも1つを含むことを特徴とする請求項13に記載のシステム。
  17. 前記メディアは、WAV、MP3、AAC、MP4、WMA、PAC、DPCM、ADPCM、JPEG、TIFF、およびBMPのうちの少なくとも1つに従ってフォーマットされることを特徴とする請求項13に記載のシステム。
  18. 当該レンダリングされたメディアは、音声メディア、映像メディア、画像メディア、映画メディア、およびゲームメディアのうちの少なくとも1つを含むことを特徴とする請求項13に記載のシステム。
JP2008508930A 2005-04-26 2006-04-19 音声/映像コーデックを抽象化するためのシステム Active JP5335416B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/114,510 2005-04-26
US11/114,510 US7634727B2 (en) 2005-04-26 2005-04-26 System for abstracting audio-video codecs
PCT/US2006/014831 WO2006115962A2 (en) 2005-04-26 2006-04-19 System for abstracting audio-video codecs

Publications (2)

Publication Number Publication Date
JP2008542855A JP2008542855A (ja) 2008-11-27
JP5335416B2 true JP5335416B2 (ja) 2013-11-06

Family

ID=37188542

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008508930A Active JP5335416B2 (ja) 2005-04-26 2006-04-19 音声/映像コーデックを抽象化するためのシステム

Country Status (6)

Country Link
US (1) US7634727B2 (ja)
EP (1) EP1875622A4 (ja)
JP (1) JP5335416B2 (ja)
KR (1) KR101219923B1 (ja)
CN (1) CN101208872A (ja)
WO (1) WO2006115962A2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070234193A1 (en) * 2006-03-29 2007-10-04 Huan-Hung Peng Method for simultaneous display of multiple video tracks from multimedia content and playback system thereof
US9680900B2 (en) * 2007-05-01 2017-06-13 Agora Laboratories Inc. Universal multimedia engine and method for producing the same
JP5652642B2 (ja) * 2010-08-02 2015-01-14 ソニー株式会社 データ生成装置およびデータ生成方法、データ処理装置およびデータ処理方法
US9264720B2 (en) * 2010-10-08 2016-02-16 Samsung Electronics Co., Ltd Apparatus and method for multimedia service
TWI687918B (zh) * 2010-12-03 2020-03-11 美商杜比實驗室特許公司 音頻解碼裝置、音頻解碼方法及音頻編碼方法
UA109312C2 (uk) 2011-03-04 2015-08-10 Імпульсно-кодова модуляція з квантуванням при кодуванні відеоінформації
RU2580022C2 (ru) * 2011-08-31 2016-04-10 Общество С Ограниченной Ответственностью "Базелевс Инновации" Визуализация текста на естественном языке
CN103582012B (zh) 2012-08-07 2018-06-01 中兴通讯股份有限公司 一种数据分发方法及装置

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10211358A (ja) * 1997-01-28 1998-08-11 Sega Enterp Ltd ゲーム装置
JP4726097B2 (ja) * 1997-04-07 2011-07-20 エイ・ティ・アンド・ティ・コーポレーション 適応制御を行うことができるmpegコード化オーディオ・ビジュアル対象物をインターフェースで連結するためのシステムおよび方法
US6233356B1 (en) * 1997-07-08 2001-05-15 At&T Corp. Generalized scalability for video coder based on video objects
US6216152B1 (en) * 1997-10-27 2001-04-10 Sun Microsystems, Inc. Method and apparatus for providing plug in media decoders
US6934906B1 (en) * 1999-07-08 2005-08-23 At&T Corp. Methods and apparatus for integrating external applications into an MPEG-4 scene
US6452600B1 (en) * 1999-10-28 2002-09-17 Nintendo Co., Ltd. Graphics system interface
US7080386B2 (en) * 2000-01-25 2006-07-18 Texas Instruments Incorporated Architecture with digital signal processor plug-ins for general purpose processor media frameworks
US6523046B2 (en) 2000-02-25 2003-02-18 Microsoft Corporation Infrastructure and method for supporting generic multimedia metadata
US6697074B2 (en) * 2000-11-28 2004-02-24 Nintendo Co., Ltd. Graphics system interface
US7080152B2 (en) * 2001-06-14 2006-07-18 International Business Machines Corporation Broadcast user controls for streaming digital content under remote direction
US20030084283A1 (en) * 2001-09-04 2003-05-01 Pixton Jeffrey Seth Digital broadcast system
US7599434B2 (en) * 2001-09-26 2009-10-06 Reynolds Jodie L System and method for compressing portions of a media signal using different codecs
CA2669171C (en) * 2001-09-26 2012-05-01 Interact Devices System and method for communicating media signals
US7457359B2 (en) * 2001-09-26 2008-11-25 Mabey Danny L Systems, devices and methods for securely distributing highly-compressed multimedia content
US7302102B2 (en) * 2001-09-26 2007-11-27 Reynolds Jodie L System and method for dynamically switching quality settings of a codec to maintain a target data rate
US7574113B2 (en) 2002-05-06 2009-08-11 Sony Corporation Video and audio data recording apparatus, video and audio data recording method, video and audio data reproducing apparatus, and video and audio data reproducing method
US20040128421A1 (en) 2002-12-30 2004-07-01 Intel Corporation Apparatus and method for providing upgraded system memory for mobile platforms using mobile docking stations
US20050033758A1 (en) * 2003-08-08 2005-02-10 Baxter Brent A. Media indexer
US20050135792A1 (en) * 2003-12-19 2005-06-23 Microtek International, Inc. Compact multimedia player
US20050273825A1 (en) * 2004-06-02 2005-12-08 Miran Eldeeb Media converter with detachable media player
US8434117B2 (en) * 2005-02-14 2013-04-30 Microsoft Corporation Tunerless media presentation unit and methods of use

Also Published As

Publication number Publication date
KR101219923B1 (ko) 2013-01-21
JP2008542855A (ja) 2008-11-27
CN101208872A (zh) 2008-06-25
WO2006115962A3 (en) 2007-11-15
US20060242551A1 (en) 2006-10-26
WO2006115962A2 (en) 2006-11-02
US7634727B2 (en) 2009-12-15
EP1875622A4 (en) 2012-04-25
KR20080013871A (ko) 2008-02-13
EP1875622A2 (en) 2008-01-09

Similar Documents

Publication Publication Date Title
JP5335416B2 (ja) 音声/映像コーデックを抽象化するためのシステム
JP4726096B2 (ja) Mpegコード化オーディオ・ビジュアル対象物を表すビット・ストリームの発生およびインターフェースで連結するためのシステムおよび方法
JP5781497B2 (ja) 拡張可能なメディア形式を持つホスト型アプリケーションプラットフォーム
JP4726097B2 (ja) 適応制御を行うことができるmpegコード化オーディオ・ビジュアル対象物をインターフェースで連結するためのシステムおよび方法
JP2006040511A (ja) マルチメディアコンテンツ再生装置、再生方法、生成装置、生成方法、及びそのマルチメディアコンテンツを記録した記録媒体
US10025787B2 (en) Systems and methods for selecting digital data for archival
CN101009836B (zh) 基于双处理器的嵌入式视频播放装置
WO2013112758A1 (en) Systems and methods for encoding, sharing, and decoding of multimedia
US11113329B2 (en) Systems and methods for selecting digital data for archival
US20140096168A1 (en) Media Playing Tool with a Multiple Media Playing Model
US20130121663A1 (en) Method and apparatus for generating multimedia data having decoding level, and method and apparatus for reconstructing multimedia data by using the decoding level
JP2003066994A (ja) データ復号装置及びデータ復号方法、並びにプログラム、記憶媒体
WO2005046058A1 (en) Method and apparatus for encoding and decoding digital data
KR20230124552A (ko) 클라이언트 장치에서의 비디오 스트림의 디코딩
King Media Playback
Bakhirev et al. Introduction to Core Audio
Tiwari et al. Facilitating Audio and Video
KR20110007746A (ko) DMA를 이용한 임베디드 WinCE 기반의 다이렉트쇼 필터 및 그 구동방법
JP2007141407A (ja) 記録メディア及びそれを用いた記録再生システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090317

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110802

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111101

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20111125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120326

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20120327

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20120327

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20120416

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120703

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121002

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121211

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130311

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130318

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20130319

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20130319

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130411

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130418

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130513

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130520

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130611

TRDD Decision of grant or rejection written
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20130701

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130702

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130731

R150 Certificate of patent or registration of utility model

Ref document number: 5335416

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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