diff --git a/ISCamRecorder/CvCamera.cs b/ISCamRecorder/CvCamera.cs index 1bb71fa..2ed63b8 100644 --- a/ISCamRecorder/CvCamera.cs +++ b/ISCamRecorder/CvCamera.cs @@ -26,6 +26,12 @@ } } + public enum CvCamState { + Init, + Run, + None, + } + /// /// 汎用カメラクラス /// OpenCVカメラで撮影する @@ -38,6 +44,7 @@ MainForm _MF = null; // メインフォームインスタンス bool _Snap = false; // 静止画撮影フラグ + public CvCamState State { get; set; } = CvCamState.Init; public float CameraFPS { get; private set; } = 0; public float CurrentFPS { get { return _Fps.FrameRate; } } @@ -60,11 +67,13 @@ camera = null; MessageBox.Show("追加カメラに接続できません", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning); + State = CvCamState.None; return false; } camera.FrameWidth = frameWidth; camera.FrameHeight = frameHeight; CameraFPS = (float)camera.Fps; + State = CvCamState.Run; return true; } diff --git a/ISCamRecorder/MainForm.cs b/ISCamRecorder/MainForm.cs index 8dbac03..01742ee 100644 --- a/ISCamRecorder/MainForm.cs +++ b/ISCamRecorder/MainForm.cs @@ -159,7 +159,7 @@ TxtRight.Text = $"右カメラ {_Cameras[3].CameraInfo()}"; TxtSensor.Text = $"逆血センサー {_Sensor.FrameRate:0.0} Hz 検出対象:{Setting.RBDetectCh}"; TxtCvCamera.Text = $"近接カメラ {_CvCamera.CameraInfo()}"; - if (State == STATE.Init && _CvCamera.CurrentFPS > 0) { + if (State == STATE.Init && (_CvCamera.CurrentFPS > 0 || _CvCamera.State == CvCamState.None)) { State = STATE.Idle; this.UpdateControlState(); } diff --git a/ISCamRecorder/Properties/AssemblyInfo.cs b/ISCamRecorder/Properties/AssemblyInfo.cs index a0a23b3..902b361 100644 --- a/ISCamRecorder/Properties/AssemblyInfo.cs +++ b/ISCamRecorder/Properties/AssemblyInfo.cs @@ -32,5 +32,5 @@ // すべての値を指定するか、次を使用してビルド番号とリビジョン番号を既定に設定できます // 既定値にすることができます: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.7.0.0")] -[assembly: AssemblyFileVersion("1.7.0.0")] +[assembly: AssemblyVersion("1.8.0.0")] +[assembly: AssemblyFileVersion("1.8.0.0")]