HTML5 Video - Wikipedia

HTML element
HTML
  • Dynamic HTML
  • HTML5
    • article
    • audio
    • canvas
    • video
  • XHTML
    • Basic
    • Mobile Profile
  • HTML element
    • meta
    • div and span
    • blink
    • marquee
  • HTML attribute
    • alt attribute
  • HTML frame
  • HTML editor
  • Character encodings
    • named characters
    • Unicode
  • Language code
  • Document Object Model
  • Browser Object Model
  • Style sheets
    • CSS
  • Font family
  • Web colors
  • JavaScript
    • WebCL
    • HTMX
  • Web3D
    • WebGL
    • WebGPU
    • WebXR
  • W3C
    • Validator
  • WHATWG
  • Quirks mode
  • Web storage
  • Rendering engine
Comparisons
  • Document markup languages
  • Comparison of browser engines
  • v
  • t
  • e

HTML video is a subject of the HTML specification as the standard way of playing video via the web. Introduced in HTML5,[1] it is designed to partially replace the object element and the previous de facto standard of using the proprietary Adobe Flash plugin, though early adoption was hampered by lack of agreement as to which video coding formats and audio coding formats should be supported in web browsers. As of 2020, HTML video is the only widely supported video playback technology in modern browsers, with the Flash plugin being phased out.

History of <video> element

[edit]

The <video> element started being discussed by the WHATWG in October 2006.[2] The <video> element was proposed by Opera Software in February 2007.[3] Opera also released a preview build that was showcased the same day,[4][5] and a manifesto that called for video to become a first-class citizen of the web.[6]

<video> element examples

[edit]

The following HTML code fragment will embed a WebM video into a web page.

<video src="movie.webm" poster="movie.jpg" controls> This is fallback content to display for user agents that do not support the video tag. </video>

The "controls" attribute enables the browser's own user interface for controlling playback. Alternatively, playback can be controlled with JavaScript, which the web designer can use to create a custom user interface. The optional "poster" attribute specifies an image to show in the video's place before playback is started. Its purpose is to be representative of the video.

Multiple sources

[edit]

Video format support varies among browsers (see below), so a web page can provide video in multiple formats. For other features, browser sniffing is used sometimes, which may be error-prone: any web developer's knowledge of browsers will inevitably be incomplete or not up-to-date. The browser in question "knows best" what formats it can use. The "video" element supports fallback through specification of multiple sources. Using any number of <source> elements, as shown below, the browser will choose automatically which file to download. Alternatively, the JavaScript canPlayType() function can be used to achieve the same. The "type" attribute specifies the MIME type and possibly a list of codecs, which helps the browser to determine whether it can decode the file without beginning to download it. The MIME type denotes the container format of the file, and the container format defines the interpretation of the codec string.[7]

<video poster="poster.jpg" controls> <source src="av1.mp4" type='video/mp4; codecs="av01.0.00M.08, opus"'> <source src="avc.mp4" type='video/mp4; codecs="avc1.4D401E, mp4a.40.2"'> <source src="vp9.webm" type='video/webm; codecs="vp9.0, opus"'> <source src="theora.ogv" type='video/ogg; codecs="theora, vorbis"'> <p>This is fallback content to display for user agents that do not support the video tag.</p> </video>

Supported video and audio formats

[edit] See also: Use of Ogg formats in HTML5

The HTML specification does not specify which video and audio formats browsers should support. User agents are free to support any video formats they feel are appropriate, but content authors cannot assume that any video will be accessible by all complying user agents, since user agents have no minimal set of video and audio formats to support.

The HTML5 Working Group considered it desirable to specify at least one video format which all user agents (browsers) should support. The ideal format in this regard would:

  • Have good compression, good image quality, and low decode processor use.
  • Be royalty-free.
  • In addition to software decoders, a hardware video decoder should exist for the format, as many embedded processors do not have the performance to decode video.

Initially, Ogg Theora was the recommended standard video format in HTML5, because it was not affected by any known patents. But on 10 December 2007, the HTML5 specification was updated,[8] replacing the reference to concrete formats:

User agents should support Theora video and Vorbis audio, as well as the Ogg container format.

with a placeholder:[9]

It would be helpful for interoperability if all browsers could support the same codecs. However, there are no known codecs that satisfy all the current players: we need a codec that is known to not require per-unit or per-distributor licensing, that is compatible with the open source development model, that is of sufficient quality as to be usable, and that is not an additional submarine patent risk for large companies. This is an ongoing issue and this section will be updated once more information is available.[10]

The result was a polarisation of HTML video between industry-standard, ISO-defined but patent-encumbered formats, and open formats. The new AV1 format by Alliance for Open Media aims to be both industry standard, royalty-free, and open, and has wide industry support.

Free formats

[edit] See also: Theora and WebM

Although Theora is not affected by known non-free patents, Apple[11] has expressed concern about unknown patents that might affect it, whose owners might be waiting for a corporation with extensive financial resources to use the format before suing.[12][13] Formats like H.264 might also be subject to unknown patents in principle, but they have been deployed much more widely and so it is presumed that any patent-holders would have already made themselves known. Apple has also opposed requiring Ogg format support in the HTML standard (even as a "should" requirement) on the grounds that some devices might support other formats much more easily, and that HTML has historically not required particular formats for anything.[13]

Some web developers criticized the removal of the Ogg formats from the specification.[14] A follow-up discussion also occurred on the W3C questions and answers blog.[15]

