Commit 9af85168 authored by Seungha Yang's avatar Seungha Yang 🐑

streamcombiner: Forward upstream force-key-unit events to all sinkpads

streamcombiner element forwards a upstream event only to one sinkpad.
When the streamcombiner is used with encodebin, the sinkpad
corresponding to pass-through path is configured before that of encoder,
and therefore streamcombiner forwards upstream events only to
the firstly configured one (i.e., pass-through path).
parent 32395fe8
......@@ -22,6 +22,7 @@
#include "config.h"
#include <gst/video/video.h>
#include "gststreamcombiner.h"
#include "gststreamcombinerpad.h"
......@@ -175,6 +176,10 @@ gst_stream_combiner_src_event (GstPad * pad, GstObject * parent,
GstStreamCombiner *stream_combiner = (GstStreamCombiner *) parent;
GstPad *sinkpad = NULL;
/* Forward force-key-unit event to all sinkpads */
if (gst_video_event_is_force_key_unit (event))
return gst_pad_event_default (pad, parent, event);
STREAMS_LOCK (stream_combiner);
if (stream_combiner->current)
sinkpad = stream_combiner->current;
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment