Class VideoWriter

ビデオライターを表します。

継承

VideoWriter

実装

Namespace: ic4
Assembly: ic4dotnet.dll

構文

public class VideoWriter : HandleObject, IDisposable

備考

ビデオライターを作成するには、VideoWriter(VideoWriterType) コンストラクタを使用し、作成したいビデオファイルの種類を指定します。

ビデオライターを作成したら、BeginFile(string, ImageType, double) を呼び出して新しいビデオファイルの書き込みを開始します。ビデオファイルに画像を追加するには AddFrame(ImageBuffer) を呼び出します。録画を完了するには FinishFile() を呼び出します。

PropertyMap を使用して、エンコーダの設定オプションにアクセスできます。

コンストラクタ

VideoWriter(VideoWriterType)

新しいビデオライターを作成します。

宣言

public VideoWriter(VideoWriterType type)

パラメータ

名前 説明
VideoWriterType type 作成するビデオライターのファイルタイプ

例外

条件
IC4Exception 詳細については ErrorCode および ToString() を確認してください。

プロパティ

PropertyMap

ビデオライターのエンコーダ設定用プロパティマップ

宣言

public PropertyMap PropertyMap { get; }

プロパティ値

説明
PropertyMap ビデオライターのプロパティマップ

例外

条件
IC4Exception 詳細については ErrorCode および ToString() を確認してください。

メソッド

AddFrame(ImageBuffer)

現在開いているビデオファイルに画像を追加します。

宣言

public void AddFrame(ImageBuffer buffer)

パラメータ

名前 説明
ImageBuffer buffer ビデオファイルに追加する画像バッファ
備考

ビデオファイルに画像を追加する前に、BeginFile(string, ImageType, double) を呼び出す必要があります。

画像バッファの ImageType は、ファイル開始時に BeginFile(string, ImageType, double) に渡した imageType パラメータと同じでなければなりません。

ビデオライターは画像バッファへの参照を保持することがあります。この場合、バッファの解放や再利用が遅れる可能性があります。バッファが共有状態になり、安全に書き込みできなくなることがあります(IsWritable)。 コピーしてすぐにデータを取り出したい場合は、AddFrameCopy(ImageBuffer) を使用してください。

例外

条件
ArgumentNullException

buffernull の場合。

InvalidOperationException

BeginFile(string, ImageType, double) が呼び出されていない場合。

IC4Exception 詳細については ErrorCode および ToString() を確認してください。

AddFrameCopy(ImageBuffer)

現在開いているビデオファイルに画像を追加します。追加時に画像データはコピーされます。

宣言

public void AddFrameCopy(ImageBuffer buffer)

パラメータ

名前 説明
ImageBuffer buffer ビデオファイルに追加する画像バッファ
備考

ビデオファイルに画像を追加する前に、BeginFile(string, ImageType, double) を呼び出す必要があります。

画像バッファの ImageType は、ファイル開始時に BeginFile(string, ImageType, double) に渡した imageType パラメータと同じでなければなりません。

画像バッファの内容はコピーされるため、バッファの参照カウントは増加せず、最終参照が解放されればすぐに再利用できます。 コピー操作を避けたい場合は、AddFrame(ImageBuffer) を使用してください。

例外

条件
ArgumentNullException

buffernull の場合。

InvalidOperationException

BeginFile(string, ImageType, double) が呼び出されていない場合。

IC4Exception 詳細については ErrorCode および ToString() を確認してください。

BeginFile(string, ImageType, double)

新しいビデオファイルを開き、画像を書き込む準備をします。

宣言

public void BeginFile(string fileName, ImageType imageType, double frameRate)

パラメータ

名前 説明
string fileName 新しいビデオファイルの名前
ImageType imageType 書き込む画像の種類
double frameRate ビデオファイルの再生フレームレート

例外

条件
ArgumentNullException
InvalidOperationException

FinishFile() に対応する呼び出しなしで BeginFile が既に呼び出されました。

IC4Exception 詳細については ErrorCode および ToString() を確認してください。

FinishFile()

ビデオファイルの書き込みを終了します。

宣言

public void FinishFile()

例外

条件
InvalidOperationException

BeginFile(string, ImageType, double) が呼び出されていません。

IC4Exception 詳細については ErrorCode および ToString() を確認してください。

実装

IDisposable