Mozilla and Opera support only the open formats of Theora and WebM. Google stated its intention to remove support for H.264 in 2011, specifically for the HTML video tag.[16] Although it has been removed from Chromium, as of January 2021[update] it has yet to be removed from Google Chrome ten years later.[17][18]

MPEG-DASH Support via the Media Source Extensions (MSE)

[edit] See also: Dynamic Adaptive Streaming over HTTP

The adaptive bitrate streaming standard MPEG-DASH can be used in Web browsers via the Media Source Extensions (MSE)[19] and JavaScript-based DASH players. Such players are, e.g., the open-source project dash.js[19] of the DASH Industry Forum, but there are also products such as the HTML5 Video Player of Bitmovin[20] (using HTML with JavaScript, but also a Flash-based DASH players for legacy Web browsers not supporting the MSE).

Google's purchase of On2

[edit]

Google's acquisition of On2 in 2010 resulted in its acquisition of the VP8 video format. Google has provided a royalty-free license to use VP8.[21] Google also started WebM, which combines the standardized open source VP8 video codec with Vorbis audio in a Matroska based container. The opening of VP8 was welcomed by the Free Software Foundation.[22]

When Google announced in January 2011 that it would end native support of H.264 in Chrome,[23] criticism came from many quarters including Peter Bright of Ars Technica[24] and Microsoft web evangelist Tim Sneath, who compared Google's move to declaring Esperanto the official language of the United States.[25] However, Haavard Moen of Opera Software strongly criticized the Ars Technica article[26] and Google responded to the reaction by clarifying its intent to promote WebM in its products on the basis of openness.[16]

After the launch of WebM, Mozilla and Opera have called for the inclusion of VP8 in HTML.[27]

On 7 March 2013, Google Inc. and MPEG LA, LLC announced agreements covering techniques that "may be essential" to VP8, with Google receiving a license from MPEG LA and 11 patent holders, and MPEG LA ending its efforts to form a VP8 patent pool.[28][29][30][31]

In 2012, VP9 was released by Google as a successor to VP8, also open and royalty free.

At the end of 2017 the new AV1 format developed by the Alliance for Open Media (AOMedia) as the evolution of VP9 has reached the feature freeze, and the bitstream freeze is expected for January 2018. Firefox nightly builds already include support for AV1.[32]

Non-free formats

[edit] See also: H.264/MPEG-4 AVC

H.264/MPEG-4 AVC is widely used, and has good speed, compression, hardware decoders, and video quality, but is patent-encumbered.[33] Users of H.264 need licenses either from the individual patent holders, or from the MPEG LA, a group of patent holders including Microsoft and Apple, except for some Internet broadcast video uses.[34] H.264 is usually used in the MP4 container format, together with Advanced Audio Coding (AAC) audio. AAC is also covered by patents in itself, so users of MP4 will have to license both H.264 and AAC.

In June 2009, the WHATWG concluded that no existing format was suitable as a specified requirement.[35]

Apple still only supports H.264, but Microsoft now supports VP9 and WebM, and has pledged support for AV1.

Cisco makes a licensed H.264 binary module available for free

[edit] Main article: OpenH264

On 30 October 2013, Cisco announced that it was making a binary H.264 module available for download. Cisco will pay the costs of patent licensing for those binary modules when downloaded by the using software while it is being installed, making H.264 free to use in that specific case.[36]

In the announcement, Cisco cited its desire of furthering the use of the WebRTC project as the reason, since WebRTC's video chat feature will benefit from having a video format supported in all browsers.[37] The H.264 module will be available on "all popular or feasibly supportable platforms, which can be loaded into any application".[38]

Cisco is also planning to publish source code for those modules under BSD license, but without paying the royalties,[36] so the code will practically be free software only in countries without H.264 software patents, which has already been true about other existing implementations.

Also on 30 October 2013, Mozilla's Brendan Eich announced that Firefox would automatically download Cisco's H.264 module when needed by default. He also noted that the binary module is not a perfect solution, since users do not have full free software rights to "modify, recompile, and redistribute without license agreements or fees". Thus Xiph and Mozilla continue the development of Daala.[38][39]

OpenH264 only supports the baseline profile of H.264, and does not by itself address the need for an AAC decoder. Therefore, it is not considered sufficient for typical MP4 web video, which is typically in the high profile with AAC audio.[40][41][42] However, for use in WebRTC, the omission of AAC was justified in the release announcement: "the standards bodies have aligned on Opus and G.711 as the common audio codecs for WebRTC".[37] There is doubt as to whether a capped global licensing of AAC, like Cisco's for H.264, is feasible after AAC's licensing bureau removed the price cap shortly after the release of OpenH264.[43]

Browser support

[edit]

This table shows which video formats are likely to be supported by a given user agent. Most of the browsers listed here use a multimedia framework for decoding and display of video, instead of incorporating such software components. It is not generally possible to tell the set of formats supported by a multimedia framework without querying it, because that depends on the operating system and third party codecs.[44] In these cases, video format support is an attribute of the framework, not the browser (or its layout engine), assuming the browser properly queries its multimedia framework before rejecting unknown video formats. In some cases, the support listed here is not a function of either codecs available within the operating system's underlying media framework, or of codec capabilities built into the browser, but rather could be by a browser add-on that might, for example, bypass the browser's normal HTML parsing of the <video> tag to embed a plug-in based video player.

Note that a video file normally contains both video and audio content, each encoded in its own format. The browser has to support both the video and audio formats. See HTML audio for a table of which audio formats are supported by each browser.

The video format can be specified by MIME type in HTML (see example). MIME types are used for querying multimedia frameworks for supported formats.[45]

