@shiguredo/mp4-media-stream
TypeScript icon, indicating that this package has built-in type declarations

2024.3.0 • Public • Published

@shiguredo/mp4-media-stream

npm version License

ファイルや URL から取得した MP4 データから MediaStream を作成するためのライブラリです。

使い方

import { Mp4MediaStream } from '@shiguredo/mp4-media-stream'

// ファイルなどから取得した MP4 データを読み込む
const mp4MediaStream = await Mp4MediaStream.load(mp4FileBlob)

// 指定の MP4 を再生するための MediaStream を作成する
const stream = mp4MediaStream.play(options)

// Video 要素の入力に作成された MediaStream を設定する
const video = document.getElementById('video')
video.srcObject = stream

実際の動作はデモページソースコード)で確認できます。

サポートブラウザ

本ライブラリは Chrome や Edge 等の Chromium ベースのブラウザで動作します。

対応コーデック

  • 映像:
    • H.264
    • H.265
    • VP8
    • VP9
    • AV1
  • 音声:
    • AAC
    • Opus

未対応機能

以下の機能には現時点では対応していません:

  • 再生開始位置の指定(シーク)
  • 再生の一時停止・再開
  • 数 GB を超える MP4 ファイルの再生
  • MP4 の edts ボックスのハンドリング(edts を使ってリップシンクが調整されている場合には再生時にズレる可能性がある)
  • B フレームが有効になっている H.264 ストリーム(映像の再生順序が正しくならない可能性がある)

ライセンス

Apache License 2.0

Copyright 2024-2024, Takeru Ohta (Original Author)
Copyright 2024-2024, Shiguredo Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Readme

Keywords

Package Sidebar

Install

npm i @shiguredo/mp4-media-stream

Weekly Downloads

37

Version

2024.3.0

License

Apache-2.0

Unpacked Size

1.93 MB

Total Files

6

Last publish

Collaborators

  • voluntas
  • tnamao
  • takeruohta
  • melpon
  • miosakuma