破損したOBS録画を修復 — ストリームデータはまだそこにあります

OBSがクラッシュして、MP4が開けない。フォーラムはそのファイルは もうダメだと言うでしょう。でも、ディスク上のバイト列はそうは 言っていません。

ファイルは端末から一切外に出ません — 修復はブラウザ内で実行されます。アップロードは0バイト。

Your data is the big block — usually intact. What breaks is the small index. Repair rebuilds it.

Drop a file here or browseTap to choose a file

ZIP · Office · PDF · video · JPG · PNG · RAR/7z · SQLite — repaired right here in your browser. Nothing is uploaded

0 bytes uploadedFree: 3 repairs/day — up to 500 MB video, 100 MB docs & archives, 50 MB photos. Free download. Single repair €5.90. No account required.

今すぐ録画を修復

上のエリアにファイルをドロップすると、端末上で診断が行われます。 これが、あの典型的な「ファイナライズされていないMP4」のケースかどうかを 確認できます。OBSのファイルは大きいので、先に正直な注意点を二つ。まず、 無料枠は500 MBまでのファイルが対象で、長時間のセッションはたいていそれを 超えます。そのため、サイズ上限なしの単発修復は€5.90で、失敗した場合は 一切請求しません。次に、エンジンの現状です。構造的なremux修復(損傷して いるが読み取れるファイル向け)は本日すでに動作しています。ファイナライズ されていない録画向けの完全なインデックス再構築(このページが扱う本格的な 修復)は開発中です。

なぜクラッシュがファイルを壊したのか

録画中、OBSは圧縮したフレームを絶え間なくディスクに書き込みます。その 部分が待たされることはありません。待たされるのはインデックスです。MP4のファイナライズは、すべてのフレームの位置とタイミングを対応づける テーブルであるmoov atomを、録画が正常に停止したときにのみ書き込みます。 クラッシュ、BSOD、電源断、あるいはプロセスの強制終了は、その最後の書き込みを 飛ばしてしまいます。ディスク上に残るのは、次のようなものです。

あなたの映像は、何ギガバイトも物理的にそこにあります。ただ、どのプレーヤーも 辿れないファイルの中にあるだけです。本当に失われるのは、クラッシュ時に エンコーダーのメモリバッファにまだ残っていた最後の数秒だけです。それらは 一度も書き込まれておらず、どんなツールでも復元できません。

なぜフォーラムは直せないと言うのか

この問題を検索すると、OBSフォーラムのスレッドで、スタッフがファイナライズ されていないMP4を「もうダメ(toast)」と呼んでいるのを見かけます。彼らは 間違っていません。彼らが説明しているのはremux(再多重化)のこと です。OBSのremuxerは、ffmpegの-c copyと同じく、読み取れる ファイルを詰め直すものであり、インデックスのないファイルは読み取れません。 その枠組みの中では、「もうダメ」は正確です。

しかし、remuxはそもそもこの故障に適したツールではありませんでした。インデックス再構築は別の操作です。生データを走査して フレームの境界を探し、生き残った映像の周りに新しいインデックスを書き込みます。 untruncが何年も前からやってきたことであり、この種の修復が存在する証拠です。 正直に、私たちの現状をお伝えします。ブラウザ内エンジンでのこの再構築は 開発中で、まだ提供していません。損傷しているが読み取れるファイル向けの remux修復は本日すでに動作しています。今すぐ直す必要があるなら、moov atomのページでuntruncを解説しています。 無料でコマンドライン式、まったく同じ設定で作った健全な参照用録画が必要です。 それが便利だとも、私たちがまだそれを置き換えられるとも、取り繕うことなく お伝えします。

次回は防ぐ

