<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    No. the only thing that matters is the caps to header extension
    mapping for the caps-to-header-extension vfuncs.  There is no
    requirement that there be any application involvement at all.<br>
    <br>
    The rtp caps are typically used with SDP generation functions which
    depending on your header extension may requires some extra
    values/attributes/whatever in that SDP.<br>
    <br>
    Cheers<br>
    -Matt<br>
    <br>
    <div class="moz-cite-prefix">On 13/2/23 20:31, Serhan Gül wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:2335250c-37f6-4c0c-a9e7-72e4ba70ba70@app.fastmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <title></title>
      <style type="text/css">p.MsoNormal,p.MsoNoSpacing{margin:0}</style>
      <div>Thanks. Does this mean that it depends on whether the header
        extension needs to get some input from the application and/or
        pass something back to the application? <br>
      </div>
      <div><br>
      </div>
      <div>Regards,<br>
      </div>
      <div>Serhan</div>
      <div id="sig67116920">
        <div class="signature"><br>
        </div>
        <div>On Sun, Feb 12, 2023, at 2:49 AM, Matthew Waters wrote:<br>
        </div>
      </div>
      <blockquote type="cite" id="qt" style="">
        <div>The answer for what an implementation wants depends on if
          the header extension requires any changes to any of the caps
          or whether it can use the default implementation.<br>
        </div>
        <div> <br>
        </div>
        <div> There is no hard rule for how the caps mapping to rtp
          header extension works.<br>
        </div>
        <div> <br>
        </div>
        <div> Cheers<br>
        </div>
        <div> -Matt<br>
        </div>
        <div><br>
        </div>
        <div class="qt-moz-cite-prefix">On 11/2/23 02:35, Serhan Gül via
          gstreamer-devel wrote:<br>
        </div>
        <blockquote type="cite"
          cite="mid:9822a00c-41d8-455a-89df-a4f174926b77@app.fastmail.com">
          <div>Hi,<br>
          </div>
          <div><br>
          </div>
          <div>I'm writing a custom header extension
            using GstRTPHeaderExtensionClass. Checking the
            implementations of the existing header extension
            implementations in GStreamer, I noticed that there are
            differences in the used API methods to update the
            payloader/depayloader caps. For example. rtphdrextcolorspace
            uses gst_rtp_header_extension_set_non_rtp_sink_caps to pass
            the payloader's sink caps to the extension and
            gst_rtp_header_extension_update_non_rtp_src_caps to update
            the deployader's src caps. However, 
            rtphdrextclientaudiolevel and rtphdrextmid use
            gst_rtp_header_extension_set_caps_from_attributes. Finally,
            rtphdrextstreamid uses none of the above methods; so it
            seems like it does not set any caps.<br>
          </div>
          <div><br>
          </div>
          <div>So I have two questions:<br>
          </div>
          <div>1. What is the difference between using these methods? <br>
          </div>
          <div>2. Why does rtphdrextstreamid not use any of them?<br>
          </div>
          <div><br>
          </div>
          <div>Thanks!<br>
          </div>
          <div><br>
          </div>
          <div id="qt-sig67116920">
            <div class="qt-signature">Best regards,<br>
            </div>
            <div class="qt-signature">Serhan<br>
            </div>
            <div class="qt-signature"><br>
            </div>
          </div>
          <div><br>
          </div>
        </blockquote>
        <div><br>
        </div>
        <div><br>
        </div>
        <div><b>Attachments:</b><br>
        </div>
        <ul>
          <li>OpenPGP_signature<br>
          </li>
        </ul>
      </blockquote>
      <div><br>
      </div>
    </blockquote>
    <br>
  </body>
</html>