[gst-devel] 3gp demux plugin working on PC but not on target

Rahul Verma rahul.verma at sasken.com
Tue Jan 13 12:43:35 CET 2009


Hi,

>Really, this doesn't help too much. You'll need to attach a debugger
>and see where things are going wrong. It could be that one of the
>libraries gstreamer uses was compiled wrongly, so things are going
>wrong "randomly", or it could be a bug in your plugin - we can't
>guess. You might also find running it on a PC using a tool like
>valgrind helpful - it might show you something you're doing wrong that
>just luckily doesn't cause a crash on the PC, but does on your target
>system.

Finally I was able to get Audio and Video working on target using my 3gp 
demux. As you pointed out correctly, bug was in my code. I was trying to 
access the file location from filesrc element using the following code, and 
it caused the crash.

        fileSrcPeerPad = gst_pad_get_peer(filter->sinkPad);
	if(NULL == fileSrcPeerPad)
	{
		GST_DEBUG("gone.. no src peer pad. ");
	}
	//extract the file src element here and get the filename, fd and uri
	fileSrcPeerElement = gst_pad_get_parent_element(fileSrcPeerPad);
	
	element_class = GST_ELEMENT_CLASS(fileSrcPeerElement);
	
	object_class = G_OBJECT_CLASS(element_class);
		
	//try to extract the location from this GObject.
	g_object_get(object_class, "location", &fileLocation, NULL);

and after that do the file operations. Surprisingly, this piece of code worked
on PC. 

Can you help me in finding the error in the code??

Also, now I have some AV Sync issues. Till now I have not implemented any AV Sync
logic in my Demux or Sink. I am passing the video buffers decoded to the sink, but it
seems that video frames are dropped by the framework and after that I see continuous 
breaks. Does the pipeline implement the frame drop logic? If yes what logic does it follow
for frame drops? can you guide me to the piece of code in the framework for a better 
understanding.

Regards,
Rahul

	
>> Hi,
>>
>>
>>> That said, why aren't you using qtdemux? GStreamer includes a fairly
>>> full-featured, high quality demuxer for
>>> quicktime-and-qt-derived-formats like 3gp, and it works well already.
>>
>> We use the qtdemux extensively and find it very stable. We are developing
>> out 3gp plugin as an experiment just to learn more about the GStreamer
>> framework.

>Fair enough.

>>
>>> Without the source to your plugin, all we can say about this
>>> particular crash is "it's presumably a bug in your plugin, you'll need
>>> to fix it".

>Really, this doesn't help too much. You'll need to attach a debugger
>and see where things are going wrong. It could be that one of the
>libraries gstreamer uses was compiled wrongly, so things are going
>wrong "randomly", or it could be a bug in your plugin - we can't
>guess. You might also find running it on a PC using a tool like
>valgrind helpful - it might show you something you're doing wrong that
>just luckily doesn't cause a crash on the PC, but does on your target
>system.
SASKEN BUSINESS DISCLAIMER
-------------------------
This message may contain confidential, proprietary or legally privileged information. In 
case you are not the original intended Recipient of the message, you must not, directly or 
indirectly, use, Disclose, distribute, print, or copy any part of this message and you are 
requested to delete it and inform the sender. Any views expressed in this message are 
those of the individual sender unless otherwise stated. Nothing contained in this message 
shall be construed as an offer or acceptance of any offer by Sasken Communication 
Technologies Limited ("Sasken") unless sent with that express intent and with due 
authority of Sasken. Sasken has taken enough precautions to prevent the spread of 
viruses. However the company accepts no liability for any damage caused by any virus 
transmitted by this email
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20090113/66c7f28c/attachment.htm>


More information about the gstreamer-devel mailing list