tcpclient failing to detect EOF/EOS?

Peter Maersk-Moller pmaersk at gmail.com
Sat Aug 24 07:19:33 PDT 2013


Hi

Is it a bug or a feature, that tcpclientsrc seems to fail to detect EOF/EOS
and terminate a pipeline if its pipeline is PREROLLED and not yet PLAYING?

You can verified it by executing the following two pipeline in the listed
order and then terminate the first pipeline.

Sender Pipeline:
gst-launch -v videotestsrc is-live=true ! x264enc ! queue ! mux.
audiotestsrc is-live=true ! faac ! mpegtsmux name=mux ! queue !
tcpserversink port=5010

Receiver Pipeline
gst-launch-1.0 -v tcpclientsrc port=5010 ! tsdemux name=demux !
'audio/mpeg' ! fakesink demux. ! 'video/x-h264' ! fakesink

Start sender, then receiver and see that receiver only prerolls and does
not enter state playing (the pipeline needs queues). Then terminate the
sender and see that the receiver stays prerolled.

The behaviour makes it difficult to construct a pipeline with tcpclientsrc
without the risk of a race condition for the system.

Shouldn't tcpclientsrc detect the sender has disconnected and subsequently
shutdown the pipeline?

Best regards
Peter Maersk-Moller
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20130824/0805473a/attachment.html>


More information about the gstreamer-devel mailing list