[Bug 711119] New: RTSP streaming of MP4 stream doesn't display video
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Wed Oct 30 06:27:08 CET 2013
https://bugzilla.gnome.org/show_bug.cgi?id=711119
GStreamer | gst-plugins-good | 0.10.31
Summary: RTSP streaming of MP4 stream doesn't display video
Classification: Platform
Product: GStreamer
Version: 0.10.31
OS/Version: Linux
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: gst-plugins-good
AssignedTo: gstreamer-bugs at lists.freedesktop.org
ReportedBy: satish-hpc.kumar at st.com
QAContact: gstreamer-bugs at lists.freedesktop.org
GNOME version: ---
Created an attachment (id=258516)
--> (https://bugzilla.gnome.org/attachment.cgi?id=258516)
Patch for fixing the issue
The issue is that when we play mp4 files through RTSP streaming case then
sometimes video is not visible, only audio is listened.
Analysis:
The issue is coming in new_manager_pad() in gstrtspsrc.c. In the streamed mp4
files, there are two streams( say stream0(audio) and stream1(video)) which
calls new_manager_pad() during pipeline creation in rtpbin in differnt threads.
If stream1 calls first this function, stream1 is added, pad_added signalled to
uridecodebin and while checking for all streams added, the stream0 is not added
and it returns backs. Then stream0 calls this function again, then this is also
added and checks for all streams added. Now both are added and hence it signals
no_more_pads to uridecodebin to remove the pad_added callbacks. Both video and
audio pipelines are created succesfully.
But in failing case, stream0 comes first, it is added and checks for all
streams. by this time, stream1 is not added but since container for stream1 is
1 which ends up signalling for all streams added to true which signals
no_more_pads to uridecodebin. stream1 calls later to this function but its
pad_added signal is not received by uridecodebin so video pipeline is not
created.
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list