[Bug 777228] New: decoders do not support discontinuity well
GStreamer (GNOME Bugzilla)
bugzilla at gnome.org
Fri Jan 13 17:21:43 UTC 2017
https://bugzilla.gnome.org/show_bug.cgi?id=777228
Bug ID: 777228
Summary: decoders do not support discontinuity well
Classification: Platform
Product: GStreamer
Version: 1.10.2
OS: Linux
Status: NEW
Severity: normal
Priority: Normal
Component: gst-plugins-base
Assignee: gstreamer-bugs at lists.freedesktop.org
Reporter: jon.mandrell at zii.aero
QA Contact: gstreamer-bugs at lists.freedesktop.org
GNOME version: ---
I am attempting to play a stream coming from a satellite TV provider. This
stream sometimes has dropped packets but I still expect it to be roughly
playable (I know there will be audio and video glitches from time to time).
However, when I attempt to play this using gstreamer 1.10.2 decoders appear to
stop across the discontinuity.
A simple example is the following test pipeline I've been using (this only
plays the audio part of the stream just to keep things simple, but it happens
with video as well):
gst-launch-1.0 -v udpsrc uri=udp://239.192.16.11:52416 do-timestamp=true !
application/x-rtp,media=video,clock-rate=90000 ! rtpsession ! rtpssrcdemux !
rtpjitterbuffer latency=1000 do-lost=true ! rtpptdemux ! rtpmp2tdepay ! tsdemux
! audio/mpeg ! queue ! avdec_aac ! audioconvert ! alsasink sync=true
I have placed a copy of a .pcap file that exhibits this problem on dropbox at:
https://www.dropbox.com/s/a32nf2p1roxhgll/short.pcap?dl=0
Using GST_DEBUG=*:2 the message that is logged at the discontinuity point is:
0:00:39.530837723 1306 0x1363f20 ERROR libav :0:: Input
buffer exhausted before END element found
0:00:39.530960400 1306 0x1363f20 WARN libav
gstavauddec.c:632:gst_ffmpegauddec_frame:<avdec_aac0> avdec_aac: decoding error
(len: -1094995529, have_data: 0)
If I decode the video portion of the stream using this pipeline:
gst-launch-1.0 -v udpsrc uri=udp://239.192.16.11:52416 do-timestamp=true !
application/x-rtp,media=video,clock-rate=90000 ! rtpsession ! rtpssrcdemux !
rtpjitterbuffer latency=1000 do-lost=true ! rtpptdemux ! rtpmp2tdepay ! tsdemux
! video/x-h264 ! h264parse ! avdec_h264 ! fakesink
it also fails. The GST_DEBUG output is:
0:00:39.275041817 1385 0x213a950 ERROR libav :0:: error
while decoding MB 32 20, bytestream -24
Immediately at this point the decoder stops outputting frames.
--
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