unique_lock<mutex> lock(mu);
for (;;) {
any_frames_to_be_encoded.wait(lock, [this] { return !frames_to_be_encoded.empty() || should_quit; });
unique_lock<mutex> lock(mu);
for (;;) {
any_frames_to_be_encoded.wait(lock, [this] { return !frames_to_be_encoded.empty() || should_quit; });