破損したmp4ファイルを修復する方法:moovatomが見つかりません

破損したmp4ファイルを修復する方法:moovatomが見つかりません

使用して録音をしました。

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

その後、ファイルの破損を止めずに/tmp/audio.mp4別のディレクトリ()に移動しました。/root/audio.mp4ffmpeg.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

答え1

試してみてください。切り取らないファイルを回復します。

破損した(切り取った)mp4、m4v、mov、3gpビデオを回復します。類似しており、破損していないビデオがある場合。

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

付属のDockerfileを使用して、パッケージをコンテナとしてビルドして実行できます。

git clone https://github.com/ponchio/untrunc.git
cd untrunc
docker build -t untrunc .
docker run -v ~/Desktop/:/files untrunc /files/filea /files/fileb

答え2

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

  • Dockerのインストール(まだインストールしていない場合)

  • リポジトリを複製します。

      git clone https://github.com/ponchio/untrunc
    
  • Dockerfileと同じディレクトリで次を実行します。

      cd untrunc
      docker build -t untrunc .
    
  • これにより、ローカルドッカーイメージが生成されます。時間がかかります。

  • これで、修正したい破損したファイルと同じソース(私の場合は同じカメラ)のサンプルファイルを提供する必要があります。たとえば、

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

関連情報