untrunc で壊れた動画ファイルの修復を試みた ― 2023年01月22日 13時23分51秒
untrunc は破損した mp4 と mov ファイルを修復するプログラム。ご察しの通り、動画を一枚壊してしまったのだった。動画修復プログラムを探して見付けたのが untrunc。しかし、FreeBSD の ports には入っていなかった。
README.md を読むと、コンパイルのやり方が書いてある。しかし、書いてある通りだとコンパイルできなかったので、修正したのが以下の通り。
git clone でコードを直接取得。libav は configure で作れる。libav は gcc を仮定しているので、--cc で clang の cc を明示的に渡す。その後は、make では無く gmake。
% git clone https://github.com/ponchio/untrunc
% cd untrunc/libav
% ./configure --cc=cc
% gmake
% cd ..
% c++ -o untrunc -I./libav file.cpp main.cpp track.cpp atom.cp
p codec_*.cpp codecstats.cpp codec.cpp mp4.cpp log.cpp -L.
/libav/libavformat -lavformat -L./libav/libavcodec -lavcodec -L
./libav/libavresample -lavresample -L./libav/libavutil -lavutil -l
pthread -lz -lbz2
最後のコマンドの README.md からを元に。しかし、そのままではリンクに失敗。-lbz2
を追加したら完成した。
このプログラムに正常なファイルと壊れたファイルを渡す。
% ./untrunc /path/to/working-video.m4v /path/to/broken-video.m4v
残念ながら、今回のファイルはこれでは直せなかった。
コメント
トラックバック
このエントリのトラックバックURL: http://uyota.asablo.jp/blog/2023/01/22/9557260/tb
※なお、送られたトラックバックはブログの管理者が確認するまで公開されません。
コメントをどうぞ
※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。
※なお、送られたコメントはブログの管理者が確認するまで公開されません。