h.264 코덱으로 된 녀석이라 데이터 부분만 빼내서 ffmpeg 거치면 재생이 가능할줄 알았는데 무리인가?
[링크 : https://video.stackexchange.com/questions/29073]
[링크 : https://codecpack.co/download/recover-mp4.html]
[링크 : https://stackoverflow.com/questions/19300350]
+
2022.02.14
복구 성공!
동일 기기에서 촬영된 정상 동영상과 복구할 동영상이 필요함
1. 정상 동영상에서 부터 무언가를 추출
C:\> recover_mp4.exe good.mp4 --analyze /// 중략 Now run the following command to start recovering: recover_mp4.exe corrupted_file result.h264 --noaudio --ext Then use ffmpeg to mux the final file: ffmpeg.exe -r 12.097 -i result.h264 -c:v copy result.mp4 |
2. 비정상 동영상으로 부터 h264 만 추출
위에서 알려준 옵션대로 처리해야 복구가 진행된다.
C:\> recover_mp4.exe corrupted_file result.h264 --noaudio --ext // 중략 skip: 0x001C02C5 [0x 6] ??? {00 00 00 02 09 F0} H264: 0x001C02CB [0x 15CA] -> 0x 1BF903 {41 9B A0 14} P frame %100.000 Complete! H264 non-IDR NAL unit size: Min 0x4, Avg 0x1289, Max 0x366C Video=99.864 'result.h264' created, size 1838797 (99.864%) |
3. 복구 데이터를 이용해서(아마도 h.264 스트림?) mp4로 변환
-r 뒤의 숫자는 framerate 니까 굳이 안 넣어 주면 원본의 속도로 복구 된다. (안되면 넣어주는게 좋을 듯)
C:\> ffmpeg.exe -r 30 -i result.h264 -c:v copy recovered.mp4 Input #0, h264, from 'result.h264': Duration: N/A, bitrate: N/A Stream #0:0: Video: h264 (Constrained Baseline), yuv420p(progressive), 800x480, 25 fps, 25 tbr, 1200k tbn Output #0, mp4, to 'recovered.mp4': Metadata: encoder : Lavf59.16.100 Stream #0:0: Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p(progressive), 800x480, q=2-31, 25 fps, 25 tbr, 15360 tbn Stream mapping: Stream #0:0 -> #0:0 (copy) Press [q] to stop, [?] for help [mp4 @ 0000020bce548780] Timestamps are unset in a packet for stream 0. This is deprecated and will stop working in the future. Fix your code to set the timestamps properly frame= 363 fps=0.0 q=-1.0 Lsize= 1798kB time=00:00:12.06 bitrate=1220.7kbits/s speed=2.16e+03x video:1796kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.130085% |
[링크 : https://blog.naver.com/winsweet/222340783544]
[링크 : http://slydiman.me/eng/mmedia/recover_mp4.htm]
[링크 : https://restore.media/blog/how-to-fix-corrupted-mp4-files]
'프로그램 사용 > ffmpeg & ffserver' 카테고리의 다른 글
ffmpeg을 이용한 원하는 동영상 구간 자르기 (0) | 2022.07.28 |
---|---|
ffmpeg을 이용하여 동영상을 프레임 별로 jpeg 로 변환하기 (0) | 2022.04.15 |
ffmpeg을 이용한 rgb565 to bmp (0) | 2021.10.18 |
ffmpeg 재생 어렵다 -_ㅠ (0) | 2021.02.22 |
ffmpeg fbdev (0) | 2021.02.09 |