JP4314923B2 - プログラム、データ処理方法およびその装置 - Google Patents

プログラム、データ処理方法およびその装置 Download PDF

Info

Publication number
JP4314923B2
JP4314923B2 JP2003283182A JP2003283182A JP4314923B2 JP 4314923 B2 JP4314923 B2 JP 4314923B2 JP 2003283182 A JP2003283182 A JP 2003283182A JP 2003283182 A JP2003283182 A JP 2003283182A JP 4314923 B2 JP4314923 B2 JP 4314923B2
Authority
JP
Japan
Prior art keywords
data
video
audio
mxf
attribute
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
JP2003283182A
Other languages
English (en)
Other versions
JP2005051632A (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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2003283182A priority Critical patent/JP4314923B2/ja
Priority to US10/901,804 priority patent/US7373439B2/en
Priority to EP04254562A priority patent/EP1503593A2/en
Priority to CNB200410079491XA priority patent/CN100343850C/zh
Publication of JP2005051632A publication Critical patent/JP2005051632A/ja
Priority to US11/890,159 priority patent/US20080033978A1/en
Priority to US11/890,158 priority patent/US20090007208A1/en
Application granted granted Critical
Publication of JP4314923B2 publication Critical patent/JP4314923B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Television Signal Processing For Recording (AREA)

Description

本発明は、受信処理したデータを変換するプログラム、データ処理方法およびその装置に関する。
ビデオデータやオーディオデータのファイル交換フォーマットの一つに、MXF(Material eXchange Format)がある。
MXFは、ヘッダデータに含まれるメタデータと、複数のフレームデータ等で構成され、各フレームデータには1フレーム分のビデオデータとそれに対応するオーディオデータと、これらビデオデータおよびオーディオデータの属性を示すシステムデータ等が含まれる。
すなわち、MXFのデータでは、ビデオデータ、オーディオデータおよびシステムデータがインターリーブにより混在して格納されている。
MXFでは、上記メタデータおよびシステムデータにおいて各フレームデータ内のビデオデータおよびオーディオデータの符号化方式、圧縮方式、データ構造、タイムコード、編集内容などの属性を記述することで、ビデオデータおよびオーディオデータの属性に依存しないフォーマットでファイル交換を可能にする。
ところで、パーソナルコンピュータなどのコンピュータでは、ビデオデータやオーディオデータの再生処理を行う場合に、ビデオデータおよびビデオデータがそれぞれ個別のビデオファイルデータおよびオーディオファイルデータとして存在する必要がある。
そのため、コンピュータは、例えば、FTPなどで受信したMXFのデータをビデオデータおよびオーディオデータに変換する変換処理を行う必要がある。
しかしながら、FTPによる受信処理が完了した後に、上記変換処理を行うと、処理時間が長くなるという問題がある。
MXFのデータ以外のデータに関しても、受信したデータを変換処理する場合に同様な問題がある。
本発明は、上述した従来技術の問題点に鑑みてなされ、受信処理したデータを変換処理する場合に、処理時間を短縮できるプログラム、その方法およびその装置を提供することを目的とする。
上述した従来技術の問題点を解決するために、第1の発明のプログラムは、複数のオーディオデータと、前記ビデオデータおよび前記オーディオデータの属性を示す複数の第1の属性データとが混在した第1のデータを、ビデオファイルデータとオーディオファイルデータの少なくとも一方である第2のデータに変換するプログラムであって、複数のフレームデータで構成される第1のデータの受信処理を行う通信プロセスと、前記通信プロセスによる前記受信処理と並行して、前記第2のデータを再生する再生プロセスから、前記フレームデータを指定した要求を受け、当該要求によって指定された前記フレームデータを第2のデータに変換する変換プロセスと、を含む処理をデータ処理装置に実行させ、前記変換プロセスは、複数のビデオデータと、前記第1のデータをパースする第1の手順と、前記第1の手順で前記パースした前記第1の属性データを基にビデオに関する第2の属性データを生成し、当該第2の属性データと前記第1の手順で前記パースした前記複数のビデオデータとを含むビデオファイルデータを前記第2のデータとして生成する第2の手順と、前記第1の手順で前記パースした前記第1の属性データを基にオーディオに関する第3の属性データを生成し、当該第3の属性データと前記第1の手順で前記パースした前記複数のオーディオデータとを含むオーディオファイルデータを前記第2のデータとして生成する第3の手順と、を含む。
第2の発明のデータ処理方法は、複数のオーディオデータと、前記ビデオデータおよび前記オーディオデータの属性を示す複数の第1の属性データとが混在した第1のデータを、ビデオファイルデータとオーディオファイルデータの少なくとも一方である第2のデータに変換するデータ処理方法であって、複数のフレームデータで構成される第1のデータの受信処理を行う第1の工程と、前記第1の工程における前記受信処理と並行して、前記第2のデータを再生する再生プロセスから、前記フレームデータを指定した要求を受け、当該要求によって指定された前記フレームデータを第2のデータに変換する第2の工程と、を有し、前記第2の工程は、複数のビデオデータと、前記第1のデータをパースする第3の工程と、前記第3の工程で前記パースした前記第1の属性データを基にビデオに関する第2の属性データを生成し、当該第2の属性データと前記第1の手順で前記パースした前記複数のビデオデータとを含むビデオファイルデータを前記第2のデータとして生成する第4の工程と、前記第3の工程で前記パースした前記第1の属性データを基にオーディオに関する第3の属性データを生成し、当該第3の属性データと前記第1の手順で前記パースした前記複数のオーディオデータとを含むオーディオファイルデータを前記第2のデータとして生成する第5の工程と、を有する。
第3の発明のデータ処理装置は、複数のオーディオデータと、前記ビデオデータおよび前記オーディオデータの属性を示す複数の第1の属性データとが混在した第1のデータを、ビデオファイルデータとオーディオファイルデータの少なくとも一方である第2のデータに変換するデータ処理装置であって、複数のフレームデータで構成される第1のデータの受信処理を行う第1の手段と、前記第1の工程における前記受信処理と並行して、前記第2のデータを再生する再生プロセスから、前記フレームデータを指定した要求を受け、当該要求によって指定された前記フレームデータを第2のデータに変換する第2の手段と、を有し、前記第2の手段は、複数のビデオデータと、前記第1のデータをパースし、前記第1の工程で前記パースした前記第1の属性データを基にビデオに関する第2の属性データを生成し、当該第2の属性データと前記第1の手順で前記パースした前記複数のビデオデータとを含むビデオファイルデータを前記第2のデータとして生成し、前記第1の工程で前記パースした前記第1の属性データを基にオーディオに関する第3の属性データを生成し、当該第3の属性データと前記第1の手順で前記パースした前記複数のオーディオデータとを含むオーディオファイルデータを前記第2のデータとして生成する。
本発明によれば、受信処理したデータを変換処理する場合に、処理時間を短縮できるプログラム、その方法およびその装置を提供することができる。
以下、本発明の実施形態について説明する。
先ず、本発明の構成と、本実施形態の構成との対応関係を説明する。
本実施形態の図5に示すデータMXF_Dが、本発明の第1のデータに対応している。
また、本実施形態の図7に示すビデオファイルデータVFおよび図9に示すオーディオファイルデータAFの少なくとも一方が本発明の第2のデータに対応し、ビデオファイルデータVFが本発明のビデオファイルデータに対応し、オーディオファイルデータAFが本発明のオーディオファイルデータに対応している。
また、図6に示すビデオデータPICが本発明の第1のデータ内のビデオデータに対応し、オーディオデータAUDIOが本発明の第1のデータ内のオーディオデータに対応している。
また、本実施形態のシステムデータSYSが本発明の第1の属性データに対応している。
また、図7に示すビデオファイル属性データVFPDが本発明の第2の属性データに対応している。
また、図9に示すオーディオファイル属性データAFPDが本発明の第3の属性データに対応している。
また、図6に示すKLVデータが本発明の単位データに対応し、キー(K)が本発明の識別データ、データ長(L)が本発明のデータ長データ、データ(V)が本発明のデータ本体に対応している。
また、本実施形態のMXF処理プログラムPRG1が第1の発明のプログラムに対応している。
また、コンピュータ4が本発明のデータ処理装置に対応している。
また、第1の発明の通信プロセスおよび第3の発明の第1の手段が図11等のFTPスレッド42に対応し、第1の発明の変換プロセスおよび第3の発明の第2の手段が図11等のMXFパーサスレッド43に対応している。
次に、図1〜図27に示す編集システム1の概要について説明する。
コンピュータ4上で動作するMXFプロセス8は、図11に示すように、FTPスレッド42とMXFパーサスレッド43をMXFプロセス8によって規定し、FTPスレッド42による受信処理とMXFパーサスレッド43によるパース処理とを並行して行う。
これにより、FTP受信時間とパース処理の総時間を短縮できる。
また、コンピュータ4によれば、スレッドマネージャ41が、MXFパース処理を行うときにMXFパーサスレッド43を起動し、MUX処理を行うときにMXF−MUXスレッド44を起動するため、MXFパース処理およびMUX処理を行わないときの処理部15の処理負荷を少なくできる。
図11に示すMXFパーサスレッド43は、図5に示す複数のビデオデータPICと、複数のオーディオデータSOUと、システムデータSYSとが混在したデータMXF_Dをパースする。
そして、MXFパーサスレッド43は、上記パースしたシステムデータとメタデータMETAを基にビデオに関する図7に示すビデオファイル属性データVFPDを生成し、ビデオファイル属性データVFPDと、上記パースした複数のビデオデータPIC(VIDEO)とを含むビデオファイルデータVFを生成する。
また、MXFパーサスレッド43は、上記パースしたシステムデータとメタデータMETAを基にオーディオに関する図9に示すオーディオファイル属性データAFPDを生成し、オーディオファイル属性データAFPDと、上記パースした複数のオーディオデータSOU(AUDIO)とを含むオーディオファイルデータAFを生成する。
以下、各図面を基に、編集システム1について詳細に説明する。
図1は、本発明の実施形態に係わる編集システム1の全体構成図である。
図1に示すように、編集システム1は、例えば、FTP(File Transfer Protorol)サーバ3、コンピュータ4、コンピュータ5、RAID(Redundant Array of Inexpensive Disks)6を有し、これらがネットワーク2を介して通信する。
本実施形態では、例えば、コンピュータ4、コンピュータ5およびRAID6は、SAN(Storage Area Network)などのネットワークを介して接続させている。
〔FTPサーバ3〕
FTPサーバ3は、受信したMXFデータを、ネットワーク2を介してFTPを基に、コンピュータ4およびコンピュータ5に送信する。
〔コンピュータ4〕
コンピュータ4では、例えば、図2に示すように、MXFデータを処理するMXFプロセス8と、非線形編集NLE(None Linear Edit)処理などの編集処理を行う編集プロセス9aとが動作する。
図3は、図1および図2に示すコンピュータ4の構成図である。
図3に示すように、コンピュータ4は、例えば、通信部11、操作部12、表示部13、メモリ14および処理部15を有し、これらがデータ線10を介して接続されている。 通信部11は、ネットワーク2を介して、FTPサーバ3、コンピュータ5およびRAID6とデータ授受を行う。
操作部12は、キーボードやマウスなどの操作手段であり、ユーザの操作に応じた操作信号を処理部15に出力する。
表示部13は、処理部15からの表示信号に応じた画像(画面)を表示する。
メモリ14は、図2に示すMXFプロセス8の処理を記述したMXF処理プログラムPRG1と、編集プロセス9aの処理を記述した編集処理プログラムPRG2とを記録する。
処理部15は、メモリ14に記録されたMXF処理プログラムPRG1を基に(実行して)MXFプロセス8を起動し、編集処理プログラムPRG2を基に編集プロセス9aを起動する。
なお、本実施形態において、MXFプロセス8に関する各スレッドは、処理部15がMXF処理プログラムPRG1を実行して実現される。また、編集プロセス9aに関する各スレッドは、処理部15が編集処理プログラムPRG2を実行して実現される。
〔コンピュータ5〕
コンピュータ5では、例えば、図2に示すように、編集などの編集処理を行う編集プロセス9bが動作する。
図4は、図1および図2に示すコンピュータ5の構成図である。
図4に示すように、コンピュータ5は、例えば、通信部21、操作部22、表示部23、メモリ24および処理部25を有し、これらがデータ線20を介して接続されている。 通信部21は、ネットワーク2を介して、FTPサーバ3、コンピュータ4およびRAID6とデータ授受を行う。
操作部22は、キーボードやマウスなどの操作手段であり、ユーザの操作に応じた操作信号を処理部25に出力する。
表示部23は、処理部25からの表示信号に応じた画像(画面)を表示する。
メモリ24は、図2に示す編集プロセス9bの処理を記述した編集処理プログラムPRG3を記録する。
処理部25は、メモリ24に記録された編集処理プログラムPRG3を基に編集プロセス9bを起動する。
また、編集プロセス9bに関する各スレッドは、処理部25が編集処理プログラムPRG3を実行して実現される。
RAID6は、MXFデータ、ビデオファイルデータVF、オーディオファイルデータAF、並びに属性ファイルデータPFを記録する。
ここで、MXFデータは、後述するMXFで規定されている。
また、ビデオファイルデータVF、並びにオーディオファイルデータAFは、編集プロセス9a,9bで利用(再生)できるフォーマットを有している。
属性ファイルデータPFは、ビデオファイルデータVFおよびオーディオファイルデータAFの属性を示す。
以下、MXFデータ、ビデオファイルデータVF、並びにオーディオファイルデータAFについてそれぞれ説明する。
〔MXF_D〕
以下、MXFフォーマットのデータMXF_Dについて説明する。
図5は、データMXF_Dのフォーマットを説明するための図である。
図5に示すように、データMXF_Dは、ヘッダデータHEADER、ボディデータBODYおよびフッタデータFOOTERで構成される。
ヘッダデータHEADER、ボディデータBODYおよびフッタデータFOOTERの各々は、パックPACKと呼ばれる複数のモジュールデータで構成される。
ヘッダデータHEADERは、ヘッダパーティションパックHPP、メタデータMETA、インデックステーブルINDEXTなどで構成される。
ヘッダパーティションパックHPPは、データMXF_D全体に対しての属性データを示す。
ヘッダパーティションパックHPPは、例えば、Closed partitionを示す場合には、データMXF_Dに含まれるフレームデータの数であるフレーム数をメタデータMETA内で示すことができる。
メタデータMETAは、ボディデータBODYに格納されたフレームデータ(ビデオデータおよびオーディオデータ)の符号化方式、当該フレームデータの内容に関するキーワード、タイトル、識別データ、編集データ、作成時データ、編集時データなどの属性を示す。
また、メタデータMETAは、その他、例えば、フレームデータに関するタイムコード、欠落フレームデータを特定するためのデータ、上記フレーム数(Duration)などを含む。
インデックステーブルINDEXTは、データMXF_Dの利用時に、ボディデータBODY内のフレームデータに高速にアクセスするために用いられるデータを示す。
ボディデータBODYは、複数のフレームデータFLD_1〜FLD_nを含む。ここで、nは1以上の任意の整数である。
フレームデータFLD_1〜FLD_nの各々は、図5に示すように、1フレーム分のビデオデータPICおよびオーディオデータSOUと、これらの属性を示すシステムデータSYSと、データAUXとを含む。
システムデータSYSは、例えば、ビデオデータPICおよびオーディオデータSOUのフォーマットや種別を示す。
システムデータSYSは、例えば、MXF_Dのフォーマット(例えば、SMPTEで規格化されたD10)、並びにそのフォーマット内で種別(例えば、SMPTEで規格化されたIMX50_625,IMX40_625,IMX30_625,IMX50_525,IMX40_525,IMX30_525などを示す。
システムデータSYSは、上記以外に、例えば、符号化方式、タイムコード、データMXF_Dの識別データであるUMID(Unique Material IDentifier)などを示す。
ビデオデータPICは、MPEG(Moving Picture Experts Group)などで符号化されたビデオデータである。
オーディオデータSOUは、AES(Audio Engineering Society) 3などで符号化されたオーディオデータである。
このように、データMXF_Dは、ビデオデータPICとオーディオデータSOUとがインターリーブされた状態(混在した状態)で格納する。
フッタデータFOOTERは、データMXF_Dの終端を示す識別データを含む。
上述したヘッダパーティションパックHPP、メタデータMETA、インデックステーブルINDEXT、フレームデータFLD_1〜FLD_n、フッタデータFOOTERの各々は、単数または複数のパックデータPACKで構成され、各パックデータは単数または複数のKLVデータで構成される。
図6は、KLVデータを説明するための図である。
図6に示すように、KLVデータは、キー(K)、データ長(L)およびデータ(V)で構成される。
キー(K)、データ長(L)は、各々固定長のデータであり、キー(K)は例えばデータ(V)の内容の識別データであり、データ長(L)はデータ(V)のデータ長を示す。
KLVデータは、図6に示すように、データ(V)としてKLVデータを用いることができる。
〔VF〕
以下、本実施形態のビデオファイルデータVFについて説明する。
図7は、本実施形態のビデオファイルデータVFのフォーマットを説明するための図である。
図7に示すように、ビデオファイルデータVFは、例えば、識別データVIO、データVF_SIZE、ビデオ特性データVPRD、ビデオ共通特性デーVCPD、ビデオ固有特性データVUPD、ビデオオーナデータVOD、ダミーデータDUMY、データV_SEIZE、並びにビデオデータVIDEOを含む。
本実施形態では、識別データVIO、データVF_SIZE、ビデオ特性データVPRD、ビデオ共通特性デーVCPD、ビデオ固有特性データVUPD、ビデオオーナデータVOD、ダミーデータDUMY、データV_SEIZEによってビデオファイル属性データVFPDが構成される。
識別データVIOは、ビデオファイルデータVFの先頭を示す。
データVF_SIZEは、ビデオファイルデータVFのデータ長を示す。
ビデオ特性データVPRDは、ビデオファイルデータVFの識別データや、バージョン情報などを示す。
ビデオ共通特性デーVCPDは、全ビデオフォーマットに共通の特定情報を示す。
ビデオ共通特性デーVCPDは、例えば、図8に示すように、データVideoFormat,Width,Heigth,Framesize,Scale,Rate,Scanlineinfoなどを示す。
データVideoFormatは、ビデオデータVIDEOの種別、例えば、圧縮の有無、DV(Digital Video) か否か、MPEGか否か(符号化方式)、HDCAM(ハンディカム)か否かなどを示す。
データWidthは、ビデオデータVIDEOによるイメージの横のピクセス数(横幅)を示す。
データHeigthは、ビデオデータVIDEOによるイメージの縦のライン数(縦幅)を示す。
データFramesizeは、1フレームのサイズ(データ長)をバイト数で示す。本実施形態では、当該サイズは、4096バイトの倍数である。
データScale,Rateは、時間の単位RateをScaleで除算することで、再生レートを秒当たりのフレーム数で示すデータを得るために用いられる。
データScanlineinfoは、スキャンライン情報を示す。
ビデオ固有特性データVUPDは、上記データVideFormatで指定されたフォーマットに固有の特性情報を示す。
ビデオ固有特性データVUPDは、例えば、非圧縮データのタイプ、DVフォーマットの種類、MPEGフォーマットの種類、MPEGのデータタイプなどを示す。
ビデオオーナデータVODは、ビデオファイルデータVFを現在所有しているアプリケーションに関する情報を示す。
ダミーデータDUMYは、ビデオファイル属性データVFPDのサイズが4096バイトになるように規定されるデータである。
データV_SEIZEは、ビデオファイルデータVIDEOのデータサイズを示す。
ビデオデータVIDEOは、1フレームが4096バイトの整数倍になるように規定された複数のフレームのビデオデータである。
これにより、4096バイトを最小単位としてビデオデータVIDEOにアクセスを行うことが可能になる。
データMXF_Dでは、ビデオデータVIDEOの符号化方式、並びに圧縮方式等のフォーマットは任意である。
〔AF〕
以下、本実施形態のオーディオファイルデータAFについて説明する。
図9は、本実施形態のオーディオファイルデータAFのフォーマットを説明するための図である。
図9に示すように、アプリケーションプログラムAPは、識別データRIFF、データAF_SIZE、WAVE特性データWFPD、オーディオ特性データAPRD、オーディオオーナデータAOD、チャンネルステータスデータCSD、ダミーデータDUMY、データA_SEIZE、並びにオーディオデータAUDIOを含む。
本実施形態では、識別データRIFF、データAF_SIZE、WAVE特性データWFPD、オーディオ特性データAPRD、オーディオオーナデータAOD、チャンネルステータスデータCSD、ダミーデータDUMY、データA_SEIZEによってオーディオファイル属性データAFPDが構成される。
識別データRIFFは、オーディオファイルデータAFの先頭を示す。
データAF_SIZEは、オーディオファイルデータAFのデータ長を示す。
WAVE特性データWFPDは、例えば、図10に示すように、データwFormatTag,nChannels,nSamplesPerSec,nAvgBytesPerSec,nBlockAlign,wBitsPerSample,cbSiseを示す。
データwFormatTagは、オーディオファイルデータAFのフォーマットを示す。
データnChannelsは、チャンネル数を示す。
データnSamplesPerSecは、サンプルレートを示す。
データnAvgBytesPerSecは、バッファエスティメーションを示す。
デ−タnBlockAlignは、データのブロックサイズを示す。
データwBitsPerSampleは、モノデータの単位のサンプルビット数を示す。
データcbSiseは、拡張情報のサイズのバイト数を示す。
オーディオ特性データAPRDは、オーディオデータAUDIOのデータ長、オーディオファイルデータAFのバージョンなどを示す
オーディオオーナデータAODは、オーディオファイルデータAFを現在所有しているアプリケーションに関する情報を示す。
チャンネルステータスデータCSDは、オーディオデータAUDIOのチャンネルに関する情報を示す。
ダミーデータDUMYは、オーディオファイル属性データAFPDのサイズが4096バイトになるように規定されるデータである。
データA_SEIZEは、オーディオデータAUDIOのデータ長を示す。
オーディオデータAUDIOは、例えば、AES(Audio Engineering Society) 3などのフォーマットのオーディオデータである。
〔MXFプロセス8〕
図11は、図2に示すMXFプロセス8を説明するための図である。
MXFプロセス8は、例えば、データMXF_DからビデオファイルデータVFおよびオーディオファイルデータAFの生成、並びにビデオファイルデータVFおよびオーディオファイルデータAFからデータMXF_Dの生成を行う。
この場合に、MXFプロセス8は、図11に示すように、例えば、スレッドマネージャ41、FTPスレッド42、MXFパーサスレッド43およびMXF−MUXスレッド44を有する。
〔スレッドマネージャ41〕
スレッドマネージャ41は、例えば、編集プロセス9a,9bからのコマンド、あるいは図3に示す操作部12からの操作信号などの要求に応じて、MXFパーサスレッド43およびMXF−MUXスレッド44を起動する。
〔FTPスレッド42〕
FTPスレッド42は、FTPサーバ3との間でFTPによるデータMXF_Dの送受信を行う。
FTPスレッド42は、FTPサーバ3から受信したデータMXF_DをMXFパーサスレッド43にFTPで出力する。
FTPスレッド42は、MXF−MUXスレッド44から入力したデータMXF_DをFTPサーバ3にFTPで送信する。
〔MXFパーサスレッド43〕
MXFパーサスレッド43は、FTPスレッド42を介して受信したデータMXF_DあるいはRAID6から読み出したデータMXF_Dを、ビデオファイルデータVFおよびオーディオファイルデータAFに変換してRAID6に書き込む。
また、MXFパーサスレッド43は、FTPスレッド42から入力したデータMXF_Dをパースして抽出したビデオデータVIDEOと、オーディオデータAUDIOとを編集プロセス9a,9bが再生可能なフォーマットで編集プロセス9a,9bに出力する。 本実施形態では、MXFパース処理を行わない状態ではMXFパーサスレッド43が起動されず、MXFパース処理を行う場合に、スレッドマネージャ41が、編集プロセス9a,9bからのコマンド、あるいは図3に示す操作部12からの操作信号などの要求に応じてMXFパーサスレッド43を起動する。そのため、MXFパース処理を行わない状態でのコンピュータ4(処理部15)の処理負荷を軽減できる。
また、本実施形態では、FTPスレッド42とMXFパーサスレッド43とを異なるプログラムではなく、同じMXFプロセス8によって実現するため、MXFパーサスレッド43がFTPスレッド42を介して受信したデータMXF_Dを変換処理する場合に、FTPスレッド42によるデータMXF_Dの受信処理と並行して、既に受信したデータMXF_DのMXFパース処理を行うことができる。
そのため、FTPを行うプログラムと、MXFパース処理を行うプログラムとを別個に規定し、データMXF_D全体に対してのFTP処理が終了した後に、MXFパース処理を行う場合に比べて処理時間を短縮できる。
図12は、図11に示すMXFパーサスレッド43の機能ブロック図である。
図12に示すように、MXFパーサスレッド43は、例えば、SYSパースルーチン61、PICパースルーチン62、SOUパースルーチン63を有する。
MXFパーサスレッド43は、以下に示すように、SYSパースルーチン61が生成したビデオ属性ファイルデータVFPD、並びにPICパースルーチン62が生成したビデオデータVIDEOからなるビデオファイルデータVFを生成する。
MXFパーサスレッド43は、以下に示すように、SYSパースルーチン61が生成したオーディオ属性ファイルデータAFPD、並びにSOUパースルーチン63が生成したオーディオデータAUDIOからなるオーディオファイルデータAFを生成する。
また、MXFパーサスレッド43は、以下に示すように、SYSパースルーチン61によって、例えば、ビデオファイルデータVFおよびオーディオファイルデータAFに関する属性を示す属性ファイルデータPFを生成する。
この場合に、SYSパースルーチン61、PICパースルーチン62およびSOUパースルーチン63の実行順序は特に限定されない。
SYSパースルーチン61、PICパースルーチン62およびSOUパースルーチン63は、図5に示すデータMXF_Dをパースして、図6に示すKLVデータのキー(K)を検出し、当該検出したキー(K)を基に、予め決められたデータを用いて以下に示すデータを生成する。
SYSパースルーチン61は、図5に示すデータMXF_DをパースしてデータMXF_D内のヘッダデータHEADER、フレームデータFLD_1〜FLD_n内のシステムデータSYS、フッタデータFOOTERを基に、図7に示すビデオファイルデータVFのビデオファイル属性データVFPDと、図9に示すオーディオファイルデータAFのオーディオファイルデータAFのオーディオファイル属性データAFPDとを生成する。
図13および図14は、図12に示すSYSパースルーチン61の処理を説明するためのフローチャートである。
なお、図13において、ステップST3の判断に先立ってステップST6の判断を行ってもよい。
ステップST1:
SYSパースルーチン61は、FTPスレッド42から入力したデータMXF_DあるいはRAID6から読み出したデータMXF_Dをパースする。
ステップST2:
SYSパースルーチン61は、ステップST1のパースでデータMXF_Dを構成するKLVデータのキー(K)が検出されたか否かを判断し、検出された場合にステップST4に進み、検出されない場合にステップST1へ戻る。
ステップST3:
SYSパースルーチン61は、ステップST1で検出されたキー(K)がシステムデータSYSの14バイト目(所定の位置のデータ)に関するものであるか否かを判断し、14バイト目に関するものであると判断するとステップST4に進み、そうでない場合にはステップST6に進む。
ステップST4:
SYSパースルーチン61は、上記14バイト目を基に、データMXF_Dが「D10」フォーマット(所定のフォーマット)であるか否かを判断し、「D10」フォーマットである場合にステップST5に進み、そうでない場合に処理を終了するか、他のフォーマットに関する処理を行う。
ステップST5:
SYSパースルーチン61は、システムデータSYSの15バイト目を基に、データMXF_Dの種別がIMX50_625,IMX40_625,IMX30_625である場合に、図7に示すビデオ共通特性データVCPDの図8に示すデータVideoFormat,Width,Heigth,Framesize,Scale,Rate,Scanlineinfoとして、例えば、予め規定した図15(A)に示す値を設定してビデオファイル属性データVFPDを更新する。
ここで、データFramesizeは、フォーマットの種別に応じて、例えば、図16に示すように規定される。
また、SYSパースルーチン61は、図9に示すWAVE特性データWFPDの図10に示すデータwFormatTag,nChannels,nSamplesPerSec,nAvgBytesPerSec,nBlockAlign,wBitsPerSample,cbSiseとして、例えば、予め規定した図17に示す値を設定してオーディオファイル属性データAFPDを更新する。
一方、SYSパースルーチン61は、システムデータSYSの15バイト目を基に、データMXF_DがIMX50_525,IMX40_525,IMX30_525である場合に、図7に示すビデオ共通特性データVCPDの図8に示すデータVideoFormat,Width,Heigth,Framesize,Scale,Rate,Scanlineinfoとして、例えば、予め規定した図15(B)に示す値を設定してビデオファイル属性データVFPDを更新する。
ステップST6:
SYSパースルーチン61は、ステップST1で検出されたキー(K)がメタデータMETAあるいはシステムデータSYSに関するものであるか否かを判断し、そうである場合にステップST7に進み、そうでない場合にはステップST9に進む。
ステップST7:
SYSパースルーチン61は、ステップST1で検出したキー(K)に対応するデータ(V)を基に、図7に示すビデオファイル属性データVFPDおよび図9に示すオーディオファイル属性データAFPDを生成あるいは更新する。
ステップST8:
SYSパースルーチン61は、ステップST1で検出したキー(K)に対応するデータ(V)を基に、XMLなどを用いて属性ファイルデータPFを生成あるいは更新する。
すなわち、SYSパースルーチン61は、データMXF_D内のメタデータMETAあるいはシステムデータSYSに記述された属性データを基に、ビデオファイルデータVFおよびオーディオファイルデータAFの属性を示す属性ファイルデータPFを生成する。
ステップST9:
SYSパースルーチン61は、ステップST1で検出されたキー(K)がビデオデータPICに関するものであるか否かを判断し、そうである場合にステップST10に進み、そうでない場合にはステップST12に進む。
ステップST10:
SYSパースルーチン61は、ステップST1で検出したキー(K)に対応するデータ長(L)を、データV_SIZEに加算してデータV_SIZEを更新する。
ステップST11:
SYSパースルーチン61は、フレーム数データFNを更新(インクリメント)する。
ステップST12:
SYSパースルーチン61は、ステップST1で検出されたキー(K)がオーディオデータSOUに関するものであるか否かを判断し、そうである場合にステップST13に進み、そうでない場合には処理を終了するか、他の処理を行う。
ステップST13:
SYSパースルーチン61は、図9に示すオーディオファイル属性データAFPDの図10に示すWAVE特性データWFPDとして、例えば、予め決められた図17に示す値を設定する。当該設定は、ステップST13を最初に実行するときのみ行えばよい。
SYSパースルーチン61は、ステップST1で検出されたキー(K)に対応するデータ(V)、すなわちAES3のオーディオデータSOUのデータChannnel_Statusを基に、図9に示すオーディオファイル属性データAFPDのチャンネルステータスデータCSDに設定する。
データChannnel_Statusには、例えば、有効なチャンネルを指定する情報などが示されている。
また、SYSパースルーチン61が、上記オーディオデータSOUのAES3で規定されたデータSamplingRate,AuxSampleBits,WordLengthを基に、図9に示すWAVE特性データWFPDの図10に示すデータnSamplesPerSec,nAvgBytesPerSec,nBlockAlign,wBitsPerSampleを変更する。
ステップST14:
SYSパースルーチン61は、ステップST1で検出したキー(K)に対応するデータ長(L)を、データA_SIZEに加算してデータA_SIZEを更新する。
ステップST15:
SYSパースルーチン61は、データMXF_D全体をパースしたか否かを判断し、パースしたと判断すると処理を終了し、そうでない場合にステップST1に戻る。
上記図13および図14の処理により、図5に示すヘッダデータHEADER、システムデータSYSが生成される。
PICパースルーチン62は、図5に示すデータMXF_DをパースしてデータMXF_DのフレームデータFLD_1〜FLD_n内のビデオデータPICを基に、図7に示すビデオファイルデータVFのビデオデータVIDEOを生成する。
PICパースルーチン62は、ビデオデータPICがMPEGで符号化されている場合には、例えば、ビデオデータPICをMPEGで復号してビデオデータVIDEOを生成する。
図18は、図12に示すPICパースルーチン62の処理を説明するためのフローチャートである。
ステップST21:
PICパースルーチン62は、データMXF_Dをパースする。
ステップST22:
PICパースルーチン62は、ステップST21のパースでデータMXF_Dを構成するKLVデータのキー(K)が検出されたか否かを判断し、検出された場合にステップST22に進み、検出されない場合にステップST21に戻る。
ステップST23:
PICパースルーチン62は、ステップST21で検出されたキー(K)がビデオデータPICに関するものであるか否かを判断し、そうであると判断するとステップST24に進み、そうでない場合にはステップST21に戻る。
ステップST24:
PICパースルーチン62は、ステップST21で検出されたキー(K)がビデオデータPICを、例えば、それに対応するシステムデータSYS内あるいはメタデータMETAに記述された符号化方式に対応する復号方式で復号する。
ステップST25:
PICパースルーチン62は、ステップST24の復号により得たビデオデータPICを、図7に示すビデオファイルデータVFのビデオデータVIDEOとする。
ステップST26:
PICパースルーチン62は、データMXF_Dを全てパースしたか否かを判断し、全てパースしたと判断すると処理を終了し、そうでない場合にステップST21に戻る。
SOUパースルーチン63は、図5に示すデータMXF_DをパースしてデータMXF_DのフレームデータFLD_1〜FLD_n内のオーディオデータSOUを基に、図9に示すオーディオファイルデータAFのオーディオデータAUDIOを生成する。
この場合に、SOUパースルーチン63は、オーディオデータSOUがAES3規格の場合には、複数のチャンネルデータを分離してオーディオデータAUDIOを生成する。
図19は、図12に示すSOUパースルーチン63の処理を説明するためのフローチャートである。
ステップST31:
SOUパースルーチン63は、データMXF_Dをパースする。
ステップST32:
SOUパースルーチン63は、ステップST31のパースでデータMXF_Dを構成するKLVデータのキー(K)が検出されたか否かを判断し、検出された場合にステップST32に進み、検出されない場合にステップST31に戻る。
ステップST33:
SOUパースルーチン63は、ステップST32で検出されたキー(K)がオーディオデータSOUに関するものであるか否かを判断し、そうであると判断するとステップST34に進み、そうでない場合にはステップST31に戻る。
ステップST34:
SOUパースルーチン63は、ステップST31で検出されたキー(K)がオーディオデータSOUを、例えば、それに対応するシステムデータSYS内に記述された符号化方式に対応する復号方式で復号する。
ステップST35:
SOUパースルーチン63は、ステップST34の復号により得たオーディオデータSOUを、図9に示すオーディオファイルデータAFのオーディオデータAUDIOとする。
ステップST36:
SOUパースルーチン63は、データMXF_Dを全てパースしたか否かを判断し、全てパースしたと判断すると処理を終了し、そうでない場合にステップST31に戻る。
〔MXF−MUXスレッド44〕
MXF−MUXスレッド44は、属性ファイルデータPF、ビデオファイルデータVFおよびオーディオファイルデータAFを基に、データMXF_Dを生成する。
本実施形態では、MXF−MUX処理を行わない状態ではMXF−MUXスレッド44が起動されず、MXF−MUX処理を行う場合に、スレッドマネージャ41が、編集プロセス9a,9bからのコマンド、あるいは図3に示す操作部12からの操作信号などの要求に応じてMXF−MUXスレッド44を起動する。そのため、MXF−MUX処理を行わない状態でのコンピュータ4(処理部15)の処理負荷を軽減できる。
図20は、MXF−MUXスレッド44によるデータMXF_Dの生成処理を説明するためのフローチャートである。
ステップST41:
MXF−MUXスレッド44は、上記要求により変換対象として指定された図7に示すビデオファイルデータVFをRAID6から読み出し、当該ビデオファイルデータVF内のビデオ共通特性データVCPD内の図8に示すデータを基に、データMXF_Dとして用いるフォーマットを検出する。
ステップST42:
MXF−MUXスレッド44は、ステップST41で検出したフォーマットが「D10」(所定のフォーマット)であるか否かを判断し、「D10」であると判断するとステップST43に進み、そうでない場合には「D10」以外のフォーマットに対応した処理を行う。
ステップST43:
MXF−MUXスレッド44は、図5に示すデータMXF_DのフレームデータFLD_1〜FLD_nのシステムデータSYSの14バイト目(所定の位置のデータ)として「D10」を示すデータを設定する。
また、MXF−MUXスレッド44は、ビデオファイルデータVF内の図15(A),(B)に示すデータ、並びに図16に示すデータframeSise等を基にフォーマットの種別を特定し、当該特定した種別をシステムデータSYSの15バイト目として設定する。
ステップST44:
MXF−MUXスレッド44は、ビデオファイルデータVFのビデオファイル属性データVFPD、オーディオファイルデータAFのオーディオファイル属性データAFPD、属性ファイルデータPFを基に、図5に示すヘッダデータHEADERを生成すると共に、システムデータSYSを更新する。
ステップST45:
MXF−MUXスレッド44は、ビデオファイルデータVF内のビデオデータVIDEOを、例えば、ビデオファイル属性データVFPDが示す符号化方式(例えば、MPEG)で符号化してビデオデータPICを生成する。
ステップST46:
MXF−MUXスレッド44は、オーディオファイルデータAFのオーディオファイル属性データAFPDと属性ファイルデータPFを基に、図5に示すフレームデータFL_1〜FL_n内のAES3のオーディオデータSOUの「Channnel Status」、「SamplingRate」、「AuxSmpleBits」、「WordLength」を設定する。
ステップST47:
MXF−MUXスレッド44は、ステップST46で設定したデータ、並びにオーディオファイルデータAF内のオーディオデータAUDIOを基に、オーディオデータSOUを生成する。
ステップST47:
MXF−MUXスレッド44は、上記ステップST43〜ST47で生成したシステムデータSYS、ビデオデータPIC、オーディオデータSOU、並びに新たに生成したデータAUXを基にフレームデータFLD_1〜FLD_nを生成する。
また、MXF−MUXスレッド44は、ステップST44で生成したヘッダデータHEADER、上記生成したフレームデータFLD_1〜FLD_n、並びに新たに生成したフッタデータFOOTERによって構成されるデータMXF_Dを生成し、これをRAID6に書き込む。
本実施形態では、MXF−MUXスレッド44が図20に示すように、ビデオファイルデータVFおよびオーディオファイルデータAFを直接受けて処理を行ってデータMXF_Dを生成することで、ビデオファイルデータVFおよびオーディオファイルデータAFを一端テンポラリファイルとして落とす必要がなく、変換時間を短くできる。
〔編集プロセス9a,9b〕
図21は、編集プロセス9a,9bの構成を説明するための図である。
図21に示すように、編集プロセス9a,9bは、例えば、コマンドスレッド51、ステータススレッド52よび編集スレッド53を有する。
コマンドスレッド51は、例えば、図3および図4に示す操作部12,13からの操作信号に応じた、例えば、パースコマンド、MUXコマンドなどのコマンドを、MXFプロセス8のスレッドマネージャ41に出力する。
ステータススレッド52は、パースやMUXの対象とするデータMXF_DやビデオファイルデータVFおよびオーディオファイルデータAFなどの指定情報(例えば、URLなどのアドレス)、編集プロセス9a,9bのユーザの識別データおよびパスワードなどのデータを情報をMXFパーサスレッド43やMXF−MUXスレッド44に出力する。 編集スレッド53は、例えば、MXFパーサスレッド43がRAID6に書き込んだビデオファイルデータVFおよびオーディオファイルデータAF、必要に応じて属性ファイルデータPFを用いて編集処理を行う。
図22は、編集プロセス9a,9bからの要求に応じてMXFプロセス8のMXFパーサスレッド43がパース処理を行う場合に、MXFプロセス8と編集プロセス9a,9bとの間で授受される要求等を説明するための図である。
ステップST51:
コマンドスレッド51は、例えば、図3および図4に示す操作部12,13からの操作信号に応じた、例えば、パースコマンドPARSE_COMDをMXFプロセス8のスレッドマネージャ41に出力する。
スレッドマネージャ41は、パースコマンドPARSE_COMDに応じてMXFパーサスレッド43を起動する。
ステップST52:
スレッドマネージャ41は、コマンドスレッド51とのデータ授受に用いるインタフェース名(例えば、パイプ名)を含む応答ACKをコマンドスレッド51に出力する。
以後、スレッドマネージャ41とコマンドスレッド51との間のデータや要求の授受は、当該パイプ名を指定して行われる。
ステップST53:
ステータススレッド52は、パースやMUXの対象とするデータMXF_Dの指定情報(例えば、URLなどのアドレス)、編集プロセス9a,9bのユーザの識別データIDおよびパスワードPASSなどをMXFパーサスレッド43に出力する。
ステップST54:
MXFパーサスレッド43は、ステップST52で受けた指定情報によって指定されたデータMXF_Dに対して、図13、図14、図18および図19を基に前述したパース処理を行い、それによって生成したビデオファイルデータVF、オーディオファイルデータAFおよび属性ファイルデータPFをRAID6に書き込む。
ステップST54におけるMXFパーサスレッド43によるパース処理は、図13、図14、図18および図19の全ての処理を行ってもよいし、ビデオデータVIDEOおよびオーディオデータAUDIOの生成に関するものだけを行ってもよい。
そして、MXFパーサスレッド43は、上記パース処理を進行に応じて、パース処理を終えたフレームデータFLD_1〜FLD_nのタイムコード、並びにフレーム番号をステータススレッド52に出力する。
MXFパーサスレッド43は、データMXF_D内の全てのフレームデータFLD_1〜FLD_nについてのパース処理を完了するまで、各フレームデータのパース処理が完了する度に上記タイムコード、並びにフレーム番号をステータススレッド52に出力する。
ステップST55:
MXFパーサスレッド43は、データMXF_D内の全てのフレームデータFLD_1〜FLD_nについてのパース処理を完了すると、終了コードをステータススレッド52に出力する。
例えば、図2(A)に示すコンピュータ4上の編集プロセス9aは、図22に示すように、データMXF_Dの名前とビデオファイルデータVFおよびオーディオファイルデータAFの名前とを指定したパースコマンドPARSE_COMDをコンピュータ4上のMXFプロセス8に対して出力する。
これにより、MXFプロセス8は、FTPスレッド42からデータMXF_Dを入力しながら、データMXF_Dのパース処理を行い、その結果を例えばRAID6に書き込む。
この場合に、MXFプロセス8と編集プロセス9aとが同じコンピュータ4上で動作しているため、MXFプロセス8の処理負荷が編集プロセス9の処理に影響を与える。そのため、編集プロセス9aは、ユーザの操作に応じて、MXFプロセス8のパース処理を中断する要求をMXFプロセス8に出す。これにより、MXFプロセス8は、パース処理を中断し、コンピュータ4は編集プロセス9の処理に集中できる。
一方、図2(B)に示すコンピュータ5上の編集プロセス9bは、図22に示すように、データMXF_Dの名前とビデオファイルデータVFおよびオーディオファイルデータAFの名前とを指定したパースコマンドPARSE_COMDをコンピュータ4上のMXFプロセス8に対して出力する。
これにより、MXFプロセス8は、FTPスレッド42からデータMXF_Dを入力しながら、データMXF_Dのパース処理を大内、その結果を例えばRAID6に書き込む。
この場合に、MXFプロセス8と編集プロセス9aとが異なるコンピュータ4,5上で動作しているため、MXFプロセス8の処理負荷が編集プロセス9の処理に影響を与えることはない。
〔再生プロセス80〕
コンピュータ4あるいはコンピュータ5は、例えば、所定の再生プログラムを実行して図23に示す再生プロセス80を起動する。
再生プロセス80は、例えば、図23に示すように、コマンドスレッド81、ステータススレッド82および再生スレッド83を有する。
再生スレッド83は、MXFプロセス8のMXFパーサスレッド43から入力したビデオデータVIDEOおよびオーディオデータAUDIOの再生処理を行う。
図24は、図23に示す再生スレッド83の構成図である。
図24に示すように、再生スレッド83は、例えば、UIシーク画面ルーチン71、ビデオレンダルーチン72、UIオーディオチャンネル選択ルーチン73およびオーディオレンダルーチン74を有する。
UIシーク画面ルーチン71は、例えば、操作部12,22からの操作信号に応じて、図25に示すように、フレームデータのシーク要求SEEK_REQをSYSパースルーチン61に出力するためのUI(User Interface)画面を表示部13,23に表示する。当該シーク要求SEEK_REQは、例えば、MXFプロセス8のMXFパーサスレッド43がパースするフレームデータを、例えば、フレーム番号などで指定するための要求である。
ビデオレンダルーチン72は、PICパースルーチン62から入力したビデオデータVIDEOの再生処理を行う。これにより、ビデオデータVIDEOに応じた画像が表示部13,23に表示される。
この場合に、ビデオレンダルーチン72は、例えば、再生された画像と音声が同期するように、オーディオレンダルーチン74と同期処理を行う。
ビデオレンダルーチン72は,例えば、1フレームデータに対応するビデオデータVIDEOの前回の再生処理時間が、当該1フレームデータを再生する時間として予め決められた時間より長いか否かを判断し、長いと判断した場合に、図25に示すように、ドロップ要求DROP_REQをPICパースルーチン62に出力する。すなわち、ビデオレンダルーチン72は、図3に示す処理部15あるいは図4に示す処理部25の処理能力に起因してビデオデータVIDEOの1倍速以上の再生処理を行えない場合に、ドロップ要求DROP_REQをPICパースルーチン62に出力する。
これにより、処理部15,25によるビデオデータVIDEOの再生処理の遅れにより、音声出力と画像出力とのタイミングがずれたり、画質が劣化することを防止できる。
UIオーディオチャンネル選択ルーチン73は、例えば、データMXF_DのフレームデータFLD1_FLD_nのオーディオデータSOU内にAES3によって規定された複数のチャンネルのオーディオデータが含まれている場合に、再生スレッド54において再生しないチャンネルを選択する処理を行う。
UIオーディオチャンネル選択ルーチン73は、ユーザによって指定された再生しないチャンネルを特定した不要チャンネル指定要求CH_REQをSOUパースルーチン63に出力する。
オーディオレンダルーチン74は、SOUパースルーチン63から入力したオーディオデータAUDIOの再生処理を行う。これにより、オーディオデータAUDIOに応じた音声出力が行われる。
以下、MXFプロセス8のMXFパーサスレッド43が、編集プロセス9a,9bからのコマンド、あるいは図3に示す操作部12からの操作信号などの要求に応じて、再生スレッド83にビデオデータVIDEOおよびオーディオデータAUDIOを出力する処理を説明する。
MXFパーサスレッド43は、編集プロセス9a,9bからのコマンド、あるいは図3に示す操作部12からの操作信号などの要求に応じてスレッドマネージャ41によって起動され、以下の処理を行う。
以下に示すMXFパーサスレッド43の処理は、例えば、FTPスレッド42による受信処理を経てFTPスレッド42から入力したデータMXF_Dに対して行われ、FTPスレッド42による受信処理と並行して行われる。
また、以下に示すMXFパーサスレッド43の処理は、RAID6から読み出したデータMXF_Dに対して行ってもよい。
なお、MXFパーサスレッド43は、FTPスレッド42から入力したデータMXF_Dに対して図26の処理を行う場合には、ステップST71,ST72の処理は行わない。
図26は、MXFプロセス8のMXFパーサスレッド43が、再生スレッド83にビデオデータVIDEOおよびオーディオデータAUDIOを出力する処理を説明するためのフローチャートである。
MXFパーサスレッド43は、再生スレッド83との間で処理を行う場合には、図5に示すフレームデータFLD_1〜FLD_nの各々について、SYSパースルーチン61、PICパースルーチン62、SOUパースルーチン63およびAUXパースルーチンによるパース処理を順に行う。
ステップST71:
図12に示すMXFパーサスレッド43のSYSパースルーチン61は、図24に示す再生スレッド83のUIシーク画面ルーチン71から、シーク要求SEEK_REQを入力したか否かを判断し、入力したと判断するとステップST72に進み、そうでない場合にはステップST73に進む。
ステップST72:
SYSパースルーチン61は、例えば、RAID6に記録されたデータMXF_Dの読み出し位置(アドレス)を示すシークポインタSPを、ステップST71で受けたシーク要求SEEK_REQが示すフレーム番号に対応するアドレスに移動する。
当該シークポインタSPは、データMXF_Dのフレームデータが読み出される度に、次に読み出すフレームデータのアドレスに更新される。
このようにSYSパースルーチン61、PICパースルーチン62およびSOUパースルーチン63の処理に先立ってシークポインタSPの移動を行うことで、PICパースルーチン62およびSOUパースルーチン63の処理に影響を与えることなく、シーク動作が可能になり、MXFパーサスレッド43の構成を簡単にできる。
ステップST73:
SYSパースルーチン61は、シークポインタSPが示すRAID6上のアドレスに記録されたフレームデータFLDのシステムデータSYSを読み出してパース処理する。
ステップST74:
PICパースルーチン62は、ステップST73で読み出したシステムデータに続くビデオデータPICをRAID6から読み出してパース処理する。
ステップST75:
PICパースルーチン62は、ビデオレンダルーチン72からドロップ要求DROP_REQを入力したか否かを判断し、入力したと判断するとステップST76に進み、そうでない場合にはステップST77に進む。
ステップST76:
PICパースルーチン62は、ステップST74で読み出したビデオデータPICを、ステップST73で読み出したシステムコードSYSが示す符号化方式に対応する復号方式で復号(デコード)してビデオデータVIDEOを生成し、これをビデオレンダルーチン72に出力する。
すなわち、ステップST75,ST76により、PICパースルーチン62は、ドロップ要求DROP_REQを受けると、1フレーム分のビデオデータVIDEOのビデオレンダルーチン72への出力を中止する。なお、2フレーム分以上のビデオデータVIDEOの出力を中止してもよい。
ステップST77:
SOUパースルーチン63は、ステップST74で読み出したビデオデータPICに続くオーディオデータSOUをRAID6から読み出してパース処理する。
ステップST78:
SOUパースルーチン63は、UIオーディオチャンネル選択ルーチン73から不要チャンネル指定要求CH_REQを入力したか否かを判断し、入力したと判断するとステップST79に進み、そうでない場合にはステップST80に進む。
ステップST79:
SOUパースルーチン63は、ステップST77で読み出したオーディオデータSOUを複数のチャンネルのオーディオデータAUDIOに分離し、そのなかで不要チャンネル指定要求CH_REQで指定されていないチャンネルのオーディオデータAUDIOを選択および復号してオーディオレンダルーチン74に出力する。
この場合に、SOUパースルーチン63は、ステップST73で読み出したシステムコードSYSが示す符号化方式に対応する復号方式でオーディオデータAUDIOの復号を行う。
ステップST80:
SOUパースルーチン63は、ステップST77で読み出したオーディオデータSOUが構成する複数のチャンネルの全てのオーディオデータAUDIOをオーディオレンダルーチン74に出力する。
なお、上述した図26に示す処理において、ステップST75の判断をステップST74に先立って行い、ドロップ要求DROP_REQを受けた場合に、ステップST74によるビデオデータPICのパース処理を行わないようにしてもよい。
図27は、再生プロセス80からの要求に応じてMXFプロセス8のMXFパーサスレッド43がパース処理を行う場合に、MXFプロセス8と再生プロセス80との間で授受される要求等を説明するための図である。
ステップST91:
コマンドスレッド81は、例えば、図3および図4に示す操作部12,13からの操作信号に応じた、例えば、再生コマンドPLAY_COMDをMXFプロセス8のスレッドマネージャ41に出力する。
スレッドマネージャ41は、再生コマンドPLAY_COMDに応じてMXFパーサスレッド43を起動する。
ステップST92:
スレッドマネージャ41は、再生コマンドPLAY_COMDに応じて、通信に用いるインタフェースであるパイプの名前を含む応答ACKをコマンドスレッド51に出力する。
ステップST93:
ステータススレッド82は、再生の対象とするデータMXF_Dの指定情報(例えば、URLなどのアドレス)、再生プロセス80のユーザの識別データIDおよびパスワードPASSなどをMXFパーサスレッド43に出力する。
ステップST94:
ステータススレッド82は、再生処理の進行に応じて、次に再生を行うフレームデータFLD_1〜FLD_nのフレーム番号を含む再生要求R_REQをMXFパーサスレッド43に出力する。
ステップST95:
MXFパーサスレッド43は、ステップST94の再生要求R_REQに応じて、当該再生要求R_REQで指定されたフレーム番号のフレームデータFLD_1〜FLD_nに対して図25および図26を用いて説明したパース処理を行う。
また、MXFパーサスレッド43のSYSパースルーチン61、PICパースルーチン62およびSOUパースルーチン63の少なくと一つのルーチンが、上記パース処理を行ったフレームデータFLD_1〜FLD_nのタイムコード、並びにフレーム番号をステータススレッド82に出力する。
MXFパーサスレッド43は、データMXF_D内の全てのフレームデータFLD_1〜FLD_nについてのパース処理を完了するまで、上記処理を繰り返す。
ステップST96:
ステータススレッド82は、再生終了要求PLAY_ENDをMXFパーサスレッド43に出力する。
ステップST97:
MXFパーサスレッド43は、再生終了要求PLAY_ENDに応じて、上記パース処理を終了する。
そして、MXFパーサスレッド43は、終了コードをステータススレッド82に出力する。
このように、MXFパーサスレッド43は、ステータススレッド82から再生終了要求PLAY_ENDを受ける機能を有することで、コンピュータ4のようにMXFプロセス8と編集プロセス9aとが同じコンピュータ上で動作する場合に、編集プロセス9aによる編集処理を優先させることが可能であり、編集作業を効率的に行える。
以下、編集システム1の主な動作例を再び説明する。
コンピュータ4上で動作するMXFプロセス8は、図11に示すように、FTPスレッド42とMXFパーサスレッド43をMXFプロセス8によって規定し、FTPスレッド42による受信処理とMXFパーサスレッド43によるパース処理とを並行して行う。
これにより、FTP受信時間とパース処理の総時間を短縮できる。
また、コンピュータ4は、スレッドマネージャ41が、MXFパース処理を行うときにMXFパーサスレッド43を起動し、MUX処理を行うときにMXF−MUXスレッド44を起動するため、MXFパース処理およびMUX処理を行わないときの処理部15の処理負荷を少なくできる。
図11に示すMXFパーサスレッド43は、図5に示す複数のビデオデータPICと、複数のオーディオデータSOUと、システムデータSYSとが混在したデータMXF_Dを、図12〜図19を用いて説明したように、図12に示すSYSパースルーチン61、PICパースルーチン62およびSOUパースルーチン63によってパースする。
これにより、MXFパーサスレッド43は、上記パースしたシステムデータとメタデータMETAを基にビデオに関する図7に示すビデオファイル属性データVFPDを生成し、ビデオファイル属性データVFPDと、上記パースした複数のビデオデータPIC(VIDEO)とを含むビデオファイルデータVFを生成する。
また、MXFパーサスレッド43は、上記パースしたシステムデータとメタデータMETAを基にオーディオに関する図9に示すオーディオファイル属性データAFPDを生成し、オーディオファイル属性データAFPDと、上記パースした複数のオーディオデータSOU(AUDIO)とを含むオーディオファイルデータAFを生成する。
以上説明したように、コンピュータ4によれば、図11に示すように、FTPスレッド42とMXFパーサスレッド43をMXFプロセス8によって規定し、FTPスレッド42による受信処理とMXFパーサスレッド43によるパース処理とを並行して行うことで、FTP受信時間とパース処理の総時間を短縮できる。
また、コンピュータ4によれば、スレッドマネージャ41が、MXFパース処理を行うときにMXFパーサスレッド43を起動し、MUX処理を行うときにMXF−MUXスレッド44を起動するため、MXFパース処理およびMUX処理を行わないときの処理部15の処理負荷を少なくできる。
また、コンピュータ4によれば、図5に示すデータMXF_Dから、図7に示すビデオファイルデータVFおよび図9に示すオーディオファイルデータAFを自動的に生成できる。
また、コンピュータ4によれば、図7に示すビデオファイルデータVFおよび図9に示すオーディオファイルデータAFから、図5に示すデータMXF_Dを自動的に生成できる。
また、コンピュータ4によれば、MXFパーサスレッド43によりデータMXF_Dを、再生プロセス80が再生可能なデータに変換することで、データMXF_Dを基にした再生プロセス80による再生処理が可能になる。
また、コンピュータ4によれば、MXFパーサスレッド43が、図25に示すように、シーク要求SEEK_REQを受けてシーク処理を行うことで、再生スレッド83が再生したいフレームデータを簡単な構成で即座にMXFポース処理することができる。
また、コンピュータ4によれば、MXFパーサスレッド43が、ドロップ要求DROP_REQを受けて駒落とし処理を行うことで、再生スレッド83が1倍速再生を安定して行うことが可能になる。
また、コンピュータ4によれば、MXFパーサスレッド43が、不要チャンネル指定要求CH_REQを基に不要なチャンネルについてSOUパースルーチン63のパース処理を行うため、コンピュータ4の処理負荷を軽減できる。
本発明は上述した実施形態には限定されない。
例えば、上述した実施形態では、編集プロセス9a,9bで処理可能なフォーマットとしてビデオファイルデータVFおよびオーディオファイルデータAFを例示したが、一般のコンピュータ上で処理できるフォーマットであれば特に限定されず、その他、ビデオデータとしてRGBフォーマットや、YUVフォーマットなどのフォーマットを用いてもよい。
また、上述した実施形態では、本発明の被処理データとしてデータMXF_Dを例示したが、本発明は、複数のオーディオデータと、前記ビデオデータおよびオーディオデータの属性を示す複数の第1の属性データとが混在したデータであれば、データMXF_D以外のデータを被処理データとして用いてもよい。
本発明は、ビデオデータおよびオーディオデータに関するデータのフォーマット変換を行うシステムに適用可能である。
図1は、本発明の実施形態に係わる編集システムの全体構成図である。 図2は、図1に示すコンピュータ4,5上で動作するプロセスを説明するための図である。 図3は、図1に示すコンピュータ4の構成図である。 図4は、図1に示すコンピュータ5の構成図である。 図5は、データMXF_Dを説明するための図である。 図6は、図4に示すデータMXF_Dを構成するKLVデータを説明するための図である。 図7は、本発明の実施形態のビデオファイルデータVFを説明するための図である。 図8は、図7に示すビデオ共通特性データVCPDを説明するための図である。 図9は、本発明の実施形態のオーディオファイルデータAFを説明するための図である。 図10は、図9に示すWAVE特定データWFPDを説明するための図である。 図11は、図2に示すMXFプロセスを説明するための図である。 図12は、図11に示すMXFパーサスレッドを説明するための図である。 図13は、図12に示すSYSパースルーチンの処理を説明するためのフローチャートである。 図14は、図12に示すSYSパースルーチンの処理を説明するための図13の続きのフローチャートである。 図15は、図13に示すステップST5の処理を説明するための図である。 図16は、図13に示すステップST5の処理を説明するための図である。 図17は、図13に示すステップST5の処理を説明するための図である。 図18は、図12に示すPICパースルーチンの処理を説明するためのフローチャートである。 図19は、図12に示すSOUパースルーチンの処理を説明するためのフローチャートである。 図20は、図11に示すMXF−MUXスレッの処理を説明するためのフローチャートである。 図21は、図2に示す編集プロセスを説明するための図である。 図22は、図2に示す編集プロセスからの要求に応じてMXFプロセスのMXFパーサスレッドがパース処理を行う場合に、MXFプロセスと編集プロセスとの間で授受される要求等を説明するための図である。 図23は、再生プロセスを説明するための図である。 図24は、図23に示す再生スレッドを説明するための図である。 図25は、図23に示す再生スレッドとMXFパーサスレッドの処理を説明するための図である。 図26は、図25に示す場合におけるMXFパーサスレッドの処理を説明するための図である。 図27は、図25に示す場合におけるMXFパーサスレッドと再生スレッドとの間で授受される要求およびデータを説明するための図である。
符号の説明
1…編集システム、2…ネットワーク、3…FTPサーバ、4,5…コンピュータ、6…RAID、8…MXFプロセス、9a,9b…編集プロセス、11,21…通信部、12,22…操作部、13,23…表示部、14,24…メモリ、41…スレッドマネージャ、42…FTPスレッド、43…MXFパーサスレッド、44…MXF−MUXスレッド、61…SYSパースルーチン、62…PICパースルーチン、63…SOUパースルーチン、51…コマンドスレッド、52…ステータススレッド、53…編集スレッド、80…再生プロセス、81…コマンドスレッド、82…ステータススレッド、83…再生スレッド

Claims (9)

  1. 複数のビデオデータと、複数のオーディオデータと、前記ビデオデータおよび前記オーディオデータの属性を示す複数の第1の属性データとが混在した第1のデータを、ビデオファイルデータとオーディオファイルデータの少なくとも一方である第2のデータに変換するプログラムであって、
    複数のフレームデータで構成される第1のデータの受信処理を行う通信プロセスと、
    前記通信プロセスによる前記受信処理と並行して、前記第2のデータを再生する再生プロセスから前記フレームデータを指定した要求を受け、当該要求によって指定された前記フレームデータを第2のデータに変換する変換プロセスと、
    を含む処理をコンピュータに実行させ
    前記変換プロセスは、
    複数のビデオデータと、前記第1のデータをパースする第1の手順と、
    前記第1の手順で前記パースした前記第1の属性データを基にビデオに関する第2の属性データを生成し、当該第2の属性データと前記第1の手順で前記パースした前記複数のビデオデータとを含むビデオファイルデータを前記第2のデータとして生成する第2の手順と、
    前記第1の手順で前記パースした前記第1の属性データを基にオーディオに関する第3の属性データを生成し、当該第3の属性データと前記第1の手順で前記パースした前記複数のオーディオデータとを含むオーディオファイルデータを前記第2のデータとして生成する第3の手順と、
    を含むプログラム。
  2. 前記変換プロセスは、前記再生プロセスからの停止要求に応じて、前記変換の処理を停止する
    請求項に記載のプログラム。
  3. 前記第1の手順は、前記ビデオデータ、前記オーディオデータおよび前記第1の属性データの各々が各単位データを識別する識別データとデータ本体とをそれぞれ含む複数の前記単位データで構成される場合に、前記パースにおいて前記識別データを基に前記ビデオデータ、前記オーディオデータおよび前記第1の属性データを検出し、
    前記第2の手順は、前記第1の手順で検出された前記ビデオデータおよび前記第1の属性データを基に、前記ビデオファイルデータを生成し、
    前記第3の手順は、前記第1の手順で検出された前記オーディオデータおよび前記第1の属性データを基に、前記オーディオファイルデータを生成する
    請求項に記載のプログラム。
  4. 前記第2の属性データは、前記ビデオデータに応じた画像の表示サイズ、当該画像のフ
    レームのデータサイズ、当該ビデオデータの再生レートの少なくとも一つを示し、
    前記第3の属性データは、前記オーディオデータによって得られるチャンネル数、前記オーディオデータのサンプリングレートの少なくとも一つを示す
    請求項に記載のプログラム。
  5. 前記複数のビデオデータの各々は1フレーム分のビデオデータであり、前記複数のオーディオデータの各々は1フレーム分のオーディオデータであり、
    前記第1の手順は、それぞれ単数の前記ビデオデータ、当該ビデオデータと共に再生される前記オーディオデータおよび前記第1の属性データを各々が含む複数のモジュールデータから構成される前記被処理データをパースする
    請求項に記載のプログラム。
  6. 前記第1のデータは、MFXデータである
    請求項に記載のプログラム。
  7. 前記通信プロセスは、FTPによる受信処理を行う
    請求項1に記載のプログラム。
  8. 複数のオーディオデータと、前記ビデオデータおよび前記オーディオデータの属性を示す複数の第1の属性データとが混在した第1のデータを、ビデオファイルデータとオーディオファイルデータの少なくとも一方である第2のデータに変換するデータ処理方法であって、
    複数のフレームデータで構成される第1のデータの受信処理を行う第1の工程と、
    前記第1の工程における前記受信処理と並行して、前記第2のデータを再生する再生プロセスから、前記フレームデータを指定した要求を受け、当該要求によって指定された前記フレームデータを第2のデータに変換する第2の工程と、
    を有し、
    前記第2の工程は、
    複数のビデオデータと、前記第1のデータをパースする第3の工程と、
    前記第3の工程で前記パースした前記第1の属性データを基にビデオに関する第2の属性データを生成し、当該第2の属性データと前記第1の手順で前記パースした前記複数のビデオデータとを含むビデオファイルデータを前記第2のデータとして生成する第4の工程と、
    前記第3の工程で前記パースした前記第1の属性データを基にオーディオに関する第3の属性データを生成し、当該第3の属性データと前記第1の手順で前記パースした前記複数のオーディオデータとを含むオーディオファイルデータを前記第2のデータとして生成する第5の工程と、
    を有するデータ処理方法。
  9. 複数のオーディオデータと、前記ビデオデータおよび前記オーディオデータの属性を示す複数の第1の属性データとが混在した第1のデータを、ビデオファイルデータとオーディオファイルデータの少なくとも一方である第2のデータに変換するデータ処理装置であって、
    複数のフレームデータで構成される第1のデータの受信処理を行う第1の手段と、
    前記第1の工程における前記受信処理と並行して、前記第2のデータを再生する再生プロセスから、前記フレームデータを指定した要求を受け、当該要求によって指定された前記フレームデータを第2のデータに変換する第2の手段と、
    を有し、
    前記第2の手段は、
    複数のビデオデータと、前記第1のデータをパースし、
    前記第1の工程で前記パースした前記第1の属性データを基にビデオに関する第2の属性データを生成し、当該第2の属性データと前記第1の手順で前記パースした前記複数のビデオデータとを含むビデオファイルデータを前記第2のデータとして生成し、
    前記第1の工程で前記パースした前記第1の属性データを基にオーディオに関する第3の属性データを生成し、当該第3の属性データと前記第1の手順で前記パースした前記複数のオーディオデータとを含むオーディオファイルデータを前記第2のデータとして生成する
    データ処理装置。
JP2003283182A 2003-07-30 2003-07-30 プログラム、データ処理方法およびその装置 Expired - Fee Related JP4314923B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2003283182A JP4314923B2 (ja) 2003-07-30 2003-07-30 プログラム、データ処理方法およびその装置
US10/901,804 US7373439B2 (en) 2003-07-30 2004-07-29 System method using material exchange format (MXF) converting program for audio and video data files having routines that generates attribute data from audio and video data file
EP04254562A EP1503593A2 (en) 2003-07-30 2004-07-29 Demultiplexer for MXF metadata
CNB200410079491XA CN100343850C (zh) 2003-07-30 2004-07-30 数据处理方法及其系统
US11/890,159 US20080033978A1 (en) 2003-07-30 2007-08-03 Program, data processing method, and system of same
US11/890,158 US20090007208A1 (en) 2003-07-30 2007-08-03 Program, data processing method, and system of same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003283182A JP4314923B2 (ja) 2003-07-30 2003-07-30 プログラム、データ処理方法およびその装置

Publications (2)

Publication Number Publication Date
JP2005051632A JP2005051632A (ja) 2005-02-24
JP4314923B2 true JP4314923B2 (ja) 2009-08-19

Family

ID=34268144

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003283182A Expired - Fee Related JP4314923B2 (ja) 2003-07-30 2003-07-30 プログラム、データ処理方法およびその装置

Country Status (1)

Country Link
JP (1) JP4314923B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4513876B2 (ja) 2008-02-27 2010-07-28 ソニー株式会社 ファイル構造解析装置、ファイル構造解析方法およびプログラム
JP5392602B2 (ja) * 2009-03-11 2014-01-22 日本電気株式会社 Mxfデータ検索装置、mxfデータの検索方法、及びmxfデータ検索プログラム

Also Published As

Publication number Publication date
JP2005051632A (ja) 2005-02-24

Similar Documents

Publication Publication Date Title
JP4270379B2 (ja) デジタル情報の効率的な伝送および再生
JP4421156B2 (ja) 画像再生装置および画像記録再生装置
US20090007208A1 (en) Program, data processing method, and system of same
RU2366102C2 (ru) Способ и устройство для записи и воспроизведения видеоданных и информационный носитель данных, на котором записаны видеоданные
JP2004007648A (ja) 映像音声データ記録装置、映像音声データ記録方法、映像音声データ再生装置、並びに、映像音声データ再生方法
US20040148454A1 (en) Information processing apparatus and method
JP2868981B2 (ja) 圧縮信号生成装置及び方法及び再生装置及び方法
US20040223739A1 (en) Disc apparatus, disc recording method, disc playback method, recording medium, and program
US7664373B2 (en) Program, data processing method, and system of same
KR100777856B1 (ko) 화상 기록 장치 및 방법, 화상 재생 장치 및 방법과 기록매체
US7734655B2 (en) Method of managing data on recording medium
JP4314923B2 (ja) プログラム、データ処理方法およびその装置
JP4314922B2 (ja) プログラム、データ処理方法およびその装置
US8059167B2 (en) Shooting apparatus and shooting method, and program
US20050069297A1 (en) Video signal processing apparatus video signal processing method program and recording medium
JP3540761B2 (ja) コンピュータシステムおよび動画再生方法
JP3436818B2 (ja) コンピュータシステムおよび動画再生方法
JP2007158431A (ja) 映像記録装置及び映像記録再生装置
KR100888603B1 (ko) 영상 데이터 기록 방법
JPH08205044A (ja) 情報提供制御装置及び情報提供制御方法
JPH11298859A (ja) 映像信号符号化システム及び映像信号符号化方法
JP2000209549A (ja) 画像処理装置および方法、並びに画像記録媒体
JP2002135691A (ja) 再生装置、再生方法、及び記憶媒体
JP2006014256A (ja) 映像音声データ記録再生装置
JPH11341437A (ja) 符号化装置、符号化方法、復号装置及び復号方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070828

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070904

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071105

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081021

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081218

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090428

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090511

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

Free format text: PAYMENT UNTIL: 20120529

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees