НОВОСТИ Восстанавливаем данные с ZOOM H6 Handy Recorder подручными средствами

Alvaros
Онлайн
Регистрация
14.05.16
Сообщения
21.452
Реакции
101
Репутация
204
Введение



Намедни попал в нашу лабораторию довольно любопытный заказ. Профессиональный диктофон ZOOM H6 Handy Recorder. Устройство и носитель в рабочем состоянии, проблема — носитель, на котором находились данные (карта памяти SDHC на 32 Гбайт) был отформатирован в фотоаппарате. Вопрос о том, каким образом флешка из диктофона попала в фотоаппарат, оставим для истории — нам ответ на него не интересен. Интересно восстановить записанные звуковые данные.

Форматирование разделов FAT32 — это всегда потеря файловых записей; процесс сопровождается их заменой «чистыми». С одной стороны, это удобно, так как в структурах FAT32 не остается никаких «рудиментов» файловых записей. С другой — это крайне губительно для данных, так как в случае фрагментации файлов и необходимости их восстановить, простое RAW-сканирование становится недостаточным, на выходе получаются поврежденные или неработающие файлы.

Не исключение и наш заказ. Попытки отсканировать карту памяти имеющимся ПО (Data Extractor, R-Studio, R.Explorer) структуру папок обнаружить не смогли. При черновом восстановлении аудиопотока (wav-файлы) получаются работающие файлы, но с перемешанным содержимым — то есть продолжительность звуковой дорожки верная, файл проигрывается, но звук идет кусками то из одной дорожки, то из другой.

Владелец устройства сообщил, что запись велась на два микрофона в формате интервью, то есть аудиопоток должен быть идентичным, но громкость голосов в каждой записи — разной.

251733739aa674d4c86c43e2a5dd9e0b.jpg

Поврежденный аудиофайл. Явно заметно, что области громкого звука и тихого звука имеют примерно одинаковую продолжительность и резкие, обрывающиеся, границы

f0deac2210dc01378f4d5d9f71aaa19c.jpg

Тот же аудиофайл после исправления.

ТТХ устройства



Начинаем, как водится, со знакомства с устройством. Идем на , и вдумчиво читаем, что там про него пишут. Особенно нам интересны поддерживаемые форматы файлов и количество независимых микрофонов. Устройство поддерживает подключение до 4 микрофонов и, соответственно, одновременную запись с них. Максимально может записываться одновременно 8 дорожек (оно и понятно: стерео с 4 микрофонов). С форматами файлов все тоже понятно. Ассортимент не велик, форматы широко распространенные, никаких «своих» форматов нет. И это хорошо.

1e84f561dc99ae9a7392b706f9c02632.jpg

Форматы аудиофайлов, поддерживаемые рекордером

Вся нужная информация найдена. Начинаем работать. Для восстановления информации нам нужно ответить последовательно на следующие вопросы: какой формат записи использовался в нашем случае, как расположены данные на карте памяти, и что надо сделать для того, чтобы файлы заработали правильно?

1. Какой использовался формат записи?



Ответ на этот вопрос находится в заголовке аудиофайла:

851a8c13056a834437a8d8a02ace75e5.jpg


Тут все просто, в пояснениях не нуждается. Поехали дальше.

2. Как расположены данные на карте памяти?



Здесь и дальше используем .

Находим первый заголовок аудиопотока (берем пример заголовка из результатов предварительного RAW-восстановления). Выглядит он примерно так:

bfc8a4cc5d02fb558b5f3475b037c014.jpg


В каждом файле есть таймштамп:

d05083138d27273adea299d260c617d9.jpg


Поиск тех аудиоданных, которые нам нужны, лучше вести не по заголовкам файлов (их могут оказаться, и оказалось в нашем случае, многие сотни), а по таймштампам.

