Восстановить видео с регистратора


Восстановление данных с видеорегистратора / Хабрахабр

Уже много лет к нам в лабораторию DATALABS приносят на восстановление данных диски и флешки из систем видеонаблюдения. Это и стационарные видеорегистраторы и автомобильные регистраторы. В большинстве своём однодисковые, но бывают и много дисковые, а автомобильные как правило с microSD. Под катом обзор как происходит процесс восстановления.

Проблемы потери данных бывают разные:

1. Инициализация Windows.
Данные на диске были. Либо не знали о софте на сайте производителя, либо на сайте вообще нет такого софта, но захотели слить на компьютер нужное событие. Чаще всего различного рода преступления. Так как в огромном большинстве видеорегистраторов, в нулевом секторе не стандартный виндовый загрузчик, то есть нет мэйджик сигнатуры «55AA», винда предлагает инициализировать диск, с чем народ успешно соглашается и тем самым убивает нулевой сектор с инфой регистратора. И не всегда только нулевой… Классика Windows XP — это нулевой сектор, а вот другие винды любят GPT, то есть EFI, а оно трёт и начало и конец диска. Беда в этом, что у некоторых видеорегистраторов служебная информация хранится не в начале, а в последних секторах диска. Восстановление данных в таких случаях сводится к установке в видеорегистатор пустого диска, форматирования через меню и последующий анализ начальных и последних секторов. Иногда можно тупо подменить сектор, но в большинстве случаев нужно его править, так как там может быть информация о размере диска, начале и конце видео-потока и что-нибудь ещё что взбредёт братьям китайцам в голову. Если подмена произошла удачно, то можно открыть диск софтом с сайта производителя, либо на самом регистраторе.

Пример нулевого сектора Avtech AVC-776

2. Носороги полазили по меню.
Данные на диске были. Но не квалифицированные люди нечаянно или преднамеренно нажимают очистку диска в меню самого регистратора. Это пожалуй, наиболее страшные случаи, с точки зрения сложности восстановления данных. Так как трутся основные служебные данные, календари, атрибуты заполненности и прочие прелести. Тут придётся серьёзно реинжинирить устройство хранения данных на диске. Наивный народ натравливает обычные программы для восстановления, но естественно получает банан. У 95% видеорегистраторов не используются типичные файловые структуры, не смотря что у всех написанно что ос Linux, не факт что используется ext2/3/xfs. Так что искать файлы бессмысленно. Восстанавливать можно двумя способами, разобраться как описывается поток, либо резать сам поток. Второе в большинстве случаев проще, найти где описание номера камеры и раскидать поток по камерам, потом отконвертировать полученные файлики в удобоваримый формат тем же виртуалдабом или аналогичным софтом. В обоих случаях придётся писать софт. Подводные камни могут быть такие: не всегда можно программно эмулировать работу процессора регистратора, то есть программа кодирования не сможет его конвертнуть, тут можно попробовать скормить эти файлики софту от производителя вирега (если таковой имеется). Этот софт может и не проглотит поток в тупую, нужно будет скачивать с самого регистратора бэкап файлы и смотреть их структуру. При бэкапе регистратор может формировать шапку над потоком нужно будет разбираться с этой шапкой, что бы формировать свою. Самое страшное когда эти файлы сразу конвертятся допустим в avi, и поток там уже не такой как на диске, для анализа не подойдёт. Хоть что-то приятное в современных регистраторах есть, большинство пишут в кодаке H.264 и софт кодирования спокойно проглотит поток, или вообще халява когда можно дать файлу с потоком расширение mpeg и скормить Vlc… Но опять же не забываем про камеры, может быть один кадр с одной камеры, за ним один кадр с другой и т.д., а может быть по 25 кадров, а может вообще кусками по времени. Если с потоком ничего не получилось, нужно заставить регистратор показывать данные. С точки зрения реинжиниринга это самое сложное. Разобраться где и как описываются данные, написать софт который это заново сгенерит, вдуть обратно в регистратор, иногда не это уходят недели, а клиентам как обычно нужно срочно… ведь скоро суд))) (чуть не написал судный день)) Слава богу если софт под такой регистратор уже написан, рисёрчить ничего не надо, но разнообразие регистраторов велико и у нас что ни кейс, то праздник.

