Bug 183259 - [GStreamer] Cannot play particular WebM videos
Summary: [GStreamer] Cannot play particular WebM videos
Status: REOPENED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Media (show other bugs)
Version: Other
Hardware: PC Windows 10
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-03-01 13:59 PST by Michael Catanzaro
Modified: 2019-12-13 03:33 PST (History)
5 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Catanzaro 2018-03-01 13:59:50 PST
I can't play this simple WebM video in Epiphany Tech Preview (WebKitGTK+ 2.19.91):

https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/gtk/loop5.webm

I think it's different from bug #182653 because that video starts to play and only seek is broken, whereas this video does not play at all.
Comment 1 Philippe Normand 2018-03-02 01:44:25 PST
Add it to an html file in a <video> element and it plays.
Comment 2 Michael Catanzaro 2018-03-02 08:09:48 PST
Ummmm that should not be required, and was not required in the past. We are even showing media controls for it and everything. They're just broken.

If we did not support directly playing media files, we would need to start a download instead of displaying broken media controls. But I'm pretty sure this used to work. I see it is also broken in 2.18.6, though.
Comment 3 Michael Catanzaro 2018-03-25 18:13:30 PDT
Carlos, any chance you know how this is supposed to work?
Comment 4 Carlos Garcia Campos 2018-03-25 23:36:26 PDT
I giess we are doing something different in case of MediaDocument
Comment 5 Philippe Normand 2018-07-06 07:06:04 PDT
The problem seems to be that loop5.webm is thought to be audio/webm by the DOMImplementation and MediaDocument seems to handle only <video> elements, so an empty page is displayed, only controls are visible.
Comment 6 Philippe Normand 2018-07-10 02:50:23 PDT
The HTTP response header has the wrong content-type set, so not sure what to do about this. One thing to consider, maybe don't set the type attr on the video element created by the MediaDocument. I tried that and got a bunch of XSS errors afterwards :S
Comment 7 Michael Catanzaro 2019-01-28 07:32:26 PST
Another example video that fails to play:

https://matrix.org/_matrix/media/v1/download/matrix.org/vatFhMWBkNvNZhJWOdQCkeaQ
Comment 8 Michael Catanzaro 2019-12-12 12:44:08 PST
Lots of errors in the web inspector. Looks like some problems with the media controls JS:

[Error] Failed to load resource: Plug-in handled load (loop5.webm, line 0)
[Error] Blocked script execution in 'https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/gtk/loop5.webm' because the document's frame is sandboxed and the 'allow-scripts' permission is not set.
[Error] Refused to load https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/gtk/loop5.webm because it appears in neither the media-src directive nor the default-src directive of the Content Security Policy.
[Error] Blocked script execution in 'https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/gtk/loop5.webm' because the document's frame is sandboxed and the 'allow-scripts' permission is not set. (x26)
[Error] Blocked script execution in 'https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/gtk/loop5.webm' because the document's frame is sandboxed and the 'allow-scripts' permission is not set. (x50)

Just hovering over the play button causes the last error to occur, one error for each pixel I move the cursor.
Comment 9 Xabier Rodríguez Calvar 2019-12-13 01:38:08 PST
(In reply to Michael Catanzaro from comment #8)
> Lots of errors in the web inspector. Looks like some problems with the media
> controls JS:

Please file a different bug for this under [GTK] cause controls are just tangentially related to multimedia. Thx!
Comment 10 Philippe Normand 2019-12-13 03:33:38 PST
As I said in comment 5 this might not be a pure-controls bug. loop5.webm is detected as an audio file...