Of these browsers, only Firefox and Opera employ libraries for built-in decoding. In practice, Internet Explorer and Safari can also guarantee certain format support, because their manufacturers also make their multimedia frameworks. At the other end of the scale, Konqueror has identical format support to Internet Explorer when run on Windows, and Safari when run on Mac, but the selected support here for Konqueror is the typical for Linux, where Konqueror has most of its users. In general, the format support of browsers is much dictated by conflicting interests of vendors, specifically that Media Foundation and QuickTime support commercial standards, whereas GStreamer and Phonon cannot legally support other than free formats by default on the free operating systems that they are intended for.[46]

Status of video format support in each web browser
Browser Operating System Theora (Ogg) H.264 (MP4) HEVC (MP4) VP8 (WebM) VP9 (WebM) AV1 (WebM)
Android browser Android Since 2.3[47] Since 3.0[47] Since 5.0[47] Since 2.3[47] Since 4.4[47] Since 10
Chromium Unix-like and Windows Since r18297[48] Via FFmpeg[49][50] No[51] Since r47759[52] Since r172738[53] Yes
Google Chrome Unix-like, Android, macOS, and Windows Since 3.0[54][55] Since 3.0[55][a] Since 105 (software decoding; needs OS-level codecs)

Since 107 (hardware decoding; needs hardware decoder)

[57][58]
Since 6.0[59][60] Since 29.0[b] Since 70[63]
Internet Explorer Windows Via OpenCodecs Since 9.0[64] No[65] Via OpenCodecs No No
Windows Phone No Since 9.0[66] No
Windows RT Since 10.0[66]
Microsoft Edge Unix-like, macOS and Windows

(Chromium)

Since v79[67][68] Since v79 (only browser to support DRM PlayReady)[67][69] No[65] Since v79[67][70] Since v79[67][70] Since v79[67]
Windows 10 (Legacy EdgeHTML) Since 17.0 (with Web Media Extensions)[71][72][73] Since 12.0[74] Needs hardware decoder[c] Since 17.0 (supports <video> tag with Web Media Extensions and VP9 Video Extensions)[72] Only enabled by default if hardware decoder present[77]

Since 17.0 (supports <video> tag with Web Media Extensions and VP9 Video Extensions)[71][72][73]

Since 18.0 (with AV1 Video Extension)[78]
Windows 10 Mobile No Since 13.0[79] Since 15.0 (only via MSE)[80] Since 14.0 (only via MSE)[81] No
Konqueror Unix-like and Windows Needs OS-level codecs[d]
Mozilla Firefox Windows 7+ Since 3.5[82] Since 21.0[e] No[65] Since 4.0[85] Since 28.0[86][87] Since 65.0 (64-bit)[88]Since 66.0 (32-bit)[89]
Windows Vista Since 22.0[90]
Windows XP and N editions Since 46.0[91]
Linux 26.0 (via GStreamer)[f]43.0 (via FFmpeg)[94] Since 67.0[citation needed]
Android Since 17.0[95] in Nightly[citation needed]
macOS Since 34.0[96] Since 66.0[89]
Firefox OS Since 1.1[97] No
Opera Mobile Android, iOS, Symbian, and Windows Mobile Since 13.0 Since 11.50 No[98] Since 15.0 Since 16.0 since 57.0[63]
Opera macOS, Windows Since 10.50[99] Since 24.0[100] Since 10.60[101][102] Yes since 57.0[63]
Linux Needs codec library[g]
Safari iOS No Since 3.1[104] Since 11[105] Since 17.4 (fully supported)[106]Since 12.1 (only via WebRTC)[107] Since 17.4 (fully supported)[106]Since 14 (only via WebRTC)[108] Since 17.0 (needs hardware decoder; needs MP4 container[citation needed])[109][h]
macOS Via Xiph QuickTime Components (macOS 10.11 and earlier) Since 14.1[110] Since 14.1[110]
GNOME Web Linux and BSD Needs OS-level codecs[i]

Values

[edit]

These indicate the level of support for the given item in each engine. By default, the most recent version of the engine is implied. However, a specific version number can be listed; when this indicates full support, it's the initial version of the engine fully supporting the item.

Legend
Value Meaning
Yes Fully supported
No Has never been supported
Partial Only some values are supported
Incorrect Not implemented correctly in all cases
Experimental May be incomplete or buggy
Nightly build Currently in development; full support is expected
Depends Only supported for the specified conditions
Dropped No longer supported
Notes
  1. ^ On 11 January 2011 the removal of support for H.264 was announced on Chromium Blog.[56] As of 7 November 2016[update] neither actual support was removed, nor the change to this plan was announced.
  2. ^ VP9 support in 25, turned off by default.[61] Enabled by default in version 29.[62]
  3. ^ Available if the device has hardware support for HEVC.[75] No software decoding support was included because "HEVC is very computationally complex, this will provide a more consistent experience."[76]
  4. ^ Any format supported by Phonon backend. Available Phonon backends include DirectShow, QuickTime, GStreamer and xine; backends using MPlayer and VLC are in development.
  5. ^ As of version 20, prefed off by default.[83] Enabled by default beginning in version 21.[84]
  6. ^ Disabled by default until version 26.[92] Also, depends on the codec on the system.[93]
  7. ^ A later version of libffmpeg.so has to be installed.[103]
  8. ^ The iPhone 15 Pro, iPhone 15 Pro Max, and any Mac with an Apple M3 SoC support AV1 hardware decoding.
  9. ^ Any format supported by GStreamer on Webkit/GTK+.[111] The support for Ogg Theora, WebM and h.264 formats is included with base, good, and bad plugins respectively.[112]

