mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-26 19:51:11 +00:00
smart-mixer: Move the videoconvert to after the mixer
So that it tries to negotiate with alpha and the alpha channel is dropped as late as possible in the pipeline. The compositor is able to do video conversion internally in any case so having a videoconvert before it is useless. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/merge_requests/204>
This commit is contained in:
parent
e5b1215d1e
commit
6acee38459
7 changed files with 146 additions and 174 deletions
|
@ -129,7 +129,6 @@ typedef struct _PadInfos
|
|||
GESSmartMixer *self;
|
||||
GstPad *mixer_pad;
|
||||
GstPad *ghostpad;
|
||||
GstElement *bin;
|
||||
} PadInfos;
|
||||
|
||||
static void
|
||||
|
@ -137,12 +136,6 @@ pad_infos_unref (PadInfos * infos)
|
|||
{
|
||||
if (g_atomic_int_dec_and_test (&infos->refcount)) {
|
||||
GST_DEBUG_OBJECT (infos->mixer_pad, "Releasing pad");
|
||||
if (G_LIKELY (infos->bin)) {
|
||||
gst_element_set_state (infos->bin, GST_STATE_NULL);
|
||||
gst_element_unlink (infos->bin, infos->self->mixer);
|
||||
gst_bin_remove (GST_BIN (infos->self), infos->bin);
|
||||
}
|
||||
|
||||
if (infos->mixer_pad) {
|
||||
gst_element_release_request_pad (infos->self->mixer, infos->mixer_pad);
|
||||
gst_object_unref (infos->mixer_pad);
|
||||
|
@ -255,11 +248,9 @@ static GstPad *
|
|||
_request_new_pad (GstElement * element, GstPadTemplate * templ,
|
||||
const gchar * name, const GstCaps * caps)
|
||||
{
|
||||
GstPad *videoconvert_srcpad, *videoconvert_sinkpad, *tmpghost;
|
||||
PadInfos *infos = pad_infos_new ();
|
||||
GESSmartMixer *self = GES_SMART_MIXER (element);
|
||||
GstPad *ghost;
|
||||
GstElement *videoconvert;
|
||||
|
||||
infos->mixer_pad = gst_element_request_pad (self->mixer,
|
||||
gst_element_class_get_pad_template (GST_ELEMENT_GET_CLASS (self->mixer),
|
||||
|
@ -274,33 +265,14 @@ _request_new_pad (GstElement * element, GstPadTemplate * templ,
|
|||
|
||||
infos->self = self;
|
||||
|
||||
infos->bin = gst_bin_new (NULL);
|
||||
videoconvert = gst_element_factory_make ("videoconvert", NULL);
|
||||
|
||||
gst_bin_add (GST_BIN (infos->bin), videoconvert);
|
||||
|
||||
videoconvert_sinkpad = gst_element_get_static_pad (videoconvert, "sink");
|
||||
tmpghost = GST_PAD (gst_ghost_pad_new (NULL, videoconvert_sinkpad));
|
||||
gst_object_unref (videoconvert_sinkpad);
|
||||
gst_pad_set_active (tmpghost, TRUE);
|
||||
gst_element_add_pad (GST_ELEMENT (infos->bin), tmpghost);
|
||||
|
||||
gst_bin_add (GST_BIN (self), infos->bin);
|
||||
ghost = g_object_new (ges_smart_mixer_pad_get_type (), "name", name,
|
||||
"direction", GST_PAD_DIRECTION (tmpghost), NULL);
|
||||
"direction", GST_PAD_DIRECTION (infos->mixer_pad), NULL);
|
||||
infos->ghostpad = ghost;
|
||||
gst_ghost_pad_set_target (GST_GHOST_PAD_CAST (ghost), tmpghost);
|
||||
gst_ghost_pad_set_target (GST_GHOST_PAD_CAST (ghost), infos->mixer_pad);
|
||||
gst_pad_set_active (ghost, TRUE);
|
||||
if (!gst_element_add_pad (GST_ELEMENT (self), ghost))
|
||||
goto could_not_add;
|
||||
|
||||
videoconvert_srcpad = gst_element_get_static_pad (videoconvert, "src");
|
||||
tmpghost = GST_PAD (gst_ghost_pad_new (NULL, videoconvert_srcpad));
|
||||
gst_object_unref (videoconvert_srcpad);
|
||||
gst_pad_set_active (tmpghost, TRUE);
|
||||
gst_element_add_pad (GST_ELEMENT (infos->bin), tmpghost);
|
||||
gst_pad_link (tmpghost, infos->mixer_pad);
|
||||
|
||||
gst_pad_set_event_function (GST_PAD (ghost),
|
||||
ges_smart_mixer_sinkpad_event_func);
|
||||
|
||||
|
@ -428,7 +400,7 @@ static void
|
|||
ges_smart_mixer_constructed (GObject * obj)
|
||||
{
|
||||
GstPad *pad;
|
||||
GstElement *identity;
|
||||
GstElement *identity, *videoconvert;
|
||||
|
||||
GESSmartMixer *self = GES_SMART_MIXER (obj);
|
||||
gchar *cname = g_strdup_printf ("%s-compositor", GST_OBJECT_NAME (self));
|
||||
|
@ -446,10 +418,13 @@ ges_smart_mixer_constructed (GObject * obj)
|
|||
g_object_set (identity, "drop-allocation", TRUE, NULL);
|
||||
g_assert (identity);
|
||||
|
||||
gst_bin_add_many (GST_BIN (self), self->mixer, identity, NULL);
|
||||
gst_element_link (self->mixer, identity);
|
||||
videoconvert = gst_element_factory_make ("videoconvert", NULL);
|
||||
g_assert (videoconvert);
|
||||
|
||||
pad = gst_element_get_static_pad (identity, "src");
|
||||
gst_bin_add_many (GST_BIN (self), self->mixer, identity, videoconvert, NULL);
|
||||
gst_element_link_many (self->mixer, identity, videoconvert, NULL);
|
||||
|
||||
pad = gst_element_get_static_pad (videoconvert, "src");
|
||||
self->srcpad = gst_ghost_pad_new ("src", pad);
|
||||
gst_pad_set_active (self->srcpad, TRUE);
|
||||
gst_object_unref (pad);
|
||||
|
|
|
@ -329,7 +329,7 @@ set_interpolation (GstObject * element, GESVideoTransitionPrivate * priv,
|
|||
static GstElement *
|
||||
ges_video_transition_create_element (GESTrackElement * object)
|
||||
{
|
||||
GstElement *topbin, *iconva, *iconvb, *oconv;
|
||||
GstElement *topbin, *iconva, *iconvb;
|
||||
GstElement *mixer = NULL;
|
||||
GstPad *sinka_target, *sinkb_target, *src_target, *sinka, *sinkb, *src;
|
||||
GESVideoTransition *self;
|
||||
|
@ -348,10 +348,8 @@ ges_video_transition_create_element (GESTrackElement * object)
|
|||
gst_element_factory_make ("framepositioner", "frame_tagger");
|
||||
g_object_set (priv->positioner, "zorder",
|
||||
G_MAXUINT - GES_TIMELINE_ELEMENT_PRIORITY (self), NULL);
|
||||
oconv = gst_element_factory_make ("videoconvert", "tr-csp-output");
|
||||
|
||||
gst_bin_add_many (GST_BIN (topbin), iconva, iconvb, priv->positioner,
|
||||
oconv, NULL);
|
||||
gst_bin_add_many (GST_BIN (topbin), iconva, iconvb, priv->positioner, NULL);
|
||||
|
||||
mixer =
|
||||
g_object_new (GES_TYPE_SMART_MIXER, "name",
|
||||
|
@ -379,11 +377,10 @@ ges_video_transition_create_element (GESTrackElement * object)
|
|||
GES_VIDEO_STANDARD_TRANSITION_TYPE_CROSSFADE ? "add" : "over");
|
||||
|
||||
fast_element_link (mixer, priv->positioner);
|
||||
fast_element_link (priv->positioner, oconv);
|
||||
|
||||
sinka_target = gst_element_get_static_pad (iconva, "sink");
|
||||
sinkb_target = gst_element_get_static_pad (iconvb, "sink");
|
||||
src_target = gst_element_get_static_pad (oconv, "src");
|
||||
src_target = gst_element_get_static_pad (priv->positioner, "src");
|
||||
|
||||
sinka = gst_ghost_pad_new ("sinka", sinka_target);
|
||||
sinkb = gst_ghost_pad_new ("sinkb", sinkb_target);
|
||||
|
|
|
@ -1,34 +1,34 @@
|
|||
event stream-start: GstEventStreamStart, flags=(GstStreamFlags)GST_STREAM_FLAG_NONE;
|
||||
event caps: video/x-raw, format=(string)I420, width=(int)500, height=(int)500, framerate=(fraction)10/1, chroma-site=(string)jpeg, colorimetry=(string)bt601;
|
||||
event caps: video/x-raw, width=(int)500, height=(int)500, framerate=(fraction)10/1, format=(string)I420;
|
||||
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=0:00:02.000000000, flags=0x01, time=0:00:00.000000000, base=0:00:00.000000000, position=none
|
||||
buffer: content-id=0, pts=0:00:00.000000000, dur=0:00:00.100000000
|
||||
buffer: content-id=1, pts=0:00:00.100000000, dur=0:00:00.100000000
|
||||
buffer: content-id=2, pts=0:00:00.200000000, dur=0:00:00.100000000
|
||||
buffer: content-id=3, pts=0:00:00.300000000, dur=0:00:00.100000000
|
||||
buffer: content-id=4, pts=0:00:00.400000000, dur=0:00:00.100000000
|
||||
buffer: content-id=5, pts=0:00:00.500000000, dur=0:00:00.100000000
|
||||
buffer: content-id=6, pts=0:00:00.600000000, dur=0:00:00.100000000
|
||||
buffer: content-id=7, pts=0:00:00.700000000, dur=0:00:00.100000000
|
||||
buffer: content-id=8, pts=0:00:00.800000000, dur=0:00:00.100000000
|
||||
buffer: content-id=9, pts=0:00:00.900000000, dur=0:00:00.100000000
|
||||
buffer: content-id=10, pts=0:00:01.000000000, dur=0:00:00.100000000
|
||||
buffer: content-id=9, pts=0:00:01.100000000, dur=0:00:00.100000000
|
||||
buffer: content-id=8, pts=0:00:01.200000000, dur=0:00:00.100000000
|
||||
buffer: content-id=7, pts=0:00:01.300000000, dur=0:00:00.100000000
|
||||
buffer: content-id=6, pts=0:00:01.400000000, dur=0:00:00.100000000
|
||||
buffer: content-id=5, pts=0:00:01.500000000, dur=0:00:00.100000000
|
||||
buffer: content-id=4, pts=0:00:01.600000000, dur=0:00:00.100000000
|
||||
buffer: content-id=3, pts=0:00:01.700000000, dur=0:00:00.100000000
|
||||
buffer: content-id=2, pts=0:00:01.800000000, dur=0:00:00.100000000
|
||||
buffer: content-id=1, pts=0:00:01.900000000, dur=0:00:00.100000000
|
||||
buffer: content-id=0, pts=0:00:00.000000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: content-id=1, pts=0:00:00.100000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: content-id=2, pts=0:00:00.200000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: content-id=3, pts=0:00:00.300000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: content-id=4, pts=0:00:00.400000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: content-id=5, pts=0:00:00.500000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: content-id=6, pts=0:00:00.600000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: content-id=7, pts=0:00:00.700000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: content-id=8, pts=0:00:00.800000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: content-id=9, pts=0:00:00.900000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: content-id=10, pts=0:00:01.000000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: content-id=9, pts=0:00:01.100000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: content-id=8, pts=0:00:01.200000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: content-id=7, pts=0:00:01.300000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: content-id=6, pts=0:00:01.400000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: content-id=5, pts=0:00:01.500000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: content-id=4, pts=0:00:01.600000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: content-id=3, pts=0:00:01.700000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: content-id=2, pts=0:00:01.800000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: content-id=1, pts=0:00:01.900000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
event segment: format=TIME, start=0:00:02.000000000, offset=0:00:00.000000000, stop=0:00:02.000000001, flags=0x01, time=0:00:02.000000000, base=0:00:02.000000000, position=none
|
||||
buffer: content-id=11, pts=0:00:02.000000000, dur=0:00:00.000000001
|
||||
buffer: content-id=11, pts=0:00:02.000000000, dur=0:00:00.000000001, meta=GstVideoMeta
|
||||
event eos: (no structure)
|
||||
event flush-start: (no structure)
|
||||
event flush-stop: GstEventFlushStop, reset-time=(boolean)true;
|
||||
event segment: format=TIME, start=0:00:01.000000000, offset=0:00:00.000000000, stop=0:00:02.000000000, flags=0x01, time=0:00:01.000000000, base=0:00:00.000000000, position=none
|
||||
buffer: content-id=10, pts=0:00:01.000000000, dur=0:00:00.100000000
|
||||
buffer: content-id=12, pts=0:00:01.000000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
event flush-start: (no structure)
|
||||
event flush-stop: GstEventFlushStop, reset-time=(boolean)true;
|
||||
event segment: format=TIME, start=0:00:01.000000000, offset=0:00:00.000000000, stop=0:00:03.000000000, flags=0x01, time=0:00:01.000000000, base=0:00:00.000000000, position=none
|
||||
buffer: content-id=0, pts=0:00:01.000000000, dur=0:00:00.100000000
|
||||
buffer: content-id=0, pts=0:00:01.000000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
event stream-start: GstEventStreamStart, flags=(GstStreamFlags)GST_STREAM_FLAG_NONE;
|
||||
event caps: video/x-raw, format=(string)I420, width=(int)1280, height=(int)720, framerate=(fraction)30/1, chroma-site=(string)jpeg, colorimetry=(string)bt601;
|
||||
event caps: video/x-raw, width=(int)1280, height=(int)720, framerate=(fraction)30/1, format=(string)I420, chroma-site=(string)jpeg, colorimetry=(string)bt601;
|
||||
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=0:00:00.100000000, flags=0x01, time=0:00:00.000000000, base=0:00:00.000000000
|
||||
buffer: checksum=d2d49287a7d0ddd7b5fadbb60c3220623119fea8, pts=0:00:00.000000000, dur=0:00:00.033333333
|
||||
buffer: checksum=d2d49287a7d0ddd7b5fadbb60c3220623119fea8, pts=0:00:00.033333333, dur=0:00:00.033333334
|
||||
buffer: checksum=d2d49287a7d0ddd7b5fadbb60c3220623119fea8, pts=0:00:00.066666667, dur=0:00:00.033333333
|
||||
buffer: checksum=d2d49287a7d0ddd7b5fadbb60c3220623119fea8, pts=0:00:00.000000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: checksum=d2d49287a7d0ddd7b5fadbb60c3220623119fea8, pts=0:00:00.033333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: checksum=d2d49287a7d0ddd7b5fadbb60c3220623119fea8, pts=0:00:00.066666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
event segment: format=TIME, start=0:00:00.100000000, offset=0:00:00.000000000, stop=0:00:00.100000001, flags=0x01, time=0:00:00.100000000, base=0:00:00.100000000
|
||||
buffer: checksum=b4a126ab26f314a74ef860a9af457327a28d680b, pts=0:00:00.100000000, dur=0:00:00.000000001
|
||||
buffer: checksum=b4a126ab26f314a74ef860a9af457327a28d680b, pts=0:00:00.100000000, dur=0:00:00.000000001, meta=GstVideoMeta
|
||||
event eos: (no structure)
|
||||
|
|
|
@ -1,32 +1,32 @@
|
|||
event stream-start: GstEventStreamStart, flags=(GstStreamFlags)GST_STREAM_FLAG_NONE;
|
||||
event caps: video/x-raw, format=(string)I420, width=(int)1280, height=(int)720, framerate=(fraction)10/1, chroma-site=(string)mpeg2, colorimetry=(string)bt709;
|
||||
event caps: video/x-raw, width=(int)1280, height=(int)720, framerate=(fraction)10/1, format=(string)I420, chroma-site=(string)mpeg2, colorimetry=(string)bt709;
|
||||
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=0:00:01.000000000, flags=0x01, time=0:00:00.000000000, base=0:00:00.000000000, position=none
|
||||
buffer: pts=0:00:00.000000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:00.000000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
event flush-start: (no structure)
|
||||
event flush-stop: GstEventFlushStop, reset-time=(boolean)true;
|
||||
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=0:00:00.500000000, flags=0x01, time=0:00:00.000000000, base=0:00:00.000000000, position=none
|
||||
buffer: pts=0:00:00.000000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:00.000000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
event flush-start: (no structure)
|
||||
event flush-stop: GstEventFlushStop, reset-time=(boolean)true;
|
||||
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=0:00:00.500000000, flags=0x01, time=0:00:00.000000000, base=0:00:00.000000000, position=none
|
||||
buffer: pts=0:00:00.000000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:00.100000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:00.200000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:00.300000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:00.400000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:00.000000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.100000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.200000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.300000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.400000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
event eos: (no structure)
|
||||
event flush-start: (no structure)
|
||||
event flush-stop: GstEventFlushStop, reset-time=(boolean)true;
|
||||
event segment: format=TIME, start=0:00:00.500000000, offset=0:00:00.000000000, stop=0:00:01.000000000, flags=0x01, time=0:00:00.500000000, base=0:00:00.000000000, position=none
|
||||
buffer: pts=0:00:00.500000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:00.500000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
event flush-start: (no structure)
|
||||
event flush-stop: GstEventFlushStop, reset-time=(boolean)true;
|
||||
event segment: format=TIME, start=0:00:00.500000000, offset=0:00:00.000000000, stop=0:00:01.000000000, flags=0x01, time=0:00:00.500000000, base=0:00:00.000000000, position=none
|
||||
buffer: pts=0:00:00.500000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:00.600000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:00.700000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:00.800000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:00.900000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:00.500000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.600000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.700000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.800000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.900000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
event eos: (no structure)
|
||||
event flush-start: (no structure)
|
||||
event flush-stop: GstEventFlushStop, reset-time=(boolean)true;
|
||||
|
@ -35,15 +35,15 @@ event eos: (no structure)
|
|||
event flush-start: (no structure)
|
||||
event flush-stop: GstEventFlushStop, reset-time=(boolean)true;
|
||||
event segment: format=TIME, start=0:00:01.000000000, offset=0:00:00.000000000, stop=0:00:02.000000000, flags=0x01, time=0:00:01.000000000, base=0:00:00.000000000, position=none
|
||||
buffer: pts=0:00:01.000000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:01.000000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
event flush-start: (no structure)
|
||||
event flush-stop: GstEventFlushStop, reset-time=(boolean)true;
|
||||
event segment: format=TIME, start=0:00:01.000000000, offset=0:00:00.000000000, stop=0:00:01.500000000, flags=0x01, time=0:00:01.000000000, base=0:00:00.000000000, position=none
|
||||
buffer: pts=0:00:01.000000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:01.100000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:01.200000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:01.300000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:01.400000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:01.000000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: pts=0:00:01.100000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: pts=0:00:01.200000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: pts=0:00:01.300000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: pts=0:00:01.400000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
event segment: format=TIME, start=0:00:01.500000000, offset=0:00:00.000000000, stop=0:00:01.500000001, flags=0x01, time=0:00:01.500000000, base=0:00:00.500000000, position=none
|
||||
buffer: pts=0:00:01.500000000, dur=0:00:00.000000001
|
||||
buffer: pts=0:00:01.500000000, dur=0:00:00.000000001, meta=GstVideoMeta
|
||||
event eos: (no structure)
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
event stream-start: GstEventStreamStart, flags=(GstStreamFlags)GST_STREAM_FLAG_NONE;
|
||||
event caps: video/x-raw, format=(string)I420, width=(int)1280, height=(int)720, framerate=(fraction)10/1, chroma-site=(string)mpeg2, colorimetry=(string)bt709;
|
||||
event caps: video/x-raw, width=(int)1280, height=(int)720, framerate=(fraction)10/1, format=(string)I420, chroma-site=(string)mpeg2, colorimetry=(string)bt709;
|
||||
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=0:00:01.000000000, flags=0x01, time=0:00:00.000000000, base=0:00:00.000000000, position=none
|
||||
buffer: pts=0:00:00.000000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:00.000000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
event flush-start: (no structure)
|
||||
event flush-stop: GstEventFlushStop, reset-time=(boolean)true;
|
||||
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=0:00:00.500000000, flags=0x01, time=0:00:00.000000000, base=0:00:00.000000000, position=none
|
||||
buffer: pts=0:00:00.000000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:00.100000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:00.200000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:00.300000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:00.400000000, dur=0:00:00.100000000
|
||||
buffer: pts=0:00:00.000000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.100000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.200000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.300000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.400000000, dur=0:00:00.100000000, meta=GstVideoMeta
|
||||
event eos: (no structure)
|
||||
|
|
|
@ -1,95 +1,95 @@
|
|||
event stream-start: GstEventStreamStart, flags=(GstStreamFlags)GST_STREAM_FLAG_NONE;
|
||||
event caps: video/x-raw, format=(string)I420, width=(int)1280, height=(int)720, framerate=(fraction)30/1, chroma-site=(string)mpeg2, colorimetry=(string)bt709;
|
||||
event caps: video/x-raw, width=(int)1280, height=(int)720, framerate=(fraction)30/1, format=(string)I420, chroma-site=(string)mpeg2, colorimetry=(string)bt709;
|
||||
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=0:00:01.000000000, flags=0x01, time=0:00:00.000000000, base=0:00:00.000000000
|
||||
buffer: pts=0:00:00.000000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.000000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
event flush-start: (no structure)
|
||||
event flush-stop: GstEventFlushStop, reset-time=(boolean)true;
|
||||
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=0:00:00.500000000, flags=0x01, time=0:00:00.000000000, base=0:00:00.000000000
|
||||
buffer: pts=0:00:00.000000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.033333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.066666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.100000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.133333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.166666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.200000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.233333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.266666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.300000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.333333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.366666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.400000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.433333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.466666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.000000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.033333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.066666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.100000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.133333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.166666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.200000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.233333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.266666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.300000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.333333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.366666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.400000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.433333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.466666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
event eos: (no structure)
|
||||
event flush-start: (no structure)
|
||||
event flush-stop: GstEventFlushStop, reset-time=(boolean)true;
|
||||
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=0:00:00.500000000, flags=0x01, time=0:00:00.000000000, base=0:00:00.000000000
|
||||
buffer: pts=0:00:00.000000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.033333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.066666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.100000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.133333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.166666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.200000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.233333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.266666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.300000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.333333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.366666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.400000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.433333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.466666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.000000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.033333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.066666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.100000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.133333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.166666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.200000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.233333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.266666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.300000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.333333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.366666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.400000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.433333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.466666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
event eos: (no structure)
|
||||
event flush-start: (no structure)
|
||||
event flush-stop: GstEventFlushStop, reset-time=(boolean)true;
|
||||
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=0:00:01.000000000, flags=0x01, time=0:00:00.000000000, base=0:00:00.000000000
|
||||
buffer: pts=0:00:00.000000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.033333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.066666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.100000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.133333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.166666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.200000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.233333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.266666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.300000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.333333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.366666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.400000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.433333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.466666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.500000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.533333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.566666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.600000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.633333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.666666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.700000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.733333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.766666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.800000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.833333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.866666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.900000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.933333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:00.966666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:00.000000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.033333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.066666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.100000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.133333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.166666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.200000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.233333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.266666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.300000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.333333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.366666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.400000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.433333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.466666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.500000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.533333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.566666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.600000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.633333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.666666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.700000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.733333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.766666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.800000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.833333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.866666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.900000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.933333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:00.966666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
event eos: (no structure)
|
||||
event flush-start: (no structure)
|
||||
event flush-stop: GstEventFlushStop, reset-time=(boolean)true;
|
||||
event segment: format=TIME, start=0:00:01.000000000, offset=0:00:00.000000000, stop=0:00:01.500000000, flags=0x01, time=0:00:01.000000000, base=0:00:00.000000000
|
||||
buffer: pts=0:00:01.000000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:01.033333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:01.066666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:01.100000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:01.133333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:01.166666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:01.200000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:01.233333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:01.266666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:01.300000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:01.333333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:01.366666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:01.400000000, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:01.433333333, dur=0:00:00.033333334
|
||||
buffer: pts=0:00:01.466666667, dur=0:00:00.033333333
|
||||
buffer: pts=0:00:01.000000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:01.033333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:01.066666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:01.100000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:01.133333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:01.166666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:01.200000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:01.233333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:01.266666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:01.300000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:01.333333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:01.366666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:01.400000000, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
buffer: pts=0:00:01.433333333, dur=0:00:00.033333334, meta=GstVideoMeta
|
||||
buffer: pts=0:00:01.466666667, dur=0:00:00.033333333, meta=GstVideoMeta
|
||||
event eos: (no structure)
|
||||
|
|
Loading…
Reference in a new issue