mirror of
https://github.com/overte-org/overte.git
synced 2025-04-21 09:44:21 +02:00
Merge pull request #650 from ey6es/kinected
Bugfix: Turn the camera off when disabled.
This commit is contained in:
commit
489742f1e1
2 changed files with 15 additions and 4 deletions
|
@ -50,7 +50,7 @@ void Webcam::setEnabled(bool enabled) {
|
|||
QMetaObject::invokeMethod(_grabber, "grabFrame");
|
||||
|
||||
} else {
|
||||
_grabberThread.quit();
|
||||
QMetaObject::invokeMethod(_grabber, "shutdown");
|
||||
_active = false;
|
||||
}
|
||||
}
|
||||
|
@ -267,8 +267,8 @@ FrameGrabber::FrameGrabber() : _initialized(false), _capture(0), _searchWindow(0
|
|||
}
|
||||
|
||||
FrameGrabber::~FrameGrabber() {
|
||||
if (_capture != 0) {
|
||||
cvReleaseCapture(&_capture);
|
||||
if (_initialized) {
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -366,6 +366,16 @@ void FrameGrabber::reset() {
|
|||
#endif
|
||||
}
|
||||
|
||||
void FrameGrabber::shutdown() {
|
||||
if (_capture != 0) {
|
||||
cvReleaseCapture(&_capture);
|
||||
_capture = 0;
|
||||
}
|
||||
_initialized = false;
|
||||
|
||||
thread()->quit();
|
||||
}
|
||||
|
||||
void FrameGrabber::grabFrame() {
|
||||
if (!(_initialized || init())) {
|
||||
return;
|
||||
|
@ -475,7 +485,7 @@ bool FrameGrabber::init() {
|
|||
|
||||
// load our face cascade
|
||||
switchToResourcesParentIfRequired();
|
||||
if (!_faceCascade.load("resources/haarcascades/haarcascade_frontalface_alt.xml")) {
|
||||
if (_faceCascade.empty() && !_faceCascade.load("resources/haarcascades/haarcascade_frontalface_alt.xml")) {
|
||||
printLog("Failed to load Haar cascade for face tracking.\n");
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -94,6 +94,7 @@ public:
|
|||
public slots:
|
||||
|
||||
void reset();
|
||||
void shutdown();
|
||||
void grabFrame();
|
||||
|
||||
private:
|
||||
|
|
Loading…
Reference in a new issue