Производим поиск от начала до первого таймштампа нужной нам аудиозаписи. Обозначаем начало сектора с таймштампом как начало блока. Теперь производим поиск последнего таймштампа нужной нам аудиозаписи (ищем, соответственно, с конца). Дальше нам нужно найти окончание данных, относящихся к нужной нам записи. Это просто: ищем следующий за последним таймштампом заголовок нового аудиопотока. На всякий случай нужно убедиться, что он не относится к тому, что мы ищем: смотрим в сектор, видим там другой таймштамп. Отлично. Последний байт перед найденным заголовком отмечаем как конец блока.

Теперь у нас имеется выделенная область, содержащая данные нужного нам аудиопотока:

1067c2d348002e1b9c24b2f0b99ad3f2.jpg


Копируем эту область в новый файл. Так, во-первых, удобнее работать. А во-вторых, другие-то данные нам не нужны — зачем нам их восстанавливать?

Дальше работаем с полученным файлом.

Из формата файла: WAV, 44k, mono. То есть при записи с двух микрофонов мы имеем дело с двумя звуковыми дорожками.

Разбиваем файл на фрагменты по количеству таймштампов. Получаем четное количество фрагментов со следующими параметрами:

Фрагмент 1 — 32 кбайт;
Фрагмент 2 — кратно 32 кбайт;
Заголовки фрагментов 1 и 2 идентичны.

Фрагмент 3 — 32 кбайт;
Фрагмент 4 — кратно 32 кбайт;
Заголовки фрагментов 3 и 4 идентичны.

И так далее, все имеющиеся аудиопотоки (восстановить требовалось 10).

После несложных вычислений:

1) Аудиопоток фрагментирован;
2) Размер фрагментов составляет 32 кбайт;
3) Фрагменты чередуются в порядке: четные относятся к первой дорожке, нечетные — ко второй.

662f50713a104fbd3877549ca4478476.jpg

Структура аудиопотока, записанного с двух микрофонов рекордером ZOOM H6 Handy recorder

3. Пора собирать аудиофайлы



Очевидно, что после того, как мы узнали, каким образом ZOOM H6 handy recorder пишет данные, собрать их в нормально проигрываемые аудиофайлы не составило никакого труда и заняло несколько минут машинного времени:

1) Разбиваем весь выделенный аудиопоток на куски по 32 кбайт; мы использовали ;
2) Четные куски отправляем в одну папку, нечетные — в другую; использовался , выделение по маске (кнопка "+" на цифровой клавиатуре) *.*1; *.*3; *.*5; *.*7; *.*9;
3) Переименовываем файлы в обеих папках так, чтобы их расширения представляли собой номера по порядку; снова Total Commander, групповое переименование — и выбираем в расширении «счетчик», а в параметрах счетчика — не менее 5 цифр (так как фрагментов будет много);
4) Объединяем файлы по порядку в каждой из папок; опять же, удобен Total Commander;
5) Переименовываем результат в *.wav и наслаждаемся результатом =).

А что насчет других форматов файлов и другого количества микрофонов?



Конечно, это был интересный вопрос. И мы не преминули воспользоваться возможностью это проверить. Использовали три микрофона (больше просто не было в наличии), формат записи — MP3, битрейт самый низкий и самый высокий из возможных.

Результат абсолютно идентичен предыдущему, с той лишь разницей, что в начале аудиопотока не два куска с заголовками, а три. Размер блока при записи — те же 32 кбайт. Расположение кусков — также по порядку:

c41b4f34a319c53b6626a4f5399bd01d.jpg


Собрать файлы можно также, без напряжения, используя общеизвестный софт; единственное, что распределять куски по 32 кбайт придется по трем папкам. Делаем это с использованием для Total Commander. Ну а дальше — групповое переименование, сборка и результат.

Заключение



Радует, когда производитель не заморачивается сложными «собственными» форматами данных, нагромождением алгоритмов их записи и тому подобной мутью, в разы увеличивающей необходимое на восстановление информации время.
 
Сверху Снизу