SourceBuffer.appendBufferAsync()

非標準: この機能は標準ではなく、標準化の予定もありません。公開されているウェブサイトには使用しないでください。ユーザーによっては使用できないことがあります。実装ごとに大きな差があることもあり、将来は振る舞いが変わるかもしれません。

Experimental: これは実験的な機能です。
本番で使用する前にブラウザー互換性一覧表をチェックしてください。

appendBufferAsync()SourceBuffer インターフェイスのメソッドで、ArrayBufferTypedArrayDataView のいずれかのオブジェクトから SourceBuffer にメディアセグメントデータを非同期的に追加するプロセスを開始します。 バッファーが追加されると履行される Promise を返します。

構文

js
appendBufferAsync(source)

引数

source

ArrayBufferTypedArrayDataView のいずれかのオブジェクトで、 SourceBuffer に追加するメディアセグメントデータが入ったもの。

返値

バッファーが SourceBuffer に正常に追加されたときに履行される Promise、または要求を開始できなかった場合は null

この単純化された非同期関数の例 fillSourceBuffer() は、入力引数 buffer としてArrayBufferTypedArrayDataView のいずれかのオブジェクトと、そのバッファーからソースメディアを追加する SourceBuffer を受け取ります。

js
async function fillSourceBuffer(buffer, msBuffer) {
  try {
    while (true) {
      await msBuffer.appendBufferAsync(buffer);
    }
  } catch (e) {
    handleException(e);
  }
}

仕様書

この機能は、どの仕様にも属しません。標準化の予定もありません。

ブラウザーの互換性

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
appendBufferAsync
ExperimentalNon-standard

Legend

Tip: you can click/tap on a cell for more information.

No support
No support
Experimental. Expect behavior to change in the future.
Non-standard. Check cross-browser support before using.
User must explicitly enable this feature.

関連情報