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);
  }
}

仕様書

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

ブラウザーの互換性

関連情報