diff --git a/ISCamRecorder/ISCamera.cs b/ISCamRecorder/ISCamera.cs index 088e483..242f321 100644 --- a/ISCamRecorder/ISCamera.cs +++ b/ISCamRecorder/ISCamera.cs @@ -141,20 +141,21 @@ /// public void RecordToMemory(float recodingLimit) { if (!_Cam.DeviceValid) return; - _Recoding = false; - // メモリ確保 + // 準備 + _Recoding = false; ClearBuffer(); var framesToCapture = (int)(recodingLimit * CameraFPS) + 1; - _RecSink.AllocAndQueueBuffers(framesToCapture); Ready.Set(); Common.DebugOut($"{_CamID} ready for recoding."); // 撮影待機 while (!_Recoding) { Thread.Sleep(0); } + Ready.Reset(); - // 撮影 + // 撮影開始 Common.DebugOut($"{_CamID} starts recoding."); + _RecSink.AllocAndQueueBuffers(framesToCapture); while (_Recoding) { if (framesToCapture <= _RecSink.OutputQueueSize + 1) break; }