約110 MBの.aviファイルがあります。VLC Media Playerで再生しようとすると、「このファイルは壊れています。修復しようとしていますか?」そしてそれがそのことをした後、それはまだそれを再生することができません。
そこから可能なビデオを取得できる可能性のある他のソフトウェアはありますか?たぶん、そのようなことを専門とする人ですか?VLCでなんとかできるのではないかと考えていたので、あまり期待していませんが、とにかく試してみようと思いました...
約110 MBの.aviファイルがあります。VLC Media Playerで再生しようとすると、「このファイルは壊れています。修復しようとしていますか?」そしてそれがそのことをした後、それはまだそれを再生することができません。
そこから可能なビデオを取得できる可能性のある他のソフトウェアはありますか?たぶん、そのようなことを専門とする人ですか?VLCでなんとかできるのではないかと考えていたので、あまり期待していませんが、とにかく試してみようと思いました...
回答:
過去にDivFixを使用して壊れた/不完全なAVIがたくさんあったのは幸運でしたが、Windows XP以降でうまく動作するかどうかはわかりません。
新しいバージョンはDivFix ++です。
DivXFix ++は、ファイルのインデックス部分を再構築することにより、破損したAVIファイルストリームを修復するように設計されています。これは、一部のファイルが現在ed2kまたはbittorentネットワークからダウンロードしているように、インデックス部分のない映画をプレビューしようとするときに非常に便利です。DivFix ++は、バグと低パフォーマンスのため、「DivFix」プログラムを完全に書き換えたものです。
役立つ可能性のあるプログラムを次に示します。
壊れたAVIファイルの修復に関する広範なチュートリアルがここにあります:壊れたまたは破損したAVIファイルを修復する-AfterDawn:ガイド
FFmpegでビットストリームコピーを実行して、コンテナの再構築を試みることもできます。
ffmpeg -i input.avi -c copy output.avi
VirtualDubは壊れたAVIファイルでかなり驚くべきことをすることができます。VirtualDubでファイルを開いてクックし、正常に開いた場合は、新しいAVIファイルとして保存し直します。通常、圧縮設定を変更する必要さえありません。
VLCが修復を試みなかったAVIがいくつかあり、DivFix ++でエラーを探しました。それらをffmpegに渡すことは機能しませんでしたが、機能mencoder
しました(非常に高速です):
mencoder -idx input.avi -ovc copy -oac copy -o output.avi
(mencoderは、Homebrew mplayer
など、ほとんどのシステムでパッケージの一部ですbrew install mplayer
。)
破損したAVIインデックスを修復する方法に関するすべての良いアイデア(私の好みはですffmpeg
)が、破損したインデックスを含むaviファイルを見つけてテストし、積極的に修復する方法をここに提供します。mediainfo
ffprobe
vlcが不満を言うファイルを検出するために他の人や他の人を使用しようとして失敗した後、私はそれが不満を持っvlc
ているものだったので、ついに使用することにしました。スキャンおよび自動修復スクリプトの一部として役立つ可能性のあるスニペットを次に示します。
if grep -q "avi demux error" \
<(cvlc --vout null --aout null --stop-time 2 "${VIDFILE}" vlc://quit 2>&1 )
# alternate ways to stop after two seconds
#<(timeout 2 cvlc --vout null --aout null "${VIDFILE}" 2>&1)
#<(cvlc --vout null --aout null "${VIDFILE}" 2>&1 & sleep 2; kill $!)
then
echo "avi demux error: ${VIDFILE}"
exit 1
fi
注:VLCの一部のバージョンには--stop-timeのバグがあり、他のシステムにはない場合があるため、代替の停止方法(終了する前にビデオ全体を再生しない)が含まれていますtimeout
。