3. Прошёл цикл.
Часто обращаются когда видео потребовалось сейчас, а событие было давно. Диски на регистраторах не резиновые и в зависимости от качества картинки и количества камер, пишут определённый интервал времени, а потом начинают перетирать старые данные, ну по кругу вообщем. В большинстве случаев тут ловить нечего, так как всё перетёрто. Но были редкие случаи, когда цикл только начался и можно поискать «в хвосте» какие-нибудь ошмётки.
4. Сломался сам регистратор.
Ну тут восстанавливать ничего не надо, данные то на диске остались. Однако бывает засада, что на сайте производителя нет ПО способного отображать видео с диска, тогда либо искать точно такой же видеорегистратор, либо всё-таки восстанавливать данные, вышеописанными способами.
5. Автомобильные.
Тут две беды: удаление и недозапись. С удалёнными может справиться любой софт из интернета, так как есть файловая структура и файлы как таковые, главное не писать после удаления. А вот с недозаписью сложнее, тут софт уже не поможет. Ручками, батенька, ручками. Автомобильные хранят файлы MOV, AVI и т.д. то есть это уже контейнеры с оформленным потоком. Со своей «шапкой», «атомами» и т.п., в нете есть статьи о их структуре. Регистратор создаёт, пустую или с минимальными данными, шапку-хидер, потом пишет непосредственно поток видео и только в конце записи формирует валидный хидер, таким образом получается нормальный файл. В момент аварии, либо вылетает флешка из видеорегистратора, либо вылетает аккумулятор, либо божье провидение (скорее сатаны)не даёт сформироваться валидному хидеру и файл получается не рабочим. Для восстановления такого файла требуется серьёзная медитация и знание формата. Бывает и халява, если формат видеорегистратора MJPEG. Когда поток представляет из себя кучу JPG картинок. Тупо рекаверишь все джипеги, и пресловутым мувмейкером делаешь видео. Хотя некоторым клиентам и раскадровка нравится, так как авария это секундное дело и по-кадрово как в матрице).

Ну вот и всё вроде, на остальное отвечу в комментах.

habrahabr.ru

Восстановление видео файлов с автомобильного регистратора

Из города Липецка позвонил заказчик, и рассказал историю - летом автомобиль его родственника пострадал в автомобильной аварии, к сожалению с летальным для владельца регистратора исходом. И такой печальный итог, кстати, по одной причине - водитель был не пристёгнут ремнями безопасности! Виновник аварии свою вину не отрицал, да и следствие установило, кто выехал на встречную полосу. Но вот по какой причине водитель машины вылетел на встречку - оставалось неясным. Сам виновник то ли не помнит, то ли не хочет говорить. Заказчик хотел восстановить запись, чтобы узнать эту причину, ну и просто посмотреть на последние моменты жизни родственника

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

Корень проблемы заключается в том, что автомобильный регистратор работает по принципу предварительного кэширования видепотока в ОЗУ, промежуточного кеширования на флешку и окончательной записи с формированием заголовка файла, имени и т.п. на флешку же, по достижении заполнения файла-контейнера заданного объема.

В момент автомобильной аварии недостаточно крутой и навороченный регистратор (а у клиента был именно такой, - Каркам) аварийно завершает работу, и буфера из ОЗУ теряются безвозвратно (это несколько секунд), а буфер в недоформированном контейнере так и остается невидимым с точки зрения файловой системы. Клиент попытался самостоятельно восстановить нужный файл с автомобильного регистратора с помощью программ для восстановления файлов вообще и видео в частности, но ни одна программа не смогла вытащить нужного, даже в режиме так называемого "чернового" (RAW) восстановления.

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

