diff --git a/components/rgbd-sources/src/net.cpp b/components/rgbd-sources/src/net.cpp index 12a76cc40d38f876f11cbc4919cf7bcb13a4bee5..68f46fc2b6879f437d6cbf76b56145af334e9e7a 100644 --- a/components/rgbd-sources/src/net.cpp +++ b/components/rgbd-sources/src/net.cpp @@ -150,8 +150,6 @@ void NetSource::_recvChunk(int64_t frame, int chunk, bool delta, const vector<un // Lock to allow buffer swap UNIQUE_LOCK(mutex_,lk2); - chunk_count_ = 0; - // Swap the double buffers cv::Mat tmp; tmp = rgb_; @@ -161,6 +159,7 @@ void NetSource::_recvChunk(int64_t frame, int chunk, bool delta, const vector<un depth_ = d_depth_; d_depth_ = tmp; + chunk_count_ = 0; timestamp_ = current_frame_; current_frame_ = frame; } diff --git a/components/rgbd-sources/src/source.cpp b/components/rgbd-sources/src/source.cpp index 913fe4acb53afb28b63c6e89d97e50dca6a669b6..c5efd26fc51068b74cfdc03e84cc3800a5931ea8 100644 --- a/components/rgbd-sources/src/source.cpp +++ b/components/rgbd-sources/src/source.cpp @@ -244,7 +244,7 @@ bool Source::compute(int N, int B) { return true; } else if (impl_ && impl_->compute(N,B)) { timestamp_ = impl_->timestamp_; - cv::Mat tmp; + /*cv::Mat tmp; rgb_.create(impl_->rgb_.size(), impl_->rgb_.type()); depth_.create(impl_->depth_.size(), impl_->depth_.type()); tmp = rgb_; @@ -252,10 +252,13 @@ bool Source::compute(int N, int B) { impl_->rgb_ = tmp; tmp = depth_; depth_ = impl_->depth_; - impl_->depth_ = tmp; + impl_->depth_ = tmp;*/ - //impl_->rgb_.copyTo(rgb_); - //impl_->depth_.copyTo(depth_); + // TODO:(Nick) Reduce buffer copies + impl_->rgb_.copyTo(rgb_); + impl_->depth_.copyTo(depth_); + //rgb_ = impl_->rgb_; + //depth_ = impl_->depth_; return true; } return false;