buffering

git-svn-id: svn://elaine/murooma/trunk@42 d8a302eb-03bc-478d-80e4-98257eca68ef
This commit is contained in:
(no author) 2014-06-29 11:46:09 +00:00
parent 1b1200e88c
commit 935d13e9ff

View file

@ -189,14 +189,14 @@ static int patestCallback( const void *inputBuffer, void *outputBuffer,
int median = buffer.median(); int median = buffer.median();
std::cerr << "age: " << getAge(*chunk) << "\t" << age << "\t" << median << "\t" << buffer.size() << "\t" << timeInfo->outputBufferDacTime*1000 << "\n"; std::cerr << "age: " << getAge(*chunk) << "\t" << age << "\t" << median << "\t" << buffer.size() << "\t" << timeInfo->outputBufferDacTime*1000 << "\n";
if (/*!buffer.full() &&*/ (age > bufferMs + 2*MS)) if (/*!buffer.full() &&*/ (age > bufferMs + std::max(100, 2*MS)))
{ {
chunks->pop_front(); chunks->pop_front();
delete chunk; delete chunk;
std::cerr << "packe too old, dropping\n"; std::cerr << "packe too old, dropping\n";
usleep(100); usleep(100);
} }
else if (/*!buffer.full() &&*/ (age < bufferMs - 2*MS)) else if (/*!buffer.full() &&*/ (age < bufferMs - std::max(100, 2*MS)))
{ {
chunk = new Chunk(); chunk = new Chunk();
memset(&(chunk->payload[0]), 0, SIZE); memset(&(chunk->payload[0]), 0, SIZE);