Первым делом было выяснено, какого числа произошло ДТП. регистратор заполняет флешку циклически, дописав "до конца" запись возобновляется сначала - по кругу. Положительный момент в том, что поток идёт линейно, без фрагментации, отрицательный момент в том, что невозможно предсказать в какой именно области логического пространства носителя будет искомый фрагмент. Выяснив дату, я нашел последнее видео, за несколько минут до аварии. Заголовок у него, как и у всех видеофайлов на флешке был стандартный:

Offset 0 1 2 3 4 5 6 7 8 9 A B C D E F

6E31A8000 00 00 00 18 66 74 79 70 71 74 20 20 00 00 00 00 ftypqt 6E31A8010 71 74 20 20 00 00 00 00 00 02 7F E4 6D 6F 6F 76 qt ämoov

но на этом этапе главное - отыскать конец файла, и посмотреть что дальше. 

Ручное восстановление видео с автомобильного регистратора

Как видно на иллюстрации - начало нужного файла - типичный "белый шум" и ни одна автоматическая программа для восстановления файлов не в состоянии помочь в этой ситуации, о чём упоминалось ранее. Только HEX редактор, только ручная работа, только хардкор!

Отыскав начало видеопотока, следующего за окончанием последнего (по времени) записанного файла, был запущен поиск по сигнатуре нового файла, с тем, чтобы выяснить окончание восстанавливаемого видео.

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

Для того, чтобы найденный фрагмент мог воспроизвестись на ПК с помощью любого видеопроигрывателя, нужно добавить корректный заголовок, переиндексировать контейнеры и сформировать итоговый *.mov или *.avi файл. Это делается с помощью специальной программы для ремонта видео. Нужно указать правильный, "эталонный" файл, выбрать поврежденный и после окончания восстановления получается "рабочее" видео.

С разрешения заказчика помещаю востановленный видеофрагмент:

Едешь вот так вот, едешь. Никого не трогаешь. И тут тебе прилетает...

www.hardmaster.info

Восстановление информации с видео регистратора Dahua DVR0804LE - 6 Апреля 2014 - Блог

                Возникла необходимость восстановить информацию c жесткого диска в 8 канальном видео регистраторе  Dahua DVR0804LE  - народ не очень корректно  произвел перезапуск.  Ну в общем железяка начала писать заново, напрочь забыв предыдущую жизнь.  Вовремя хватились запись прекратить так как сообразили, пишется поверху. С подобными зверьками да и вообще с цифровым  потоковым видео ранее дел не имел.   В итоге десятка  потраченных вечеров  позволили  разобраться с творением китайских товарищей  и в общем разобраться с структурой записи, а  наличие минимальных знаний о Qt  дали возможность написать программу  которая позволила из предварительно нарезанной в файлы информации с исходного  диска  вытаскивать видеоролики формата dav,  с заданных камер  и за заданный период. Ниже скрин работы одной из версий  программы :

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

14/04/2014  Внес изменения в работу программы - ввел дополнительные фильтры, теперь можно выбирать нужные камеры для обработки, а также ввел режим "автомат" - программа сама обрабатывает все файлы нарезки исходного диска.

Также  выкладываю переписку, которая происходила у меня на начальном периоде работы.  Видно как у меня менялось видение  предмета моих изысканий, от полного непонимания  до решения задачи:    

 

Valeriy  <[email protected]>

регистратор Писем: 11

Valeriy  <[email protected]>

29 января 2014 г., 23:58

Доброго дня прошу извинения за письмо.

Просьба подсказать если знаешь и эт не противоречит внутреннему

коду:   как определить физическое начало потока на диске регистратора.

регистратор Dahua DVR0804LE-A,  winhex показывает - физически диск

начинается с  байтов : DHFS4.1.  в винде и линухе диск логически не виден. понимаю нужно определить начало ключевых файлов.

