[Webkit-unassigned] [Bug 136450] New: [GStreamer] GST_STREAM_ERROR_TYPE_NOT_FOUND errors are skipped

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Sep 2 05:41:32 PDT 2014


           Summary: [GStreamer] GST_STREAM_ERROR_TYPE_NOT_FOUND errors are
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Media Elements
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: fvallee at connected-labs.com

Tested on linux / gtk port / gstreamer 1.4.0 but same issue was already there long time ago in Qt port / gstreamer 0.10.19 
(code is very old, http://trac.webkit.org/changeset/83598).

When gstreamer send "GST_STREAM_ERROR_TYPE_NOT_FOUND" error, the error is skipped (= not reported to the MediaPlayerClient)


Definition of stalled event is : "The user agent is trying to fetch media data, but data is unexpectedly not forthcoming" 

Definition of GST_STREAM_ERROR_TYPE_NOT_FOUND is "used when the element doesn't know the stream's type."

GST_STREAM_ERROR_TYPE_NOT_FOUND doesn't seems related to "data is unexpectedly not forthcoming". I don't know why GST_STREAM_ERROR_TYPE_NOT_FOUND was chosen, but the code is very very old, so maybe gst was lacking some error type back then.

Anyway this cause troubles: when gstreamer try to play an invalid video, it will usually trigger GST_STREAM_ERROR_TYPE_NOT_FOUND.

I didn't find any 'stalled' related regression test, but in LayoutTests/media/broken-video.html, playback of LayoutTests/media/content/garbage.mp4 triggers 2 errors:

Error 4: Could not determine type of stream. (url=file:///xxxx/LayoutTests/media/content/garbage.mp4)
GST_STREAM_ERROR: 4, Could not determine type of stream.
Decode error, let the Media element emit a stalled event.
Error 1: GStreamer encountered a general stream error. (url=file:///xxxx/LayoutTests/media/content/garbage.mp4)
GST_STREAM_ERROR: 1, GStreamer encountered a general stream error.

First error (GST_STREAM_ERROR: 4) is skipped, but second error (GST_STREAM_ERROR: 1) is handled and the test can pass (but only because of the second error).

However if I change the video src to another invalid video (http://itv.mit-xperts.com/hbbtvtest/playerevents/novideo.php/video.mp4), only
"GST_STREAM_ERROR: 4, Could not determine type of stream" error is triggered.
As GST_STREAM_ERROR_TYPE_NOT_FOUND is skipped, the error event is never triggered and the test timeout.

Same test (using modified video src) works fine using chromium (Version 36.0.1985.125 (283153)) and opera 12.16.

Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

More information about the webkit-unassigned mailing list