Восстановление видео с отформатированной карты памяти Canon 60D
Оборудование:
- карта памяти Transcend SDHC 32 Gb
Проблема:
- Отформатировали карту памяти в Windows
Инструменты:
- R-Studio программа для восстановления данных
- WinHex дисковый редактор
- File Joiner
- Голова и руки специалиста
- Написанная своя программа
Задача:
Необходимо восстановить видео файлы с карты памяти из Canon 60D.
Процесс восстановления:
В качестве устройства для восстановления данных мы имеем карту памяти на 32 гб. Так как по исходным данным карта была отформатированна, то надо первым делом проверить не заполнены ли сектора карты памяти нулями. А то в таком случае восстановление из программного превратится в аппаратное.
Это когда карта памяти исправна, работает после форматирования нормально, но программами восстановления ничего не восстановить, так как в секторах 00 и данные можно достать через выпайку микросхемы, чтение ее на программаторе с дальнейшей сборкой логического образа на основе служебной информации (номера блока или транслятора).
При просмотре содержимого карты памяти в дисковом редакторе мы увидели, что флешка после форматирования не превратилась в «пустышку», заполненную нулями, а значит есть с чем работать. Для восстановления фото различных форматов JPG, CR2, CRW, NEF и пр после форматирования, в общем, подойдет любая программа. Так что с восстановлением фото может справиться любой пользователь.
Но заказчика, помимо фото, больше интересовали видео файлы в формате MOV. А вот они то, как раз, и не восстанавливались всем известными программами для восстановления. Точнее сказать, файлы видео находятся, но корректно не проигрываются – появляется картинка, доли секунды звук, а потом картинка застывает и вместо звука шум. Возможно вам это знакомо, раз вы оказались на этой странице.
Почему видео файл не работает после восстановления? Потому что фотоаппарат пишет файл не линейно, а фрагментировано – сначала пишется «тело» файла, а когда вы нажимаете кнопку «СТОП» уже формируется заголовок видео. И такое размещение частей одного видео файла отмечается в файловой структуре. А после форматирования и даже удаления файла – информация о том, что файл состоит из нескольких частей теряется.
Скажу сразу, что данную задачу мы успешно решили, так как не первый раз уже сталкиваемся с подобной проблемой. Вот один их таких решенных кейсов «Восстановление видео с Canon 5D MarkIII».
Как восстановить видео файл с Canon 60D?
Запись видео не линейно происходит не только на Canon 60D, но и многих других фотоаппаратах: LEGRIA, Canon 6D, 600D, 5D Mark III, 5D Mark IV, EOS 90D и др. И заголовок («header») у них лежит, не во всех случаях, но в тех, с которыми сталкивались мы, после «тела» («body») файла. Далее рассмотрим один из способов восстановления, если вы захотите самостоятельно попробовать восстановить видео с Canon 60D.
И так. Весь файл формата MOV или MP4 состоит из частей, по терминологии разработчика, именуемых atom. Основные, которые нас интересуют для восстановления, атом ftyp – это атом заголовка, и атом mdat – атом, содержащий сам видео поток.
Четыре байта (подчеркнуто красным) перед названием атома, будь-то ftyp, moov, mdat – это размер атома в байта в шестнадцатеричной системе счисления. Нам это в будущем пригодится. Основная идея восстановления состоит в следующем: найти по отдельности файлы body и header и потом их «склеить» в правильном порядке.
Искать и восстанавливать фрагменты видео файлов будем с помощью R-Studio. Мы уже подготовили xml файл с сигнатурами body и header и остается только его подгрузить. (может прям скопировать содержимое в тестовый файл и сохранить его под именем, например, Canon60D.xml)
<?xml version=”1.0″ encoding=”UTF-8″?>
<FileTypeList version=”2.0″>
<FileType id=”50001″ group=”Other files” description=”HEADER_MOV” features=”” extension=”BIN”>
<Signature offset=”4″>\x66\x74\x79\x70\x71\x74</Signature>
</FileType>
<FileType id=”50002″ group=”Other files” description=”BODY_MOV” features=”” extension=”BIN”>
<Signature offset=”4″>\x6D\x64\x61\x74</Signature>
</FileType>
</FileTypeList>
Запускаем R-Studio и переходим в меню Tools в пункт Settings… и в поле User’s file type указываем путь куда сохранили наш файл Canon60D.xml и нажимаем Apply. После этого наши сигнатуры буду добавлены в базу программы.
Убедиться в том, что сигнатуры добавились можно во вкладке Known File Types в разделе Other files.
Затем выбираем нужный носитель (карту памяти или ее образ, если сделали), запускаем сканирование, отключив поиск всех файловых систем и оставив только галочку на Extra Search for Known File Types, и ждем завершения сканирования. В результате сканирования появится партиция RAW, которую надо открыть двойным щелчком ЛКМ. На открытой панели вы должны увидеть следующую картину
Отмечаем обе эти папки и сохраняем в каталог, например, Recovery.
Хочу обратить ваше внимание на Рис.4. На нем можно заметить, что часть заголовков имею размер 98304 байт, что соответствует 0х18000 в шестнадцатеричной системе. А на Рис.1, если сложить 0х00000018 + 0х00017FE8, то тоже получим 0х18000. Все это к тому, что те заголовки, которые имеет значительно бОльший размер, придется подкорректировать, так как они восстановлены не верного размера.
Нам привычней всего использовать для этого дисковый редактор WinHex. Вы же можете использовать любой другой, который вам привычней. И так, открываем «большой» файл заголовка из папки HEADER_MOV, например 005.BIN.
Нажимаем Alt+G и появившемся окне устанавливаем позицию, где заканчивается заголовок и отсчет от начала файла и нажимаем ОК. На позиции 0х18000 через ПКМ отмечаем начало участка и нажимаем Ctrl+Shift+End, чтоб перейти в конец файла с одновременным выделением «лишнего». Жмем Delete и все лишний мусор удален и можно сохранить заголовок правильного размера. ! Имя файла при этом не меняем. Это важно !
Повторяем операцию с остальными заголовками большого размера. Обращаю внимание, что заголовки могут быть РАЗНОГО размера. Правильно же, конечно, каждый раз уточнять размер заголовка, складывая размер атома ftyp и атома moov. У больших файлов заголовок будет большего размера. Например, не 0х18000, а 0х20000 байт в HEX.
Завершив все корректировки файлов в папке HEADER_MOV, переходим к следующему этапу – к сборке видео. Для удобства рекомендуем скопировать все файлы из папки HEADER_MOV в папку BODY_MOV и отсортировать по имени. Выглядеть это должно таким образом
Как можно заметить, файлы чередуются по размеру. Файлы меньшего размера – заголовок видео и он должен быть первым, а файл перед ним бОльшего размера – «тело» видео файла, которое должно лежать по после заголовка.
Наиболее простым способом для склейки двух файлов в один будет воспользоваться программой «File Joiner», которую легко найти в интернете. Интерфейс у нее простой
Для склейки можно прям из браузера перетаскивать файлы в указанном выше порядке. Обратите внимание, что галочка «Auto» должна быть снята и не забудьте указать каталог и имя нового файла. И так далее….
Этот пример описывает наши первые работы по восстановлению видео с отформатированной карты памяти, когда мы сталкивались с фрагментированным видео. Сейчас же мы используем уже свою программу, написанную специально для таких случаев, которая умеет склеивать «тела» и «заголовки» в правильном порядке, даже если они лежат и не друг за другом.
Восстановление данных не всегда сводится к простому сканированию программой, как может показаться с первого взгляда. В компании HDDprofi работают настоящие профессионалы, которые готовы «погрузиться с головой» с решение задачи по восстановлению данных с носителя заказчика. Ждем вас на диагностике!
Диагностика бесплатная! Оплата за положительный результат!