#define _VIDEO_ENCODER_H
#include <epoxy/gl.h>
+#include <epoxy/gl_generated.h>
#include <movit/image_format.h>
#include <stdbool.h>
#include <stdint.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.