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).
This commit is contained in:
parent
32395fe837
commit
9af8516873
@ -22,6 +22,7 @@
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#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;
|
||||
|
Loading…
x
Reference in New Issue
Block a user