Collect data for a StreamMetadata every x seconds for each stream
Closed this issue · 1 comments
clone1018 commented
We need to collect the data required to fill out a StreamMetadata object at a configurable time interval. janus-ftl-plugin
uses 4000ms by default, however it should be configurable.
Here's what janus-ftl-plugin currently uses as the StreamMetadata struct:
struct StreamMetadata
{
std::string ingestServerHostname; // Hostname of the ingest server
uint32_t streamTimeSeconds; // How long the steam has been live
uint32_t numActiveViewers; // Unused -- Not tracked at ingest level
uint32_t currentSourceBitrateBps; // Bitrate of the stream
uint32_t numPacketsReceived; // Total number of packets received
uint32_t numPacketsNacked; // Total number of packets nacked
uint32_t numPacketsLost; // Total number of packets lost
uint16_t streamerToIngestPingMs; // Latency in MS between streamer and ingest server
std::string streamerClientVendorName; // Reported streaming client
std::string streamerClientVendorVersion; // Reported streaming vendor version
std::string videoCodec; // Current video codec
std::string audioCodec; // Current audio codec
uint16_t videoWidth; // Current video width
uint16_t videoHeight; // Current video height
};