FixMyVideos

#「有効なMP4が見つかりません」— ファイルを復元する方法

このエラー(時には「有効なMP4が見つかりません」、「有効なMP4ファイルではありません」、「ファイルが認識されている形式ではありません」、または「アトムが見つかりません」)は、ファイルを開いて最初のバイトのチャンクを見て、MP4ではないと結論付けたパーサーから発生します。

これは「インデックスが欠落しているMP4」よりも強いステートメントです。パーサーは、それがMP4であるかどうかも確信が持てていません。3つの可能性があります。

原因1:「ftyp」アトムが欠落しているか破損している

すべてのMP4/MOVファイルは、「ftyp」アトムで始まります。これは、ファイルをMP4/MOVとして識別し、フォーマットブランドを宣言する小さな(通常32バイト)ヘッダーです。これらの最初のバイトが破損しているか欠落している場合(上書きされている、書き込まれていない、部分的なファイルコピーで失われている)、パーサーは「MP4」を見分けることができず、処理を中止します。

これは、次のような場合によく発生します。

  • コピーが完了する前に、SDカードからファイルが部分的にコピーされた。
  • ファイルの最初のセクターがファイルシステムエラーに見舞われた。
  • 信頼性の低いツールを使用した以前の回復試行により、ヘッダーが削除された。

原因2:ファイルは実際にはMP4ではありません

次の可能性があります。

  • 名前が変更された「.mkv」(MKVファイルは「1A 45 DF A3」で始まります。完全に異なります)。
  • 名前が変更された「.avi」(RIFF形式のヘッダー)。
  • 誰かが「.mp4」拡張子を付けたRaw「.h264」/「.h265」エレメンタリストリーム。
  • コンテナのないProResのRAWストリーム。

テスト:

file your_file.mp4

'file'が'ISO Media, MP4 ...'以外のものを報告する場合、実際にはMP4ではありません。

原因3:ファイルは'mdat'のみで、コンテナがまったくありません

一部の回復試行(または一部のカメラ障害モード)では、'ftyp'もMOOVもない生の'mdat'ペイロードのみのファイルが生成されます。つまり、圧縮されたビデオフレームがファイルに含まれているだけです。パーサーはアトムシグネチャをまったく見つけられず、処理を中止します。

これは回復可能ですが、インデックスを再構築するだけでなく、データの周りに完全なコンテナを構築する必要があります。

どれかを判断する方法

file your_file.mp4
xxd your_file.mp4 | head -1

最初の16バイトを読み取ります。

  • バイト4〜12のどこかで'... ftyp ...'で始まる→部分的な損傷を伴う原因1。'ftyp'はバイト4にあるはずですが、シフトしている可能性があります。
  • '1A 45 DF A3'で始まる→実際にはMKVです。
  • '52 49 46 46' ('RIFF')で始まる→実際にはAVI/WAV/WebPです。
  • '00 00 00 01'または'00 00 01'で始まる→ RAW H.264/H.265ストリームです。
  • 'icpf'で始まる(または最初のチャンクでそれに近い)→ raw ProResフレーム。
  • ランダムに見えるバイトで始まる → 原因3 ('mdat'のみ) または深刻な破損。
ffprobe -v error your_file.mp4

エラーが発生しても「ffprobe」がストリームに関する有用な情報を返す場合、ファイルは見た目よりも回復可能性が高いです。

自分で試せること

原因1 — ヘッダーの部分的な損傷

ffmpeg -err_detect ignore_err -i broken.mp4 -c copy out.mp4

「ftyp」が部分的に無傷で、FFmpegが損傷を超えたアトムを見つけることができる場合、時々機能します。

原因2 — ファイル名の変更

実際の形式に名前を変更して、通常どおり再生します。

mv broken.mp4 broken.mkv

原因3 — 'mdat'のみ

これはより難しいケースであり、コーデックを識別するためにフレームレベルの分析が必要で、その後、コンテナをゼロから構築する必要があります。これはまさに当社のパイプラインが行うことです。

当社の復元処理方法

  • ファイルの最初の1MBのバイトレベルスキャンで、「ftyp」、アトム署名、およびコーデック固有のフレームマーカーを探します。
  • フレームデータからのコーデック識別 — コンテナメタデータが存在しない場合でも機能します(原因3)。
  • 必要に応じてコンテナをゼロから作成:識別されたフレームの周りに新しいMP4ラッパーを構築します。
  • フォーマット認識名前が変更されたファイルの場合 — 診断により実際のフォーマットが識別され、元のファイルが修復されるか、名前を変更するように指示されます。

特に原因3の場合、これはより困難な回復シナリオの1つです。事実上、生のコーデックデータの周りにコンテナを構築しています。ただし、コーデックが認識できるもの(ProRes、H.264、H.265、MJPEG)の場合は対応可能です。

あなたが行うこと

  1. ファイルをアップロード。最大50GB。
  2. 診断により、該当する原因と回復可能なものが特定されます。
  3. 回復が可能な場合はプレビューし、機能する場合にのみお支払いください。

FAQ

ファイルは録画から期待するサイズとまったく同じですが、なぜMP4ではありませんか? ファイルサイズはフォーマットとは無関係です。ファイルは適切なサイズであっても、ヘッダーバイトが完全に間違っている可能性があります(上書きされている、書き込まれていない、失敗した変換によってスクランブルされている)。「file」と「xxd」で実際のコンテンツを確認してください。

以前の復元ツールがこのエラーを生成する「修正済み」ファイルを書き込みました。 よくあることです。一部のツールは、互換性を損なう方法で「ftyp」を削除または変更します。元のファイル(不適切な復元前のもの)がまだある場合は、それを使用してください。そうでない場合は、お手元にあるものをアップロードしてください。通常、部分的に破損した出力からでも再構築することができます。

カメラがSDカードから直接このエラーを生成しました。 「ftyp」が書き込まれる前の、録画の非常に早い段階でカメラが停止した場合に可能です。MOOVがない場合よりも少ないですが、起こり得ます。アップロードしてください。

これはRAWの'.h264' / '.h265'エレメンタリストリームで動作しますか? はい。有効なMP4/MOVコンテナにラップします。フレームタイミングは推測する必要があるため(エレメンタリ ストリームにはタイムスタンプがない)、結果はデフォルトのフレームレートで再生されます。必要に応じて、後でFFmpegで調整できます。

私の映像は安全ですか? フランスにあるサーバー、48時間後に自動削除、トレーニングや共有には一切使用されません。プライバシーポリシー

関連

ファイルをアップロード →

無料プレビュー · 義務はありません

動画を復元する準備はできましたか?

ファイルをアップロードしてください。約1分で5秒間の無料プレビューをご覧いただけます。プレビューが正しいと思える場合にのみお支払いください。

動画をアップロード →