<html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
</head>
<body>
videoconvert most likely isn't going to work with GPU buffers at
all. You will probably want your own element that deals with your
data correctly (or use an existing element like glcolorconvert or
maybe a v4l2 converter element).<br>
<br>
Cheers<br>
-Matt<br>
<br>
<div class="moz-cite-prefix">On 18/8/21 4:18 pm, Gaurav Vohra via
gstreamer-devel wrote:<br>
</div>
<blockquote type="cite"
cite="mid:PH0PR04MB7544C50116605CC20824B6CEE5FF9@PH0PR04MB7544.namprd04.prod.outlook.com">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
<meta name="Generator" content="Microsoft Word 15 (filtered
medium)">
<style>@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;}div.WordSection1
{page:WordSection1;}</style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
<div class="WordSection1">
<p class="MsoNormal">Hello,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">I am working to customize gstreamer plugin
to support <o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"
style="mso-margin-bottom-alt:auto;background:white;vertical-align:baseline"><span
style="color:black">working to modify gstreamer plugin -
videoconvert get obtain output data allocated as gpu memory
allocated buffers.</span><o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-bottom-alt:auto;background:white;vertical-align:baseline"><span
style="color:black">As part of first step have modified the
plugin to update the src template to include the gpu memory
caps.</span><o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-bottom-alt:auto;background:white;vertical-align:baseline"><span
style="color:black">Allocation for gpu memory is done is
transform_frame, but before that being called stream error
and negotition is failing</span><o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-bottom-alt:auto;background:white;vertical-align:baseline"><span
style="color:black">Commented part</span><o:p></o:p></p>
<p class="MsoNormal" style="vertical-align:baseline">// #define
CSP_VIDEO_CAPS GST_VIDEO_CAPS_MAKE (GST_VIDEO_FORMATS_ALL) ";"
\<o:p></o:p></p>
<p class="MsoNormal" style="vertical-align:baseline">GST_VIDEO_CAPS_MAKE_WITH_FEATURES
("ANY", GST_VIDEO_FORMATS_ALL)<o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-bottom-alt:auto;background:white;vertical-align:baseline"><span
style="color:black">Modified part</span><o:p></o:p></p>
<p class="MsoNormal" style="vertical-align:baseline">#define
CSP_VIDEO_CAPS_SRC GST_VIDEO_CAPS_MAKE (GST_VIDEO_FORMATS_ALL)
";" \<o:p></o:p></p>
<p class="MsoNormal" style="vertical-align:baseline">GST_VIDEO_CAPS_MAKE_WITH_FEATURES
("memory:GBM", GST_VIDEO_FORMATS_ALL)<o:p></o:p></p>
<p class="MsoNormal" style="vertical-align:baseline"><o:p> </o:p></p>
<p class="MsoNormal" style="vertical-align:baseline">//#define
CSP_VIDEO_CAPS_SRC GST_VIDEO_CAPS_MAKE_WITH_FEATURES
("memory:GBM", GST_VIDEO_FORMATS_ALL)<o:p></o:p></p>
<p class="MsoNormal" style="vertical-align:baseline">static
GstStaticPadTemplate gst_video_convert_src_template =<o:p></o:p></p>
<p class="MsoNormal" style="vertical-align:baseline">GST_STATIC_PAD_TEMPLATE
("src",<o:p></o:p></p>
<p class="MsoNormal" style="vertical-align:baseline">
GST_PAD_SRC,<o:p></o:p></p>
<p class="MsoNormal" style="vertical-align:baseline">
GST_PAD_ALWAYS,<o:p></o:p></p>
<p class="MsoNormal" style="vertical-align:baseline">
GST_STATIC_CAPS (CSP_VIDEO_CAPS_SRC)<o:p></o:p></p>
<p class="MsoNormal" style="vertical-align:baseline"> );<o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-bottom-alt:auto;background:white;vertical-align:baseline"><span
style="color:black">While trying to run the playback
pipeline getting errors related to negotitation and stream
error like below</span><o:p></o:p></p>
<p class="MsoNormal" style="vertical-align:baseline">ERROR: from
element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal
data stream error.<o:p></o:p></p>
<p class="MsoNormal" style="vertical-align:baseline">Additional
debug info:<o:p></o:p></p>
<p class="MsoNormal" style="vertical-align:baseline">../../../../gstreamer-1.14.4/libs/gst/base/gstbasesrc.c(3055):
gst_base_src_loop ():
/GstPipeline:pipeline0/GstV4l2Src:v4l2src0:<o:p></o:p></p>
<p class="MsoNormal" style="vertical-align:baseline">streaming
stopped, reason not-negotiated (-4)<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Further debugging from logs suggest
intersect of capsfilter input and the caps filter is coming as
EMPTY
<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">0:00:06.974521920 4320 0x10cde60
DEBUG capsfilter
gstcapsfilter.c:296:gst_capsfilter_transform_caps:<capsfilter0>
input: video/x-raw(memory:GBM), format=(string)NV12,
width=(int)[ 1, 32767 ], height=(int)[ 1, 32767 ],
framerate=(fraction)[ 0/1, 2147483647/1 ];
video/x-raw(memory:GBM), width=(int)[ 1, 32767 ],
height=(int)[ 1, 32767 ], framerate=(fraction)[ 0/1,
2147483647/1 ], format=(string){ I420, YV12, YUY2, UYVY, AYUV,
RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR,
Y41B, Y42B, YVYU, Y444, v210, v216, NV12, NV21, GRAY8,
GRAY16_BE, GRAY16_LE, v308, RGB16, BGR16, RGB15, BGR15, UYVP,
A420, RGB8P, YUV9, YVU9, IYU1, ARGB64, AYUV64, r210,
I420_10BE, I420_10LE, I422_10BE, I422_10LE, Y444_10BE,
Y444_10LE, GBR, GBR_10BE, GBR_10LE, NV16, NV24, NV12_64Z32,
A420_10BE, A420_10LE, A422_10BE, A422_10LE, A444_10BE,
A444_10LE, NV61, P010_10BE, P010_10LE, IYU2, VYUY, GBRA,
GBRA_10BE, GBRA_10LE, GBR_12BE, GBR_12LE, GBRA_12BE,
GBRA_12LE, I420_12BE, I420_12LE, I422_12BE, I422_12LE,
Y444_12BE, Y444_12LE, GRAY10_LE32, NV12_10LE32, NV16_10LE32 }<o:p></o:p></p>
<p class="MsoNormal">0:00:06.974569108 4320 0x10cde60
DEBUG capsfilter
gstcapsfilter.c:297:gst_capsfilter_transform_caps:<capsfilter0>
filter: (NULL)<o:p></o:p></p>
<p class="MsoNormal">0:00:06.974616661 4320 0x10cde60
DEBUG capsfilter
gstcapsfilter.c:299:gst_capsfilter_transform_caps:<capsfilter0>
caps filter: video/x-raw, width=(int)1280, height=(int)720,
framerate=(fraction)15/2, format=(string)YUY2<o:p></o:p></p>
<p class="MsoNormal">0:00:06.974651037 4320 0x10cde60
DEBUG capsfilter
gstcapsfilter.c:300:gst_capsfilter_transform_caps:<capsfilter0>
intersect: EMPTY<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Regards<o:p></o:p></p>
<p class="MsoNormal">Gaurav<o:p></o:p></p>
</div>
</blockquote>
<br>
</body>
</html>