TOPへ
ソース一覧
利用許諾
FAQ
お問い合わせ
関連資料

素材作成用MXFライブラリ

概要

SMPTEで規格化されたMXFは、カムコーダ、録画再生機、ノンリニア編集機、送出設備などの放送用機材に徐々に浸透し始めています。MXFは映像や音声などの様々な形式のフォーマットのデータを、メタデータおよびUMIDとともにKLVエンコーディングと呼ばれる統一した形式でラッピングすることが可能なフォーマットです。
素材作成用MXFライブラリは、MXFの解析、作成をするためにNHK放送技術研究所で開発したC++言語用のライブラリです。
ソースコードにはMXFライブラリを使用したサンプルとして、MXFのダンプ(dumpmxf)、MPEG-2 videoのMXFへのラッピング(mpg2mxf, mpg2mxf_atom)、アンラッピング(mxf2mpg)等のソースコードも含まれています。
フレキシブル制作システムで使用するMXF素材ファイルはmpeg2mxf_atomを利用して、MPEG-2 Video(I-only)ファイルから作成できます。

ダウンロード

素材作成用MXFライブラリのソースコードは、ここからダウンロードしてください。

動作環境

下記の環境で動作確認しています。

コンパイル方法

ダウンロードしたソースコード(ここでは、nkmxflib.tar.gzとして説明します)を適当なディレクトリで展開します。

% tar xvfz nkmxflib.tar.gz

nklibをコンパイルします。nklibディレクトリに移動し、makeを実行します。i386環境ではMakefileファイル内の-DAMD64を削除してからコンパイルしてください。

% cd nklib
% make

nkfmxflibをコンパイルします。nkmxflibディレクトリに移動し、makeを実行します。

% cd nkmxflib
% make

サンプルソースコードは、nkmxflib内のsampleディレクトリ内にプログラム毎のディレクトリに保存されています。各ディレクトリに移動してmakeを実行してください。

サンプルプログラムの実行方法

ソースコードを展開したdataディレクトリ内にサンプル用のMXFファイル(colorbar.mxf)があります。以下のサンプルプログラムをテストするときにご利用ください。

◆dumpmxf

MXFのKLVを解析して表示するプログラムです。

% ./dumpmxf colorbar.mxf

上記を実行すると、指定したMXFファイル内のすべてのKLVデータを表示します。
-hオプションを付けるとヘッダー部分までを表示します。

◆mxfhead

MXFにラッピングされている映像、音声の基本的な情報を表示するプログラムです。

% ./mxfhead colorbar.mxf

◆mxf2mpg

MXFにラッピングされているMPEG-2 Videoを抽出するプログラムです。

% ./mxf2mpg colorbar.mxf sample.mpg

上記を実行すると、sample.mpgファイル(MPEG-2 ES)が生成されます。

◆mpg2mxf, mpg2mxf_atom

MPEG-2 VideoをフレームラッピングのMXFにラッピングするプログラムです。mpg2mxfはOP-1aのMXFファイルを、mpg2mxf_atomはOP-AtomのMXFファイルを生成します。

% ./mpg2mxf_atom sample.mpg sample.mxf

上記を実行すると、sample.mxfファイル(OP-Atom, フレームラッピング)が生成されます。

フレキシブル制作システムでは、1920x1080または1440x1080のI-onlyのMPEG-2 Video ESをOP-AtomでフレームラッピングしたMXFファイルを対象としています。フレキシブル制作システムの素材として利用できるMXFのサンプルとして、カラーバー映像のMXFファイル(colorbar.mxf)が、ソースコードを展開したdataディレクトリ内にあります。

関連文献

注意事項

本プログラムはMXF規格を完全にサポートしているものではありません。NHK放送技術研究所でMXFを用いた実験、評価するために作成したものであり、実用に耐えるに十分な実装は行っていません。実験、評価用途としてご利用ください。
また、現在ライブラリを使用するためのドキュメントが未整備です。利用する場合はサンプルのソースコードおよびライブラリのソースコードを解析して利用してください。

商標

NovellならびにSUSEはNovell, Inc.の登録商標です。
LinuxはLinus Torvals氏の登録商標です。