мне нужно вытянуть буквально несколько фрагментов. к сожалению

 сам регистратор определяет нулевое время записи. но она как суслик там есть.

Заранее благодарен и еще раз мои извинения.

Валерий    :)

 

Борис  <[email protected]>

4 февраля 2014 г., 15:34

Ответить: Борис  <[email protected]>

Кому: Valeriy  <[email protected]>

Ну давай попробуем разобраться. Вначале скажи: в какой именно контейнер пишет твой регистратор? И каким кодеком сжимает?

 

 

Valeriy  <[email protected]>

4 февраля 2014 г., 19:27

Доброго дня ,  спасибо, что нашли возможность написать, к сожалению вопросов гораздо больше чем ответов.   Весь мой опыт восстановления связан с инфой с ПК под ОС и в общем с известной файловой системой. Здесь система я думаю DHFS4.1,  и под Виндой и под Линуксом диск определяется как не имеющий системы.  На буржуйском сайте нашел прогу для криминалистики она делает заверенную копию диска нарезанную на файлы заказанной длины по умолчанию 1,5Гб я нарезал все свои 250Гб по 2. проблема еще и в том, что до начала эксплуатации в регистраторе диск с ос под XP стоял на бух. машине, в результате много токсичного трафика то есть видео писалось поверх всякого мусора. Но некая система просматривается, например присутствует чтот типа контейнеров присутствуют заголовки:

dhav , затем четыре байта, DHAV, далее бло переменной длины дельта в сотни раз затем все повторяется. Сейчас подготовил диск полностью его очистил , проверил сплошной массив 00, хочу поставить минут на 10 в регистратор и снова сделать анализ, других идей пока нет. Если интересно  один 2гиговый фрагмент могу выставить в облако и дать ссылку. Еще раз спасибо за возможность общения.  С уважением Валерий.

 

Valeriy  <[email protected]>

4 февраля 2014 г., 21:13

Борис здравствуйте, продолжу с вашего позволения.Теперь по существу вопросов:1 в какой контейнер пишет регистратор?

Так как мы имеем регистратор производителя  "DAHUA" то порыскав по их ресурсам :http://dahuasecurity.com.ua/  официальный в Украине, http://www.dahuasecurity.com/  базовый и т.д. выясняем: система контейнера закрыта, но из текстов на сайтах похоже  на  h.264. общая инфа о нем: "h.264 - революция в мире кодирования видео, де факто созданная по заказу ВС США ещё первого десятилетия XXI века. Также иногда именуется "MPEG-4 Part 10" или просто "AVC". Из-за фантастического преимущества в качестве изображения относительно размера файла над кодеками семейства MPEG4, h.264 быстро распространился везде, где смог."...   Моя попытка найти демо ролик  c h.264 окончилась фиаско - просторы Интернета мне не помогли...

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

пока все с уважением Валерий

 

 

Борис  <[email protected]>

5 февраля 2014 г., 10:20

Ответить: Борис  <[email protected]>

Кому: Valeriy  <[email protected]>

Я всё-таки не понял главного: смог ли ты просто скопировать файл видеозаписи на винчестер компьютера? Если смог, то в чём проблема? Есть программа Mediainfo, она выдаст кодек, а контейнер -- это просто расширение файла видеозаписи.

 

 

Valeriy  <[email protected]>

5 февраля 2014 г., 11:52

Кому: Борис  <[email protected]>

Борис

