vdr-plugin-softhddevice-drm-gles 1.5.9-20e15de
cJitterTracker Class Reference

#include <jittertracker.h>

Public Member Functions

 cJitterTracker (const char *identifier)
 
void PacketReceived ()
 Called each time a packet is received.
 
void Reset ()
 Resets the jitter tracker.
 

Private Attributes

int64_t m_lastDiffMs = 0
 
std::chrono::steady_clock::time_point m_lastTime
 
int m_shortTermMaxJitterMs = 0
 
int m_packetCounter = 0
 
int m_longTermMaxJitterMs = 0
 
bool m_firstPacket = true
 
bool m_secondPacket = true
 
const char * m_identifier
 

Detailed Description

Definition at line 23 of file jittertracker.h.

Constructor & Destructor Documentation

◆ cJitterTracker()

cJitterTracker::cJitterTracker ( const char *  identifier)
inline

Definition at line 25 of file jittertracker.h.

Member Function Documentation

◆ PacketReceived()

void cJitterTracker::PacketReceived ( )

Called each time a packet is received.

Calculates the diff in PTS to the last received packet and compares that to the diff of the wall clock time of the last received packet to now.

Definition at line 29 of file jittertracker.cpp.

References m_firstPacket, m_lastDiffMs, m_lastTime, m_longTermMaxJitterMs, m_packetCounter, m_secondPacket, and m_shortTermMaxJitterMs.

Referenced by cSoftHdDevice::PlayAudio(), and cSoftHdDevice::PlayVideoInternal().

◆ Reset()

void cJitterTracker::Reset ( )

Resets the jitter tracker.

Definition at line 75 of file jittertracker.cpp.

References m_firstPacket, m_lastDiffMs, m_longTermMaxJitterMs, m_packetCounter, m_secondPacket, and m_shortTermMaxJitterMs.

Referenced by cSoftHdDevice::OnEnteringState().

Member Data Documentation

◆ m_firstPacket

bool cJitterTracker::m_firstPacket = true
private

Definition at line 35 of file jittertracker.h.

Referenced by PacketReceived(), and Reset().

◆ m_identifier

const char* cJitterTracker::m_identifier
private

Definition at line 37 of file jittertracker.h.

◆ m_lastDiffMs

int64_t cJitterTracker::m_lastDiffMs = 0
private

Definition at line 30 of file jittertracker.h.

Referenced by PacketReceived(), and Reset().

◆ m_lastTime

std::chrono::steady_clock::time_point cJitterTracker::m_lastTime
private

Definition at line 31 of file jittertracker.h.

Referenced by PacketReceived().

◆ m_longTermMaxJitterMs

int cJitterTracker::m_longTermMaxJitterMs = 0
private

Definition at line 34 of file jittertracker.h.

Referenced by PacketReceived(), and Reset().

◆ m_packetCounter

int cJitterTracker::m_packetCounter = 0
private

Definition at line 33 of file jittertracker.h.

Referenced by PacketReceived(), and Reset().

◆ m_secondPacket

bool cJitterTracker::m_secondPacket = true
private

Definition at line 36 of file jittertracker.h.

Referenced by PacketReceived(), and Reset().

◆ m_shortTermMaxJitterMs

int cJitterTracker::m_shortTermMaxJitterMs = 0
private

Definition at line 32 of file jittertracker.h.

Referenced by PacketReceived(), and Reset().


The documentation for this class was generated from the following files: