]> git.sesse.net Git - nageru/blobdiff - nageru/video_encoder.h
Add metrics for the SRT output (basically same as on inputs).
[nageru] / nageru / video_encoder.h
index 86badf2a9a189fa708789045273f576336225e5e..91d2c756471a90eac5dbdc3b6d3e60982580fc59 100644 (file)
@@ -14,6 +14,7 @@
 #include <mutex>
 #include <string>
 #include <vector>
+#include <chrono>
 
 extern "C" {
 #include <libavformat/avformat.h>
@@ -24,6 +25,7 @@ extern "C" {
 
 #include "shared/mux.h"
 #include "shared/ref_counted_gl_sync.h"
+#include "srt_metrics.h"
 
 class AudioEncoder;
 class AV1Encoder;
@@ -112,6 +114,9 @@ private:
        std::string http_mux_header;
        MuxMetrics http_mux_metrics;
        MuxMetrics srt_mux_metrics;
+       SRTMetrics srt_metrics;
+       std::atomic<int64_t> metric_srt_num_connection_attempts{0};
+       std::atomic<bool> want_srt_metric_update{true};  // Is nominally set every frame. Some racing is OK (this is mainly a rate-limiter).
 
        std::atomic<int> quicksync_encoders_in_shutdown{0};
        std::atomic<int> overriding_bitrate{0};