設定は三つ、おすすめ順です。どれか一つでも、二度とこのページを読まずに済むことを意味します。

  • MKVで録画し、MP4へ自動remuxする。 設定 → 出力 → 録画フォーマット: mkv にして、 「録画を自動的にmp4へ再多重化する」(詳細)を有効にします。MKVは クラッシュに耐えます — ディスクに書き込まれたものはすべて再生可能な まま残ります — それでいて編集ソフト用のMP4も手に入ります。
  • Hybrid MP4(OBS 30.2以降)。 録画フォーマットとして 「Hybrid MP4」を選びます。録画しながら復旧用のメタデータを書き込むため、 クラッシュしても、インデックスのない「レンガ」ではなく、再生可能な状態に できるファイルが残ります。
  • muxerフラグによるFragmented MP4。 古い環境では、 カスタムmuxer設定に movflags=frag_keyframe+empty_moov を 追加します。Fragmented MP4はインデックスを小さな断片に分けてファイル全体に わたって書き込むため、クラッシュしても失うのは録画全体ではなく現在の 断片だけです。一部の編集ソフトはこれをうまく扱えないことがあり、だからこそ MKVを最初に挙げています。

何が直せて、何が直せないか

修復が当てはまるのは、データがディスクに届いた、切り詰められてファイナライズ されていない録画です — 典型的なOBSのクラッシュのケースです。どんなツールでも 本当に手が届かないのは、クラッシュ時にまだRAMにあった最後の数秒(一度も 書き込まれておらず、失われています)と、ファイルサイズがほぼゼロの録画、つまり OBSが何かを書き込む前にクラッシュした場合です。一つ補足すると、ビットレートが 極端に変動する録画は、映像と音声にわずかなずれを生じて戻ってくることが あります。インデックスなら正確に記していたはずのタイミングを、再構築では 推測しなければならないからです。収めているはずの映像の時間ぶんとおおよそ同じ サイズのファイルは有力な候補ですが、2 KBのファイルはそうではありません。

よくある質問

クラッシュ後にOBSの録画を復旧できますか?

たいていは、はい。ただし正確な言葉は「復旧」ではなく「修復」です。データは録画中に絶え間なく書き込まれ、すでにディスク上にあります。足りないのは、あなたが停止をクリックしたときにOBSが書き込んでいたはずのインデックスです。それを組み直せば、ファイルは再び再生できるようになります — クラッシュ時にまだメモリにあった最後の数秒を除いて、すべてが戻ります。

OBSのMP4録画が再生できないのはなぜ?

MP4のファイナライズは、録画が正常に停止したときにファイルのインデックス(moov atom)を書き込みます。OBSがクラッシュした、PCの電源が落ちた、あるいはプロセスが強制終了された場合、その手順は一度も実行されません — ファイルには何時間もの本物の映像が入っているのに、そこへの地図がないのです。プレーヤーはそれを破損と呼びますが、ストリームデータはディスク上で無傷です。

untruncを使ってOBSの録画を直すには?

三つのものが必要です。untruncのビルド(自分でコンパイルするか、信頼できるバイナリを見つける)、まったく同じ設定の同じOBS環境で作った健全な参照用録画、そしてコマンドライン: untrunc reference.mp4 broken.mp4 です。ちゃんと動きますし、無料です。かかるのは準備の手間です。

OBSではMKVとMP4のどちらで録画すべき?

MKVです — またはOBS 30.2以降ならHybrid MP4。MKVはファイナライズの手順に依存しないためクラッシュに耐えます。しかもOBSは録画停止時にMP4へ自動remuxできるので、編集用のMP4も手に入ります。素のMP4だけが、クラッシュでファイル全体を失う選択肢です。

破損したOBSのMP4をremuxすれば直せますか?

いいえ。remux(OBSの ファイル → 録画を再多重化、またはffmpegの -c copy)は、すでに読み取れるファイルを詰め直すものです。ファイナライズされていないMP4にはインデックスがないため、remuxerもプレーヤーと同じように失敗します。それがフォーラムのアドバイスに含まれる真実の核心です。生データから失われた地図を組み直すインデックス再構築こそが、それを救える方法です。

関連:ffmpegに「moov atom not found」と言われた ·数GBの録画 — なぜアップロードなしが肝心なのか ·その他のMP4の損傷