VideoEncoder::~VideoEncoder()
{
+ should_quit = true;
quicksync_encoder->shutdown();
x264_encoder.reset(nullptr);
x264_disk_encoder.reset(nullptr);
if (want_srt_metric_update.exchange(false) && srt_sock != -1) {
srt_metrics.update_srt_stats(srt_sock);
}
- while (buf_size > 0) {
+ while (buf_size > 0 && !should_quit.load()) {
if (srt_sock == -1) {
srt_sock = connect_to_srt();
if (srt_sock == -1) {