[Bug 758023] New: unable to play rtsp stream with framerate range excluding zero on caps downstream

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Thu Nov 12 10:52:41 PST 2015


https://bugzilla.gnome.org/show_bug.cgi?id=758023

            Bug ID: 758023
           Summary: unable to play rtsp stream with framerate range
                    excluding zero on caps downstream
    Classification: Platform
           Product: GStreamer
           Version: 1.4.4
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: don't know
          Assignee: gstreamer-bugs at lists.freedesktop.org
          Reporter: jspurny at seznam.cz
        QA Contact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---

Debian Linux 8.2, 64bit, kernel 3.16.7-ckt11-1+deb8u5 (2015-10-09) x86_64

I've encountered very strange behaviour on Sony and FLIR cameras rtsp streams
when I was porting our software from gstreamer-0.10 to gstreamer-1.0:

If some element downstream specifies framerate range that does not include
zero,
e.g. "framerate=[1/100, 100/1]", then the whole pipeline:

    gst-launch-1.0 rtspsrc location='rtsp://<addr>/media/video1' \
        ! decodebin ! video/x-raw, framerate=[1/100, 100/1] ! xvimagesink


fails to start with:

    WARN  rtpjitterbuffer
rtpjitterbuffer.c:185:rtp_jitter_buffer_set_clock_rate: Clock rate changed from
0 to 90000
    WARN        rtpsource rtpsource.c:1056:update_receiver_stats: duplicate or
reordered packet (seqnr 10182)
    WARN        rtpsource rtpsource.c:1056:update_receiver_stats: duplicate or
reordered packet (seqnr 10183)
    WARN        rtpsource rtpsource.c:1056:update_receiver_stats: duplicate or
reordered packet (seqnr 10184)
    WARN        rtpsource rtpsource.c:1056:update_receiver_stats: duplicate or
reordered packet (seqnr 10185)
    WARN            libav gstavcodecmap.c:2408:gst_ffmpeg_caps_to_pixfmt:
ignoring insane framerate 1/0
    WARN          basesrc gstbasesrc.c:2933:gst_base_src_loop:<udpsrc1> error:
Internal data flow error.
    WARN          basesrc gstbasesrc.c:2933:gst_base_src_loop:<udpsrc1> error:
streaming task paused, reason not-linked (-1)


When there are no framerate restriction, e.g.:

    gst-launch-1.0 rtspsrc location='rtsp://<addr>/media/video1' \
        ! decodebin ! xvimagesink

the pipeline plays just fine, but all elements downstream of rtspsrc have
"framerate=(fraction)0/1" in caps when playing (inspected using generated DOT
files).


It's probably not a very serious problem, but it took me 2 days to discover
that
reason for not-linking was caps with "framerate=[1/100, 1000/1]" I had on
sinkpad of my custom element. Then I was able to duplicate the bug using
pipeline above, so I just removed that framerate restriction and everything
started working.

But all caps have "framerate=(fraction)0/1" even when the pipeline runs. This
seems quite wrong to me.. especially when rtspsrc reports:

    DEBUG rtspsrc gstrtspsrc.c:1892:gst_rtspsrc_sdp_attributes_to_caps: adding
caps: a-framerate=12.0

even before playing (the camera is configured to 12 fps).

-- 
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