mirror of
https://github.com/badaix/snapcast.git
synced 2025-05-09 23:26:47 +02:00
use timeval instead of double for time sync
This commit is contained in:
parent
6ea10c77dd
commit
14b5abe5d7
6 changed files with 21 additions and 15 deletions
|
@ -72,10 +72,7 @@ void Controller::onMessageReceived(ClientConnection* connection, const msg::Base
|
|||
{
|
||||
msg::Time reply;
|
||||
reply.deserialize(baseMessage, buffer);
|
||||
double latency = (reply.received.sec - reply.sent.sec) + (reply.received.usec - reply.sent.usec) / 1000000.;
|
||||
// logO << "timeMsg: " << latency << "\n";
|
||||
TimeProvider::getInstance().setDiffToServer((reply.latency - latency) * 1000 / 2);
|
||||
// logO << "diff to server [ms]: " << (float)TimeProvider::getInstance().getDiffToServer<chronos::usec>().count() / 1000.f << "\n";
|
||||
TimeProvider::getInstance().setDiff(reply.latency, reply.received - reply.sent);// ToServer(diff / 2);
|
||||
}
|
||||
else if (baseMessage.type == message_type::kServerSettings)
|
||||
{
|
||||
|
@ -185,8 +182,7 @@ void Controller::worker()
|
|||
shared_ptr<msg::Time> reply = clientConnection_->sendReq<msg::Time>(&timeReq, chronos::msec(2000));
|
||||
if (reply)
|
||||
{
|
||||
double latency = (reply->received.sec - reply->sent.sec) + (reply->received.usec - reply->sent.usec) / 1000000.;
|
||||
TimeProvider::getInstance().setDiffToServer((reply->latency - latency) * 1000 / 2);
|
||||
TimeProvider::getInstance().setDiff(reply->latency, reply->received - reply->sent);
|
||||
usleep(100);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue