Join MDN and developers like you at Mozilla's View Source conference, 12-14 September in Berlin, Germany. Learn more at https://viewsourceconf.org

HTMLMediaElement

この翻訳は不完全です。英語から この記事を翻訳 してください。

HTMLMediaElementHTMLElement に音声や動画といったメディア関連機能の属性とメソッドを追加します。HTMLVideoElementHTMLAudioElement はこのインタフェースを継承しています。

属性

HTMLElementElementNodeおよび EventTarget の全属性を継承しています。

HTMLMediaElement.audioTracks
AudioTrackList は、要素の持つ AudioTrack オブジェクトを参照できます。
HTMLMediaElement.autoplay
autoplay 属性の値を Boolean  で取得できます。true が設定されている場合、再生に十分なデータが揃った時点で自動的に再生が始まります。
HTMLMediaElement.buffered読取専用
その時点でブラウザがバッファしたメディアデータの範囲を表す TimeRanges オブジェクトを取得できます。
HTMLMediaElement.controller
要素に割り当てられた MediaController オブジェクトを参照できます。割り当てられていない場合の値は null です。
HTMLMediaElement.controls
再生をコントロールするユーザインタフェースの表示 / 非表示を指定するcontrols  属性を、Boolean で参照できます。
HTMLMediaElement.crossOrigin
このメディア要素の CORS 設定DOMString で参照できます。
HTMLMediaElement.currentSrc読取専用
選択されたメディアリソースの絶対 URL を DOMString で返します。
HTMLMediaElement.currentTime
現在の再生時間を double で返します。値を代入することで、シークを行えます。
HTMLMediaElement.defaultMuted
標準状態で音声がミュートされているか、いないかを表す、HTML の muted 属性を Boolean で参照できます。
HTMLMediaElement.defaultPlaybackRate
標準の再生レートを double で返します。
HTMLMediaElement.duration読取専用
メディアの長さを秒数で表した数値を double で取得できます。メディアデータがない場合は、0 を返します。
HTMLMediaElement.ended読取専用
再生が終了しているか、いないかを Boolean で取得できます。
HTMLMediaElement.error読取専用
一番最後に起きたエラーを MediaError オブジェクトとして返します。エラーが起きていない場合は null を返します。
HTMLMediaElement.initialTime読取専用
再生の開始秒を double で返します。
HTMLMediaElement.loop
繰り返し再生を有効、無効を表す HTML の loopBoolean として参照できます。
HTMLMediaElement.mediaGroup
A DOMString that reflects the mediagroup HTML attribute, which indicates the name of the group of elements it belongs to. A group of media elements shares a common MediaController.
HTMLMediaElement.mediaKeys読取専用
Returns a MediaKeys object or null. MediaKeys is a set of keys that an associated HTMLMediaElement can use for description of media data during playback.
HTMLMediaElement.mozAudioCaptured読取専用
Returns a Boolean. Related to audio stream capture.
HTMLMediaElement.mozAudioChannelType
(Firefox OS only) A String that can be used to set the audio channel that the sound coming from an <audio> or <video> element will play in, on a Firefox OS device. See Using the AudioChannels API for more details.
HTMLMediaElement.mozChannels読取専用  
Returns the number of channels in the audio resource (e.g., 2 for stereo).
HTMLMediaElement.mozFragmentEnd
A double that provides access to the fragment end time if the media element has a fragment URI for currentSrc, otherwise it is equal to the media duration.
HTMLMediaElement.mozFrameBufferLength  

An unsigned long that indicates the number of samples that will be returned in the framebuffer of each MozAudioAvailable event. This number is a total for all channels, and by default is set to be the number of channels * 1024 (e.g., 2 channels * 1024 samples = 2048 total).

The mozFrameBufferLength property can be set to a new value for lower latency, larger amounts of data, etc. The size given must be a number between 512 and 16384. Using any other size results in an exception being thrown. The best time to set a new length is after the loadedmetadata event fires, when the audio info is known, but before the audio has started or MozAudioAvailable events have begun firing.

HTMLMediaElement.mozSampleRate読取専用  
Returns the number of samples per second that will be played. For example, 44100 samples per second is the sample rate used by CD audio.
HTMLMediaElement.muted
A Boolean that determines whether audio is muted. true if the audio is muted and false otherwise.
HTMLMediaElement.networkState読取専用
Returns an unsigned short (enumeration) indicating the current state of fetching the media over the network.
HTMLMediaElement.paused読取専用
Returns a Boolean that indicates whether the media element is paused.
HTMLMediaElement.playbackRate

A double that indicates the rate at which the media is being played back. 

HTMLMediaElement.played読取専用
Returns a TimeRanges object that contains the ranges of the media source that the browser has played, if any.
HTMLMediaElement.preload
A DOMString that reflects the preload HTML attribute, indicating what data should be preloaded, if any. Possible values are: none, metadata, auto.
HTMLMediaElement.preservesPitch
A Boolean that determines if the pitch of the sound will be preserved. If set to false, the pitch will adjust to the speed of the audio. This is implemented with prefixes in Firefox (mozPreservesPitch) and WebKit (webkitPreservesPitch).
HTMLMediaElement.readyState読取専用
Returns an unsigned short (enumeration) indicating the readiness state of the media.
HTMLMediaElement.seekable読取専用
Returns a TimeRanges object that contains the time ranges that the user is able to seek to, if any.
HTMLMediaElement.seeking読取専用
Returns a Boolean that indicates whether the media is in the process of seeking to a new position.
HTMLMediaElement.sinkId読取専用
Returns a DOMString that is the unique ID of the audio device delivering output, or an empty string if it is using the user agent default. This ID should be one of the MediaDeviceInfo.deviceid values returned from MediaDevices.enumeratedDevices(), id-multimedia, or id-communications.
HTMLMediaElement.src
A DOMString that reflects the src HTML attribute, which contains the URL of a media resource to use.
HTMLMediaElement.srcObject
A MediaStream that lets you set or get the Media Stream to be played or being played.
HTMLMediaElement.textTracks読取専用
Returns the list of TextTrack objects contained in the element.
HTMLMediaElement.videoTracks読取専用
要素の持つ VideoTrack オブジェクトのリストを参照できます。

付記: Gecko は 1 トラックの再生のみをサポートします。また複数トラックのメタデータ解析は、Ogg フォーマットの場合にのみ有効です。

HTMLMediaElement.volume
音量を double で取得できます。この値は 0.0 (無音) 以上、1.0 (最大) 以下でなくてはなりません。

イベントハンドラ用属性

HTMLMediaElement.onmozinterruptbegin
オーディオチャンネルマネージャによって割り込まれた際の EventHandler を登録できます。
HTMLMediaElement.onmozinterruptend
割り込み終了時に呼ばれる EventHandler を設定できます。
HTMLMediaElement.onencrypted
メディアが暗号化されている場合に呼ばれる EventHandler を設定できます。

メソッド

HTMLElement, Element, Node, および EventTarget からメソッドを継承しています。

HTMLMediaElement.addTextTrack()
字幕向けトラックのような、テキストトラックを追加します。
HTMLMediaElement.canPlayType()
メディアタイプが再生可能かどうかを判定します。
HTMLMediaElement.fastSeek()
指定された時間へシークします。
HTMLMediaElement.load()
メディア要素をリセットし、メディアリソースをリスタートします。処理されなかったイベントは破棄されます。メディアデータがダウンロードされる量は preload 属性の値に影響されます。src 属性の値、もしくは source 要素内の要素を削除した際のリソース解放、もしくは source の子要素が動的に変更される場合の再スキャンのために利用します。それ以外の場合に呼びだす必要はありません。
HTMLMediaElement.mozCaptureStream()
[enter description]
HTMLMediaElement.mozCaptureStreamUntilEnded()
[enter description]
HTMLMediaElement.mozGetMetadata()
再生中のメディアデータに対するメタデータを Object として返します。呼び出すたびに、オブジェクトのコピーが新しく作られます。このメソッドを呼び出すには、loadedmetadata イベント発火している必要があります。
HTMLMediaElement.mozLoadFrom()
このメソッドは Mozilla の独自実装で、他のメディア要素からデータをロードします。通常のリソース選択のアルゴリズムではなく、他の要素の currentSrc を選ぶ点以外は、 load() メソッドと同じように振る舞います。これは他の要素がキャッシュし、バッファしているデータを利用することにより最適化を図るためです。実際に、2 つの要素が同じダウンロードデータを利用する場合、どちらか一方のダウンロードが終われば、他方でもそのデータを利用できるようになります。
HTMLMediaElement.pause()
再生を一時停止します。
HTMLMediaElement.play()
再生を開始します。
HTMLMediaElement.setMediaKeys()
再生に利用するMediaKeys を指定します。Promise オブジェクトを返します。
HTMLMediaElement.setSinkId()
音声出力をレンダリングするデバイスの ID を指定できます。指定はアプリケーションからの利用が許されている場合に有効です。なお返り値は Promise オブジェクトとなっています。

 

仕様

仕様 状態 コメント
WHATWG HTML Living Standard
The definition of 'HTMLMediaElement' in that specification.
Living Standard  HTML5 からの変更なし
HTML5
The definition of 'HTMLMediaElement' in that specification.
勧告 最初の定義
Encrypted Media Extensions
The definition of 'Encrypted Media Extensions' in that specification.
草案  MediaKeys, MediaEncryptedEvent, および setMediaKeys が追加されました

ブラウザ互換性

機能 Chrome Firefox (Gecko) Internet Explorer Opera Safari
基本サポート (有) 3.5 (1.9.1) [1] 9 ? ?
buffered 属性 (有) 4.0 (2.0) 9 ? ?
defaultMuted 属性 (有) 11.0 (11.0) ? ? ?
loop 属性 (有) 11.0 (11.0) 9 ? ?
seekable 属性 (有) 8.0 (8.0) 9 ? ?
defaultPlaybackRate 属性 (有) 20.0 (20.0) 9 ? ?
playbackRate 属性 (有) 20.0 (20.0) 9 ? ?
preservesPitch 属性 (有)webkit 20.0 (20.0)moz 未サポート 未サポート 未サポート
preload 属性 (有) 4.0 (2.0)[2] ? ? ?
played 属性 (有) 15.0 (15.0) ? ? ?
crossOrigin 属性 (有) 12.0 (12.0)[3]
22.0 (22.0)
 
? ? ?
mozAudioChannelType 属性 未サポート 未サポート 未サポート 未サポート 未サポート
mozChannels, mozFrameBufferLength, mozSampleRate 属性 未サポート 4.0 (2.0) 未サポート 未サポート 未サポート
mozGetMetadata() 未サポート 17.0 (17.0) 未サポート 未サポート 未サポート
mozLoadFrom() 廃止 Gecko 24 未サポート 3.6 (1.9.2) 未サポート 未サポート 未サポート
mozSrcObject property 未サポート 18.0 (18.0) 未サポート 未サポート 未サポート
initialTime 属性 ? 9.0 (9.0)[4] ? ? ?
fastSeek メソッド ? 31.0 (31.0) ? ? ?
startDate 属性 ? 未サポート[9] ? ? ?
mediaGroup および controller 属性 ? 未サポート[10] ? ? ?
audioTracks および videoTracks 属性 ? 33.0 (33.0)[5] ? ? ?
textTracks 属性 ? Nightly build[6] ? ? ?
sinkId 属性 および setSinkId() メソッド 45.0[8] ? ? ? ?
機能 Android Firefox Mobile (Gecko) Firefox OS (Gecko) IE Mobile Opera Mobile Safari Mobile
基本サポート (有) (有) (有) ? (有) (有)
buffered 属性 (有) 4.0 (2.0) (有) ? ? ?
defaultMuted 属性 (有) 11.0 (11.0) (有) ? ? ?
loop 属性 (有) 11.0 (11.0) (有) ? ? ?
seekable 属性 (有) 8.0 (8.0) (有) ? ? ?
defaultPlaybackRate 属性 (有) 20.0 (20.0) (有) ? ? ?
playbackRate 属性 (有) 20.0 (20.0) (有) ? ? ?
preservesPitch 属性 (有)webkit 20.0 (20.0)moz (有) 未サポート 未サポート 未サポート
preload 属性 (有) 4.0 (2.0) (有) ? ? ?
played 属性 (有) 15.0 (15.0) (有) ? ? ?
crossOrigin 属性 (有) 12.0 (12.0)[3]
22.0 (22.0)
 
(有) ? ? ?
mozAudiochannelType 未サポート 未サポート 1.0.1 未サポート 未サポート 未サポート
mozChannels, mozFrameBufferLength, mozSampleRate 属性 未サポート 4.0 (2.0) (有) 未サポート 未サポート 未サポート
mozGetMetadata() 未サポート 17.0 (17.0) (有) 未サポート 未サポート 未サポート
mozLoadFrom() 未サポート 1.0 (1.9.2)[7] (有) 未サポート 未サポート 未サポート
mozSrcObject 属性 未サポート 18.0 (18.0) (有) 未サポート 未サポート 未サポート
initialTime 属性 ? 9.0 (9.0)[4] (有) ? ? ?
fastSeek メソッド ? 31.0 (31.0) (有) ? ? ?
startDate 属性 ? 未サポート[9] (有) ? ? ?
mediaGroupcontroller 属性 ? 未サポート[10] (有) ? ? ?
audioTracksvideoTracks 属性 ? 33.0 (33.0)[5] (有) ? ? ?
textTracks 属性 ? Nightly build[6] (有) ? ? ?
sinkId 属性,  setSinkId() メソッド ? ? ? ? ? ?

[1] 仕様に合わせるため NETWORK_LOADED 状態は Gecko 2.0 (Firefox 4 / Thunderbird 3.3 / SeaMonkey 2.1) で削除されました。

[2] 以前、Gecko では autobuffer として実装されていました。

[3] Gecko は小文字で実装しています。例:crossorigin.

[4] Gecko 23.0 (Firefox 23 / Thunderbird 23 / SeaMonkey 2.20) で削除されました。

[5] media.track.enabled preference によって、実装は隠蔽されています。

[6] media.webvtt.enabled preference によって実装は隠蔽され、デフォルト値はtrue となっています。

[7] 24.0 (24) で削除されました。

[8] flag によって、この機能は隠蔽されています。

[9] Gecko では未実装です。詳しくは バグ 847376 をご覧ください。

[10] Gecko では未実装です。詳しくは バグ 847377 をご覧ください。

関連情報

ドキュメントのタグと貢献者

 このページの貢献者: chikoski
 最終更新者: chikoski,