[Bug 743834] New: tcpserversink fails with html5 <video> client

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Mon Feb 2 00:29:47 PST 2015


https://bugzilla.gnome.org/show_bug.cgi?id=743834
  GStreamer | gst-plugins-base | git master

           Summary: tcpserversink fails with html5 <video> client
    Classification: Platform
           Product: GStreamer
           Version: git master
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: critical
          Priority: Normal
         Component: gst-plugins-base
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: slezkin at live.ru
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


The problem is in use of the tcpserversink plug-in from gstreamer1.0 base set
for translation a video stream from bin to html5 <video> element.

Gstreamer pipeline:

gst-launch-1.0 videotestsrc ! video/x-raw,width=1024,pixel-aspect-ratio=1/1 !
videoconvert ! theoraenc ! oggmux ! tcpserversink host=192.168.0.107 port=5454
sync=TRUE

In the receiver web-page:

<video src="http://192.168.0.107:5454" autoplay="autoplay" >
    Your browser does not support the VIDEO tag and/or RTP streams.
</video>

I found that problem occurs during gst_multi_socket_sink_handle_client_read()
execution. Namely, any browser (instead of other client apps such as vlc or a
gst client pipeline) falls into ... }else if(nread < 0) { ... (in current ver.
is gstmultisocketsink.c, 593) and returns FALSE what cause client disconnect.

I don't clearly understand full meaning of this code block, but I reached some
results only when I modified it: I retained only WARNING about read error but
cancelled the error generation and changed return to TRUE.
After rebuild gst-plugins-base (v. 1.2.4, current in Ubuntu) web clients
successfully connects to the pipeline and the video can be viewed.
Is it may be possible to modify the content of this else {} block in master?

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