Gstreamer 0.10

Ashok Tiwari ashok.tiwari at serobit.com
Tue May 11 16:07:26 UTC 2021


Hi
I am developing one application on Apalis T30, which support Gstreamer 0.10
.

In my application, I am doing buffer probe using the API  :*
gst_pad_add_buffer_probe
();*
After doing probe, I need to add header extension using the API :
*gst_rtp_buffer_add_extension_onebyte_header *

But when I am using this API it was giving error*
gst_rtp_buffer_add_extension_onebyte_header:
assertion 'gst_buffer_is_writable (buffer)' faile*

I used the API  "*gst_buffer_make_writable*" to make the buffer writable.
After using this API I am getting this warning :
*GStreamer-CRITICAL **: gst_mini_object_unref: assertion
'GST_IS_MINI_OBJECT (mini_object)' failed*

please suggest API which I can used to add header extension without and
error.
Find the code here :

static gboolean
cb_have_data (GstPad * pad, GstBuffer * buffer, gpointer data)
{
  GstBuffer *buff;

  guint8 payload_type;

  guint header_len;

  guint packet_len;

  guint16 seq_no;

  gpointer pointer;

  guint size;

  guint8  csrc_count;

  guint8 misc_data[4] = {1,2,3,4};


  buffer = gst_buffer_make_writable (buffer);   /* Makes a writable buffer
from the given buffer */

  if ((gst_rtp_buffer_validate (buffer)) == TRUE) {
    g_print("Buffer have Valid RTP Packet\n");
  }

  else {
    g_print("Buffer do'nt have Valid RTP Packet\n");
    goto out;
  }

  payload_type = gst_rtp_buffer_get_payload_type (buffer);      /* check
payload_type */
  g_print ("payload type is :%u\n", payload_type);

  header_len = gst_rtp_buffer_get_header_len (buffer);  /*  total length of
the header in buffer */
  g_print("header length is :%u\n", header_len);

  packet_len = gst_rtp_buffer_get_packet_len (buffer);  /* total length of
the packet in buffer */
  g_print("packet length is :%u\n", packet_len);

  seq_no = gst_rtp_buffer_get_seq (buffer);
  g_print("sequence number of RTP Packet :%u\n", seq_no);

  csrc_count = gst_rtp_buffer_get_csrc_count(buffer);
  g_print("csrc count value is: %u\n",csrc_count);


  if (gst_rtp_buffer_add_extension_onebyte_header (buffer, 4, misc_data,
          4) == TRUE) {
    g_print ("Header Extension is Added\n");
  }

  else {
    g_print ("Header Extension is not added\n");
    goto out;

*Best Regards,*
*Ashok Kumar Tiwari*
*Mobile : +91-8127222468*
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20210511/a15190dc/attachment.htm>


More information about the gstreamer-devel mailing list