web-dev-qa-db-ja.com

壊れたmp4ファイルを回復する方法:moov atom not found

で録音した

ffmpeg -f alsa -ac 2 -i plughw:0,0  /tmp/audio.mp4

次に、ffmpegを停止せずに/tmp/audio.mp4を別のディレクトリ(/root/audio.mp4)に移動し、.mp4ファイルが破損しました。

ffplay /root/audio.mp4
[...]
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f3524000b80] moov atom not found
audio.mp4: Invalid data found when processing input

.mp4ファイルを復元して読み取る方法

10
user123456

ntrunc を使用してファイルを修正できます。

破損した(切り捨てられた)mp4、m4v、mov、3gpビデオを復元します。同様の壊れていないビデオがある場合。

ソースからコンパイルする必要があるかもしれませんが、Dockerコンテナーを使用してフォルダーをファイルとコンテナーにバインドし、それをそのように修正する別のオプションがあります。

含まれているDockerfileを使用して、パッケージをコンテナとしてビルドおよび実行できます

docker build -t untrunc
docker run -v ~/Desktop/:/files untrunc /files/filea /files/fileb
12
Rabin

ここで提供される解決策( https://github.com/ponchio/untrunc )は私の問題を解決しました! Dockerコンテナーとして実行します。ここに私のステップ:

  • Dockerをインストールします(まだ持っていない場合)
  • ファイルをダウンロード https://github.com/ponchio/untrunc/blob/master/Dockerfile
  • Dockerfileの同じディレクトリで、次を実行します。

    docker build -t untrunc .
    
  • ローカルのDockerイメージが構築されます-時間がかかります。

  • 次に、同じOrigin(私の場合は同じカメラ)からのサンプルファイルと、修正したい破損したファイルを提供する必要があります。例えば。:

    docker run -v /path/to/files/:/files untrunc /files/working_video /files/broken_video
    
3