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

Working group proxy

parent 735fc014
No related branches found
No related tags found
2 merge requests!127Implements #196 stream capturing,!125Resolves #159 proxy of sources
Pipeline #15242 passed
...@@ -160,6 +160,7 @@ static void run(ftl::Configurable *root) { ...@@ -160,6 +160,7 @@ static void run(ftl::Configurable *root) {
} }
stream->setLatency(5); // FIXME: This depends on source!? stream->setLatency(5); // FIXME: This depends on source!?
stream->add(&group);
stream->run(); stream->run();
bool busy = false; bool busy = false;
......
...@@ -222,6 +222,7 @@ void Group::sync(std::function<bool(ftl::rgbd::FrameSet &)> cb) { ...@@ -222,6 +222,7 @@ void Group::sync(std::function<bool(ftl::rgbd::FrameSet &)> cb) {
return true; return true;
}); });
LOG(INFO) << "Start timer";
ftl::timer::start(true); ftl::timer::start(true);
} }
......
...@@ -194,13 +194,16 @@ void Streamer::add(ftl::rgbd::Group *grp) { ...@@ -194,13 +194,16 @@ void Streamer::add(ftl::rgbd::Group *grp) {
//group_.addSource(src); //group_.addSource(src);
src->addRawCallback([this,s](Source *src, const ftl::codecs::StreamPacket &spkt, const ftl::codecs::Packet &pkt) { src->addRawCallback([this,s](Source *src, const ftl::codecs::StreamPacket &spkt, const ftl::codecs::Packet &pkt) {
LOG(INFO) << "RAW CALLBACK";
_transmitPacket(s, spkt, pkt, false); _transmitPacket(s, spkt, pkt, false);
}); });
} }
LOG(INFO) << "Streaming: " << src->getID(); LOG(INFO) << "Proxy Streaming: " << src->getID();
net_->broadcast("add_stream", src->getID()); net_->broadcast("add_stream", src->getID());
} }
LOG(INFO) << "All proxy streams added";
} }
void Streamer::_addClient(const string &source, int N, int rate, const ftl::UUID &peer, const string &dest) { void Streamer::_addClient(const string &source, int N, int rate, const ftl::UUID &peer, const string &dest) {
...@@ -378,10 +381,11 @@ void Streamer::_process(ftl::rgbd::FrameSet &fs) { ...@@ -378,10 +381,11 @@ void Streamer::_process(ftl::rgbd::FrameSet &fs) {
// Prevent new clients during processing. // Prevent new clients during processing.
SHARED_LOCK(mutex_,slk); SHARED_LOCK(mutex_,slk);
if (fs.sources.size() != sources_.size()) { // This check is not valid, always assume fs.sources is correct
LOG(ERROR) << "Incorrect number of sources in frameset: " << fs.sources.size() << " vs " << sources_.size(); //if (fs.sources.size() != sources_.size()) {
return; // LOG(ERROR) << "Incorrect number of sources in frameset: " << fs.sources.size() << " vs " << sources_.size();
} //return;
//}
int totalclients = 0; int totalclients = 0;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment