Hi,
when using a "tee" (simply 1 in and 1 out,
hopefully transparent behaviour) and dmabufs, is tee somehow influencing the
behaviour?
Is there some difference between 1.8.2 (which I
still have in use) or newest versions?
E.g. following two examples (only relevant parts,
simplified):
1) videodec ! sink
2) videodec ! tee ! sink
I see diffences in who is allocating the dmabuf
memories, once it is videodec, once it is sink.
Also propose allocation / decide allocation seems
to be different.
Here is a trace of the case with tee:
(especially message "didn't get downstream
ALLOCATION hints" from videodec)
0:00:00.967190334 [336m 551[00m
0x357890 [37mDEBUG [00m
[00;01;31;41m
GST_PADS gstpad.c:5075:store_sticky_event:<identity0:sink>[00m notify
caps
0:00:00.967252000 [336m 551[00m 0x357890 [33;01mLOG [00m [00;01;37;44m GST_PROPERTIES gstobject.c:463:gst_object_dispatch_properties_changed:<identity0>[00m deep notification from sink (caps) 0:00:00.967320667 [336m 551[00m 0x357890 [33;01mLOG [00m [00;01;37;44m GST_PROPERTIES gstobject.c:463:gst_object_dispatch_properties_changed:<pipeline0>[00m deep notification from sink (caps) /GstPipeline:pipeline0/GstIdentity:identity0.GstPad:sink: caps = "video/x-raw\,\ format\=\(string\)I420\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt709\,\ framerate\=\(fraction\)121/3" 0:00:00.967569334 [336m 551[00m 0x357890 [33;01mLOG [00m [00;01;31;41m GST_PADS gstpad.c:5240:gst_pad_push_event_unchecked:<tee0:src_0>[00m sent event 0x75b0ca00 (caps) to peerpad <identity0:sink>, ret ok 0:00:00.967652000 [336m 551[00m 0x357890 [37mDEBUG [00m [00;01;31;41m GST_PADS gstpad.c:3787:push_sticky:<tee0:src_0>[00m event caps marked received 0:00:00.967723000 [336m 551[00m 0x357890 [37mDEBUG [00m [00;01;31;41m GST_PADS gstpad.c:5591:gst_pad_send_event_unchecked:<tee0:sink>[00m sent event, ret ok 0:00:00.967785000 [336m 551[00m 0x357890 [33;01mLOG [00m [00;01;31;41m GST_PADS gstpad.c:5069:store_sticky_event:<tee0:sink>[00m stored sticky event caps 0:00:00.967844000 [336m 551[00m 0x357890 [37mDEBUG [00m [00;01;31;41m GST_PADS gstpad.c:5075:store_sticky_event:<tee0:sink>[00m notify caps 0:00:00.967902334 [336m 551[00m 0x357890 [33;01mLOG [00m [00;01;37;44m GST_PROPERTIES gstobject.c:463:gst_object_dispatch_properties_changed:<tee0>[00m deep notification from sink (caps) 0:00:00.967970334 [336m 551[00m 0x357890 [33;01mLOG [00m [00;01;37;44m GST_PROPERTIES gstobject.c:463:gst_object_dispatch_properties_changed:<pipeline0>[00m deep notification from sink (caps) /GstPipeline:pipeline0/GstTee:tee0.GstPad:sink: caps = "video/x-raw\,\ format\=\(string\)I420\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt709\,\ framerate\=\(fraction\)121/3" 0:00:00.968214000 [336m 551[00m 0x357890 [33;01mLOG [00m [00;01;31;41m GST_PADS gstpad.c:5240:gst_pad_push_event_unchecked:<v4l2video12videodec0:src>[00m sent event 0x75b0ca00 (caps) to peerpad <tee0:sink>, ret ok 0:00:00.968294334 [336m 551[00m 0x357890 [37mDEBUG [00m [00;01;31;41m GST_PADS gstpad.c:3787:push_sticky:<v4l2video12videodec0:src>[00m event caps marked received 0:00:00.968362334 [336m 551[00m 0x357890 [37mDEBUG [00m [00m query gstquery.c:674:gst_query_new_custom:[00m creating new query 0x75b05a30 allocation 0:00:00.968423334 [336m 551[00m 0x357890 [37mDEBUG [00m [00m videodecoder gstvideodecoder.c:3719:gst_video_decoder_negotiate_pool:<v4l2video12videodec0>[00m do query ALLOCATION 0:00:00.968472667 [336m 551[00m 0x357890 [37mDEBUG [00m [00;01;31;41m GST_PADS gstpad.c:4031:gst_pad_peer_query:<v4l2video12videodec0:src>[00m peer query 0x75b05a30 (allocation) 0:00:00.968538334 [336m 551[00m 0x357890 [37mDEBUG [00m [00;01;31;41m GST_PADS gstpad.c:3904:gst_pad_query:<tee0:sink>[00m doing query 0x75b05a30 (allocation) 0:00:00.968606000 [336m 551[00m 0x357890 [37mDEBUG [00m [00;01;31;41m GST_PADS gstpad.c:3361:gst_pad_query_default:<tee0:sink>[00m not forwarding 0x75b05a30 (allocation) query 0:00:00.968672667 [336m 551[00m 0x357890 [37mDEBUG [00m [00;01;31;41m GST_PADS gstpad.c:3927:gst_pad_query:<tee0:sink>[00m sent query 0x75b05a30 (allocation), result 0 0:00:00.968764667 [336m 551[00m 0x357890 [37mDEBUG [00m [00;01;31;41m GST_PADS gstpad.c:3972:gst_pad_query:<tee0:sink>[00m query failed 0:00:00.968820334 [336m 551[00m 0x357890 [37mDEBUG [00m [00;01;31;41m GST_PADS gstpad.c:4093:gst_pad_peer_query:<v4l2video12videodec0:src>[00m query failed 0:00:00.968873000 [336m 551[00m 0x357890 [37mDEBUG [00m [00m videodecoder gstvideodecoder.c:3722:gst_video_decoder_negotiate_pool:<v4l2video12videodec0>[00m didn't get downstream ALLOCATION hints 0:00:00.968925334 [336m 551[00m 0x357890 [37mDEBUG [00m [00m v4l2 gstv4l2object.c:4302:gst_v4l2_object_decide_allocation:<v4l2video12videodec0>[00m decide allocation 0:00:00.969036000 [336m 551[00m 0x357890 [37mDEBUG [00m [00m v4l2 gstv4l2object.c:4343:gst_v4l2_object_decide_allocation:<v4l2video12videodec0>[00m allocation: size:0 min:0 max:0 pool:(NULL) 0:00:00.969101667 [336m 551[00m 0x357890 [37mDEBUG [00m [00m GST_META gstmeta.c:87:gst_meta_api_type_register:[00m register API "GstVideoMetaAPI" 0:00:00.969179000 [336m 551[00m 0x357890 [37mDEBUG [00m [00m GST_META gstmeta.c:94:gst_meta_api_type_register:[00m adding tag "video" 0:00:00.969236667 [336m 551[00m 0x357890 [37mDEBUG [00m [00m GST_META gstmeta.c:94:gst_meta_api_type_register:[00m adding tag "memory" 0:00:00.969289000 [336m 551[00m 0x357890 [37mDEBUG [00m [00m GST_META gstmeta.c:94:gst_meta_api_type_register:[00m adding tag "colorspace" 0:00:00.969340667 [336m 551[00m 0x357890 [37mDEBUG [00m [00m GST_META gstmeta.c:94:gst_meta_api_type_register:[00m adding tag "size" 0:00:00.969438667 [336m 551[00m 0x357890 [37mDEBUG [00m [00m v4l2 gstv4l2object.c:1088:gst_v4l2_get_driver_min_buffers:<v4l2video12videodec0>[00m driver requires a minimum of 2 buffers 0:00:00.969497000 [336m 551[00m 0x357890 [37mDEBUG [00m [00m v4l2 gstv4l2object.c:4401:gst_v4l2_object_decide_allocation:<v4l2video12videodec0>[00m streaming mode: using our own pool <v4l2video12videodec0:pool:src> 0:00:00.969708000 [336m 551[00m 0x357890 [33;01mWARN [00m [00m structure gststructure.c:1935:priv_gst_structure_append_to_gstring:[00m No value transform to serialize field 'params' of type 'GstAllocationParams' 0:00:00.969591000 [336m 551[00m 0x357890 [37mDEBUG [00m [00m v4l2 gstv4l2object.c:4475:gst_v4l2_object_decide_allocation:<v4l2video12videodec0>[00m setting own pool config to GstBufferPoolConfig, caps=(GstCaps)"video/x-raw\,\ format\=\(string\)I420\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt709\,\ framerate\=\(fraction\)121/3", size=(uint)3133440, min-buffers=(uint)6, max-buffers=(uint)0, allocator=(GstAllocator)"NULL", params=(GstAllocationParams)NULL; 0:00:00.969943667 [336m 551[00m 0x357890 [33;01mWARN [00m [00m structure gststructure.c:1935:priv_gst_structure_append_to_gstring:[00m No value transform to serialize field 'params' of type 'GstAllocationParams' 0:00:00.969827000 [336m 551[00m 0x357890 [37mDEBUG [00m [00m v4l2bufferpool gstv4l2bufferpool.c:504:gst_v4l2_buffer_pool_set_config:<v4l2video12videodec0:pool:src>[00m config GstBufferPoolConfig, caps=(GstCaps)"video/x-raw\,\ format\=\(string\)I420\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt709\,\ framerate\=\(fraction\)121/3", size=(uint)3133440, min-buffers=(uint)6, max-buffers=(uint)0, allocator=(GstAllocator)"NULL", params=(GstAllocationParams)NULL; Best regards,
Martin
_______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
On Mon, 2016-12-12 at 07:03 +0100, Martin Maurer wrote:
> Hi, > > when using a "tee" (simply 1 in and 1 out, hopefully transparent > behaviour) and dmabufs, is tee somehow influencing the behaviour? > Is there some difference between 1.8.2 (which I still have in use) or > newest versions? There is no difference in tee, and it will always drop ALLOCATION queries currently: https://bugzilla.gnome.org/show_bug.cgi?id=730758 -- Sebastian Dröge, Centricular Ltd · http://www.centricular.com _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel signature.asc (981 bytes) Download Attachment |
Free forum by Nabble | Edit this page |