Video tag report H.264 level 3.2 (and above) is not supported (while it does)

RESOLVED WORKSFORME

Status

()

Core
Audio/Video: Playback
RESOLVED WORKSFORME
3 years ago
2 years ago

People

(Reporter: Artem Skoretskiy, Unassigned)

Tracking

36 Branch
x86_64
Linux
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(4 attachments)

(Reporter)

Description

3 years ago
Created attachment 8580668 [details]
testcase.html

User Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:36.0) Gecko/20100101 Firefox/36.0
Build ID: 20150306140254

Steps to reproduce:

Firefox does treat any H.264 encodings with Level higher than 3.1 as not supported.

E.g.:
- h.264 High Profile Level 4.1
- h.264 Main Profile Level 3.2
- h.264 Baseline Profile Level 3.2

At the same time Firefox in fact support it.

Also it is akward since Level 3.1. does not support Full HD -- so that you cannot play Full-HD without lying to Firefox about the video.

See testcase.

Test:

document.createElement('video').canPlayType('video/mp4; codecs="avc1.64001F, mp4a.40.2"') # => "probably" => supported
document.createElement('video').canPlayType('video/mp4; codecs="avc1.640029, mp4a.40.2"') # => "" => not supported


Actual results:

Videos with level > 3.1 are not supported.


Expected results:

Videos with level > 3.1 are supported (all levels or those supported by decoder)
(Reporter)

Updated

3 years ago
Summary: Video tag report H.265 level 32+ is not supported (while it do) → Video tag report H.264 level 32+ is not supported (while it do)
(Reporter)

Comment 1

3 years ago
Just for a reference -- on Chrome 41 everything is green except last line that is yellow ("maybe")
(Reporter)

Updated

3 years ago
Summary: Video tag report H.264 level 32+ is not supported (while it do) → Video tag report H.264 level 3.2 (and above) is not supported (while it does)

Comment 2

3 years ago
With FF36 on Win 7, all is green except the last line: http://i.imgur.com/oPWH9TZ.jpg

So probably an issue with FF on Linux.
Component: Untriaged → Video/Audio
Product: Firefox → Core
(Reporter)

Comment 3

3 years ago
Agree -- the same on OSX. So I'd say it is Linux-specific problem.

Still Firefox ships OpenH264 (and I have it enabled) so it should work out-of-box.
(Reporter)

Comment 4

3 years ago
Created attachment 8580687 [details]
test on Linux

Comment 5

3 years ago
Created attachment 8580692 [details]
FF36 @ Linux Mint 17.1

Seems to be an issue with several versions of FF on Ubuntu-flavored Linux installation I have. Looks 100% same as bug reporter's screenshot.

Comment 6

3 years ago
And with the Linux version of Firefox downloaded from the Mozilla's website?
Looks like microsoft got their constant value wrong.

note that level 5.2 is only supported in windows 8.1

https://msdn.microsoft.com/en-us/library/windows/desktop/dd318775%28v=vs.85%29.aspx
Flags: needinfo?(cpearce)
(In reply to Artem Skoretskiy from comment #1)
> Just for a reference -- on Chrome 41 everything is green except last line
> that is yellow ("maybe")

And chrome will report as maybe any mimetype as long as it *looks* right (e.g. is avcN.PPCCLL). So 4d4060 will report maybe, even when those do not even exist.
So hardly a meaningful comparison :)
(Reporter)

Comment 9

3 years ago
Checked using https://download.mozilla.org/?product=firefox-36.0.4-SSL&os=linux64&lang=en-US Ubuntu 14.04.2 LTS with fresh profile -- everything is red.
(Reporter)

Comment 10

3 years ago
Created attachment 8581518 [details]
FF36 binary + blank profile@Ubuntu 14.04
(Reporter)

Comment 11

3 years ago
(In reply to Jean-Yves Avenard [:jya] from comment #8)
> And chrome will report as maybe any mimetype as long as it *looks* right
> (e.g. is avcN.PPCCLL). So 4d4060 will report maybe, even when those do not
> even exist.
> So hardly a meaningful comparison :)

I think both false positive and false negative are bad. Though I'd prefer to receive false positive and get video.onerror rather than getting stuck on video.type.

If we could work it correctly -- Firefox will be better (or more precise) than Chrome (that is good :)
We have a mochitest that tests that we support level 4.0 here:
http://mxr.mozilla.org/mozilla-central/source/dom/media/test/test_can_play_type_mpeg.html?force=1#54

However GStreamer doesn't accurately tell us whether it supports levels > 3 on Linux, so we have to guess there.

Artem, you're only seeing this behaviour on Linux right?
Flags: needinfo?(cpearce)
(Reporter)

Comment 13

3 years ago
(In reply to Chris Pearce (:cpearce) from comment #12)
> Artem, you're only seeing this behaviour on Linux right?

Yes, so far I was able to reproduce it only on Linux.

Why do you mention gstreamer? Doesn't Firefox use openh264 plugin when it is installed and activated? I thought it was the reason for embedding it -- to have legal support for H.264 codec even if OS does not provide support for it.
Component: Audio/Video → Audio/Video: Playback
gstreamer is going in bug 1234092
Status: UNCONFIRMED → RESOLVED
Last Resolved: 2 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.