<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>