ネームスペース
ビデオファイルの入出力を行うライブラリ

ネームスペース

namespace  mist::video
 ビデオファイルを扱うライブラリ

説明

本ライブラリは,http://ffmpeg.sourceforge.net/index.php で開発が行われている ffmpeg の libavcodec, libavformat を利用している エンコードとデコードはこのライブラリのAPIを用いて実装されているため,別途ライブラリを用意する必要がある

次のヘッダをインクルードする
#include <mist/io/video.h>
使用例(ビデオストリームから連番bmpファイルを作成)
mist::array2< mist::rgb< unsigned char > > img;
mist::video::decoder iv( "input.avi" );
iv.dump( );
char fname[ 256 ];
int i = 0;
while( !iv.is_eof( ) )
{
iv >> img;
sprintf( fname, "%04d.bmp", i++ );
mist::write_bmp( img, fname );
}
iv.close( );
使用例(入力ビデオをmpeg1ビデオに変換)
mist::array2< mist::rgb< unsigned char > > img;
mist::video::decoder iv( "input.avi" );
// コンストラクタの引数を変更して圧縮パラメータの変更
// (【注意!】ストリームを開く前に変更しなければならない)
mist::video::mpeg1::encoder ov( "output.mpg", 320, 240 );
ov.dump( );
while( !iv.is_eof( ) )
{
std::cout << iv.time( ) << std::endl;
iv >> img;
/* ここで img に何らかの画像処理を施すことも可能 */
ov << img;
}
ov.close( );
iv.close( );

Generated on Wed Nov 12 2014 19:44:28 for MIST by doxygen 1.8.1.2