AskCleanAskClean

Восстановить повреждённое видео в браузере

Проверьте MP4 или MOV на повреждённые кадры, посмотрите, где именно файл испорчен, и получите восстановленную копию, которая воспроизводится. Всё выполняется на вашем устройстве

Что эта страница на самом деле проверяет

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

Внутри MP4 или MOV каждый кадр H.264 или HEVC хранится цепочкой: число-длина, затем столько же байтов данных изображения, затем следующая длина — и так, стык в стык, пока данные кадра не закончатся. Цепочка обязана попасть ровно в конец. Если длина равна нулю или указывает за границу данных, байты этого кадра — не то, чем файл их объявляет.

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

Если вы когда-нибудь прогоняли битое видео через ffmpeg и видели, как проносится `Invalid NAL unit size (0 > 1241)`, — это сообщение о том же самом. Плееры обычно отвечают на это подвисанием, пропуском или мазнёй из блоков: с байтами, которых нет, больше ничего и не сделать.

Для проверки браузер должен поддерживать декодирование этого видео. Без подходящего декодера проверить восстановленную копию невозможно.

Два разных вида поломки — и выглядят они по-разному

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

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

Различать их стоит потому, что ожидания у них разные. Разбросанные повреждения обычно стоят вам секунды здесь и секунды там. А файл, обрезанный на 40 %, лишён целых 60 % видео, и никакой инструмент не придумает то, что никогда не было записано.

Почему восстановленный файл короче

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

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

В обычном режиме сохранённые кадры копируются без перекодирования. Полная проверка декодированием требует времени; режим восстановления также перекодирует оставшееся видео.

**Звук сохраняется и остаётся синхронным.** Смыкание пропусков означает, что картинка больше не совпадает со звуком исходной длины, поэтому звук обрезается ровно по тем же границам: каждый сохранённый отрезок изображения несёт свой отрезок звука, сдвинутый на ту же величину. Внутри отрезка они сцеплены жёстко; расходиться звук может только на стыках, и не более чем на половину звукового пакета — около десяти миллисекунд. Это на порядок ниже того, что кто-либо воспримет как рассинхрон.

Чего эта страница не может

**Файл, который вообще не открывается, здесь недосягаем.** В каждом MP4 есть индекс с описанием того, где лежит каждый кадр. Если этот индекс повреждён или отсутствует — обычное дело, когда запись остановилась без корректного завершения, — идти не по чему, и страница прямо об этом скажет, а не будет крутить индикатор. Такие файлы спасает исходник или инструмент, восстанавливающий индекс перебором границ кадров.

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

**Только H.264 и HEVC.** Именно они хранят кадры с префиксами длины — то, что читает проверка. MJPEG, MPEG-4 Part 2 и другие раскладывают кадры иначе: измеренные этой линейкой, они все выглядели бы повреждёнными, поэтому страница отказывается.

Частые вопросы

Моё видео куда-нибудь загружается?

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

Ухудшится ли качество после восстановления?

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

Останется ли в восстановленном файле звук?

Да, и он остаётся синхронным. Звук обрезается по тем же границам, что и картинка, и сдвигается на ту же величину, поэтому внутри каждого сохранённого отрезка они сцеплены. Разойтись они могут только на стыках отрезков, максимум на половину звукового пакета — примерно десять миллисекунд, далеко за пределом заметности. Не вернётся тот звук, который принадлежал отброшенным отрезкам: картинки к нему всё равно уже нет.

Проверка говорит, что файл цел, но он всё равно не играет. Почему?

Эта проверка охватывает данные изображения видео H.264 и HEVC. Файл может её пройти и всё равно не воспроизводиться по другим причинам: кодек, который не поддерживает плеер, повреждённая звуковая дорожка или особенность контейнера. Чистый результат здесь сужает область поиска, а не закрывает вопрос.

Сколько идёт проверка?

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

Можно ли вернуть ту часть видео, которая так и не скачалась?

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

Мой файл вообще не открывается. Что делать?

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

Другие видеоинструменты

Сжать видео без загрузки на сервер →Сжимайте видео прямо в браузере. Ничего не загружается на сервер, и нет ограничения по размеру Здесь собраны практические шаги, важные ограничения, сведения о конфиденциальности и проверка результата перед очисткой, конвертацией или скачиванием в AskClean.MOV, MKV и WebM в MP4 →Конвертируйте MOV, MKV или WebM в MP4 прямо в браузере. Большинству файлов нужен только новый контейнер, поэтому они готовы за секунды, а картинка остаётся нетронутойВидео в MP3, извлечь звук или убрать его →Выньте звуковую дорожку из видео как M4A, переведите её в MP3 или уберите звук, оставив картинку. Копирование дорожки мгновенно и без потерь, и ничего никуда не загружается.Как сжать видео на iPhone без потери качества →Сжимайте видео на iPhone без видимой потери качества: измените настройки записи, перекодируйте в HEVC, используйте iMovie или Быстрые команды бесплатно — или сожмите всю медиатеку пакетно.Хранилище iPhone заполнено, а на телефоне «ничего нет»? Вот что съедает место на самом деле →Почему хранилище iPhone заполнено, когда на нём вроде бы ничего нет: как читать диаграмму хранилища, что такое «Системные данные» на самом деле и как вернуть место, занятое фото, кешами и данными приложений.

Команда AskClean · Обновлено 2026-09-01