2016-03-21 21 views
0

cihazını kapattım C dilini ve ffmpeg'i programın MP4 dosyalarına bir multipleks gerçek zamanlı ses ve görüntü gerçekleştirdim ve her şey iyi çalışıyor ancak ani elektrik kesintisi yeniden kullanımında kayıt MP4 dosyası bozuk, VLC bu dosyayı çalamıyor. Ben sebebi hasarlı dosyaları aramak için dizin ve zaman damgası bilgisi, ben araxis birleştirme aracı dosyasının fonksiyonu av_write_trailer başarılı bir çağrı göre kullanımı kayıp neden av_write_trailer römork işlevi yazmak hiçbir çağrı ve av_write_trailer bir hayır olduğunu düşünüyorum ve iki farklı nokta bulundu: 1. Dosya üstbilgi kutusu numara değerindeki bozuk dosyalar doğru değil 2. Bozuk dosya, dosyanın sonu yok.Ffmpeg kullanarak MP4'ü kaydederken aniden

Artık programımı açtıktan sonra onarım yapmak istediğim program otomatik olarak bozuk dosyaları onarabilir, Google'da etkili yöntemler bulamadı. benim düşünce düşünce normal kayıt sürecinde kayıp bir dosya eksik iki bilgi eksik: kutu numarası ve dosya sonu, bir yerel dosyaya kaydedin, MP4 dosya bütünlüğü yazarken bu dosyayı sonra silin Hasarlı, daha sonra bir sonraki güçte, dosya ve ilgili bilgileri okumak için karşılık gelen hasarlı dosyaları yazmak için okuyun. Ama şimdi sorun şu ki, kutu sayısını ve dosyanın sonunu nasıl kaydedeceğimi bilmiyorum, bu mümkün mü? Mümkünse ne yapmalıyım? Cevabınızı dört gözle bekliyorum!

+2

Güç kaybı/çökmesi bekliyorsanız, mp4'e ÇALIŞMAYIN. Bu olaylardan kurtulabilecek bir formata kaydedin (flv gibi) Sonunda mp4'e dönün. – szatmary

cevap

0

MP4 dosyasının hasar görmesinin ana nedeni, üstbilginin veya fragmanın dosyada düzgün yazılmamasıdır, daha sonra, tüm dosya önemsiz bir veri haline gelir. Böylece, medya oynatıcısının hiçbiri kırık mp4 dosyasını oynatamadı. Yani, İlk olarak, dosyayı oynatmadan önce bozuk dosyanın onarılması gerekir.

http://grauonline.de/cms2/?page_id=5 (Windows/Mac) (ücretli :()

https://github.com/ponchio/untrunc (Linux tabanlı işletim sistemi) (tabii, ücretsiz: onarım ve geri bağlantıları aşağıda verilmiştir verileri almak için kullanılabilir bazı uygulamalar ve püf noktaları bulunmaktadır . Bu saldırı arkasında !!!)

İkincisi, el ile HEX editörü kullanarak bozuk dosya onarma

Mantık: Bu kesmek iki videonun da aynı kamerasından yakalanır kırık mp4 dosyası ve iyi bir video dosyası gerektirir Çağı.Ayrıca boyutu, bozuk mp4 dosyasından daha büyük olmalıdır.

Her iki video dosyasını da herhangi bir HEX düzenleyicide açın. Fragman bölümünü iyi video dosyasından kopyalı video dosyasına kopyalayın ve kaydedin!

Not: Her zaman video dosyasının yedeğini alın.

detaylı bilgiler için bu bağlantıları izleyin:

http://janit.iki.fi/repair-corrupted-mp4-video/

https://www.lfs.net/forum/thread/45156-Repair-a-corrupt-mp4-file%3F

http://hackaday.com/2015/04/02/manual-data-recovery-with-a-hex-editor/

http://www.hexview.org/hex-repair-corrupt-file.html

, Bile zor MP4 dosya birçok avantajı vardır, bu tür bir hata Üçüncü olduğunu öngörülemez ve onu işlemek için zor . Böylelikle, MPG ve AV_CODEC_ID_MPEG1VIDEO/AV_CODEC_ID_MPEG2VIDEO (FFMPEG) gibi formatların kullanılması, bu tür bir hatayı önlemeye yardımcı olabilir.Bahsedilen MPG formatı, herhangi bir başlık/trailer gerektirmez. Herhangi bir ani elektrik kesintisi olduğunda MPG dosyası, şimdiye kadar kaydedilmiş olan çerçevelerdeki dosyayı oynatabilir.

Not: Bu tür özelliklere sahip başka biçimler ve kodekler de vardır.

İlgili konular