Skip to content
Snippets Groups Projects
Commit 5b42c3a7 authored by Nicolas Pope's avatar Nicolas Pope
Browse files

Again allow for big timestamp changes

parent 975296cd
No related branches found
No related tags found
1 merge request!94Implements #134 source groups
Pipeline #12893 passed
......@@ -235,7 +235,29 @@ void Group::_addFrameset(int64_t timestamp) {
//if (count > 10 || count < 1) return;
if (count >= kFrameBufferSize-1) count = 1;
if (count < -kFrameBufferSize || count >= kFrameBufferSize-1) {
head_ = (head_+1) % kFrameBufferSize;
//UNIQUE_LOCK(framesets_[head_].mtx, lk);
if (!framesets_[head_].mtx.try_lock()) {
LOG(ERROR) << "Frameset in use!!";
return;
}
framesets_[head_].timestamp = timestamp;
framesets_[head_].count = 0;
framesets_[head_].mask = 0;
framesets_[head_].stale = false;
framesets_[head_].channel1.resize(sources_.size());
framesets_[head_].channel2.resize(sources_.size());
if (framesets_[head_].sources.size() != sources_.size()) {
framesets_[head_].sources.clear();
for (auto s : sources_) framesets_[head_].sources.push_back(s);
}
framesets_[head_].mtx.unlock();
return;
}
if (count < 1) return;
for (int i=0; i<count; ++i) {
int64_t lt = (framesets_[head_].timestamp == -1) ? timestamp-mspf_ : framesets_[head_].timestamp;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment