AACからMP3へ
MP4には普通AACの音声が入っています。MDNはMP4に入る音声コーデックとしてAAC・MP3・Opus・FLACを挙げています。AACはWebCodecsのコーデックレジストリにあるので、Nerulioはブラウザの音声デコーダーでデコードし、そのサンプルをLAME 3.100に渡してMP3を作ります。
AACからMP3への変換は非可逆から非可逆への変換です。MP3エンコーダーは、AACがすでに単純化した音をもう一度表現しなければならず、独自のノイズも加えます。元より高いMP3のビットレートは何も取り戻さず、大きく低いと聞き取れる劣化が出ます。選ぶ前にffprobeで元のビットレートを読んでください。
MP4にすでにMP3の音声が入っていても、デコードして再エンコードします。Nerulioには音声だけをそのままコピーして取り出す機能はありません。音声トラックが複数あるMP4(言語違い、解説など)では、主なトラック1本だけが出ます。
- AAC
- Advanced Audio Coding。MP4の一般的な音声コーデック。
- 非可逆→非可逆
- すでに非可逆で圧縮された音声を再エンコードすること。品質は保たれるか下がるだけです。
- 主なトラック
- 読み込み側が最初に選ぶ音声トラック。ほかの音声トラックは無視します。
例:ビットレートを選ぶ前に元を確認する
45分の講演の録画:
$ ffprobe -v error -select_streams a:0 -show_entries stream=codec_name,sample_rate,channels,bit_rate -of default=nw=1 talk.mp4
codec_name=aac
sample_rate=48000
channels=2
bit_rate=128000 → AAC、128 kbit/s、48 kHzステレオ
MP3 192 kbit/s(元以上):192,000 × 2,700 s ÷ 8 = 64,800,000 bytes ≈ 結果の欄で61.8 MB
詳細設定で44.1 kHzを選ばない限り、サンプルレートは48 kHzのままです。128 kbit/sなら同じ講演は41.2 MBになり、元と同じビットレートで非可逆の段階をもう一度通ります。
MP4からMP3へ
| MP4の中 | Nerulioで | MP3では |
|---|
| AAC(またはMP3・Opus)の音声トラック | ブラウザでデコード | LAME 3.100、固定128–320 kbit/s |
|---|
| H.264・HEVC・AV1の映像 | デコードせずに捨てる | — |
|---|
| 48・44.1 kHzのサンプルレート | ほかを選ばなければそのまま | 同じサンプルレート |
|---|
| 複数の音声トラック | 主なトラックだけ | 1トラック |
|---|
| タイトル・アーティスト・チャプター | コピーしない | タグなし |
|---|
結果の確認
- 結果は区間と同じ長さのはずです。最初の1秒を聞き、始まりが欠けていないか確かめます。
- 容量をビットレート × 秒数 ÷ 8と比べます。
- シンバル、歯擦音、静かな残響の尾を聞きます。非可逆→非可逆の跡が最初に出るところです。
トラブルシューティング
| 症状 | 考えられる原因 | 確認方法 | 対処 |
|---|
| 「This file has no audio track」と出る | MP4が音声なしで書き出されたか、音が別ファイルにある | -select_streams aでffprobeを実行しても何も出ない | このファイルからは取り出せるものがありません |
|---|
| 音声でデコーダーのエラー | このブラウザがデコードできない音声コーデック(サラウンドのコーデックなど)が入っている | ffprobeのcodec_name | このファイルはFFmpegで変換する |
|---|
| 声がゆらゆらと聞こえる | 低いビットレートで非可逆の段階を2回通りノイズが出た | 同じ瞬間のMP4と比べる | 192 kbit/s以上かWAVを使う |
|---|
| MP3がMP4の音声トラック全体より大きい | 元のAACより高いMP3のビットレート | ffprobeで元のbit_rateを確認 | 元のビットレートか、その1つ上の段階を選ぶ |
|---|
ほかの方法
| 方法 | こんなときに向いています |
|---|
| AACを.m4aのまま残す | AACを再生できるプレーヤーなら、再エンコードなしで元の品質のままです。FFmpegなら-vn -c:a copy out.m4aでコピーできます。 |
|---|
-vn -c:a libmp3lame -b:a 192kを使うFFmpeg | 一括処理や、ブラウザがデコードできない音声コーデック。 |
|---|
この方法の限界
- MP4にすでにMP3が入っていても、音声は常に再エンコードします。
- 使うのは主な音声トラック1本だけで、タグやチャプターは書き込みません。
バージョンと出典
tests/media-browser.mjsで、1920 × 1080のH.264/AAC MP4を使いChromium 153とFirefox 155で確認しました。4秒の区間を192 kbit/sにすると、指定の長さと0.12秒以内で一致しました。MP4の音声コーデックはMDN、コーデックの一覧はW3CのWebCodecsレジストリに基づきます。
参照した公式ドキュメント
MP4をMP3に変換
MP4はスマホ・カメラ・編集ソフトで最も使われる動画形式です。
音声トラックをデコードして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アドレスなどの接続情報は配信元に伝わります。
作業は自動保存されますか?
いいえ。画像と編集状態はこのタブに保持され、メディア出力は端末の一時保存を利用する場合があります。言語を変えても作業は残りますが、再読み込み、タブを閉じる操作、別のページへの移動で失われることがあります。