ホームTypeScriptbilibili/web-demuxer
bilibili

web-demuxer

Frontend#WebAssembly#WebCodecs#Multimedia#TypeScript#FFmpeg
GitHub で見る →
185

// 概要

Web-Demuxer は WebAssembly を活用して多様なマルチメディアフォーマットの包括的なデマルチプレクス機能を提供するブラウザベースのライブラリです。必要なデコーダー設定とエンコード済みチャンクを提供することで WebCodecs API とシームレスに統合できるように設計されています。本ライブラリは幅広いファイルタイプをサポートしており、開発者は特定のフォーマット要件に合わせてカスタムビルドを作成可能です。

// 技術解説

Web-Demuxer は、 WebAssembly を活用して WebCodecs API に堅牢なデマルチプレックス機能を提供するブラウザベースのマルチメディア処理ライブラリです。 WebCodecs がネイティブのデマルチプレックス機能を欠いているという制限に対処し、 MP4 、 MKV 、 FLV などの幅広いフォーマットを処理するための統一されたインターフェースを提供します。 WebCodecs-first な設計を採用することで、このプロジェクトはデコーダー設定やエンコード済みチャンクの抽出を簡素化し、ブラウザ上で高性能なメディアアプリケーションを構築する開発者にとって不可欠なツールとなっています。

// 主要ハイライト

01
ブラウザネイティブのデコードパイプラインとシームレスに統合する WebCodecs-first な API を提供します。
02
mov 、 mp4 、 mkv 、 webm 、 flv など、幅広いマルチメディアフォーマットを単一のパッケージでサポートします。
03
業界標準の ffprobe ツールと同様の、詳細なメディアメタデータ抽出機能を提供します。
04
カスタマイズ可能な WASM ビルドに対応しており、必要なフォーマットのみを含めることでバンドルサイズを削減できます。
05
シーク操作によるランダムアクセスと ReadableStreams を介したシーケンシャルなデータアクセスの両方をサポートし、柔軟なメディアハンドリングを実現します。

// ユースケース

01
ブラウザベースの動画および音声デコードのための WebCodecs とのシームレスな統合
02
ffprobe の出力と同様の詳細なメディアメタデータの抽出
03
特定のマルチメディアコンテナフォーマットをサポートするためのカスタマイズ可能な WASM ビルド

// クイックスタート

開始するには、 npm を介してパッケージをインストールし、必要な WASM ファイルが静的ディレクトリから提供されるようにしてください。 WebDemuxer インスタンスを初期化し、メディアソースを指定して load メソッドを呼び出し、 getDecoderConfig または seek を使用して WebCodecs の VideoDecoder または AudioDecoder 用のデータを取得します。