Transparent video

[edit]

Transparent video, that is video with an alpha channel, has multiple design advantages:[113]

  • As it has no burnt-in background color / pattern / motif, you can change the background and/or neighboring objects in a web page any time later without the need to re-generate the video to fit into its surroundings properly, which was the far less flexible technique so far.
  • You can very flexibly combine transparent videos with other elements (text, graphics, other videos or dynamically rendered content such as SVG or canvas) to achieve very dynamic layering effects.
  • It opens a whole lot of possibilities also in terms of responsive web design.

Web browser support for videos with alpha channel

[edit]
  • Chrome supports VP8 and VP9 encoded videos with an alpha channel served in a WebM container, since version 31 in 2013-07.[114]
  • Safari supports HEVC encoded videos with an alpha channel served in a MP4 container,[115] since iOS 13 (2019-09) and macOS Catalina (2019-10).
  • There are some other proprietary polyfill / legacy solutions with a JavaScript based video player playing back a video which upon upload to the SaaS server got converted into a proprietary video format.

Earlier solutions

[edit]
  • Before the HTML5 era the only way to play back transparent video was by the help of Adobe Flash Player[116] and using the transparent [117] flag in its embedding code.

Digital rights management (Encrypted Media Extensions)

[edit] Main article: Encrypted Media Extensions

HTML has support for digital rights management (DRM, restricting how content can be used) via the Encrypted Media Extensions (EME). The addition of DRM is controversial because it allows restricting users' freedom to use media restricted by DRM, even where fair use gives users the legal right to do so.[118] A main argument in W3C's approval of EME was that the video content would otherwise be delivered in plugins and apps, and not in the web browser.[119]

In 2013 Netflix added support for HTML video using EME, beside their old delivery method using a Silverlight plugin (also with DRM).[120]

Usage

[edit]

In 2010, in the wake of Apple iPad launch and after Steve Jobs announced that Apple mobile devices would not support Flash, a number of high-profile sites began to serve H.264 HTML video instead of Adobe Flash for user-agents identifying as iPad.[121] HTML video was not as widespread as Flash videos, though there were rollouts of experimental HTML-based video players from DailyMotion (using Ogg Theora and Vorbis format),[122] YouTube (using the H.264 and WebM formats),[123] and Vimeo (using the H.264 format).[124]

Support for HTML video has been steadily increasing. In June 2013, Netflix added support for HTML video.[125] In January 2015, YouTube switched to using HTML video instead of Flash by default.[126] In December 2015, Facebook switched from Flash to HTML video for all video content.[127]

As of 2016, Flash is still widely installed on desktops, while generally not being supported on mobile devices such as smartphones.[128] The Flash plugin is widely assumed, including by Adobe,[128][129] to be destined to be phased out,[130][131] which will leave HTML video as the only widely supported method to play video on the World Wide Web. Chrome,[132][133] Firefox,[134] Safari,[135] and Edge,[136] have plans to make almost all flash content click to play in 2017. The only major browser which does not have announced plans to deprecate Flash is Internet Explorer.[137] Adobe announced on 25 July 2017 that they would be permanently ending development of Flash in 2020.[138]

See also

[edit]
  • HTML audio
  • Comparison of HTML5 and Flash

References

