X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=nageru%2Fvideo_encoder.h;h=6301f50d3d7274283b22dc942882a9ee58ba697b;hb=HEAD;hp=86badf2a9a189fa708789045273f576336225e5e;hpb=e2b654d6a8cc8c64142a9a8ef8bcd82e9d9a9289;p=nageru diff --git a/nageru/video_encoder.h b/nageru/video_encoder.h index 86badf2..6301f50 100644 --- a/nageru/video_encoder.h +++ b/nageru/video_encoder.h @@ -6,6 +6,7 @@ #define _VIDEO_ENCODER_H #include +#include #include #include #include @@ -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,9 +114,13 @@ private: std::string http_mux_header; MuxMetrics http_mux_metrics; MuxMetrics srt_mux_metrics; + SRTMetrics srt_metrics; + std::atomic metric_srt_num_connection_attempts{0}; + std::atomic want_srt_metric_update{true}; // Is nominally set every frame. Some racing is OK (this is mainly a rate-limiter). std::atomic quicksync_encoders_in_shutdown{0}; std::atomic overriding_bitrate{0}; + std::atomic should_quit{false}; // Encoders that are shutdown, but need to call release_gl_resources() // (or be deleted) from some thread with an OpenGL context.