Mediabunny - 純粋なTypeScriptベースのメディア処理ツールキット
(github.com/Vanilagy)- ブラウザーおよびNode.js環境で直接MP4、WebM、MP3などのメディアファイルを読み込み、変換できるライブラリ
- TypeScriptで純粋実装されており依存関係が一切なく、高性能かつ軽量性を志向
- 目標は、Webベース環境で使用できるFFmpeg代替ツールになること
- MP4、MOV、WebM、MKV、WAVE、MP3、Ogg、ADTSなど25種類以上のコーデックをサポートし、WebCodecs APIを活用してハードウェアアクセラレーションによるエンコード・デコードを実現
- マイクロ秒単位の精度で読み書き処理を行い、変換APIを通じてトリミング、リサイズ、回転などの機能をサポート
- ストリーミングI/Oにより大容量ファイルもメモリ効率よく処理
- ツリーシェイキングにより使用した機能だけをバンドルに含めることが可能。最小5KBサイズまで削減可能
- MPL-2.0 (Mozilla Public License 2.0)
- 商用・非商用で利用可能、オープンソース・クローズドソースのプロジェクトで自由に活用可能
- ただし、ソースコードを修正して配布する場合は修正版を公開する必要あり
5件のコメント
Web Codecs API自体の性能が高いため、Web向けメディアライブラリはどれもパフォーマンスに優れています。純粋なTSと言うには少し微妙な感じもありますね。
ベンチマークを見ると、不思議なことに性能はそれほど悪くないですね
WASMではなく、純粋なtsで性能志向…?
TypeScriptで高性能志向と言うのは……耕運機でレーシングカー志向と言うのと似たようなものでしょうか?
数多くの耕運機の中でも、高性能な耕運機を目指しているってことなんでしょうね(笑)