안녕하세요. 반디집 개발자 입니다.
문제가 된 파일을 보내주셔서 감사합니다.
압축 파일의 손상은 다음과 같은 부분에서 발생할 수 있습니다.
1) 압축하기 전 미디어의 손상으로 압축할 파일을 제대로 파일을 읽지 못한 경우
2) 압축할때 프로그램의 버그로 손상된 압축 파일이 생성된 경우
3) 생성된 압축 파일이 하드 디스크의 손상, 혹은 네트웍 전송시 문제가 발생하여 전송된 경우
보내주신 파일을 확인해 보니, 확실이 문제가 있어서 문제가 된 원본 동영상 파일을 구해서
비교를 해 보았습니다.
먼저 zip 파일에 저장된 crc 정보를 보니 원본 파일과 동일하였고,
이는 파일을 읽을때는 문제가 없었다의 의미이기 때문에 1)번의 경우는 확실히 아님이 확인 되었고,
2)번의 반디집의 버그일 가능성을 확인하기 위해서 보내주신 깨진 파일과 동일한 조건으로 압축을 진행해 본 결과
다음과 같은 경과를 얻었습니다. 왼쪽은 보내주신 손상된 파일이고, 오른쪽은 제가 압축한 파일입니다.

보시면 다른 부분은 100% 동일한데, 문제가 되는 부분만 압축 파일의 일부분이 전부 00 으로 지워진걸 확인할 수 있습니다.
( 압축 파일의 0x12039000 부터 0x12040000 까지 0x7000 바이트가 전부 0 으로 채워져 있었습니다. )
혹시 반디집의 버그가 아닐까 싶어서 관련 부분을 검토하였지만,
손상된 부분이, 반디집 내부에서 파일을 읽고, 압축하고, 저장하면서 처리하는 데이타의 단위와 어긋나는것을 발견하였습니다.
즉, 반디집 자체의 버그로는 이런 형태로 데이타가 손상되는 일이 발생할 수 없다는것이 저의 결론입니다.
결국 남은것은 3)번인데, 궁금한 점이
(1) 혹시 단순히 압축 데이타를 하드에 저장하였다가 압축을 푸는 과정에서 손상이 발생한 것인지,
(2) 아니면 USB 드라이브와 같은 외부 저장장치로 파일을 옮긴 후 문제가 발생하였는지,
(3) 아니면, 네이버 메일로 대용량 전송하는것과 같은 방법을 사용하여 파일을 전송 한 후 문제가 발생하였는지 입니다.
파일이 하필 0x1000 의 배수 위치에서 전부 0 으로 채워져 있다는 것은 물리적인 손상일 가능성이 큰데
어떤 경우에 이런 문제가 발생하는 꼭 알고 싶습니다.
감사합니다.