[edit]
  1. ^ "The video element". HTML5: A vocabulary and associated APIs for HTML and XHTML. World Wide Web Consortium. 24 June 2010. Archived from the original on 13 August 2010. Retrieved 27 September 2010. A video element is used for playing videos or movies.
  2. ^ "[whatwg] How not to fix HTML from Charles Iliya Krempeaux on 2006-10-30 (whatwg@whatwg.org from October 2006)". lists.w3.org. Retrieved 29 August 2022.
  3. ^ van Kesteren, Anne (28 February 2007). "[whatwg] <video> element proposal". What Working Group (Mailing list). Retrieved 10 April 2010.
  4. ^ "Browser War: Episode II – Attack of the DOMs". Archived from the original on 23 February 2013. Retrieved 10 April 2012.
  5. ^ "SV Web Builders Event – World Premier of Opera with builtin video support". 1 March 2007. Retrieved 10 April 2012.
  6. ^ "A Call for Video on the Web". Archived from the original on 26 April 2012. Retrieved 10 April 2012.
  7. ^ "The "codecs" parameter in common media types". Retrieved 14 July 2020.
  8. ^ Hickson, Ian (10 December 2007). "Video codec requirements changed". What WG (Mailing list). Archived from the original on 19 February 2012. Retrieved 25 February 2008.
  9. ^ "(X)HTML5 Tracking". HTML5. Archived from the original on 26 July 2011. Retrieved 23 June 2009.
  10. ^ Amador, Manuel (11 December 2011). "Removal of Ogg is *preposterous*". WHATWG (Mailing list). Archived from the original on 21 August 2008. Retrieved 25 August 2009.
  11. ^ Metz, Cade (30 April 2010). "Steve Jobs: mystery patent pool to attack Ogg Theora". The Register. Retrieved 9 July 2011.
  12. ^ Hickson, Ian (11 December 2007). "Re: Removal of Ogg is *preposterous*". WHATWG (Mailing list). Archived from the original on 21 August 2008. Retrieved 25 February 2008.
  13. ^ a b Stachowiak, Maciej (21 March 2007). "Codecs (was Re: Apple Proposal for Timed Media Elements)". WHATWG (Mailing list).
  14. ^ "[whatwg] Removal of Ogg is *preposterous*". WHATWG (Mailing list). 11 December 2007. Archived from the original on 21 August 2008. Retrieved 25 August 2009.
  15. ^ Connolly, Dan (18 December 2007). "When will HTML 5 support <video>? Sooner if you help". W3C. Retrieved 23 June 2009.
  16. ^ a b Jazayeri, Michael 'Mike' (14 January 2011). "More about the Chrome HTML Video Codec Change". Chromium blog.
  17. ^ Shankland, Stephen (14 March 2012). "Mozilla execs capitulate in H.264 Web-video war". CNET.
  18. ^ Hoffman, Chris (9 September 2015). "Why YouTube in Chrome (and Firefox) is Draining Your Laptop's Battery and How to Fix It". Howtogeek.
  19. ^ a b "Media Source Extensions". 26 July 2022.
  20. ^ "Adaptive Streaming HTML5 Player from Bitmovin". 20 April 2022.
  21. ^ "Additional IP Rights Grant (Patents)".
  22. ^ Lee, Matt (19 May 2010). "Free Software Foundation statement on WebM and VP8". FSF.
  23. ^ Jazayeri, Michael 'Mike' (11 January 2011). "HTML Video Codec Support in Chrome". The Chromium Blog.
  24. ^ Bright, Peter (12 January 2011). "Google's dropping H.264 from Chrome a step backward for openness". Ars Technica.
  25. ^ Sneath, Tim (11 January 2011). "An Open Letter from the President of the United States of Google". MSDN blogs.
  26. ^ Moen, Haavard K (13 January 2011). "Is the removal of H.264 from Chrome a step backward for openness?". My Opera.
  27. ^ Metz, Cade (28 May 2010). "Mozilla and Opera call for Google open codec in HTML5 spec". The Register.
  28. ^ djwm (7 March 2013). "Google and MPEG LA make a deal over VP8 codec – Update". The H Open. Heise Media UK. Retrieved 3 April 2013.
  29. ^ "Archived copy" (PDF). Archived from the original (PDF) on 5 March 2016. Retrieved 3 April 2013.{{cite web}}: CS1 maint: archived copy as title (link)
  30. ^ "VP8 and MPEG LA". WebM Project blog. 7 March 2013. Retrieved 3 April 2013.
  31. ^ "Patent clouds remain over VP8: Google points to FRAND option, Nokia alleges infringement in court". FOSS Patents. 8 March 2013.
  32. ^ Shankland, Stephen (28 November 2017). "Firefox now lets you try streaming-video tech that could be better than Apple's". CNET. Retrieved 25 December 2017.
  33. ^ "AVC/H.264 Patent List" (PDF). MPEG LA. 1 February 2010. Archived from the original (PDF) on 14 May 2015. Retrieved 13 April 2010.
  34. ^ AVC/H.264 Licensors, MPEG LA, archived from the original on 30 May 2015, retrieved 13 April 2010
  35. ^ Hickson, Ian (29 June 2009). "Codecs for <audio> and <video>". WHATWG (Mailing list).
  36. ^ a b "OpenH264".
  37. ^ a b "Open-Sourced H.264 Removes Barriers to WebRTC". Cisco. 30 October 2013. Archived from the original on 6 July 2015. Retrieved 30 October 2013.
  38. ^ a b Brendan Eich (30 October 2013). "Cisco's H.264 Good News". Brendan Eich's blog.
  39. ^ Monty Montgomery. "Comments on Cisco, Mozilla, and H.264". Monty Montgomery blog. Archived from the original on 19 May 2015. Retrieved 30 October 2013.
  40. ^ Gal, Andreas (14 October 2014). "OpenH264 now in Firefox". Retrieved 25 February 2015.
  41. ^ "MediaSourceExtensions (mozilla wiki)". mozilla. Retrieved 25 February 2015.
  42. ^ "Support H.264/AAC/MP3 video/audio playback on desktop Firefox". mozilla. Retrieved 25 February 2015.
  43. ^ xiphmont. "It's not a strawman after it comes true". Archived from the original on 21 April 2017.
  44. ^ "Phonon documentation of backends", Qt, Nokia, archived from the original on 4 March 2016, retrieved 3 June 2011
  45. ^ "Phonon documentation of querying", Qt, Nokia, archived from the original on 4 March 2016, retrieved 3 June 2011
  46. ^ GNU General Public License Version 3, Free Software Foundation, 29 June 2007, retrieved 27 April 2013
  47. ^ a b c d e "Android Core media format and codec support". Retrieved 18 December 2015.
  48. ^ Issue 4363: [HTML5-Video] Enable HTML5 video/audio elements, retrieved 10 September 2010
  49. ^ enable proprietary_codecs h.264, retrieved 30 April 2016
  50. ^ Chromium does not support H.264, 9 June 2015, retrieved 30 April 2016
  51. ^ Audio/Video – The Chromium Projects, retrieved 21 March 2016
  52. ^ "Issue 2093007: Chromium side changes for enabling VP8 and WebM support", Code review, retrieved 10 September 2010
  53. ^ "[chrome] Revision 172738".
  54. ^ "Google Chrome support Theora and Vorbis", Code, 20 May 2010
  55. ^ a b "Chrome 3.0 supportera la balise vidéo du HTML 5" [Google Chrome 3.0 will support <video> tag]. CNET France (in French).
  56. ^ Mike, Jazayeri (11 January 2011). "Chromium Blog: HTML Video Code Support in Chrome". The Chromium Blog. Retrieved 22 April 2012.
  57. ^ "Google Chrome Plays HEVC: What Does it Mean? - Streaming Media".
  58. ^ "Google Quietly Added HEVC Support in Chrome - Bitmovin".
  59. ^ Bankoski, Jim (19 May 2010). "WebM and VP8 land in Chromium". Chromium Blog.
  60. ^ Kersey, Jason (3 June 2010), "Dev Channel Update", Chrome Releases, retrieved 1 July 2010
  61. ^ Lucian Parfeni (28 December 2012). "Chrome Adds Support for the Next-Generation VP9 Video Codec and Mozilla's Opus Audio". Softpedia.
  62. ^ Lucian Parfeni (17 June 2013). "Chrome Now Supports Google's Next-Gen VP9 Video Codec by Default". Softpedia.
  63. ^ a b c "AV1 Decode". Chrome Platform Status. Retrieved 4 September 2018.
  64. ^ McCracken, Harry (16 March 2010), Microsoft Previews the Revamped Internet Explorer 9 Platform, Technologizer
  65. ^ a b c Jan Ozer (5 November 2014). "Apple Supports H.265, But So Far Only in FaceTime on an iPhone 6".
  66. ^ a b HTML5 Video Support in IE9 Mobile, Microsoft, 13 October 2011, retrieved 11 March 2014
  67. ^ a b c d e Blog, Microsoft Edge (15 January 2020). "Upgrading to the new Microsoft Edge". Microsoft Edge Blog. Retrieved 19 March 2021.
  68. ^ "Can I use... Support tables for HTML5, CSS3, etc". caniuse.com. Retrieved 19 March 2021.
  69. ^ "Can I use... Support tables for HTML5, CSS3, etc". caniuse.com. Retrieved 19 March 2021.
  70. ^ a b "Can I use... Support tables for HTML5, CSS3, etc". caniuse.com. Retrieved 19 March 2021.
  71. ^ a b "Introducing the Web Media Extension Package with OGG Vorbis and Theora support for Microsoft Edge". Microsoft Edge Dev Blog. Microsoft. 5 December 2017.
  72. ^ a b c "HTML5test - How well does your browser support HTML5?".
  73. ^ a b "Redstone 4 Brings Better WebM Support in Edge". 11 April 2018.
  74. ^ "HTML5test – How well does your browser support HTML5?".
  75. ^ "HEVC Support".
  76. ^ "Windows 10 HEVC playback – Yes or No?".
  77. ^ "The status of VP9 Video Playback in Microsoft Edge is Shipped - Microsoft Edge Development". Archived from the original on 7 November 2017. Retrieved 21 September 2017.
  78. ^ "Add AV1 Codec Support to Windows 10 – Tutorials". Ten Forums.
  79. ^ "HTML5test – How well does your browser support HTML5?".
  80. ^ "Introducing WebRTC 1.0 and interoperable real-time communications in Microsoft Edge". February 2017.
  81. ^ "WebM, VP9 and Opus Support in Microsoft Edge". Microsoft Edge Dev Blog. Microsoft. 18 April 2016.
  82. ^ "Mozilla Firefox 3.5 Release Notes". Mozilla. 30 June 2009.
  83. ^ Bug 799315 – Windows Media Foundation backend for media playback, Mozilla, retrieved 21 December 2012
  84. ^ Bug 837859 – Enable WMF backend, Mozilla, retrieved 5 April 2013
  85. ^ "Mozilla Firefox 4.0 Release Notes". Mozilla. 22 March 2011.
  86. ^ [Phoronix] Mozilla Firefox Enables VP9 Video Codec By Default, Phoronix, retrieved 8 December 2013
  87. ^ "Firefox – Notes (28.0)".
  88. ^ "Firefox 65.0, See All New Features, Updates and Fixes". mozilla.org. Mozilla Foundation. 29 January 2019.
  89. ^ a b "Firefox 66.0, See All New Features, Updates and Fixes". mozilla.org. Mozilla Foundation. 19 March 2019.
  90. ^ Bug 825153 – Add support for Windows Vista WMF and prepend the system32 directory path to dll names, Mozilla, retrieved 28 March 2013
  91. ^ Bug 1250766 – Re-enable using Adobe GMP for decoding when system H.264/AAC codecs not available, Mozilla, retrieved 30 April 2016
  92. ^ Bug 886181 – Pref on gstreamer backend, Mozilla, retrieved 21 September 2013
  93. ^ Bug 794282 – Enable GStreamer in official builds, Mozilla, retrieved 23 June 2013
  94. ^ Bug 1207429 – Enable FFMpeg by default, Mozilla, retrieved 30 October 2015
  95. ^ "Mozilla ships Firefox with H.264 support on Android". Ars Technica. 30 November 2012.
  96. ^ Bug 1070703 – Add mp4 support in 10.6 and 10.7 on Aurora, Mozilla, retrieved 2 October 2014
  97. ^ "H.264 support in Firefox".
  98. ^ Ozer, Jan (26 November 2014). "The Case for VP9 – Streaming Media Magazine".
  99. ^ Jägenstedt, Philip (31 December 2009), "(re-)Introducing <video>" (official blog), Core developers, Opera, retrieved 6 February 2010
  100. ^ "Changelog for 24 – Opera Desktop".
  101. ^ Lie, Håkon Wium (19 May 2010), Welcome, WebM <video>!, Opera, archived from the original on 21 March 2011
  102. ^ Mills, Chris (19 May 2010), Opera supports the WebM video format, Opera
  103. ^ FFMPEG installation instructions on orums.opera.com
  104. ^ "Media formats supported by the HTML audio and video elements". Mozilla Developer Network. Mozilla.
  105. ^ Martin Smole (6 June 2017). "WWDC17 – HEVC with HLS – Apple just announced a feature that we support out of the box". Bitmovin.
  106. ^ a b "WebKit Features in Safari 17.4 | WebKit". 5 March 2024.
  107. ^ "Safari 12.1 Release Notes | Apple Developer Documentation".
  108. ^ " "Release Notes for Safari Technology Preview 110". 16 July 2020.
  109. ^ "WebKit Features in Safari 17.0". 18 September 2023.
  110. ^ a b "Safari New WebKit Features in Safari 14.1". 29 April 2021.
  111. ^ Persch, Christian (1 April 2008), "The Future of Epiphany" (announcement), epiphany mailing list-list
  112. ^ "Overview of available plug-ins", GStreamer, archived from the original on 12 December 2014, retrieved 4 July 2012
  113. ^ "How to use transparent videos on the web in 2022 - Rotato". Rotato 3D Mockups. Retrieved 20 October 2022. This blog showcases various use cases of transparent videos in web design, besides advertising their own software product, Rotato.
  114. ^ "Alpha transparency in Chrome video". Chrome Developers. July 2013. Retrieved 20 October 2022. Chrome 31 now supports video alpha transparency in WebM. In other words, Chrome takes the alpha channel into account when playing green screen videos encoded to WebM (VP8 and VP9) with an alpha channel. This means you can play videos with transparent backgrounds: over web pages, images or even other videos.
  115. ^ "HEVC Video with Alpha - WWDC19 - Videos". Apple Developer. Retrieved 20 October 2022.
  116. ^ "Create transparent backgrounds in a SWF file". Adobe Technical Documentation. Retrieved 20 October 2022. The background color (Stage color) of a SWF file can be set to transparent. The background color or image of the HTML page that contains the SWF file shows through. This technique allows layering of SWF content with DHTML (Dynamic HTML) content. Not every web browser handles transparency in the same way. Be sure to test your SWF file in all browsers that you want to enable your audience to use. Most Linux browsers do not support Animate transparency.
  117. ^ "Apply OBJECT and EMBED tag attributes in Adobe Flash Professional". Adobe Technical Documentation. Retrieved 20 October 2022. transparent — The SWF content is layered together with other HTML elements on the page. The SWF file background color (Stage color) is transparent. HTML elements beneath the SWF file are visible through any transparent areas of the SWF, with alpha blending. This option reduces playback performance compared to wmode=window or wmode=direct.
  118. ^ "Keep DRM out of Web standards – Reject the Encrypted Media Extensions (EME) proposal – Defective by Design".
  119. ^ Yegulalp, Serdar (4 October 2013). "Berners-Lee and W3C approve HTML5 video DRM additions".
  120. ^ "HTML5 Video at Netflix". Medium. Netflix Technology Blog. 15 April 2013.
  121. ^ "iPad-ready websites". Apple. Archived from the original on 1 March 2011. Retrieved 5 April 2010.
  122. ^ "Watch Video...without Flash". Dailymotion. 27 May 2009. Retrieved 11 October 2018.
  123. ^ Carle, Kevin; Zacharias, Chris (20 January 2010). "Introducing YouTube HTML5 Supported Videos". Youtube. Retrieved 7 March 2010.
  124. ^ Dougherty, Brad (21 January 2010). "Try our new HTML5 player!". Vimeo. Archived from the original on 4 March 2010. Retrieved 7 March 2010.
  125. ^ Anthony, Sebastian (28 June 2013). "Netflix switches from Silverlight to HTML5 in Windows 8.1, reduces CPU usage dramatically – ExtremeTech".
  126. ^ McCormick, Rich (27 January 2015). "YouTube drops Flash for HTML5 video as default".
  127. ^ Welch, Chris (18 December 2015). "Facebook's website now uses HTML5 instead of Flash for all videos".
  128. ^ a b Paul, Ryan (16 August 2012). "Availability of Adobe's Flash browser plugin discontinued on Android".
  129. ^ Tittel, Chris Minnick and Ed (30 April 2014). "How Adobe Is Moving on From Flash to Embrace HTML5".
  130. ^ Williams, Owen (1 September 2015). "Adobe Flash is finally dead". TNW | Apps.
  131. ^ Barrett, Brian (15 July 2015). "Flash. Must. Die". Wired.
  132. ^ "Intent to implement: HTML5 by Default". 9 May 2016.
  133. ^ "So long, and thanks for all the Flash". Retrieved 8 December 2017.
  134. ^ Smedberg, Benjamin (20 July 2016). "Reducing Adobe Flash Usage in Firefox".
  135. ^ Mondello, Ricky (14 June 2016). "Next Steps for Legacy Plug-ins". WEbKit.org. Apple Inc.
  136. ^ Cowan, Crispin (14 December 2016). "Extending User Control of Flash with Click-to-Run". Microsoft Edge DevBlog. Microsoft.
  137. ^ eross-msft. "Microsoft Edge and Internet Explorer 11 (Microsoft Edge for IT Pros)".
  138. ^ "Flash & The Future of Interactive Content". Retrieved 8 December 2017.
