Bozuk AVI endeksini nasıl onaracağınızla ilgili tüm iyi fikirler (benim tercihim ffmpeg
), ancak burada kırılmış indeksi olan avi dosyalarını bulmak ve bunları test etmek ve proaktif olarak onarmak için bir yol katıyor. mediainfo
ffprobe
Vlc'nin şikayet edeceği dosyaları saptamak için başarısız bir şekilde kullanmaya çalıştıktan ve diğerlerini de şikayet ettikten sonra kullanmaya karar verdim vlc
. İşte, bir tarama ve otomatik onarım komut dosyasının parçası olarak yararlı olabilecek bir snippet.
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
Not: Alternatif durdurma yöntemleri (bu, çıkmadan önce tüm videoyu oynatmaz ) dahil edilmiştir, çünkü VLC'nin bazı sürümlerinde - en kısa zamanda bir hata vardır ve diğer sistemlerde olmayabilir timeout
.