As a security precaution, we have turned on the setting "Require API key authentication for API requests" for everyone. If this has broken something, please contact bugzilla-admin@mozilla.org
Last Comment Bug 1057646 - HTML5 <video> support for H.264 via OpenH264
: HTML5 <video> support for H.264 via OpenH264
Status: RESOLVED WONTFIX
:
Product: Core
Classification: Components
Component: Audio/Video: Playback (show other bugs)
: unspecified
: x86_64 Linux
: -- normal with 9 votes (vote)
: ---
Assigned To: Nobody; OK to take it and work on it
:
: Anthony Jones (:kentuckyfriedtakahe, :k17e)
Mentors:
Depends on:
Blocks: 799318
  Show dependency treegraph
 
Reported: 2014-08-22 17:04 PDT by Jed Davis [:jld] {⏰UTC-7}
Modified: 2016-08-31 02:41 PDT (History)
27 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments

Description User image Jed Davis [:jld] {⏰UTC-7} 2014-08-22 17:04:10 PDT
We have an H.264 codec now, by way of OpenH264, and it's already being used for WebRTC.  It could be useful to allow using it for HTML5 <video>, as an alternative to the existing support for OS-provided media facilities (e.g., bug 886181 comment #7).
Comment 1 User image cajbir (:cajbir) 2014-08-22 21:00:44 PDT
We'd need a solution for the audio side of things (ie. AAC) for this to be useful I think.
Comment 2 User image Chris Pearce (:cpearce) 2014-08-22 22:21:58 PDT
OpenH264 also needs to support Main and High Profile H.264 before it's really useful for <video>.
Comment 3 User image Ethan Hugg [:ehugg] 2014-10-21 14:05:47 PDT
The OpenH264 project is working on including Main and High Profile, but adding support or licensing for AAC is not on the roadmap.
Comment 4 User image Dave Garrett 2015-04-17 10:24:42 PDT
(In reply to cajbir (:cajbir) from comment #1)
> We'd need a solution for the audio side of things (ie. AAC) for this to be
> useful I think.

Actually, it can be useful without that. Some services are re-encoding animated GIFs as audioless video using h.264. (e.g. Twitter)

Video decoding via OpenH264 could also be useful to provide a consistent codec implementation for video, even if a platform audio codec is needed. Opus or another free audio codec could also be used with h.264 video.
Comment 5 User image Anthony Jones (:kentuckyfriedtakahe, :k17e) 2015-09-27 19:36:03 PDT
Gecko has the support. We just need a reason to enable it.
Comment 6 User image Daniele "Mte90" Scasciafratte 2015-09-28 04:19:36 PDT
To improve the performance of videos?
To avoid problems on pc that don't have the codecs?

If OpenH264 is only for WebRTC is useless for the major people that use the browser for the mainly stuff like social networks and see videos.
Comment 7 User image Dave Garrett 2015-09-28 14:40:26 PDT
(In reply to Anthony Jones (:kentuckyfriedtakahe, :k17e) from comment #5)
> Gecko has the support. We just need a reason to enable it.

As far as I'm concerned, the primary reason to use OpenH264 for HTML5 <video> is that it would give a universal and _consistent_ codec to all platforms. The current support is patchy and buggy and reliant on whatever the system has. This is not a reliable system. It's impossible to test properly on all platforms, as real world systems are messy, and using a system codec means relying on that mess.
Comment 8 User image Anthony Jones (:kentuckyfriedtakahe, :k17e) 2015-09-28 19:01:39 PDT
(In reply to Daniele "Mte90" Scasciafratte from comment #6)
> To improve the performance of videos?

It doesn't do that.

> To avoid problems on pc that don't have the codecs?

Are you talking about machines that have an AAC decoder but no H.264 decoder. How common are those?

(In reply to Dave Garrett from comment #7)
> As far as I'm concerned, the primary reason to use OpenH264 for HTML5
> <video> is that it would give a universal and _consistent_ codec to all
> platforms. The current support is patchy and buggy and reliant on whatever
> the system has. This is not a reliable system. It's impossible to test
> properly on all platforms, as real world systems are messy, and using a
> system codec means relying on that mess.

OpenH264 doesn't get away from system decoders because you still need an AAC decoder. The advantage of system decoders is that they support hardware acceleration. The system software decoders are generally reliable.
Comment 9 User image Dave Garrett 2015-09-28 21:56:14 PDT
(In reply to Anthony Jones (:kentuckyfriedtakahe, :k17e) from comment #8)
> OpenH264 doesn't get away from system decoders because you still need an AAC
> decoder. The advantage of system decoders is that they support hardware
> acceleration. The system software decoders are generally reliable.

h.264 is unfortunately ubiquitous for video; AAC, on the other hand, does not have to be used. Opus is available for free to all and is currently the best lossy audio codec in existence for virtually all use-cases. There isn't a video codec that can do this, yet.

The system decoders are reliable until they aren't. At minimum, this should be available for when the system ones break.

Also, why doesn't OpenH264 support hardware acceleration? That seems like something worth doing (at least, of course, for mainstream hardware).
Comment 10 User image crivera99 2015-11-11 20:59:41 PST
Excuse my ignorance but Twitter states "We currently support MP4 and MOV video formats on mobile apps.

On the web, we support the MP4 video format with H264 format with AAC audio. You can upload videos up to 512MB, however you will be prompted to edit videos to 30 seconds or less in length."

Is the lack of ACC audio support the reason video will not play in firefox? If that is so is there not a way to get the video at least to play?
Comment 11 User image Anthony Jones (:kentuckyfriedtakahe, :k17e) 2015-11-15 14:31:58 PST
(In reply to crivera99 from comment #10)
> Is the lack of ACC audio support the reason video will not play in firefox?

What platform are you referring to? Which version of Firefox?

> If that is so is there not a way to get the video at least to play?

Which video?
Comment 12 User image crivera99 2015-11-16 02:13:28 PST
I have windows xp, version 42 I guess they are not supporting XP anymore and that is the problem. Twitter video not working.
Comment 13 User image Dave Garrett 2015-11-16 12:26:27 PST
(In reply to crivera99 from comment #12)
> I have windows xp, version 42 I guess they are not supporting XP anymore and
> that is the problem. Twitter video not working.

This bug is about adding a new feature, not existing video playback support. However, this new feature would help you, as I don't think we ever added support for h.264 <video> on WinXP. I think it's Vista and up due to WinXP lacking the needed support, itself. That said, supporting WinXP isn't a sufficient reason to do anything anymore, by itself, at least.
Comment 14 User image Anthony Jones (:kentuckyfriedtakahe, :k17e) 2015-11-30 20:09:29 PST
(In reply to Dave Garrett from comment #13)
> This bug is about adding a new feature, not existing video playback support.
> However, this new feature would help you, as I don't think we ever added
> support for h.264 <video> on WinXP. I think it's Vista and up due to WinXP
> lacking the needed support, itself. That said, supporting WinXP isn't a
> sufficient reason to do anything anymore, by itself, at least.

Supporting MP4 playback on Windows requires both H.264 and AAC support to get video and audio. We are looking for a solution for Windows XP.
Comment 15 User image Yorgos 2016-01-21 09:47:01 PST
May this topic be related with
https://bugzilla.mozilla.org/show_bug.cgi?id=1230785

?
Comment 16 User image Morris 2016-07-01 02:40:20 PDT Comment hidden (spam)
Comment 17 User image Morris 2016-07-01 02:40:32 PDT Comment hidden (spam)
Comment 18 User image Anthony Jones (:kentuckyfriedtakahe, :k17e) 2016-08-30 16:18:54 PDT
OpenH264 isn't useful for video playback so I'm going to close this bug.
Comment 19 User image Yorgos 2016-08-31 02:41:42 PDT
may it be useful in case like this (desperate) one?
https://bugzilla.mozilla.org/show_bug.cgi?id=1222272#c86

Note You need to log in before you can comment on or make changes to this bug.