X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=mixer.cpp;h=202617b9b718aae8b05ffb3872bafce980cc5b2a;hb=ffd68fbfb90242069af957f2a28908f0559f8348;hp=d0925167e663cd522dcf6e1349cbbd341ce6d023;hpb=3196324d54748a391c7c333191769f2624e3e022;p=nageru diff --git a/mixer.cpp b/mixer.cpp index d092516..202617b 100644 --- a/mixer.cpp +++ b/mixer.cpp @@ -157,6 +157,8 @@ void ensure_texture_resolution(PBOFrameAllocator::Userdata *userdata, unsigned f } check_error(); break; + default: + assert(false); } userdata->last_width[field] = width; userdata->last_height[field] = height; @@ -1187,6 +1189,7 @@ start: CaptureCard *card = &cards[card_index]; if (card->new_frames.empty()) { // Starvation. ++card->metric_input_duped_frames; +#ifdef HAVE_CEF if (card->is_cef_capture && card->may_have_dropped_last_frame) { // Unlike other sources, CEF is not guaranteed to send us a steady // stream of frames, so we'll have to ask it to repaint the frame @@ -1195,6 +1198,7 @@ start: // get a new frame.) ((CEFCapture *)card->capture.get())->request_new_frame(); } +#endif } else { new_frames[card_index] = move(card->new_frames.front()); has_new_frame[card_index] = true; @@ -1346,17 +1350,6 @@ void Mixer::render_one_frame(int64_t duration) theme_main_chain.setup_chain(); //theme_main_chain.chain->enable_phase_timing(true); - // The theme can't (or at least shouldn't!) call connect_signal() on - // each FFmpeg or CEF input, so we'll do it here. - for (const pair &conn : theme->get_video_signal_connections()) { - conn.first->connect_signal_raw(conn.second->get_card_index(), input_state); - } -#ifdef HAVE_CEF - for (const pair &conn : theme->get_html_signal_connections()) { - conn.first->connect_signal_raw(conn.second->get_card_index(), input_state); - } -#endif - // If HDMI/SDI output is active and the user has requested auto mode, // its mode overrides the existing Y'CbCr setting for the chain. YCbCrLumaCoefficients ycbcr_output_coefficients;