Comparison of layout engines (HTML5 Media)

The HTML5 draft specification defines several tags which allow video and audio to be included natively and semantically in HTML markup. This page compares support for aspects of this specification among layout engines.

Element attributes

Media elements allow some attributes to be set directly in the tag.

Trident

Gecko

WebKit

Presto

<audio> attributes

src

rowspan="5"

?

preload

autoplay

rowspan="3"

loop

controls

<video> attributes

src

rowspan="8"

?

preload

autoplay

rowspan="6"

loop

controls

poster

width

rowspan="2"

height

<source> attributes

src

rowspan="3"

rowspan="2"

rowspan="3"

rowspan="3"

type

media

DOM attributes

Some attributes related to media elements are exposed in the DOM.

Trident

Gecko

WebKit

Presto

Error state

MediaError

?

?

?

Network state

src

rowspan="11"

?

?

?

currentSrc

NETWORK_EMPTY

NETWORK_IDLE

NETWORK_LOADING

NETWORK_NO_SOURCE

networkState

preload

buffered

load()

canPlayType()

Ready state

HAVE_NOTHING

rowspan="7"

?

?

?

HAVE_METADATA

HAVE_CURRENT_DATA

HAVE_FUTURE_DATA

HAVE_ENOUGH_DATA

readyState

seeking

Playback state

currentTime

rowspan="13"

?

?

?

startTime

duration

paused

defaultPlaybackRate

playbackRate

played

seekable

ended

autoplay

loop

play()

pause()

Controls

controls

rowspan="3"

?

?

?

volume

muted

DOM events

Media elements introduce new events to handle conditions which apply only to those elements, such as pausing/resuming.

Trident

Gecko

WebKit

Presto

loadstart

rowspan="22"

?

?

?

ProgresS

suspend

abort

error

emptied

stalled

play

pause

loadedmetadata

loadeddata

waiting

playing

canplay

canplaythrough

seeking

seeked

timeupdate

ended

ratechange

durationchange

volumechange

Video format support

This table documents support for video codecs by the <video> element.

Trident

Gecko

WebKit

Presto

Ogg Theora

rowspan="2"

rowspan="2" {{#tag:ref|Safari uses QuickTime, and supports whatever formats that does. This includes H.264, MP3, and WAV PCM, but not Ogg Theora or Vorbis. These are supported only if installed as third-party codecs, such as XiphQT. Google Chrome supports Theora, Vorbis, H.264, and MP3. Chromium can be compiled to support anything that ffmpeg supports, and may or may not support patented formats such as H.264 and MP3. Origyn Web Browser for MorphOS uses also FFMpeg for playing HTML5 media content.|group=note|name=webkit-codecs}}

H.264

{{#tag:ref|On Linux and FreeBSD, Presto 2.5 uses the system version of the GStreamer library, and is able to play any formats supported by GStreamer (including H.264, MP3, AAC and others, if codecs are installed). On other platforms, it only supports Ogg Theora for video; and Ogg Vorbis and WAVE PCM for sound.|group=note|name=opera-av}}

Audio format support

This table documents support for audio codecs by the <audio> element.

Trident

Gecko

WebKit

Presto

Ogg Vorbis

rowspan="4"

rowspan="2"

rowspan="4"

WAV PCM

MP3

rowspan="2"

rowspan="2"

AAC

See also

  • HTML5 video
  • Use of Ogg formats in HTML5

Gecko references

WebKit references

Presto references

HTML5 - The Video Element