Gstreamer 0.10
Nicolas Dufresne
nicolas at ndufresne.ca
Wed May 12 13:51:13 UTC 2021
Le mardi 11 mai 2021 à 21:37 +0530, Ashok Tiwari via gstreamer-devel a écrit :
> Hi
> I am developing one application on Apalis T30, which support Gstreamer 0.10 .
I'm sorry to say, we no longer support GStreamer 0.10. We don't have the
resource to do so.
>
> 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
is_writable() likely failed because is_mini_object() failed. You might be
handling null pointers or have reached the last ref.
>
> 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
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
More information about the gstreamer-devel
mailing list