録画時間を指定したAVIファイル保存 (Version 3.3)
録画する長さを設定してAVI動画ファイルを保存する方法を示しています。
Software | IC Imaging Control 3.3, Visual Studio™ 2010 |
---|---|
サンプル(C#) | save_avi_with_timed_stop_cs.zip |
プログラムが開始されると.ShowDeviceSettingsDialogをコールしてデバイスの選択ダイアログを表示します。デバイスが選択されたら.LiveStartによりライブ表示を開始します。
private void Form1_Load(object sender, System.EventArgs e)
{
icImagingControl1.ShowDeviceSettingsDialog();
if( !icImagingControl1.DeviceValid )
{
Close();
return;
}
icImagingControl1.LiveStart();
}
"Start Capture"がクリックされると、.LiveStopによりライブ表示を停止してAVIファイル保存とタイマーを開始します。
private void btnStartCapture_Click(object sender, System.EventArgs e)
{
icImagingControl1.LiveStop();
icImagingControl1.AviStartCapture( "video.avi", "DV Video Encoder" );
btnStartCapture.Enabled = false;
recordedTime = 0;
recordTimer.Start();
}
イベントハンドラーTimer1_Timer()は定期的にポーリングされるので、その中で以下の様に動作させます。
ユーザーがtxtStop.Textに録画したい時間を指定して読み込みます。
lblRecorded.Textに現在の経過時間を表示します。
経過時間が指定された時間に達したら、.AviStopCaptureにより動画保存を停止します。
.LiveStartにより、ライブ表示を再開します。
int recordedTime = 0;
private void recordTimer_Tick(object sender, System.EventArgs e)
{
recordedTime += 1;
lblRecordedTime.Text = recordedTime.ToString() + "s";
if( recordedTime >= int.Parse( txtStopTime.Text ) )
{
recordTimer.Stop();
icImagingControl1.AviStopCapture();
icImagingControl1.LiveStart();
btnStartCapture.Enabled = true;
}
}