terminate when zm_terminate is set. Do a countdown instead of countup. Sleeo for 10000 microseconds instead of 100. This restores the old value
This commit is contained in:
parent
17e01cb58f
commit
961256d2e7
|
@ -22,6 +22,7 @@
|
||||||
#include "zm_config.h"
|
#include "zm_config.h"
|
||||||
#include "zm_monitor.h"
|
#include "zm_monitor.h"
|
||||||
#include "zm_packet.h"
|
#include "zm_packet.h"
|
||||||
|
#include "zm_signal.h"
|
||||||
|
|
||||||
RemoteCameraRtsp::RemoteCameraRtsp(
|
RemoteCameraRtsp::RemoteCameraRtsp(
|
||||||
const Monitor *monitor,
|
const Monitor *monitor,
|
||||||
|
@ -126,8 +127,8 @@ int RemoteCameraRtsp::Disconnect() {
|
||||||
|
|
||||||
int RemoteCameraRtsp::PrimeCapture() {
|
int RemoteCameraRtsp::PrimeCapture() {
|
||||||
Debug(2, "Waiting for sources");
|
Debug(2, "Waiting for sources");
|
||||||
for (int i = 0; i < 100 && !rtspThread->hasSources(); i++) {
|
for (int i = 100; i && !zm_terminate && !rtspThread->hasSources(); i--) {
|
||||||
std::this_thread::sleep_for(Microseconds(100));
|
std::this_thread::sleep_for(Microseconds(10000));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!rtspThread->hasSources()) {
|
if (!rtspThread->hasSources()) {
|
||||||
|
@ -218,7 +219,7 @@ int RemoteCameraRtsp::Capture(std::shared_ptr<ZMPacket> &zm_packet) {
|
||||||
|
|
||||||
while (!frameComplete) {
|
while (!frameComplete) {
|
||||||
buffer.clear();
|
buffer.clear();
|
||||||
if (!rtspThread || rtspThread->IsStopped())
|
if (!rtspThread || rtspThread->IsStopped() || zm_terminate)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
if (rtspThread->getFrame(buffer)) {
|
if (rtspThread->getFrame(buffer)) {
|
||||||
|
|
Loading…
Reference in New Issue