Я использую Android Studio, OpenCV и JavaCameraView для отображения кадра с камеры.Я хочу создать простой регистратор кадров Mat.Например, я хочу сохранить 100 последних кадров, а затем я хочу отобразить их в JavaCameraView.
У меня есть вектор записанныйCameraFrames для хранения кадров Mat.В функции onCameraFrame у меня есть ...
@Override
public Mat onCameraFrame(CameraBridgeViewBase.CvCameraViewFrame cameraFrame) {
colorMat = cameraFrame.rgba();
if(frameCountForRecording < 100){
recordedCameraFrames.add(colorMat);
frameCountForRecording++;
}
else {
isRecordedFramesReadyToPlay = true;
recordedCameraFrames.remove(0);
recordedCameraFrames.add(colorMat);
}
А потом, когда я активирую PLAY_DETECTED_FRAMES_VIEW_MODE, я хочу воспроизводить записанные кадры ...
case PLAY_DETECTED_FRAMES_VIEW_MODE:
if(isRecordedFramesReadyToPlay == true && canPlayRecordedFrames == true) {
if (indexOfRecordedFrame == 99) {
indexOfRecordedFrame = 0;
}
indexOfRecordedFrame++;
colorMat = recordedCameraFrames.get(indexOfRecordedFrame).clone();
}
break;