OpenCV 4.5.3(日本語機械翻訳)
公開メンバ関数 | 静的公開メンバ関数 | 静的限定公開メンバ関数 | 限定公開変数類 | 全メンバ一覧
cv::VideoWriter クラス

Video writer class. [詳解]

#include <videoio.hpp>

公開メンバ関数

CV_WRAP VideoWriter ()
デフォルトコンストラクタ[【詳解】(英語]
CV_WRAP VideoWriter (const String &filename, int fourcc, double fps, Size frameSize, bool isColor=true)
CV_WRAP VideoWriter (const String &filename, int apiPreference, int fourcc, double fps, Size frameSize, bool isColor=true)
CV_WRAP VideoWriter (const String &filename, int fourcc, double fps, const Size &frameSize, const std::vector< int > &params)
CV_WRAP VideoWriter (const String &filename, int apiPreference, int fourcc, double fps, const Size &frameSize, const std::vector< int > &params)
virtual ~VideoWriter ()
デフォルトのデストラクタ[【詳解】(英語]
virtual CV_WRAP bool open (const String &filename, int fourcc, double fps, Size frameSize, bool isColor=true)
ビデオライタを初期化または再初期化します。[【詳解】(英語]
CV_WRAP bool open (const String &filename, int apiPreference, int fourcc, double fps, Size frameSize, bool isColor=true)
CV_WRAP bool open (const String &filename, int fourcc, double fps, const Size &frameSize, const std::vector< int > &params)
CV_WRAP bool open (const String &filename, int apiPreference, int fourcc, double fps, const Size &frameSize, const std::vector< int > &params)
virtual CV_WRAP bool isOpened () const
ビデオライターの初期化が成功した場合は true を返します。
virtual CV_WRAP void release ()
ビデオライターを閉じます。[【詳解】(英語]
virtual VideoWriter & operator<< (const Mat &image)
次のビデオフレームを書き込むためのストリーム演算子。[【詳解】(英語]
virtual VideoWriter & operator<< (const UMat &image)
virtual CV_WRAP void write (InputArray image)
次のビデオフレームを書き込む[【詳解】(英語]
virtual CV_WRAP bool set (int propId, double value)
でプロパティを設定します.VideoWriter.[【詳解】(英語]
virtual CV_WRAP double get (int propId) const
戻り値は、指定したVideoWriterプロパティ[【詳解】(英語]
CV_WRAP String getBackendName () const
使用されているバックエンドのAPI名を返します[【詳解】(英語]

静的公開メンバ関数

static CV_WRAP int fourcc (char c1, char c2, char c3, char c4)
4文字を4ccのコードに連結します。[【詳解】(英語]

静的限定公開メンバ関数

static Ptr< IVideoWriter > create (const String &filename, int fourcc, double fps, Size frameSize, bool isColor=true)

限定公開変数類

Ptr< CvVideoWriter > writer
Ptr< IVideoWriter > iwriter

詳解

ビデオライタークラス。

このクラスは,ビデオファイルや画像シーケンスを書き込むための C++ API を提供します。

構築子と解体子

VideoWriter() [1/5]

CV_WRAP cv::VideoWriter::VideoWriter ( )

デフォルトコンストラクタ

コンストラクタ/関数は、ビデオライタを初期化します。

  • Linux では FFMPEG を使用してビデオを書き込みます。
  • Windows では FFMPEG または MSWF または DSHOW が使用されます。
  • MacOSX では AVFoundation が使用されます。

VideoWriter() [2/5]

CV_WRAP cv::VideoWriter::VideoWriter ( const String & filename,
int fourcc,
double fps,
Size frameSize,
bool isColor = true
)

これはオーバーロードされたメンバ関数です。利便性のために用意されています。元の関数との違いは引き数のみです。

引数
filename 出力するビデオファイルの名前。
fourcc フレームの圧縮に使用するコーデックの4文字コード。例えば、以下のようになります。VideoWriter::fourcc('P','I','M','1')は、MPEG-1コーデックです。VideoWriter::fourcc('M','J','P','G')はmotion-jpegコーデックなどです。コードのリストは以下のサイトで入手できます。FOURCCによるビデオコーデックのページをご覧ください。MP4コンテナを持つFFMPEGバックエンドは、fourccコードとして他の値をネイティブに使用します。オブジェクトタイプを参照してください。そのため,OpenCVからfourccコードの変換に関する警告メッセージが表示されることがあります。
fps 作成されるビデオストリームのフレームレート.
frameSize ビデオフレームのサイズ.
isColor これが0ではない場合,エンコーダはカラーフレームを期待してエンコードしますが,そうでない場合はグレースケールフレームで動作します.

ヒント

  • いくつかのバックエンドではfourcc=-1は、システムからコーデック選択ダイアログをポップアップします。
  • イメージシーケンスを保存するには、適切なファイル名(例.img_%02d.jpg)とfourcc=0またはfps=0. 生のフレームを保存するには、非圧縮の画像形式(例.img_%02d.BMP生のフレームを保存するには、非圧縮画像フォーマット(例えば
  • ほとんどのコーデックは非可逆です。ロスレスのビデオファイルが必要な場合は、ロスレスのコーデックを使用する必要があります(例:FFMPEG FFV1、Huffman HFYU、Lagarith LAGSなど)。
  • FFMPEGが有効になっている場合はcodec=0; fps=0;を使用すると、非圧縮の(生の)ビデオファイルを作成できます。

VideoWriter() [3/5]

CV_WRAP cv::VideoWriter::VideoWriter ( const String & filename,
int apiPreference,
int fourcc,
double fps,
Size frameSize,
bool isColor = true
)

これはオーバーロードされたメンバ関数です。利便性のために用意されています。元の関数との違いは引き数のみです。apiPreferenceパラメータでは、使用するAPIバックエンドを指定できます。複数のリーダーが利用可能な場合、特定のリーダーの実装を強制するために使用できます。cv::CAP_FFMPEGまたはcv::CAP_GSTREAMER.

VideoWriter() [4/5]

CV_WRAP cv::VideoWriter::VideoWriter ( const String & filename,
int fourcc,
double fps,
const Size & frameSize,
const std::vector< int > & params
)

これはオーバーロードされたメンバ関数です。利便性のために用意されています。元の関数との違いは引き数のみです。paramsパラメーターでは,追加のエンコーダーパラメーターをペア(paramId_1, paramValue_1, paramId_2, paramValue_2, ... ...)でエンコードして指定できます.cv::VideoWriterProperties

VideoWriter() [5/5]

CV_WRAP cv::VideoWriter::VideoWriter ( const String & filename,
int apiPreference,
int fourcc,
double fps,
const Size & frameSize,
const std::vector< int > & params
)

これはオーバーロードされたメンバ関数です。利便性のために用意されています。元の関数との違いは引き数のみです。

~VideoWriter()

virtual cv::VideoWriter::~VideoWriter ( )
virtual

デフォルトのデストラクタ

このメソッドは、まずVideoWriter::releaseは,すでに開いているファイルを閉じます。

関数詳解

fourcc()

static CV_WRAP int cv::VideoWriter::fourcc ( char c1,
char c2,
char c3,
char c4
)
static

4文字を4ccのコードに連結します。

戻り値
fourccコード

このスタティックメソッドは、コンストラクタで使用されるコーデックのfourccコードを構築します。VideoWriter::VideoWriterまたはVideoWriter::open.

get()

virtual CV_WRAP double cv::VideoWriter::get ( int propId ) const
virtual

戻り値は、指定したVideoWriterプロパティ

引数
propId プロパティの識別子cv::VideoWriterProperties(例cv::VIDEOWRITER_PROP_QUALITY)のいずれかを実行します。Additional flags for video I/O API backends
戻り値
指定されたプロパティの値。が使用しているバックエンドでサポートされていないプロパティを照会すると、値 0 が返されます。VideoWriterインスタンスを作成します。

getBackendName()

CV_WRAP String cv::VideoWriter::getBackendName ( ) const

使用されているバックエンドのAPI名を返します

覚え書き
ストリームを開く必要があります。

open() [1/4]

CV_WRAP bool cv::VideoWriter::open ( const String & filename,
int apiPreference,
int fourcc,
double fps,
const Size & frameSize,
const std::vector< int > & params
)

これはオーバーロードされたメンバ関数です。利便性のために用意されています。元の関数との違いは引き数のみです。

open() [2/4]

CV_WRAP bool cv::VideoWriter::open ( const String & filename,
int apiPreference,
int fourcc,
double fps,
Size frameSize,
bool isColor = true
)

これはオーバーロードされたメンバ関数です。利便性のために用意されています。元の関数との違いは引き数のみです。

open() [3/4]

CV_WRAP bool cv::VideoWriter::open ( const String & filename,
int fourcc,
double fps,
const Size & frameSize,
const std::vector< int > & params
)

これはオーバーロードされたメンバ関数です。利便性のために用意されています。元の関数との違いは引き数のみです。

open() [4/4]

virtual CV_WRAP bool cv::VideoWriter::open ( const String & filename,
int fourcc,
double fps,
Size frameSize,
bool isColor = true
)
virtual

ビデオライタを初期化または再初期化します。

このメソッドは、ビデオライターを開きます。パラメータは、コンストラクタと同じです。VideoWriter::VideoWriter.

戻り値
trueビデオライターの初期化に成功した場合

このメソッドは、まずVideoWriter::releaseは,すでに開いているファイルを閉じます。

operator<<() [1/2]

virtual VideoWriter & cv::VideoWriter::operator<< ( const Mat & image )
virtual

次のビデオフレームを書き込むためのストリーム演算子。

参照
write

operator<<() [2/2]

virtual VideoWriter & cv::VideoWriter::operator<< ( const UMat & image )
virtual

これはオーバーロードされたメンバ関数です。利便性のために用意されています。元の関数との違いは引き数のみです。

参照
write

release()

virtual CV_WRAP void cv::VideoWriter::release ( )
virtual

ビデオライターを閉じます。

このメソッドは,後続のVideoWriter::openまた、このメソッドのVideoWriterデストラクタから自動的に呼び出されます.

set()

virtual CV_WRAP bool cv::VideoWriter::set ( int propId,
double value
)
virtual

でプロパティを設定します.VideoWriter.

引数
propId プロパティの識別子cv::VideoWriterProperties(例cv::VIDEOWRITER_PROP_QUALITY)のいずれかを実行します。Additional flags for video I/O API backends
value そのプロパティの値.
戻り値
trueが使用しているバックエンドがそのプロパティをサポートしている場合は、そのプロパティを使用します。VideoWriterインスタンスを作成します。

write()

virtual CV_WRAP void cv::VideoWriter::write ( InputArray image )
virtual

次のビデオフレームを書き込む

引数
image 書き込まれたフレーム。一般的に、カラー画像はBGRフォーマットであることが期待されます。

この関数/メソッドは、指定された画像をビデオファイルに書き込みます。ビデオファイルのサイズは,ビデオライターを開くときに指定したサイズと同じでなければなりません。


このクラス詳解は次のファイルから抽出されました: