|
|
|
@ -69,19 +69,6 @@ bool CCodecStream::Init()
|
|
|
|
return true;
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void CCodecStream::Close(void)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
// close socket
|
|
|
|
|
|
|
|
keep_running = false;
|
|
|
|
|
|
|
|
m_TCReader->Close();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// kill threads
|
|
|
|
|
|
|
|
if ( m_Future.valid() )
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
m_Future.get();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
// get
|
|
|
|
// get
|
|
|
|
|
|
|
|
|
|
|
|
@ -99,6 +86,22 @@ void CCodecStream::Thread()
|
|
|
|
{
|
|
|
|
{
|
|
|
|
Task();
|
|
|
|
Task();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// display stats
|
|
|
|
|
|
|
|
if (m_fPingMin >= 0.0)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
char sz[64];
|
|
|
|
|
|
|
|
double min = m_fPingMin * 1000.0;
|
|
|
|
|
|
|
|
double max = m_fPingMax * 1000.0;
|
|
|
|
|
|
|
|
double ave = (m_fPingCount > 0) ? m_fPingSum / m_fPingCount * 1000.0 : 0.0;
|
|
|
|
|
|
|
|
sprintf(sz, "ambed stats (ms) : %.1f/%.1f/%.1f", min, ave, max);
|
|
|
|
|
|
|
|
std::cout << sz << std::endl;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (m_uiTimeoutPackets)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
char sz[64];
|
|
|
|
|
|
|
|
sprintf(sz, "ambed %d of %d packets timed out", m_uiTimeoutPackets, m_uiTotalPackets);
|
|
|
|
|
|
|
|
std::cout << sz << std::endl;
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void CCodecStream::Task(void)
|
|
|
|
void CCodecStream::Task(void)
|
|
|
|
|