Opus・VorbisからMP3へ
WebMが認める音声はOpusかVorbisだけです(MDN)。どちらもWebCodecsのコーデックレジストリにあるので、Nerulioはパケットをブラウザの音声デコーダーに渡し、デコードしたサンプルをLAME 3.100に渡します。映像トラックはデコードしないため、AV1の映像が扱えない環境でもAV1のWebMから音声を取り出せます。
Opusは48 kHzでデコードされます。Ogg Opusの仕様(RFC 7845)は、保存された入力サンプルレートは再生用の値ではなく、ハードウェアが対応していれば48 kHzでデコードするよう勧めています。Nerulioはデコードしたレートを保つので、44.1 kHzを選ばない限りMP3も48 kHzで、選べばリサンプリングします。
リアルタイムの録画ツールが書いたWebMは、ヘッダーに長さがないこともあります。Nerulioはパケットから長さを測るので、区間とMP3の長さは正しくなります。Opusはとても効率のよいコーデックで、話し声のトラックをMP3に再エンコードすると同じ音にするにはより高いビットレートが要りますが、Opusより良くなることはありません。
- Opus
- WebMやブラウザの録画で使われる低遅延の音声コーデック。48 kHzでデコードされます。
- Vorbis
- WebMが同じく認める、以前からのオープンな音声コーデック。
- リサンプリング
- 別のサンプルレートに変換すること。ここでは選んだ場合に48 kHzから44.1 kHzへ。
例:30分のブラウザ録画のWebM
まず音声トラックを調べます。
$ ffprobe -v error -select_streams a:0 -show_entries stream=codec_name,sample_rate,channels -of default=nw=1 meeting.webm
codec_name=opus
sample_rate=48000
channels=1
MP3 128 kbit/s 128,000 × 1,800 s ÷ 8 = 28,800,000 bytes ≈ 結果の欄で27.5 MB、48 kHzモノラル
MP3 192 kbit/s 43,200,000 bytes ≈ 41.2 MB:元の細部は同じでファイルだけ大きい
話し声の録音なら、いちばん低い選択肢の128 kbit/sから始めてください。モノラルのトラックはモノラルのままです。
WebMからMP3へ
| WebMの中 | Nerulioで | MP3では |
|---|
| Opusの音声(48 kHz) | ブラウザがデコード | LAME 3.100、48 kHzまたは選べば44.1 kHz |
|---|
| Vorbisの音声 | ブラウザがデコード | LAME 3.100、元のレートまたは選んだレート |
|---|
| VP8・VP9・AV1の映像 | デコードせずに捨てる | — |
|---|
| ヘッダーの長さ(ないことがある) | パケットから測る | 正しい区間の長さ |
|---|
| モノラル・ステレオ | そのまま | 同じチャンネル数 |
|---|
結果の確認
- 結果の長さを区間と比べます。タイムラインはパケットから測った長さを使います。
- 容量をビットレート × 秒数 ÷ 8と比べます。
- WebMを開けなかったプレーヤーや端末でMP3を再生します。
トラブルシューティング
| 症状 | 考えられる原因 | 確認方法 | 対処 |
|---|
| 音声でデコーダーのエラー | このブラウザがWebMのOpus・Vorbisのトラックをデコードできない | ffprobeのcodec_name | 別のブラウザかFFmpegを使う |
|---|
| 古い機器が44.1 kHzを求めるのにMP3が48 kHz | Opusは48 kHzでデコードされ、そのレートを保つ | MP3をffprobeで見るとsample_rate=48000 | 詳細設定で44.1 kHzを選んで保存し直す |
|---|
| ほかのアプリでWebMの長さが出ない | 録画ツールが長さを書き込まなかった | ほかのアプリで長さが表示されない | ここで作るMP3は測った長さを持つ。録画全体を変換する |
|---|
| MP3がWebM全体より大きい | 低いビットレートではOpusのほうがMP3より効率がよい | 2つの容量を比べる | 128 kbit/sを使うか、プレーヤーが対応していればOpusのまま使う |
|---|
ほかの方法
| 方法 | こんなときに向いています |
|---|
FFmpeg:ffmpeg -i meeting.webm -vn -c:a libmp3lame -b:a 128k meeting.mp3 | 一括処理や、このブラウザにデコーダーがないとき。 |
|---|
| Opusの音声のまま使う | Opusを再生できるプレーヤーなら、再エンコードなしで元のままです。 |
|---|
この方法の限界
- 使うのは主な音声トラック1本だけです。
- サンプルレートの選択肢は、元のまま、44.1 kHz、48 kHzです。
バージョンと出典
Nerulioのメディアテストは、Chromium 153とFirefox 155でH.264/AAC MP4からのMP3の取り出しとVP9 WebMのデコードを確認しており、WebMのOpusからMP3への変換は個別のテストケースではありません。Opusの48 kHzの規則はRFC 7845、WebMの音声コーデックはMDN、コーデックの一覧はW3CのWebCodecsレジストリに基づきます。
参照した公式ドキュメント
WebMをMP3に変換
WebMはWeb向けのオープンな動画形式で、Chrome・Firefoxでよく再生されます。
音声トラックをデコードしてMP3にエンコードします。ファイル内の音声コーデックにブラウザが対応している必要があります。
ファイルはサーバーにアップロードされず、このブラウザ内だけで処理されます。
動画 → MP3
対応する動画から必要な区間の音声をMP3・WAVに保存。ビットレートを選び、ブラウザで処理した結果をダウンロードできます。
使い方
- 対応する動画・音声を開く
- 時間範囲、MP3・WAV形式、音声設定を選択
- 保存した結果の最初と最後を再生して確認
対応形式
MP4 / WebM / MOV / MP3 / WAV / OGG / M4A → MP3 / WAV — 読み込み・書き出しはブラウザの対応状況によります。
このツールでできること
音声を順次抽出し、96〜320kbps MP3またはPCM WAVで保存します。
処理方式と検証状況
advanced · ranged demux / WebCodecs / LAME WASM. 品質検証中です。Pro・Flagship水準はまだ実証されていません。
書き出す前に
高速カットは範囲内のキーフレームに短縮します。精密モードは再エンコードし、コーデック対応は環境次第です。可能なら端末の一時保存を使います。互換録画の短時間制限は残ります。
よくある質問
対応サイズは何で決まりますか?
端末のメモリ・保存容量・コーデック対応によります。テスト例はすべてのファイルの動作保証ではありません。
ファイルはアップロードされますか?
このツールで開いたファイルはアップロードせず端末で処理します。コミュニティの投稿に明示的に添付する画像は別途アップロードされます。一部のエンジンやモデルは外部から取得するため、IPアドレスなどの接続情報は配信元に伝わります。
作業は自動保存されますか?
いいえ。画像と編集状態はこのタブに保持され、メディア出力は端末の一時保存を利用する場合があります。言語を変えても作業は残りますが、再読み込み、タブを閉じる操作、別のページへの移動で失われることがあります。