JP2010146575A - メディア処理方法 - Google Patents

メディア処理方法 Download PDF

Info

Publication number
JP2010146575A
JP2010146575A JP2009291520A JP2009291520A JP2010146575A JP 2010146575 A JP2010146575 A JP 2010146575A JP 2009291520 A JP2009291520 A JP 2009291520A JP 2009291520 A JP2009291520 A JP 2009291520A JP 2010146575 A JP2010146575 A JP 2010146575A
Authority
JP
Japan
Prior art keywords
program
data
unit
media
executing
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.)
Pending
Application number
JP2009291520A
Other languages
English (en)
Inventor
Kiyohiko Sumida
清彦 隅田
Kensuke Kotani
謙介 小谷
Yoshihiro Koga
義宏 古賀
Takaharu Morohashi
隆治 諸橋
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.)
Panasonic Corp
Original Assignee
Panasonic 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 Panasonic Corp filed Critical Panasonic Corp
Priority to JP2009291520A priority Critical patent/JP2010146575A/ja
Publication of JP2010146575A publication Critical patent/JP2010146575A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/541Interprogram communication via adapters, e.g. between incompatible applications
    • 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/545Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5017Task decomposition

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Stored Programmes (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

【課題】ソフトウェアの開発効率およびソフトウェアの品質を向上させるメディア処理方法およびメディア処理プログラムを提供する。
【解決手段】本発明のメディア処理方法は、複数のプログラムモジュールをプロセッサに実行させることにより、メディア処理を行うメディア処理方法であっ て、第1階層の第1プログラムモジュールを実行することによって、メディアデータの入出力を制御し、1以上の呼び出し時刻を決定し、当該時刻に第2階層の 1以上の第2プログラムモジュールを呼び出す第1ステップと、第2階層の第2プログラムモジュールを実行することによって、前記メディアデータを対してメ ディア処理の構成要素であるデータ変換をプロセッサに実行させる第2ステップとを有する。
【選択図】図2

Description

本発明は、AVデータの復号化処理または符号化処理を含むメディア処理をコンピュータに実行させるメディア処理方法、メディア処理プログラムに関する。
近年、AVデータの復号化処理や符号化処理を含むメディア処理を実行する種々のデジタル家電機器が製品化されている。
メディア処理を行うためのDSPを制御するソフトウェアモジュールをライブラリ化して利用する技術がある(例えば非特許文献1)。図1は、従来技術におけるDSPを制御するメディア処理用ソフトウェアの構成を示すブロック図である。同図において、このソフトウェアは、時間管理モジュール501、メディア処理制御モジュール502、データ変換処理ライブラリ504を含む。データ変換処理ライブラリ504は、複数のライブラリモジュールを含む。各ライブラリモジュールは、オーディオ符号化/復号化、オーディオフィルタ処理、画像符号化/復号化などを所定のデータ単位で処理する。メディア処理制御モジュール502は、データ変換APIを介して、必要なライブラリモジュールを組み合わせて呼び出すことにより各種メディア処理を実行させる。時間管理モジュール501は、リアルタイム性を確保するために、メディア処理制御モジュール502によるライブラリモジュールの呼び出し時刻を管理する。
これによれば、汎用的なメディア処理の単位をライブラリモジュール化することによりソフトウェアの再利用化を可能にする。
Texas Instruments Incorporated, "TMS320 DSP Algorithm Standard Rules and Guidelines (Rev. E)", 17 Oct 2002
しかしながら、上記従来技術によれば、デジタルテレビ、携帯端末、デジタルカメラ、デジタルムービー、DVDレコーダ、ホームサーバなど異なる製品に対しては、ライブラリモジュールより上位のソフトウェアモジュールを製品毎に個別に開発する必要があり、開発効率が悪いという問題がある。
また、仕様変更に対しても製品個別に対応する必要があるので、ソフトウェアの品質を保証することが困難であるという問題がある。各製品での仕様変更には、次のような要因が考えられる。
(a)ユーザの要望に応じ、再生/停止のようなマクロレベル制御や、1フレーム/1画像デコードのようなミクロレベル制御といった制御粒度を変更する場合、(b)アプリケーション機能やAVシステム構成に応じて、機能(特殊再生、AV再生中撮像等)を追加/変更した場合や、システム制御方式(AV同期、外部入出力制御など)を変更する場合、(c)規格バージョンアップやアルゴリズム改善等による、信号処理方式の変更・追加する場合、(d)低コスト化、処理効率化、他ハードウェア流用などにより機能の一部をハードウェア化する場合。
本発明は、ソフトウェアの開発効率およびソフトウェアの品質を向上させるメディア処理方法およびメディア処理プログラムを提供することを目的とする。
上記課題を解決するため本発明のメディア処理方法は、複数のプログラムモジュールをプロセッサに実行させることにより、メディア処理を行うメディア処理方法であって、第1階層の第1プログラムモジュールを実行することによって、メディアデータの入出力を制御し、1以上の呼び出し時刻を決定し、当該時刻に第1階層より下の第2階層の1以上の第2プログラムモジュールを呼び出す第1ステップと、第2階層の第2プログラムモジュールを実行することによって、第2階層より下の第3階層の1以上の第3プログラムモジュールを呼び出す第2ステップと、第3階層の第3プログラムモジュールを実行することによって、前記メディアデータに対してメディア処理の最小構成要素であるデータ変換処理をプロセッサに実行させる第3ステップとを有する。
この構成によれば、メディア処理方法を実現するソフトウェアの開発効率を向上することができる。すなわち、階層毎に、役割、機能、制御レベル、インタフェースを標準化することにより、ソフトウェアモジュールの流用性を拡大する。これにより開発されたソフトウェアモジュールの再利用性を高め、モバイルからサーバといった各種の製品を広くターゲットしてソフトウェアの開発効率を向上させることができる。
さらに、上記ソフトウェアの設計品質を向上させることができる。すなわち、階層化によりソフトウェア設計思想を明確化・共通化することにより、ソフトウェアの理解容易性を高める。また、標準化されたソフトウェア構造を再利用することで、設計品質を向上させることができる。
ここで、前記第1プログラムモジュールは、第1から第4プログラムセグメントを含み、前記第1ステップは、第1プログラムセグメントを実行することによって、第1階層より上の階層のホストプログラムからのコマンドを解析するコマンド処理ステップと、第2プログラムセグメントを実行することによって、解析されたコマンドに従って第3プログラムセグメントの動作タイミングと、1以上の前記呼び出し時刻とを決定するタイミング決定ステップと、第3プログラムセグメントを実行することによって、前記動作タイミングに従ってメディアデータの入出力を制御する入出力制御ステップと、第4プログラムセグメントを実行することによって、1以上の呼び出し時刻に第2プログラムモジュールを呼び出す第1呼び出しステップとを含むようにしてもよい。
ここで、第1プログラムセグメントは、第1のアプリケーション・プログラム・インタフェースを介して、メディア処理の開始、停止または一時停止を指示する前記コマンドを受けるようにしてもよい。
ここで、前記第2プログラムモジュールは、第5から第7プログラムセグメントを含み、前記第2ステップは、第5プログラムセグメントを実行することによって、第1のプログラムモジュールから処理対象のデータを受信するステップと、第6プログラムセグメントを実行することによって、受信された処理対象データに対して1つ以上の第3プログラムモジュールを順次呼び出す第2呼び出しステップと、第7プログラムセグメントを実行することによって、呼び出された第3プログラムモジュールからデータ変換結果を、第1プログラムモジュールに送信する送信ステップとを含むようにしてもよい。
ここで、第2ステップにおいて、第2のプログラムモジュールを実行することによって、入力データに対して1つ以上の第3プログラムモジュールを順次呼び出して、その結果を第1のプログラムモジュールに返し、第1ステップにおいて、第1のプログラムモジュールを実行することによって、第2のプログラムモジュールから返されたデータの出力を制御するようにしてもよい。
ここで、前記第1呼び出しステップにおいて、前記1つ以上の第3プログラムモジュールを指定するようにしてもよい。
ここで、前記第1呼び出しステップにおいて、前記1つ以上の第3プログラムモジュールの動作パラメータを指定するようにしてもよい。
ここで、前記第1呼び出しステップにおいて、前記1つ以上の第3プログラムモジュールの実行順序を指定するようにしてもよい。
上記構成によれば、各種製品における変更に対して、柔軟に対応でき、プログラムモジュールの流用性を高めることができる。例えば、制御粒度の変更に容易に対応することができる。つまり、再生/停止のようなマクロレベル制御や、1フレーム/1画像デコードのようなミクロレベル制御といった制御粒度毎に容易に変更することができる。
また、ホストとなるアプリケーションの機能やシステム構成に依存する制御方式の変更にも容易に対応することができる。アプリケーション機能やシステム構成に応じて、機能(特殊再生、AV再生中撮像等)を追加/変更した場合や、システム制御方式(AV同期、外部入出力制御など)を変更した場合の影響を局所化できる。
さらに、AV符号化の規格やAV信号処理方式の変更や追加に容易に対応することができる。つまり、規格バージョンアップやアルゴリズム改善等による、信号処理方式の変更・追加の影響を局所化できる。
また、一部の機能のハードウェア化に容易に対応することができる。低コスト化、処理効率化、他のハードウェアへの流用などにより、一部の機能をハードウェア化した場合に対応するソフトウェアの影響を、一部の機能に対応するプログラムモジュールに局所化することができ、ソフトウェアの変更を最小限に抑えることができる。
また、本発明のプログラムは、メディア処理を行うためにプロセッサに実行されるプログラムであって、メディアデータの入出力を制御し、1以上の呼び出し時刻を決定し、当該呼び出し時刻に第1階層より下の第2階層に属する1以上第2プログラムモジュールを呼び出す第1階層の第1プログラムモジュールと、第2階層より下の第3階層の1以上の第3プログラムモジュールを呼び出す第2階層の第2プログラムモジュールと、前記メディアデータに対してメディア処理を構成要素であるデータ変換をプロセッサに実行させる第3階層の1以上の第3プログラムモジュールとを含む。
以上のように本発明のメディア処理方法およびプログラムによれば、メディア処理方法を実現するソフトウェアの開発効率を向上することができる。また、ソフトウェアの設計品質を向上させることができる。各種製品における変更に対して、柔軟に対応でき、プログラムモジュールの流用性を高めることができる。
図1は、従来技術におけるDSPを制御するメディア処理用ソフトウェアの構成を示すブロック図である。 図2は、実施の形態におけるメディア処理用システムLSIの構成を示すブロック図である。 図3Aは、メディアプロセッサを制御するソフトウェアの構成を示すブロック図である。 図3Bは、メディアプロセッサを制御するソフトウェアの構成の一例を示すブロック図である。 図4は、メディアモジュール層のプログラムモジュールの構成を示すブロック図である。 図5は、メディアコントローラ層のプログラムモジュールの構成を示すブロック図である。 図6は、メディアモジュール層のプログラムモジュール(オーディオ再生MM)の構成例を示すブロック図である。 図7は、メディアコントローラ層のプログラムモジュール(オーディオ再生MC)の構成例を示すブロック図である。 図8は、メディアモジュール層のプログラムモジュール(オーディオ録音MM)の構成例を示すブロック図である。 図9は、メディアコントローラ層のプログラムモジュール(オーディオ録音MC)の構成例を示すブロック図である。 図10は、メディアコントローラ層のプログラムモジュール(多重化MC)の構成例を示すブロック図である。 図11は、メディアコントローラ層のプログラムモジュール(多重分離MC)の構成例を示すブロック図である。 図12は、メディアモジュール層のプログラムモジュール(ビデオ再生MM)の構成例を示すブロック図である。 図13は、メディアコントローラ層のプログラムモジュール(ビデオ再生MC)の構成例を示すブロック図である。 図14は、メディアモジュール層のプログラムモジュール(ビデオ録画MM)の構成例を示すブロック図である。 図15は、メディアコントローラ層のプログラムモジュール(ビデオ録画MC)の構成例を示すブロック図である。 図16は、本発明のメディア処理方法を適用した家電製品の具体例を示す図である。 図17は、本発明のメディア処理方法を適用したオーディオ再生装置の構成を示すブロック図である。 図18は、本発明のメディア処理方法を適用したオーディオ録音装置の構成を示すブロック図である。 図19は、本発明のメディア処理方法を適用したビデオ再生装置の構成を示すブロック図である。 図20は、本発明のメディア処理方法を適用したビデオ録画装置の構成を示すブロック図である。 図21は、本発明のメディア処理方法を適用したビデオ再生装置の構成を示すブロック図である。
本発明の実施の形態におけるメディア処理方法、装置およびプログラムについて説明する。まず、メディア処理を行うハードウェア構成について説明する。
図2は、実施の形態におけるメディア処理用システムLSIの構成を示すブロック図である。同図においてシステムLSI10は、CPU11、メディアプロセッサ12、ストリームI/O部13、メモリ制御部14、AVI/O部15を備える。
CPU11は、システムLSI10の外部とのコマンド送受信、メディアプロセッサ12の制御などシステムLSI10全体を制御する。メディアプロセッサ12は、CPU11の制御の下でメディア処理を行う。メディア処理は、音声の符号化処理、音声の復号化処理、動画像の符号化処理、動画像の復号化処理、テレビ電話処理などを含む。ストリームI/O部13は、ストリームデータを入出力する。ストリームデータの入出力は、例えば、外部のチューナ21からのストリームデータ入力や、光ディスク22、ハードディスク23またはメモリカード24とのストリーム入出力などである。メモリ制御部14は、メモリ16へのアクセスを制御する。AVI/O部15は、AV(Audio、Video)データを入出力する。AVデータの入出力は、例えば、ディスプレイ25へのAVデータ出力、カメラ26からのAVデータ入力などである。メモリ16は、CPU11およびメディアプロセッサ12のソフトウェアや、AVデータ、ストリームデータ、メディア処理中の中間データなどを記憶する。
図3Aは、メディアプロセッサ12を制御するソフトウェアの構成例を示すブロック図である。このソフトウェアは、メディアプロセッサ12でのメディア処理を実現するプログラムであり、メディアモジュール層、メディアコントローラ層、メディアライブラリ層の3階層に分かれる。ここで、階層は、ある機能を実現し上位層にそのインタフェースを提供するプログラムモジュールの集合体である。階層間は明確なAPI(Application Programming Interface)で分離される。同図における階層間のAPIを、機器制御レベルAPI100、メディアデータ変換API200、単純データ変換API300と呼ぶ。同図におけるメディアモジュール層は、MM(Media Module)層プログラムモジュール101を含む。メディアコントローラ層は、MC(Media Controller)層プログラムモジュール201a、202bを含む。メディアライブラリ層は、ML(Media Library)層プログラムモジュール301a〜301fを含む。
メディアモジュール層は、メディアコントローラ層を利用してAV再生、TV電話、オーディオ録音など独立したメディア処理機能を実現する。メディアモジュール層は、1つ以上のMM層プログラムモジュール(単に、メディアモジュール(MM)とも呼ぶ。)を含む。
MM層プログラムモジュール101は、CPU11とのインタフェース、メディアコントローラ層の起動タイミング制御によるリアルタイム処理保証、外部入出力等の機能を実現する。MM層プログラムモジュール101には、例えば図3Bに示すように、オーディオ再生のためのMM層プログラムモジュール(オーディオ再生メディアモジュールと呼ぶ。)、AVデータの再生のためのMM層プログラムモジュール(AV再生メディアモジュールと呼ぶ。)、音声通話のためのMM層プログラムモジュール(音声通話メディアモジュールと呼ぶ。)等がある。
メディアコントローラ層は、メディアライブラリ層を利用して、オーディオ、ビデオなどドメイン毎に定義される基本メディア処理機能をメディアモジュール層に提供する。メディアコントローラ層は、1つ以上のMC層プログラムモジュール(単に、メディアコントローラ(MC)とも呼ぶ。)を含む。
MC層プログラムモジュール201a、202bは、それぞれ、メディアライブラリ間のシーケンス制御、排他制御、資源管理等を行う。また、メディアライブラリ毎の違いを吸収し、メディアモジュール層に対して統一したインタフェースを提供する。MC層プログラムモジュールには、例えば図3Bに示すように、オーディオ再生のためのMC層プログラムコントローラ(オーディオ再生メディアコントローラと呼ぶ。)、AVデータの再生のためのMC層プログラムコントローラ(AV再生メディアコントローラと呼ぶ。)、音声通話のためのMC層プログラムコントローラ(音声通話メディアコントローラと呼ぶ。)等がある。
メディアライブラリ層は、コーデック、フィルタなどそれ自体で独立した最小限のメディア処理機能を実現する。ML層プログラムモジュール301a〜301f等は、この最小限のメディア処理機能をメディアプロセッサにより実現する。この最小限のメディア処理機能は、本実施形態におけるメディア処理機能の最小単位である。ML層プログラムモジュールには、例えば図3Bに示すように、AACオーディオデコードのためのML層プログラムライブラリ(AACデコードメディアライブラリと呼ぶ。)、MPEG2のAVデータの再生のためのML層プログラムライブラリ(MPEG2デコードメディアライブラリと呼ぶ。)、音声通話のためのML層プログラムコントローラ(G.726メディアライブラリと呼ぶ。)等がある。
図4は、メディアモジュール層のプログラムモジュールの構成を示すブロック図である。MM層の全てのプログラムモジュールは、制御粒度およびAPIが統一化されているので、同図では複数種類のMM層プログラムモジュール101の代表的な構成を示す。MM層プログラムモジュール101は、コマンド処理部102、時間管理部103、データ入出力制御部104、メディアデータ変換制御部105を含む。
コマンド処理部102は、メディア処理機能をホストが利用するためのインタフェースを提供する。具体的には、ホストCPUアプリケーションとの間のコマンド・データの送受信処理、コマンド解析、メディアモジュールの状態管理、ホストCPU−メディアプロセッサ間の制御パラメータ管理を行う。また、上に述べたとおりMM層プログラムモジュール101は、メディア処理の開始、停止または一時停止などの粗い粒度の非リアルタイム制御を基本とする。コマンド処理部102は、非リアルタイムなホストとの通信を取り扱い、下位層のリアルタイム処理と分離する。これにより、ホストからのコマンド、制御タイミングの変更が生じた際の影響をコマンド処理部102で吸収し、下位層への影響を軽減することができる。言い換えれば、ホストからコマンド処理部102へのAPIは、システムLSIが実装されるシステムに依存して変化し得る。この場合でも、コマンド処理部102から時間管理部103へのインタフェースはシステム要件が同一であれば変化しない。
時間管理部103は、コマンド処理部102により解析されたコマンドに従ってデータ入出力制御部104の動作タイミングを決定し、メディアデータ変換制御部105からのMC層プログラムモジュール201の呼び出しについて、その呼び出し時刻を決定する。この呼び出し時刻は、フレームの周期毎の時刻である。ここで、フレームは、ビデオデータでは動画を構成する1枚の画像であり、オーディオデータでは、所定数(例えば1024)のサンプリングデータの集まりをいう。これにより、時間管理部103は、データ入出力制御部104およびメディアデータ変換制御部105の動作タイミングを制御してリアルタイム性を保証する。また、時間管理部103は、AV再生などのように、要求されるメディア処理機能がオーディオ、ビデオなど複数の分野に跨る場合には、これら複数分野間を同期させる。
データ入出力制御部104は、時間管理部103に決定された動作タイミングに従って、MC層プログラムモジュール201へのメディアデータの入出力を制御する。例えば、MM層プログラムモジュール101がオーディオ再生メディアモジュールである場合には、データ入出力制御部104は、ストリームI/O部13からオーディオ再生メディアモジュールへの符号化オーディオデータの入力と、オーディオ再生メディアモジュールからAVI/O部15への復号化オーディオデータの出力とを制御する。
メディアデータ変換制御部105は、時間管理部103に決定された呼び出し時刻にMC層プログラムモジュール201を呼び出す。例えば、MM層プログラムモジュール101がAVデータ再生メディアモジュールである場合には、図12に示すように、メディアデータ変換制御部105はストリームからオーディオデータとビデオデータとを分離するための分離用MC層プログラムモジュール201f、オーディオ再生用のMC層プログラムモジュール201c、ビデオ再生MCプログラムモジュール201iを呼び出す。
図5は、メディアコントローラ層のプログラムモジュールの構成を示すブロック図である。MC層の全てのプログラムモジュールは、制御粒度およびAPIが統一化されているので、同図では複数種類のMC層プログラムモジュール201の代表的な構成を示す。このMC層プログラムモジュール201は、データ受信部202、データ送信部203、パラメータ受信部204、メディアデータ変換部205を備える。
データ受信部202は、MM層プログラムモジュール101から処理対象の入力データを受信する。
データ送信部203は、ML層プログラムモジュール301からのデータ変換結果を出力データとしてMM層プログラムモジュール101に送信する。
パラメータ受信部204は、複数のML層プログラムモジュール301の指定、その呼び出し順序の指定、各ML層プログラムモジュール301の動作パラメータの指定などをMM層プログラムモジュール101から受信する。
メディアデータ変換部205は、データ受信部202によって受信された入力データを処理するように複数種類のML層プログラムモジュール301g〜301iなどを順次呼び出し、最終的なデータ処理結果をデータ送信部203に渡す。その際、各ML層プログラムモジュール301の処理結果は、次に呼び出されるML層プログラムモジュール301に引き渡される。例えば、MC層プログラムモジュール201がオーディオ再生メディアコントローラ201cである場合、図7に示すように、オーディオ復号化処理モジュールライブラリ301j、オーディオフィルタモジュールライブラリ301k、オーディオフィルタモジュールライブラリ301lを順次呼び出す。
なお、パラメータ受信部204が受信する上記の指定内容は、その一部または全部が省略されていてもよい。省略された場合、メディアデータ変換部205cは予め設定されたデフォルトデータを用いるようにしてもよい。
図6は、メディアモジュール層のプログラムモジュール(オーディオ再生MM)の構成例を示すブロック図である。同図のオーディオ再生MM101bは、図4に示したMM層プログラムモジュール101と同様の構成であって、オーディオ再生用に設計されている。
コマンド処理部102bは、オーディオ再生に関するコマンドを受け取り、解析する。時間管理部103bは、オーディオデータ入出力制御部104bの動作タイミングと、オーディオフレーム周期毎の呼び出し時刻とを決定する。この決定を受けて、オーディオデータ入出力制御部104bは、ストリームI/O部13からの符号化オーディオデータの入力とAVI/O部15への復号化オーディオデータの出力とを制御する。メディアデータ変換制御部105bは、呼び出し時刻にオーディオ再生MC201cを呼び出す。
この構成によりオーディオ再生MM101bは、ホストから再生・停止・設定等の動作コマンドを受けとり、状態を遷移させるとともに、状態に基づいてオーディオ再生メディアコントローラへ指示を行う。再生状態では一定時間間隔でオーディオ再生メディアコントローラへフレーム再生指示を行う(自律動作)。併せてホストからの符号化データをオーディオ再生メディアコントローラに供給する。
図7は、メディアコントローラ層のプログラムモジュール(オーディオ再生MC)の構成例を示すブロック図である。同図のオーディオ再生MC201cは、図5に示したMC層プログラムモジュール201と同様の構成であって、オーディオ再生用に設計されている。同図において、データ受信部202cは、オーディオ再生MM101bから符号化オーディオデータ(オーディオ符号データ)を受信する。データ送信部203cは、オーディオデータ(オーディオ再生データ)を送信する。
パラメータ受信部204cは、複数のML層プログラムモジュール301(オーディオ復号化モジュール301j、オーディオフィルタモジュール301k、オーディオフィルタモジュール301l)の指定、その呼び出し順序の指定、それらの動作パラメータの指定などをオーディオ再生MM101bから受信する。
メディアデータ変換部205cは、オーディオ復号化処理モジュール呼び出し部205c1と、オーディオフィルタモジュール呼び出し部205c2とを備える。オーディオ復号化処理モジュール呼び出し部205c1は、メディアライブラリ層の符号化オーディオデータを復号するオーディオ復号化モジュール301jを呼び出す。オーディオフィルタモジュール呼び出し部205c2は、オーディオ復号化モジュール301jからの復号化オーディオデータに第1段階のフィルタ処理を施すオーディオフィルタモジュール301kを呼び出し、さらに、第1段階のフィルタ処理後のオーディオデータに第2段階のフィルタ処理を施すオーディオフィルタモジュール301lを呼び出す。
この構成により、オーディオ再生MC201cは、オーディオ再生メディアモジュールから1フレーム再生指示を受け取ると、符号化データを取得し、デコード・フィルタ処理を行って、1フレーム分のPCMデータを出力し停止する(1回動作)。実際のデコード・フィルタ処理は、それぞれオーディオデコードライブラリ、オーディオフィルタライブラリを呼び出し実行する。また、オーディオデコードライブラリは、メディアコントローラから関数呼び出しにより同期的に起動され、MP3やAAC等の1フレーム分のデコード処理を行う。
図8は、メディアモジュール層のプログラムモジュール(オーディオ録音MM)の構成例を示すブロック図である。同図のオーディオ録音MM101cは、図4に示したMM層プログラムモジュール101と同様の構成であって、オーディオ録音用に設計されている。
コマンド処理部102cは、オーディオ録音に関するコマンドを受け取り、解析する。時間管理部103cは、オーディオデータ入出力制御部104cの動作タイミングと、オーディオフレーム周期の呼び出し時刻とを決定する。この決定を受けて、オーディオデータ入出力制御部104cは、AVI/O部15からのオーディオデータの入力とストリームI/O部13への符号化オーディオデータの出力とを制御する。メディアデータ変換制御部105cは、呼び出し時刻にオーディオ録音MC201dを呼び出す。
図9は、メディアコントローラ層のプログラムモジュール(オーディオ録音MC)の構成例を示すブロック図である。同図のオーディオ録音MC201dは、図5に示したMC層プログラムモジュール201と同様の構成であって、オーディオ録音用に設計されている。同図において、データ受信部202dは、オーディオ録音MM101cからオーディオデータ(オーディオ入力データ)を受信する。データ送信部203dは、符号化オーディオデータ(オーディオ符号データ)をオーディオ録音MM101cに送信する。
パラメータ受信部204dは、複数のML層プログラムモジュール301(オーディオフィルタモジュール301m、オーディオフィルタモジュール301m、オーディオ符号化モジュール301o)の指定、それらの呼び出し順序の指定、それらの動作パラメータの指定などをオーディオ録音MM101cから受信する。
メディアデータ変換部205dは、オーディオフィルタモジュール呼び出し部205d1と、オーディオ符号化処理モジュール呼び出し部205d2とを備える。オーディオフィルタモジュール呼び出し部205d1は、オーディオデータに第1段階のフィルタ処理を施すオーディオフィルタモジュール301mを呼び出し、さらに、第1段階のフィルタ処理後のオーディオデータに第2段階のフィルタ処理を施すオーディオフィルタ化モジュール301nを呼び出す。オーディオ符号化処理モジュール呼び出し部205d2は、第2段階のフィルタ処理後のオーディオデータを符号化するメディアライブラリ層のオーディオ符号化モジュール301jを呼び出す。
図10は、メディアコントローラ層のプログラムモジュール(多重化MC)の構成例を示すブロック図である。同図の多重化MC201eは、図5に示したMC層プログラムモジュール201と同様の構成であって、複数のデータを多重化する多重化用に設計されている。データ受信部202eは、AVデータ符号化MM等から符号化オーディオデータ、符号化ビデオデータなど複数の入力データを受信する。データ送信部203eは、多重化データをAVデータ符号化MM等に送信する。パラメータ受信部204eは、ML層プログラムモジュール301(多重化処理モジュール301p)の指定、その動作パラメータの指定などをビデオ録画MM等から受信する。メディアデータ変換部205eは、多重化処理モジュール301pを繰り返し呼び出す。
図11は、メディアコントローラ層のプログラムモジュール(多重分離MC)の構成例を示すブロック図である。同図の多重分離MC201fは、図5に示したMC層プログラムモジュール201と同様の構成であって、多重化データを分離する分離用に設計されている。データ受信部202fは、ビデオ再生MM101d等から多重化データを受信する。データ送信部203fは、分離された個々の出力データをビデオ再生MM101d等に送信する。パラメータ受信部204fは、ML層プログラムモジュール301(分離処理モジュール301q)の指定、その動作パラメータの指定などをビデオ再生MM等から受信する。メディアデータ変換部205fは、分離処理モジュール301qを繰り返し呼び出す。
図12は、メディアモジュール層のプログラムモジュール(ビデオ再生MM)の構成例を示すブロック図である。同図のビデオ再生MM101dは、図4に示したMM層プログラムモジュール101と同様の構成であって、ビデオ再生用に設計されている。コマンド処理部102dは、ビデオ再生に関するコマンドを受け取り、解析する。時間管理部103dは、AVデータ入出力制御部104dの動作タイミングと、オーディオフレーム周期の呼び出し時刻およびビデオフレーム周期の呼び出し時刻とを決定する。この決定を受けて、AVデータ入出力制御部104dは、ストリームI/O部13からのAVデータの入力とAVI/O部15への復号化オーディオデータおよび復号化ビデオデータの出力とを制御する。メディアデータ変換制御部105dは、分離処理制御部105d1とAV再生データ生成制御部105d2とを備える。分離処理制御部105d1は、分離処理MC201fを周期的に呼び出す。AV再生データ生成制御部105d2は、オーディオ再生MC201cとビデオ再生MC201iとをそれぞれの呼び出し時刻に呼び出す。
図13は、メディアコントローラ層のプログラムモジュール(ビデオ再生MC)の構成例を示すブロック図である。同図のビデオ再生MC201iは、図5に示したMC層プログラムモジュール201と同様の構成であって、ビデオ再生用に設計されている。同図において、データ受信部202iは、ビデオ再生MM101dから符号化ビデオデータ(ビデオ符号データ)を受信する。データ送信部203iは、ビデオデータ(ビデオ再生データ)を送信する。
パラメータ受信部204iは、複数のML層プログラムモジュール301(ビデオ復号化モジュール301r、ビデオフィルタモジュール301s、ビデオフィルタモジュール301t)の指定、その呼び出し順序の指定、それらの動作パラメータの指定などをビデオ再生MM101dから受信する。
メディアデータ変換部205iは、ビデオ復号化処理モジュール呼び出し部205i1と、ビデオフィルタモジュール呼び出し部205i2とを備える。ビデオ復号化処理モジュール呼び出し部205i1は、メディアライブラリ層の符号化ビデオデータを復号するビデオ復号化モジュール301rを呼び出す。ビデオフィルタモジュール呼び出し部205i2は、ビデオ復号化モジュール301rからの復号化ビデオデータに第1段階のフィルタ処理を施すビデオフィルタモジュール301sを呼び出し、さらに、第1段階のフィルタ処理後のビデオデータに第2段階のフィルタ処理を施すビデオフィルタモジュール301tを呼び出す。
図14は、メディアモジュール層のプログラムモジュール(ビデオ録画MM)の構成例を示すブロック図である。同図のビデオ録画MM101eは、図4に示したMM層プログラムモジュール101と同様の構成であって、ビデオ録画用に設計されている。コマンド処理部102eは、ビデオ再生に関するコマンドを受け取り、解析する。時間管理部103eは、AVデータ入出力制御部104eの動作タイミングと、オーディオフレーム周期の呼び出し時刻およびビデオフレーム周期の呼び出し時刻とを決定する。この決定を受けて、AVデータ入出力制御部104eは、AVI/O部15からのオーディオデータおよびビデオデータの入力とストリームI/O部13へのAVデータの出力とを制御する。メディアデータ変換制御部105eは、AV符号データ生成制御部105e1と多重化処理制御部105e2とを備える。
AV符号データ生成制御部105e1は、オーディオ録音MC201hとビデオ録画MC201iとをそれぞれの呼び出し時刻に呼び出す。多重化処理制御部105e2は、多重化処理MC201jを周期的に呼び出す。
図15は、メディアコントローラ層のプログラムモジュール(ビデオ録画MC)の構成例を示すブロック図である。同図のビデオ録音MC201jは、図5に示したMC層プログラムモジュール201と同様の構成であって、ビデオ録音用に設計されている。同図において、データ受信部202jは、ビデオ録画MM101eからビデオデータ(ビデオ入力データ)を受信する。データ送信部203jは、符号化ビデオデータ(ビデオ符号データ)をビデオ録画MM101eに送信する。
パラメータ受信部204jは、複数のML層プログラムモジュール301(ビデオフィルタモジュール301u、ビデオフィルタモジュール301v、ビデオ符号化モジュール301w)の指定、それらの呼び出し順序の指定、それらの動作パラメータの指定などをビデオ録画MM101eから受信する。
メディアデータ変換部205jは、ビデオフィルタモジュール呼び出し部205j1と、ビデオ符号化処理モジュール呼び出し部205j2とを備える。ビデオフィルタモジュール呼び出し部205j1は、ビデオデータに第1段階のフィルタ処理を施すビデオフィルタモジュール301uを呼び出し、さらに、第1段階のフィルタ処理後のビデオデータに第2段階のフィルタ処理を施すビデオフィルタ化モジュール301vを呼び出す。ビデオ符号化処理モジュール呼び出し部205j2は、第2段階のフィルタ処理後のビデオデータを符号化するメディアライブラリ層のビデオ符号化モジュール301wを呼び出す。
次に、図3Aに示した機器制御レベルAPI100について説明する。ホストのアプリケーションに対し、メディア処理システムとしてのインタフェースを提供する。ホストのアプリケーションはこのインタフェースを使用してメディアモジュールを制御する。機器制御レベルAPI100の主な機能は、ホストからの制御コマンド、ストリームデータの送受信処理とメディアモジュール層の制御を行う。その処理内容は、(a)ホストからのコマンド処理、ストリームデータ処理とその応答処理、(b)メディアモジュールの状態管理や制御パラメータ管理である。MM層プログラムモジュール101では、(a)について、制御コマンドをメディアモジュール内部状態とあわせて解析し、制御を行い、ストリームデータに関しては、送受信処理のみを行う。また、(b)について、メディアモジュールのインタフェース仕様として、ホストアプリケーションに提供される状態遷移や制御パラメータを管理する。制御パラメータは、パラメータ受信部204で使用する内部パラメータへの変換も行う。
機器制御レベルAPI100は、ホストからはメディアモジュール単位に起動されるため、少なくとも1つ以上のスレッドで構成される。メディアモジュールを構成するスレッド数はシステム依存である。ホストからのコマンドは、イベントとして通知される。従って、機器制御レベルAPI100はイベント駆動型の動作を行うことになる。イベント受信部は、内部状態を考慮したイベント分析と分析結果による下位層の制御を行なう。ここでいう、イベントには、ホストコマンド、パイプ通知、内部イベントがある。ホストコマンドは、ホストCPUからコマンドパイプを経由して通知されるメッセージである。パイプ通知は、ホストCPUからストリームパイプにデータを送信した場合に通知されるイベントである。内部イベントは、メディアプロセッサ内部のスレッド間通信メッセージ、割込み通知などである。
また、イベント分析とは、イベントの種類/内部状態から、行うべき処理を判定することをいう。
以上説明してきたように、本発明のメディア処理方法によれば、第1に、ソフト開発効率を向上させることができる。すなわち、階層毎に、役割・機能・制御レベル・インタフェースを標準化することにより、ソフトウェアモジュールの流用性を拡大する。これにより開発されたソフトウェアモジュールの再利用性を高め、モバイルからサーバといった製品を広くターゲットとする分野全体での開発効率向上を実現する。
第2に、ソフトウェアの設計品質を向上させることができる。すなわち、ソフトウェア設計思想を明確化・共通化することにより、ソフトウェアの理解容易性を高める。また、標準化されたソフトウェア構造を再利用することで、設計品質を向上させる。
第3に、メディア処理部分の階層構造の定義については、特にメディアプロセッサ特有の変更要因に留意し、これら要因に対する耐性の高いソフト階層を定義することでソフトウェアモジュールの流用性を高めることができる。主な変更要因は、制御粒度の変更、制御方式の変更、AV信号処理方式の変更、一部機能のハードウェア化などがある。
本発明のメディア処理方法によれば、これらの変更要因に対しても、柔軟に対応でき、プログラムモジュールの流用性を高めることができる。例えば、制御粒度の変更に容易に対応することができる。つまり、再生/停止のようなマクロレベル制御や、1フレーム/1画像デコードのようなミクロレベル制御といった制御粒度毎に容易に変更することができる。また、ホストとなるアプリケーションの機能やシステム構成に依存する制御方式の変更にも容易に対応することができる。アプリケーション機能やシステム構成に応じて、機能(特殊再生、AV再生中撮像等)を追加/変更した場合や、システム制御方式(AV同期、外部入出力制御など)を変更した場合の影響を局所化できる。
さらに、AV符号化の規格や処理方式にするAV信号処理方式の変更や追加に容易に対応することができる。つまり、規格バージョンアップやアルゴリズム改善等による、信号処理方式の変更・追加の影響を局所化できる。また、一部の機能のハードウェア化に容易に対応することができる。低コスト化、処理効率化、他のハードウェアの流用などにより、一部の機能をハードウェア化した場合に対応するソフトウェアの影響を、一部の機能に対応するプログラムモジュールに局所化することができ、ソフトウェアの変更を最小限に抑えることができる。
以下、本発明のメディア処理方法を適用した製品の具体例について説明する。
図16は、本発明のメディア処理方法を適用した家電製品の具体例を示す図である。同図のように、本発明のメディア処理方法またはメディア処理プログラムは、小型オーディオプレーヤ41、携帯電話42、オーディオコンポ43、デジタルテレビ44、デジタルビデオレコーダ45、カーナビゲーションシステム46、デジタルムービー47等に適用される。これらの種々の家電製品に対して、図3Aに示したMM層プログラムモジュール101、MC層プログラムモジュール201、メディアライプラリー301a等の各プログラムモジュールは、柔軟に対応できる。これらのプログラムモジュールは種々の家電製品間で高い流用性を有する。
図17は、本発明のメディア処理方法を適用したオーディオ再生装置4aの構成を示すブロック図である。同図のオーディオ再生装置4aは、データ蓄積部401a、データ読み取り部402a、データ出力部403a、指示入力部404a、機器制御部405aおよびオーディオ再生部406aを備える。同図と図2とを比較すると、データ蓄積部401aは、光ディスク22、ハードディスク23またはメモリカード24に対応する。データ読み取り部402aはストリームI/O部13に対応する。データ出力部403aは、AVI/O部15に対応する。機器制御部405aはCPU11に対応する。オーディオ再生部406aのハードウェア構成はメディアプロセッサ12に対応する。オーディオ再生部406aのソフトウェア構成は、図6のオーディオ再生MM101b、図7のオーディオ再生MC201cおよびメディアライブラリ301j〜301lに対応する。
データ蓄積部401aは、符号化オーディオデータを格納している。
データ読み取り部402aは、データ蓄積部401aから符号化オーディオデータを読み出し、オーディオ再生部406aに供給する。
データ出力部403aは、オーディオ再生部406aにより生成された復号化オーディオデータを外部装置に出力する。
指示入力部404aは、ユーザからの指示を受け付ける。
機器制御部405aは、指示入力部404aによって受け付けられた指示に基づいてオーディオ再生の開始、終了または一時停止をオーディオ再生部406aに指示する。
オーディオ再生部406aは、次の(a)〜(c)により、符号化オーディオデータを復号化オーディオデータに変換するメディア処理を行う。(a)オーディオ再生部406aは、第1階層の第1プログラムモジュール(ここでは、図6のオーディオ再生MM101b)を実行する。これにより、オーディオ再生部406aは、データ読み取り部402aによって読み出された符号化オーディオデータの入力と、データ出力部403aへの復号化オーディオデータの出力とを制御し、第2プログラムモジュール(ここでは図7のオーディオ再生MC201c)の呼び出し時刻を決定し、当該時刻に第2階層の第2プログラムモジュールを呼び出す。(b)オーディオ再生部406aは、呼び出された第2プログラムモジュールを実行することによって、第3階層の第3プログラムモジュール(ここでは、メディアライブラリ301j〜301lなど)を呼び出す。(c)オーディオ再生部406aは呼び出された第3プログラムモジュールを実行することによって、入力された符号化オーディオデータを復号化オーディオデータに変換するメディア処理を行う。
このように、オーディオ再生部406aは図3Aに示した3階層のプログラムモジュールを実行することにより、オーディオ再生のために符号化オーディオデータを復号化するメディア処理を行う。
図18は、本発明のメディア処理方法を適用したオーディオ録音装置4bの構成を示すブロック図である。同図のオーディオ録音装置4bは、データ蓄積部401b、データ書き込み部402b、データ入力部403b、指示入力部404b、機器制御部405bおよびオーディオ録音部406bを備える。同図と図2とを比較すると、データ蓄積部401bは、光ディスク22、ハードディスク23またはメモリカード24に対応する。データ書き込み部402bはストリームI/O部13に対応する。データ入力部403bは、AVI/O部15に対応する。機器制御部405bはCPU11に対応する。オーディオ録音部406bのハードウェア構成はメディアプロセッサ12に対応する。オーディオ録音部406bのソフトウェア構成は、図8のオーディオ録音MM101c、図9のオーディオ録音MC201dおよびメディアライブラリ301m〜301oに対応する。
データ蓄積部401bは、符号化オーディオデータの格納用である。
データ書き込み部402bは、オーディオ録音部406bから出力される符号化オーディオデータを、データ蓄積部401bに書き込む。
データ入力部403bは、外部装置からオーディオデータを取得し、オーディオ録音部406bに出力する。
指示入力部404bは、ユーザからの指示を受け付ける。
機器制御部405bは、指示入力部404bによって受け付けられた指示に基づいてオーディオ録音の開始、終了または一時停止をオーディオ録音部406bに指示する。
オーディオ録音部406bは、次の(a)〜(c)により、オーディオデータを符号化オーディオデータに変換するメディア処理を行う。(a)オーディオ録音部406bは、第1階層の第1プログラムモジュール(ここでは、図8のオーディオ録音MM101c)を実行する。これにより、オーディオ録音部406bは、データ入力部403bからのオーディオデータの入力と、データ書き込み部402bへの符号化オーディオデータの出力とを制御し、第2プログラムモジュール(ここでは図9のオーディオ録音MC201d)の呼び出し時刻を決定し、第2階層の第2プログラムモジュールを呼び出す。(b)オーディオ録音部406bは、呼び出された第2プログラムモジュールを実行することによって、第3階層の第3プログラムモジュール(ここでは、メディアライブラリ301j〜301lなど)を呼び出す。(c)オーディオ録音部406bは呼び出された第3プログラムモジュールを実行することによって、入力されたオーディオデータを符号化オーディオデータに変換するメディア処理を行う。
このように、オーディオ録音部406bは図3Aに示した3階層のプログラムモジュールを実行することにより、オーディオ録音のためにオーディオデータを符号化するメディア処理を行う。
図19は、本発明のメディア処理方法を適用したビデオ再生装置4cの構成を示すブロック図である。同図のビデオ再生装置4cは、データ蓄積部401c、データ読み取り部402c、データ出力部403c、指示入力部404c、機器制御部405cおよびビデオ再生部406cを備える。同図と図2とを比較すると、データ蓄積部401cは、光ディスク22、ハードディスク23またはメモリカード24に対応する。データ読み取り部402cはストリームI/O部13に対応する。データ出力部403cは、AVI/O部15に対応する。機器制御部405cはCPU11に対応する。ビデオ再生部406cのハードウェア構成はメディアプロセッサ12に対応する。ビデオ再生部406cのソフトウェア構成は、図12のビデオ再生MM101d、図13のビデオ再生MC201iおよびメディアライブラリ301r〜301tに対応する。
データ蓄積部401cは、符号化ビデオデータを格納している。
データ読み取り部402cは、データ蓄積部401cから符号化ビデオデータを読み出し、ビデオ再生部406cに供給する。
データ出力部403cは、ビデオ再生部406cにより生成された復号化ビデオデータを外部装置に出力する。
指示入力部404cは、ユーザからの指示を受け付ける。
機器制御部405cは、指示入力部404cによって受け付けられた指示に基づいてビデオ再生の開始、終了または一時停止をビデオ再生部406cに指示する。
ビデオ再生部406cは、次の(a)〜(c)により、符号化ビデオデータを復号化ビデオデータに変換するメディア処理を行う。(a)ビデオ再生部406cは、第1階層の第1プログラムモジュール(ここでは、図12のビデオ再生MM101d)を実行する。これにより、ビデオ再生部406cは、データ読み取り部402cによって読み出された符号化ビデオデータの入力と、データ出力部403cへの復号化ビデオデータの出力とを制御し、第2プログラムモジュール(ここでは図13のビデオ再生MC201i)の呼び出し時刻を決定し、当該時刻に第2階層の第2プログラムモジュールを呼び出す。(b)ビデオ再生部406cは、呼び出された第2プログラムモジュールを実行することによって、第3階層の第3プログラムモジュール(ここでは、メディアライブラリ301r〜301tなど)を呼び出す。(c)ビデオ再生部406cは呼び出された第3プログラムモジュールを実行することによって、入力された符号化ビデオデータを復号化ビデオデータに変換するメディア処理を行う。
このように、ビデオ再生部406cは図3Aに示した3階層のプログラムモジュールを実行することにより、ビデオ再生のために符号化ビデオデータを復号化するメディア処理を行う。
図20は、本発明のメディア処理方法を適用したビデオ録画装置4dの構成を示すブロック図である。同図のビデオ録画装置4dは、データ蓄積部401d、データ書き込み部402d、データ入力部403d、指示入力部404d、機器制御部405dおよびビデオ録画部406dを備える。同図と図2とを比較すると、データ蓄積部401dは、光ディスク22、ハードディスク23またはメモリカード24に対応する。データ書き込み部402dはストリームI/O部13に対応する。データ入力部403dは、AVI/O部15に対応する。機器制御部405dはCPU11に対応する。ビデオ録画部406dのハードウェア構成はメディアプロセッサ12に対応する。ビデオ録画部406dのソフトウェア構成は、図14のビデオ録画MM101e、図15のビデオ録画MC201jおよびメディアライブラリ301u〜301wに対応する。
データ蓄積部401dは、符号化ビデオデータの格納用である。
データ書き込み部402dは、ビデオ録画部406dから出力される符号化ビデオデータを、データ蓄積部401dに書き込む。
データ入力部403dは、外部装置からビデオデータを取得し、ビデオ録画部406dに出力する。
指示入力部404dは、ユーザからの指示を受け付ける。
機器制御部405dは、指示入力部404dによって受け付けられた指示に基づいてビデオ録画の開始、終了または一時停止をビデオ録画部406dに指示する。
ビデオ録画部406dは、次の(a)〜(c)により、ビデオデータを符号化ビデオデータに変換するメディア処理を行う。(a)ビデオ録画部406dは、第1階層の第1プログラムモジュール(ここでは、図4のビデオ録画MM101e)を実行する。これにより、ビデオ録画部406dは、データ入力部402dからのビデオデータの入力と、データ書き込み部40dへの符号化ビデオデータの出力とを制御し、第2プログラムモジュール(ここでは図15のビデオ録画MC201j)の呼び出し時刻を決定し、第2階層の第2プログラムモジュールを呼び出す。(b)ビデオ録画部406dは、呼び出された第2プログラムモジュールを実行することによって、第3階層の第3プログラムモジュール(ここでは、メディアライブラリ301u〜301wなど)を呼び出す。(c)ビデオ録画部406dは呼び出された第3プログラムモジュールを実行することによって、入力されたビデオデータを符号化ビデオデータに変換するメディア処理を行う。
このように、ビデオ録画部406dは図3Aに示した3階層のプログラムモジュールを実行することにより、ビデオ録画のためにビデオデータを符号化するメディア処理を行う。
図21は、本発明のメディア処理方法を適用したビデオ再生装置4eの構成を示すブロック図である。同図のビデオ再生装置4eは、データ蓄積部401e、データ読み取り部402e、データ出力部403e、指示入力部404e、機器制御部405e、データ統合部406eおよびビデオ再生部407e、408eを備え、異なる2つの符号化ビデオデータを同時に再生する。同図は図19と比較して、ビデオ再生部406cの代わりにビデオ再生部407e、408eを備える点と、新たにデータ統合部406eを備える点とが異なっている。これら以外の対応する構成要素は同じであるので説明を省略し、異なる点を中心に説明する。
ビデオ再生部407eおよび408eは、異なる2つの符号化ビデオデータ(第1および第2符号化ビデオデータと呼ぶ)をそれぞれ復号化し、2つの復号化ビデオデータ(第1および第2復号化ビデオデータと呼ぶ)を出力する。ビデオ再生部407eおよび408eは1つのメディアプロセッサ上で実現される。ビデオ再生部407eおよび408eのソフトウェア構成は、それぞれ上記ビデオ再生部406cと同様である。
データ統合部406eは、第1および第2復号化ビデオデータを1画面に表示するように統合する。例えば、データ統合部406eは、第1および第2復号化ビデオデータから得られた2つのビデオのサイズを同じ大きさに縮小し、縮小したビデオを左右に2つ並べる。あるいは、一方を他方よりも大きめに縮小して並べる。なお、データ統合部406eは、図2のメディアプロセッサにより実現してもよいし、メディアプロセッサとは異なるユニットとしてもよい。
なお、データ読み取り部402eは、データ蓄積部401eから第1および第2符号化ビデオデータを読み出し、ビデオ再生部406eに供給する。その際、第2符号化ビデオデータを順次異なる符号化ビデオデータに変更してもよい。
このように、ビデオ再生部407e、408eは、それぞれ図3Aに示した3階層のプログラムモジュールを実行することにより、ビデオ再生のために符号化ビデオデータを復号化するメディア処理を行う。
なお、オーディオ再生、オーディオ録音、ビデオ再生およびビデオ録画を同時実行可能な録画再生装置も、上記と図17〜図21と同様の構成により実現することができる。
また、上記データ蓄積部の代わりにデジタル放送を受信するチューナを備えてもよい。
本発明は、メディア処理を行う各種装置に適しており、例えば、動画配信するウェブサーバー、それを受信するネットワーク端末、動画の記録再生可能なデジタルカメラ、カメラ付き携帯電話機、DVD録画/再生機、PDA、パーソナルコンピュータ等に適している。
11 CPU
12 メディアプロセッサ
13 ストリームI/O部
14 メモリ制御部
15 AVI/O部
16 メモリ
21 チューナ
22 光ディスク
23 ハードディスク
24 メモリカード
25 ディスプレイ
26 カメラ
30 ホスト
100 機器制御レベルAPI
101 MM層プログラムモジュール
101b オーディオ再生MM
101c オーディオ録音MM
101d ビデオ再生MM
101e ビデオ録画MM
102 コマンド処理部
103 時間管理部
104 データ入出力制御部
105 メディアデータ変換制御部
200 メディアデータ変換API
201 MC層プログラムモジュール
201c オーディオ再生MC
201d オーディオ録音MC
201e 多重化MC
201f 多重分離MC
201i ビデオ再生MC
201j ビデオ録画MC
202 データ受信部
203 データ送信部
204 パラメータ受信部
205 メディアデータ変換部
300 単純データ変換API
301 ML層プログラムモジュール

Claims (20)

  1. 複数のプログラムモジュールをプロセッサに実行させることにより、メディア処理を行うメディア処理方法であって、
    第1階層の第1プログラムモジュールを実行することによって、メディアデータの入出力を制御し、1以上の呼び出し時刻を決定し、当該時刻に第1階層より下の第2階層の1以上の第2プログラムモジュールを呼び出す第1ステップと、
    第2階層の第2プログラムモジュールを実行することによって、前記メディアデータに対してメディア処理の構成要素であるデータ変換をプロセッサに実行させる第2ステップと
    を有することを特徴とするメディア処理方法。
  2. 前記第1プログラムモジュールは、第1から第4プログラムセグメントを含み、
    前記第1ステップは、
    第1プログラムセグメントを実行することによって、第1階層より上の階層のホストプログラムからのコマンドを解析するコマンド処理ステップと、
    第2プログラムセグメントを実行することによって、解析されたコマンドに従って第3プログラムセグメントの動作タイミングと、1以上の前記呼び出し時刻とを決定するタイミング決定ステップと、
    第3プログラムセグメントを実行することによって、前記動作タイミングに従ってメディアデータの入出力を制御する入出力制御ステップと、
    第4プログラムセグメントを実行することによって、1以上の呼び出し時刻に第2プログラムモジュールを呼び出す第1呼び出しステップと
    を含むことを特徴とする請求項1記載のメディア処理方法。
  3. 第1プログラムセグメントは、第1のアプリケーション・プログラム・インタフェースを介して、メディア処理の開始、停止または一時停止を指示する前記コマンドを受ける
    ことを特徴とする請求項2記載のメディア処理方法。
  4. 前記第2プログラムモジュールは、第5から第7プログラムセグメントを含み、
    前記第2ステップは、
    第5プログラムセグメントを実行することによって、第1のプログラムモジュールから処理対象のデータを受信するステップと、
    第6プログラムセグメントを実行することによって、受信された処理対象データに対してメディア処理を行うステップと、
    第7プログラムセグメントを実行することによって、前記メディア処理によるデータ変換結果を、第1プログラムモジュールに送信する送信ステップと
    を含むことを特徴とする請求項1記載のメディア処理方法。
  5. 前記第1プログラムモジュールは、第1から第4プログラムセグメントを含み、
    前記第1ステップは、
    第1プログラムセグメントを実行することによって、第1階層より上の階層のホストプログラムからのコマンドを解析するコマンド処理ステップと、
    第2プログラムセグメントを実行することによって、解析されたコマンドがオーディオ再生を指示する場合に、第3プログラムセグメントの動作タイミングと、1以上の前記呼び出し時刻とを決定するタイミング決定ステップと、
    第3プログラムセグメントを実行することによって、前記動作タイミングに従って符号化オーディオデータの入力と復号化オーディオデータの出力とを制御する入出力制御ステップと、
    第4プログラムセグメントを実行することによって、1以上の呼び出し時刻に第2プログラムモジュールを呼び出す第1呼び出しステップと
    を含むことを特徴とする請求項1記載のメディア処理方法。
  6. 前記第1プログラムモジュールは、第1から第4プログラムセグメントを含み、
    前記第1ステップは、
    第1プログラムセグメントを実行することによって、第1階層より上の階層のホストプログラムからのコマンドを解析するコマンド処理ステップと、
    第2プログラムセグメントを実行することによって、解析されたコマンドがオーディオ録音を指示する場合に、第3プログラムセグメントの動作タイミングと、1以上の前記呼
    び出し時刻とを決定するタイミング決定ステップと、
    第3プログラムセグメントを実行することによって、前記動作タイミングに従ってオーディオデータの入力と符号化オーディオデータの出力とを制御する入出力制御ステップと、
    第4プログラムセグメントを実行することによって、1以上の呼び出し時刻に第2プログラムモジュールを呼び出す第1呼び出しステップと
    を含むことを特徴とする請求項1記載のメディア処理方法。
  7. 前記第2プログラムモジュールは、第5から第7プログラムセグメントを含み、
    前記第2ステップは、
    第5プログラムセグメントを実行することによって、第1のプログラムモジュールから複数種類のデータを受信するステップと、
    第6プログラムセグメントを実行することによって、受信された複数種類のデータに対して、多重化処理を行うステップと、
    第7プログラムセグメントを実行することによって、前記多重化処理による多重化データを、第1プログラムモジュールに送信する送信ステップと
    を含むことを特徴とする請求項2記載のメディア処理方法。
  8. 前記第2プログラムモジュールは、第5から第7プログラムセグメントを含み、
    前記第2ステップは、
    第5プログラムセグメントを実行することによって、第1のプログラムモジュールから多重化データを受信するステップと、
    第6プログラムセグメントを実行することによって、受信された多重化データに対して、多重分離処理を行うステップと、
    第7プログラムセグメントを実行することによって、前記多重分離処理による複数種類のデータを、第1プログラムモジュールに送信する送信ステップと
    を含むことを特徴とする請求項2記載のメディア処理方法。
  9. 前記第1プログラムモジュールは、第1から第4プログラムセグメントを含み、
    前記第1ステップは、
    第1プログラムセグメントを実行することによって、第1階層より上の階層のホストプログラムからのコマンドを解析するコマンド処理ステップと、
    第2プログラムセグメントを実行することによって、解析されたコマンドがビデオ再生を指示する場合に、第3プログラムセグメントの動作タイミングと、1以上の前記呼び出し時刻とを決定するタイミング決定ステップと、
    第3プログラムセグメントを実行することによって、前記動作タイミングに従って多重化データの入力とオーディオデータおよびビデオデータの出力とを制御する入出力制御ステップと、
    第4プログラムセグメントを実行することによって、前記1つ以上の呼び出し時刻に基づいて、多重化データの分離用の第2プログラムモジュール、ビデオ再生用の第2プログラムモジュールおよびオーディオ再生用の第2プログラムモジュールを呼び出す第1呼び出しステップと
    を含むことを特徴とする請求項1記載のメディア処理方法。
  10. 前記第1プログラムモジュールは、第1から第4プログラムセグメントを含み、
    前記第1ステップは、
    第1プログラムセグメントを実行することによって、第1階層より上の階層のホストプログラムからのコマンドを解析するコマンド処理ステップと、
    第2プログラムセグメントを実行することによって、解析されたコマンドがビデオ録画を指示する場合に、第3プログラムセグメントの動作タイミングと、1以上の前記呼び出
    し時刻とを決定するタイミング決定ステップと、
    第3プログラムセグメントを実行することによって、前記動作タイミングに従ってオーディオデータおよびビデオデータの入力と多重化データの出力とを制御する入出力制御ステップと、
    第4プログラムセグメントを実行することによって、前記1つ以上の呼び出し時刻に基づいて、ビデオ録画用の第2プログラムモジュール、オーディオ再生用の第2プログラムモジュールおよび多重化用の第2プログラムモジュールを呼び出す第1呼び出しステップと
    を含むことを特徴とする請求項1記載のメディア処理方法。
  11. メディア処理を行うためにプロセッサに実行されるプログラムであって、
    メディアデータの入出力を制御し、1以上の呼び出し時刻を決定し、当該呼び出し時刻に第1階層より下の第2階層に属する1以上第2プログラムモジュールを呼び出す第1階層の第1プログラムモジュールと、
    前記メディアデータに対してメディア処理を構成要素であるデータ変換をプロセッサに実行させる第2階層の1以上の第2プログラムモジュールと
    を含むことを特徴とするコンピュータ読取可能なプログラム。
  12. 前記第1プログラムモジュールは、第1から第4プログラムセグメントを含み、
    第1プログラムセグメントは、第1階層より上の階層のホストプログラムからのコマンドを解析し、
    第2プログラムセグメントは、第3プログラムセグメントおよび第4プログラムセグメントの動作タイミングを決定し、
    第3プログラムセグメントは、前記動作タイミングに従ってメディアデータの入出力を制御し、
    第4プログラムセグメントは、前記動作タイミングに従って第2プログラムモジュールを呼び出す
    ことを特徴とする請求項11記載のコンピュータ読取可能なプログラム。
  13. 第1プログラムセグメントは、第1のアプリケーション・プログラム・インタフェースを介して、メディア処理の開始、停止または一時停止を指示する前記コマンドを受ける
    ことを特徴とする請求項12記載のコンピュータ読取可能なプログラム。
  14. 前記第2プログラムモジュールは、第5から第7プログラムセグメントを含み、
    第5プログラムセグメントは、第1のプログラムモジュールから処理対象のデータを受信し、
    第6プログラムセグメントは、受信された処理対象データに対してメディア処理を行い、
    第7プログラムセグメントは、前記メディア処理によるデータ変換結果を、第1プログラムモジュールに送信する
    ことを特徴とする請求項13記載のコンピュータ読取可能なプログラム。
  15. オーディオ再生装置であって、
    メディア処理を行うメディアプロセッサと、
    符号化オーディオデータを蓄積する蓄積部と、
    前記蓄積部から符号化オーディオデータを読み取る読み取り部と、
    ユーザから指示を受け付ける受け付け部と、
    前記受け付け部によって受け付けられた指示に基づいてオーディオ再生の開始を前記メ
    ディアプロセッサに指示する制御部と、
    前記メディアプロセッサにより生成された復号化オーディオデータを外部に出力する出力部とを備え、
    前記メディアプロセッサは、
    (a)第1階層の第1プログラムモジュールを実行することによって、前記読み取り部によって読み出された符号化オーディオデータの入力と前記出力部への復号化オーディオデータの出力とを制御し、1以上の呼び出し時刻を決定し、当該時刻に第1階層より下の第2階層の1以上の第2プログラムモジュールを呼び出し、
    (b)呼び出された第2プログラムモジュールを実行することによって、単位時間あたりの符号化オーディオデータを復号化オーディオデータに変換するメディア処理を行う
    ことを特徴とするオーディオ再生装置。
  16. オーディオ録音装置であって、
    メディア処理を行うメディアプロセッサと、
    符号化オーディオデータを蓄積するための蓄積部と、
    外部からオーディオデータを取得する取得部と、
    ユーザから指示を受け付ける受け付け部と、
    前記受け付け部によって受け付けられた指示に基づいてオーディオ録音の開始を前記メディアプロセッサに指示する制御部と、
    メディアプロセッサにより生成された符号化オーディオデータを前記蓄積部に書き込む書き込み部とを備え、
    前記メディアプロセッサは、
    (a)第1階層の第1プログラムモジュールを実行することによって、前記取得部に取得されたオーディオデータの入力と前記書き込み部への符号化オーディオデータの出力とを制御し、1以上の呼び出し時刻を決定し、当該時刻に第1階層より下の第2階層の1以上の第2プログラムモジュールを呼び出し、
    (b)呼び出された第2プログラムモジュールを実行することによって、単位時間あたりのオーディオデータを符号化オーディオデータに変換するメディア処理を行う
    ことを特徴とするオーディオ録音装置。
  17. ビデオ再生装置であって、
    メディア処理を行うメディアプロセッサと、
    符号化ビデオデータを蓄積する蓄積部と、
    前記蓄積部から符号化ビデオデータを読み取る読み取り部と、
    ユーザから指示を受け付ける受け付け部と、
    前記受け付け部によって受け付けられた指示に基づいてビデオ再生の開始を前記メディアプロセッサに指示する制御部と、
    前記メディアプロセッサにより生成された復号化ビデオデータを外部に出力する出力部とを備え、
    前記メディアプロセッサは、
    (a)第1階層の第1プログラムモジュールを実行することによって、前記読み取り部によって読み出された符号化ビデオデータの入力と前記出力部への復号化ビデオデータの出力とを制御し、1以上の呼び出し時刻を決定し、当該時刻に第1階層より下の第2階層の1以上の第2プログラムモジュールを呼び出し、
    (b)呼び出された第2プログラムモジュールを実行することによって、単位時間あたりの符号化ビデオデータを復号化ビデオデータに変換するメディア処理を行う
    ことを特徴とするビデオ再生装置。
  18. ビデオ録画装置であって、
    メディア処理を行うメディアプロセッサと、
    符号化ビデオデータを蓄積するための蓄積部と、
    外部からビデオデータを取得する取得部と、
    ユーザから指示を受け付ける受け付け部と、
    前記受け付け部によって受け付けられた指示に基づいてビデオ録画の開始を前記メディアプロセッサに指示する制御部と、
    メディアプロセッサにより生成された符号化ビデオデータを前記蓄積部に書き込む書き込み部とを備え、
    前記メディアプロセッサは、
    (a)第1階層の第1プログラムモジュールを実行することによって、前記取得部に取得されたビデオデータの入力と前記書き込み部への符号化ビデオデータの出力とを制御し、1以上の呼び出し時刻を決定し、当該時刻に第1階層より下の第2階層の1以上の第2プログラムモジュールを呼び出し、
    (b)呼び出された第2プログラムモジュールを実行することによって、単位時間あたりのビデオデータを符号化ビデオデータに変換するメディア処理を行う
    ことを特徴とするビデオ録画装置。
  19. ビデオ再生装置であって、
    メディア処理を行うメディアプロセッサと、
    第1および第2符号化ビデオデータを蓄積する蓄積部と、
    前記蓄積部から第1および第2符号化ビデオデータを読み取る読み取り部と、
    ユーザから指示を受け付ける受け付け部と、
    前記受け付け部によって受け付けられた指示に基づいて、第1および第2符号化ビデオデータの再生の開始を前記メディアプロセッサに指示する制御部と、
    前記メディアプロセッサにより生成された第1および第2復号化ビデオデータを外部に出力する出力部とを備え、
    前記メディアプロセッサは、
    (a)第1階層の第1プログラムモジュールを実行することによって、前記読み取り部によって読み出された第1符号化ビデオデータの入力と前記出力部への第1復号化ビデオデータの出力とを制御し、1以上の呼び出し時刻を決定し、当該時刻に第1階層より下の第2階層の1以上の第2プログラムモジュールを呼び出し、
    (b)呼び出された第2プログラムモジュールを実行することによって、単位時間あたりの第1符号化ビデオデータを第1復号化ビデオデータに変換するメディア処理を行い、
    (c)第1階層の第4プログラムモジュールを実行することによって、前記読み取り部によって読み出された第2符号化ビデオデータの入力と前記出力部への第2復号化ビデオデータの出力とを制御し、1以上の呼び出し時刻を決定し、当該時刻に第1階層より下の第2階層の1以上の第5プログラムモジュールを呼び出し、
    (d)呼び出された第5プログラムモジュールを実行することによって、
    単位時間あたりの第2符号化ビデオデータを第2復号化ビデオデータに変換するメディア処理を行う
    ことを特徴とするビデオ再生装置。
  20. 複数のプログラムモジュールをプロセッサに実行させることにより、リアルタイム処理を行うリアルタイム処理方法であって、
    第1階層の第1プログラムモジュールを実行することによって、時間管理を行い、第1階層より下の第2階層の第2プログラムモジュールを呼び出す第1ステップと、
    第2階層の第2プログラムモジュールを実行することによって、単位時間あたりのデータへの処理を行う第2ステップと、
    を有することを特徴とするリアルタイム処理方法。
JP2009291520A 2005-08-24 2009-12-22 メディア処理方法 Pending JP2010146575A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009291520A JP2010146575A (ja) 2005-08-24 2009-12-22 メディア処理方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005243326 2005-08-24
JP2009291520A JP2010146575A (ja) 2005-08-24 2009-12-22 メディア処理方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2007532059A Division JPWO2007023683A1 (ja) 2005-08-24 2006-08-10 メディア処理方法、メディア処理プログラム

Publications (1)

Publication Number Publication Date
JP2010146575A true JP2010146575A (ja) 2010-07-01

Family

ID=37771434

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2007532059A Pending JPWO2007023683A1 (ja) 2005-08-24 2006-08-10 メディア処理方法、メディア処理プログラム
JP2009291520A Pending JP2010146575A (ja) 2005-08-24 2009-12-22 メディア処理方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2007532059A Pending JPWO2007023683A1 (ja) 2005-08-24 2006-08-10 メディア処理方法、メディア処理プログラム

Country Status (5)

Country Link
US (2) US8170115B2 (ja)
EP (1) EP1918811A4 (ja)
JP (2) JPWO2007023683A1 (ja)
CN (1) CN101248417A (ja)
WO (1) WO2007023683A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021121117A (ja) * 2017-02-10 2021-08-19 日本電信電話株式会社 データ処理装置、データ出力方法及びコンピュータプログラム

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8731064B2 (en) * 2006-09-11 2014-05-20 Apple Inc. Post-processing for decoder complexity scalability
JP2008293378A (ja) 2007-05-25 2008-12-04 Panasonic Corp プログラム書き換え装置
US9058205B2 (en) * 2011-10-24 2015-06-16 Symantec Corporation Automatically performing operations on applications based on dependencies on other applications
KR101939253B1 (ko) * 2012-05-21 2019-01-16 엘지전자 주식회사 음성 녹음 중에 탐색을 용이하게 하는 방법 및 이를 구현한 전자기기
CN104991452A (zh) * 2015-05-12 2015-10-21 广东瑞德智能科技股份有限公司 一种在面向对象编程中用于家电控制框架的设计方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003271406A (ja) * 2002-03-12 2003-09-26 Yamaha Corp データ処理装置およびデータ処理方法ならびにそのプログラム
WO2004040576A1 (en) * 2002-11-01 2004-05-13 Synchro Arts Limited Methods and apparatus for use in sound replacement with automatic synchronization to images

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5428730A (en) * 1992-12-15 1995-06-27 International Business Machines Corporation Multimedia system having software mechanism providing standardized interfaces and controls for the operation of multimedia devices
JP3293434B2 (ja) * 1995-10-23 2002-06-17 ヤマハ株式会社 楽音発生方法
JPH11146362A (ja) * 1997-11-12 1999-05-28 Sony Corp 送信装置および送信方法、受信装置および受信方法、並びに送受信装置および送受信方法
US7080386B2 (en) * 2000-01-25 2006-07-18 Texas Instruments Incorporated Architecture with digital signal processor plug-ins for general purpose processor media frameworks
JP2002073334A (ja) * 2000-08-31 2002-03-12 Toshiba Corp 業務用分散システムの構築方法、業務用分散システムの構築支援装置および構築支援プログラムを記録したコンピュータ読み取り可能な記録媒体
US6968555B2 (en) * 2001-04-04 2005-11-22 Agilent Technologies, Inc. Multi-layer software architecture for hardware control

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003271406A (ja) * 2002-03-12 2003-09-26 Yamaha Corp データ処理装置およびデータ処理方法ならびにそのプログラム
WO2004040576A1 (en) * 2002-11-01 2004-05-13 Synchro Arts Limited Methods and apparatus for use in sound replacement with automatic synchronization to images

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021121117A (ja) * 2017-02-10 2021-08-19 日本電信電話株式会社 データ処理装置、データ出力方法及びコンピュータプログラム
JP7359801B2 (ja) 2017-02-10 2023-10-11 日本電信電話株式会社 データ処理装置、データ出力方法及びコンピュータプログラム

Also Published As

Publication number Publication date
EP1918811A1 (en) 2008-05-07
CN101248417A (zh) 2008-08-20
EP1918811A4 (en) 2009-09-23
US20070050299A1 (en) 2007-03-01
US8170115B2 (en) 2012-05-01
WO2007023683A1 (ja) 2007-03-01
US8619873B2 (en) 2013-12-31
JPWO2007023683A1 (ja) 2009-03-26
US20120177348A1 (en) 2012-07-12

Similar Documents

Publication Publication Date Title
RU2501176C2 (ru) Медиапроцессор для организации мультимедийных данных
JP2010146575A (ja) メディア処理方法
KR20110103953A (ko) 화상 회의 레이트 매칭
JP2003303102A (ja) 画像処理装置
CN104954850B (zh) 非线性编辑软件的调度方法和装置
CN101442627A (zh) 一种用于对等计算机顶盒的播放器的控制方法
US7774375B2 (en) Media foundation topology
US7934159B1 (en) Media timeline
US7577940B2 (en) Managing topology changes in media applications
US9026983B2 (en) Flexible and scalable software system architecture for implementing multimedia applications
JP4249569B2 (ja) デマルチプレクサのアプリケーションプログラムインターフェイス
JP2010283683A (ja) ストリーム復号装置及びストリーム復号方法
US20160117796A1 (en) Content Adaptive Decoder Quality Management
KR20050097432A (ko) 데이터 처리 장치 및 데이터 처리 방법
CN117241062A (zh) 一种视频合成方法、装置、存储介质和电子设备
CN117834982A (zh) 视频播放处理方法、装置、电子设备及存储介质
Wang Compare multimedia frameworks in mobile platforms
JP2009116881A (ja) データ処理装置およびその方法
JP2008059666A (ja) 再生装置、再生方法、及びプログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120703

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20121030