[edit]
  • "HTML Standard – The Video Element", What WG, W3C, retrieved 10 July 2021.
  • Daoust, Francois; Hoschka, Philipp; Patrikakis, Charalampos Z (2010), Towards Video on the Web with HTML5 (PDF), Barcelona: NEM Summit.
  • Lawson, Bruce; Lauke, Patrick H. (11 February 2010), Introduction to HTML5 video, Opera.
  • HTML5 Video, archived from the original on 19 October 2012, retrieved 20 November 2012 video platform software and news.
  • Pieters, Simon (3 March 2010), Everything you need to know about HTML5 video and audio, Opera
  • HTML5 Video: A Practical Guide: Convert, Embed, Javascript and Flash Fallback for HTML5 Videos
  • Mozilla's overview of media formats supported by browsers
  • v
  • t
  • e
World Wide Web Consortium (W3C)
Products andstandards
Recommendations
  • ActivityPub
  • Activity Streams
  • ARIA
  • Canonical XML
  • CDF
  • CSS
    • Animations
    • Flexbox
    • Grid
  • DOM
  • EXI
  • EmotionML
  • Geolocation API
  • HTML
    • HTML5
  • IndexedDB
  • ITS
  • JSON-LD
  • Linked Data Notifications
  • MathML
  • Micropub
  • OWL
  • PLS
  • RDF
    • Schema
  • SISR
  • SKOS
  • SMIL
  • SOAP
  • SRGS
  • SRI
  • SSML
  • SVG
    • Filter Effects
  • SCXML
  • SHACL
  • SPARQL
  • Timed text
  • VoiceXML
  • WebAssembly
  • WoT
    • TD
  • Web storage
  • WSDL
  • Webmention
  • WebSub
  • WebVTT
  • WOFF
  • XHTML
    • +RDFa
  • XML
    • Base
    • Encryption
    • Events
    • Information Set
    • Namespace
    • Schema
    • Signature
    • XForms
    • XInclude
    • XLink
    • XOP
    • XPath
      • 2.0
      • 3.x
    • XPointer
    • XProc
    • XQuery
    • XSL
    • XSL-FO
    • XSLT
      • elements
