#include <mutex>
#include <string>
#include <vector>
+#include <chrono>
extern "C" {
#include <libavformat/avformat.h>
#include "shared/mux.h"
#include "shared/ref_counted_gl_sync.h"
+#include "srt_metrics.h"
class AudioEncoder;
class AV1Encoder;
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};
+ std::atomic<bool> should_quit{false};
// Encoders that are shutdown, but need to call release_gl_resources()
// (or be deleted) from some thread with an OpenGL context.