fix(thread): ProcessNativeStream

This commit is contained in:
TinyOh 2019-02-20 16:31:32 +08:00
parent a22eed8c1d
commit 055c6a23d0
2 changed files with 5 additions and 5 deletions

View File

@ -583,14 +583,12 @@ void Synthetic::InitProcessors() {
void Synthetic::ProcessNativeStream(
const Stream &stream, const api::StreamData &data) {
if (stream == Stream::LEFT || stream == Stream::RIGHT) {
std::unique_lock<std::mutex> lk(mtx_left_right_ready_);
static api::StreamData left_data, right_data;
cv::Mat tmp1, tmp2;
if (stream == Stream::LEFT) {
left_data = data;
tmp1 = left_data.frame.clone();
} else if (stream == Stream::RIGHT) {
right_data = data;
tmp2 = right_data.frame.clone();
}
if (left_data.img && right_data.img &&
left_data.img->frame_id == right_data.img->frame_id) {
@ -607,8 +605,8 @@ void Synthetic::ProcessNativeStream(
processor = find_processor<RectifyProcessorOCV>(processor_);
}
processor->Process(ObjMat2{
tmp1, left_data.frame_id, left_data.img,
tmp2, right_data.frame_id, right_data.img});
left_data.frame, left_data.frame_id, left_data.img,
right_data.frame, right_data.frame_id, right_data.img});
}
return;
}

View File

@ -19,6 +19,7 @@
#include <memory>
#include <string>
#include <vector>
#include <mutex>
#include "mynteye/api/api.h"
#include "mynteye/api/config.h"
@ -132,6 +133,7 @@ class Synthetic {
std::shared_ptr<Plugin> plugin_;
CalibrationModel calib_model_;
std::mutex mtx_left_right_ready_;
std::shared_ptr<IntrinsicsBase> intr_left_;
std::shared_ptr<IntrinsicsBase> intr_right_;