Skip to content

Commit 3c74eda

Browse files
committed
fix: cross-channel routes from progressive to interlaced showing lots of black #1576
1 parent f2a8558 commit 3c74eda

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

src/core/producer/route/route_producer.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -101,9 +101,10 @@ class route_producer
101101
}
102102
auto frame2b = frame2;
103103
if (!frame2b) {
104-
// We got a frame, so ensure it is a real frame (otherwise the layer gets confused)
105-
frame2b = core::draw_frame::push(frame2);
106-
}
104+
// Ensure that any interlaced channel will repeat frames instead of showing black.
105+
// Note: doing 50p -> 50i will result in dropping to 25p and frame doubling.
106+
frame2b = frame1b;
107+
}
107108

108109
if (!self->buffer_.try_push(std::make_pair(frame1b, frame2b))) {
109110
self->graph_->set_tag(diagnostics::tag_severity::WARNING, "dropped-frame");

0 commit comments

Comments
 (0)