[Bug 726381] New: avdec_h264 and possibly other libav decoders: latency regression
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Fri Mar 14 15:46:54 PDT 2014
https://bugzilla.gnome.org/show_bug.cgi?id=726381
GStreamer | gst-libav | 1.x
Summary: avdec_h264 and possibly other libav decoders: latency
regression
Classification: Platform
Product: GStreamer
Version: 1.x
OS/Version: Linux
Status: UNCONFIRMED
Severity: major
Priority: Normal
Component: gst-libav
AssignedTo: gstreamer-bugs at lists.freedesktop.org
ReportedBy: lists at svrinformatica.it
QAContact: gstreamer-bugs at lists.freedesktop.org
GNOME version: ---
avdec_h264 has more latency than ffdec_h264, please test with these pipelines:
server (use 0.10 since gdppay is a bit broken in 1.0):
gst-launch-0.10 v4l2src ! x264enc tune=zerolatency ! gdppay ! tcpserversink
host=127.0.0.1 port=3000 sync-method=2
client 1.0:
gst-launch-1.0 -v tcpclientsrc host=127.0.0.1 port=3000 ! gdpdepay ! fakesink
sync=false silent=false
client 0.10:
gst-launch-0.10 -v tcpclientsrc host=127.0.0.1 port=3000 ! gdpdepay ! fakesink
sync=false
stop the server or kill both clients at the same time (kill -9 <pid1> <pid2>),
they will print exactly the same timestamp, for example:
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain *******
(fakesink0:sink) (8576 bytes, dts: 0:00:00.000000000, pts: 0:00:34.139030609,
duration: 0:00:00.033333333, offset: -1, offset_end: -1, flags: 00002000
delta-unit ) 0x7f43240069a0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = "chain *******
(fakesink0:sink) (8576 bytes, timestamp: 0:00:34.139030609, duration:
0:00:00.033333333, offset: -1, offset_end: -1, flags: 8192 ) 0x7fa300002bf0"
now change the client pipelines
client 1.0:
gst-launch-1.0 -v tcpclientsrc host=127.0.0.1 port=3000 ! gdpdepay ! avdec_h264
! fakesink sync=false silent=false
client 0.10:
gst-launch-0.10 -v tcpclientsrc host=127.0.0.1 port=3000 ! gdpdepay !
ffdec_h264 ! fakesink sync=false
stop the server or kill the clients, you see the delay:
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain *******
(fakesink0:sink) (1382400 bytes, dts: 0:00:39.664793944, pts:
0:00:39.664793944, duration: 0:00:00.033333333, offset: -1, offset_end: -1,
flags: 00004000 in-caps ) 0x7f8b50cf2740
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = "chain *******
(fakesink0:sink) (1382400 bytes, timestamp: 0:00:39.896504848, duration:
0:00:00.033333333, offset: -1, offset_end: -1, flags: 256 delta_unit )
0x7fcd94002dc0"
so 1.0 has about 250 milliseconds delay more than 0.10 (I observed 0.5 second
too)
version used:
gstreamer 1.2.3
gstreamer 0.10.36
--
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