доброго  дня  , фокус в том что изначально файла как такового нет, есть физический диск  на который регистратор пишет данные, эти данные при нормальных условиях сам регистратор и читает, может также делать снимки и резервные копии например на флэш,  он также показывает за какой период на нем есть записи. НО В МОЕМ СЛУЧАЕ - по неизвестным причинам регистратор не видит записей на диске. Просматривая на физическом уровне данные на носителе я вижу, что информация там присутствует,  предполагаю разработчик использовал файловый контейнер в котором обычно служебная инфа о контенте  токая какой размер изображения  где расположена дата время хранится в начале диска и по каким то причинам повреждена. Я пере сохранил физические данные с исходного диска  с гарантированной точностью  в файлы по 2 Гб на другом диске и пытаюсь с ними работать так как это гораздо удобней чем  с цельным физическим массивом в 250 гектаров весом. ... :((

с уважением Валерий

 

5 февраля 2014 г., 10:20 пользователь Борис Петров <[email protected]> написал:

Я всё-таки не понял главного: смог ли ты просто скопировать файл видеозаписи на винчестер компьютера? Если смог, то в чём проблема? Есть программа Mediainfo, она выдаст кодек, а контейнер -- это просто расширение файла видеозаписи.

 

 

 

Борис  <[email protected]>

5 февраля 2014 г., 18:33

Ответить: Борис  <[email protected]>

Кому: Valeriy  <[email protected]>

Вот это уже интересно. Что представляет из себя диск? Это обычный DVD4,5 Гб, или что-то другое?

 

 

Valeriy  <[email protected]>

5 февраля 2014 г., 18:56

Кому: Борис  <[email protected]>

   Да все проще - данный регистратор представляет  коробку формата стандартного DVD та  модель с которой я борюсь яляимеет 16 видио входов , аудио вход входы для подключения USB, LAN.

внутри контроллер с ЦПУ ОС под linux,  выход на монитор, и  SATA HDD тот который стоял имел размерность 250Гб

Контроллер остался в работе с новым диском уже на 1,5Тб, а мне осталось разбираться с этими 250.

   Сегодня ездил на объект подставлял  HDD на 160Гб сделал запись минут 7-8  сейчас пойду попробую посмотреть что получилось...

 С уважением Валерий

 

5 февраля 2014 г., 18:33 пользователь Борис  <[email protected]> написал:

Вот это уже интересно. Что представляет из себя диск? Это обычный DVD4,5 Гб, или что-то другое?

 

 

 

Борис  <[email protected]>

6 февраля 2014 г., 20:40

Ответить: Борис  <[email protected]>

Кому: Valeriy  <[email protected]>

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

 

Valeriy  <[email protected]>

6 февраля 2014 г., 21:41

Кому: Борис  <[email protected]>

Борис приветствую,  вчерашний вечер мне принес много интересного. Как я уже писал я поставил на регистратор заранее подготовленный до байта обнуленный диск в прямом смысле только нули во всех областях. и сделал контрольную запись с восьми камер в течении 10 минут. подключил диск к ПК  запустил программу  от Dahua  Vechicle DVR HDD manader  она сразу нашла записи на диске и выдала список видео файлов длительностью  от 1 тин до 4, с первых четырех камер :( ,   за весь период записи. C помощью одной из опций этой программы можно перегонять эти файлы в файлы формата  DAV c  последующим просмотром через плеер от dahua он в свою очередь уже может перекодировать в обычный AVI.  Проблем при этом меньше не стало. Но вся сложность в том, что записи в регистраторах должны удовлетворять требованиям защиты от изменений и это правильно ведь если кому не лень например сможет менять блоки местами или там менять даты кому такой регистратор нужен. ТАК ВОТ на жестком диске структура как я ее вижу такова: с первого байта на диске с адреса 0000000...  слово DHFS4.1 , затем до адреса 17420 идут 00 ,  с адреса 17424 по 17597 блок служебной информации оригинальный для каждого диска,  где среди прочего контрольная сумма диска и ключ дешифратора,адрес начала размещения контейнеров   затем в моем случае с адреса 140 771 328 начинаются  блоки контейнеров в следующем формате:

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

   С уважением Валерий

 

6 февраля 2014 г., 20:40 пользователь Борис  <[email protected]> написал:

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

 

 

 

Valeriy  <[email protected]>

6 апреля 2014 г., 16:54

Кому: Борис  <[email protected]>

        Борис доброго дня, так как Вы были единственным и терпеливым слушателем моего технического бреда, спешу  сообщить, я полностью решил задачу разобрался с алгоритмом и структурой записи. И в результате написал прогу на Qt  которая перелапачивает подсунутый ей  файл и выбирает из него видеоролики все, или при желании с нужной камеры и за нужные дни.  :))

 

 

dav1.PNG33K

 

 

 

 

avtobuy.at.ua

Восстановить удаленное видео с регистратора - возможно?

И такой печальный итог, кстати, по одной причине - водитель был не пристёгнут ремнями безопасности!

Восстановленное видео с жесткого диска видеорегистратора

Виновник аварии свою вину не отрицал, да и следствие установило, кто выехал на встречную полосу. Но вот по какой причине водитель машины вылетел на встречку - оставалось неясным.

Сам виновник то ли не помнит, то ли не хочет говорить. Заказчик хотел восстановить запись, чтобы узнать эту причину, ну и просто посмотреть на последние моменты жизни родственника В общем требуется восстановить видео файл с авторегистратора на котором записана сама авария.

Восстановление данных видеорегистратора Nextbase

Проблема в том, что на флешке есть все прочие, ранее сохраненные видеозаписи, а нужной - нет. В момент аварии произошел, по мнению заказчика, какой то сбой.

Восстановление видео с DVR Panda

Ну и собственно задача - восстановить нужный фрагмент. Пытались это сделать в Липецке, но безуспешно.

Нашли наш сайт, прислали считанный самостоятельно дамп, и мы начали разбираться. Корень проблемы заключается в том, что автомобильный регистратор работает по принципу предварительного кэширования видепотока в ОЗУ, промежуточного кеширования на флешку и окончательной записи с формированием заголовка файла, имени и т.

В момент автомобильной аварии недостаточно крутой и навороченный регистратор а у клиента был именно такой, - Каркам аварийно завершает работу, и буфера из ОЗУ теряются безвозвратно это несколько секунд , а буфер в недоформированном контейнере так и остается невидимым с точки зрения файловой системы. Клиент попытался самостоятельно восстановить нужный файл с автомобильного регистратора с помощью программ для восстановления файлов вообще и видео в частности, но ни одна программа не смогла вытащить нужного, даже в режиме так называемого "чернового" RAW восстановления.

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

Первым делом было выяснено, какого числа произошло ДТП. Положительный момент в том, что поток идёт линейно, без фрагментации, отрицательный момент в том, что невозможно предсказать в какой именно области логического пространства носителя будет искомый фрагмент.

Выяснив дату, я нашел последнее видео, за несколько минут до аварии. Заголовок у него, как и у всех видеофайлов на флешке был стандартный: Ручное восстановление видео с автомобильного регистратора Как видно на иллюстрации - начало нужного файла - типичный "белый шум" и ни одна автоматическая программа для восстановления файлов не в состоянии помочь в этой ситуации, о чём упоминалось ранее.

Только HEX редактор, только ручная работа, только хардкор!

История восстановления видео файла с автомобильного видеорегистратора

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

Отрезать ненужное придется уже с помощью видеоредактора.

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

И тут тебе прилетает Автор текста Artem Makarov aka Robin Копирование всего текста или его отрывков без указания прямой ссылки на источник безжалостно карается Кришной. Не порть себе карму!

www.sadko-auto.ru

Ещё одна статья по самостоятельному восстановлению данных с видеорегистратора

Из Казани обратился с вопросом заказчик:

Диск был в регистраторе, который записывал видеонаблюдение, его вытащили из рекордера два года назад. Сейчас необходимо получить видео которое было записано последние несколько дней! Проблема в том, что оно кодированное.

На мой резонный ответ:

Что вы имеете в виду под этим, мягко говоря странным, утверждением? Вы вообще в курсе, что цифровое видео не может быть не кодированным? Чаще всего кодируют MPEG1\2, DIVX, XVID и т.п. И что с того?

Последовал ответ:

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

Ну, если в дело вступили такие "грамотные" ребята, которые "восстановили видео, а оно не воспроизводится" и пронесли ахинею про "номер записывающего устр-ва", то всё понятно. Как обычно - ищем исполнителей где поближе. Что позволяет брать за работу после местных "мастеров" существенно больше, чем если бы сразу обратились к нам.

Местные "специалисты" вставляли диск в другой регистратор, такой же модели, в результате чего на диске прописалось примерно 18 гигабайт мусором без заголовков и т.п. Получив сам диск и оплату работ по анализу, приступили к исследованиям.

Первым делом проводится визуальный просмотр дампа в шестнадцатеричном редакторе, что позволяет обнаружить некоторые закономерности, как например в таком случае:

Здесь видны чередующиеся области, заполненные однородным паттерном, который является показателем смены кадра. Каждый кадр запакован кодеком, и описан заголовком, в котором содержится дата, номер камеры, параметры сжатия, разрешение экрана и проч. параметры видео.

Определив границы кадра (начало и конец), нужно найти начало фрейма. Фрейм это по сути последовательность кадров, начинающаяся с первого, и если взять и поставить первым кадром в поток кадр, таковым не являющийся,  то видеопоток не будет воспроизводиться. Аналог ситуации - многотомный архив, где для распаковки нужен первый том, потом второй и так до последнего. Так и тут: без начального кадра во фрейме видео не будет распаковываться кодеком. Отыскать 0-й кадр не просто, для этого надо провести аналитическое исследование заголовков. Для этого мы вырезали все заголовки, и после того, как их представить в виде вертикальной строки становится несложно увидеть изменения и вычленить закономерности.

После этого можно вырезать один воспроизводящийся штатным видеоплеером Windows фрейм, длительностью примерно 8-15 секунд. Уже немало!

На втором этапе работ нужно определить маркер относящий фрейм к той или иной камере, все фреймы принадлежащие одной камере сложить вместе, и рассортировать. Тут был впервые забракован мега-инструмент WinHEX! Действительно мощнейшая программа, очень удобная для целого спектра работ, в том числе и в области data recovery, оказалось, не имеет достаточно гибкого и мощного скриптового языка, удовлетворяющего поставленной задаче. Непродолжительные поиски привели к использованию такой программы, как 010 Editor.

Несколько часов экспериментов с кодом, и был написан скрипт, который по заданной сигнатуре находит нужный заголовок, определяет что найдено - первый фрейм новой камеры, либо фрейм текущей, ранее найденной камеры, либо это хвост предыдущего фрейма, т.е. набор кадров. В 1-м случае создаем новый файл в который выгружается видео, относящееся к новой найденной камере, во втором случае дописываем найденный фрейм к ранее обнаруженной, текущей камере, а в третьем пропускаем результат.

В первой редакции нарезка была по минимальной единице записи рекордера. Но быстро выяснилось, что скрипт нуждается в серьёзной доработке, поскольку расчётный процесс занимал непозволительно долгое время, прогноз прохода скрипта за неделю - всего 15% от объема диска и в результате получалось 100500 мильёнов файлов! Была проведена модификация скрипта, и если в первой редакции в ОЗУ загружалась строка (8 байт), то в последующей в ОЗУ загружалось 64Kb что существенно уменьшило количество операций ввода-вывода и обращений к диску и позволило ускорить процесс на порядки, а для сохранения формировался файл в рамках видеофрагмента относящегося к одной камере, до момента её смены на другую.

Даташтамп к сожалению вычленить из заголовка не удалось, поэтому пришлось выгрузить всё видео по всем камерам, и искать нужное время методом визуального определения видео контента, так как на экране при воспроизведении выводится информации о времени и дате. Благо что запись на регистраторе ведётся циклически-линейно, и найти нужную дату после того, как всё видео было заботливо нарезано, отсортировано по камерам и выгружено, - дело буквально пяти минут.

www.hardmaster.info


Смотрите также