From 0cd788fefaf8f61c96b3ca8c0d372e03d7d4b8b9 Mon Sep 17 00:00:00 2001 From: lostjared Date: Wed, 8 Feb 2017 10:57:45 -0800 Subject: [PATCH] added Release() to Playback --- src/main_window.cpp | 21 +++++++++++++++++---- src/main_window.h | 1 + 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/src/main_window.cpp b/src/main_window.cpp index 6acf4e9..a806aa1 100644 --- a/src/main_window.cpp +++ b/src/main_window.cpp @@ -135,6 +135,16 @@ void Playback::Stop() { mutex.unlock(); } +void Playback::Release() { + + if(capture.isOpened()) { + capture.release(); + } + if(writer.isOpened()) { + writer.release(); + } +} + void Playback::msleep(int ms) { QThread::msleep(ms); } @@ -549,8 +559,8 @@ bool AC_MainWindow::startVideo(const QString &filename, const QString &outdir, b void AC_MainWindow::controls_Stop() { playback->Stop(); if(capture_video.isOpened()) { - capture_video.release(); - if(recording == true) writer.release(); + //capture_video.release(); + //if(recording == true) writer.release(); cv::destroyWindow("Acid Cam v2"); file_new_capture->setEnabled(true); file_new_video->setEnabled(true); @@ -561,10 +571,11 @@ void AC_MainWindow::controls_Stop() { Log(stream_); } disp->hide(); + playback->Release(); } if(capture_camera.isOpened()) { - capture_camera.release(); - if(recording == true) writer.release(); + // capture_camera.release(); + // if(recording == true) writer.release(); cv::destroyWindow("Acid Cam v2"); file_new_capture->setEnabled(true); file_new_video->setEnabled(true); @@ -575,7 +586,9 @@ void AC_MainWindow::controls_Stop() { Log(stream_); } disp->hide(); + playback->Release(); } + } void AC_MainWindow::file_Exit() { diff --git a/src/main_window.h b/src/main_window.h index 4292850..976d42c 100644 --- a/src/main_window.h +++ b/src/main_window.h @@ -24,6 +24,7 @@ public: ~Playback(); void Play(); void Stop(); + void Release(); void setVideo(cv::VideoCapture cap, cv::VideoWriter writer, bool record); bool isStopped() const; void run();