Notes
  • IndieAuth
  • XAdES
  • XBL
  • XHTML+SMIL
  • XUP
Working drafts
  • CCXML
  • CURIE
  • EME
  • InkML
  • MSE
  • RIF
  • SMIL Timesheets
  • sXBL
  • WebGPU
  • WebXR
  • XFDL
  • XFrames
  • XMLHttpRequest
Guidelines
  • Web Content Accessibility Guidelines
Initiative
  • Markup Validation Service
  • Web Accessibility Initiative
  • Web Components
Deprecated
  • C-HTML
  • HDML
  • JSSS
  • PGML
  • VML
  • WebPlatform
Obsoleted
  • P3P
  • XHTML+MathML+SVG
Organizations
  • World Wide Web Foundation
  • WHATWG
Elected groups
  • AB
  • Board
  • TAG
Working groups
  • CSS
  • SVG
  • WebAssembly
  • WebAuthn
Community & business groups
  • Web Advertising BG
  • WebAssembly CG
Closed groups
  • Device Description (DDWG)
  • HTML
  • Multimodal Interaction Activity (MMI)
Software
  • CERN httpd
  • Libwww
Browsers
  • Line Mode (1990–)
  • Arena (1993–98)
  • Agora (1994–97)
  • Argo (1994–97)
  • Amaya (browser/editor, 1996–2012)
Conferences
  • International World Wide Web Conference (IW3C)
    • Steering Committee (IW3C2)
    • First conference ("WWW1", 1994)
  • v
  • t
  • e
Web interfaces
Server-side
Protocols
  • HTTP
    • v2
    • v3
    • Encryption
    • WebDAV
  • CGI
  • SCGI
  • FCGI
  • AJP
  • WSRP
  • WebSocket
Server APIs
  • C NSAPI
  • C ASAPI
  • C ISAPI
  • COM ASP
  • Jakarta Servlet
    • container
  • CLI OWIN
  • ASP.NET Handler
  • Python WSGI
  • Python ASGI
  • Ruby Rack
  • JavaScript JSGI
  • Perl PSGI
  • Portlet
    • container
Apache modules
  • mod_include
  • mod_jk
  • mod_lisp
  • mod_mono
  • mod_parrot
  • mod_perl
  • mod_php
  • mod_proxy
  • mod_python
  • mod_wsgi
  • mod_ruby
  • Phusion Passenger
Topics
  • Web service vs. Web resource
  • WOA vs. ROA
  • Open API
  • Webhook
  • Application server
    • comparison
  • Scripting
Client-side
Browser APIs
  • C NPAPI
    • LiveConnect
    • XPConnect
  • C NPRuntime
  • C PPAPI
    • NaCl
  • ActiveX
  • BHO
  • XBAP
Web APIs
WHATWG
  • Audio
  • Canvas
  • DOM
  • SSE
  • Video
  • WebSockets
  • Web messaging
  • Web storage
  • Web worker
  • XMLHttpRequest
W3C
  • DOM events
  • EME
  • File
  • Geolocation
  • IndexedDB
  • MSE
  • SVG
  • WebAssembly
  • WebAuthn
  • WebGPU
  • WebRTC
  • WebXR
Khronos
  • WebCL
  • WebGL
Others
  • Gears
  • Web SQL Database (formerly W3C)
  • WebUSB
Topics
  • Ajax and Remote scripting vs. DHTML
  • Browser extension
  • Cross-site scripting and CORS
  • Hydration
  • Mashup
  • Persistent data
  • Web IDL
  • Scripting
Related topics
  • Frontend and backend
  • Microservices
    • REST
    • GraphQL
  • Push technology
  • Solution stack
  • Web page
    • Static
    • Dynamic
  • Web standards
  • Web API security
  • Web application
    • Rich
    • Single-page
    • Progressive
  • Web framework

Từ khóa » Html5 Video Segment