Видео замерло, а звук продолжается в VLC: реальные исправления

Проблемы воспроизведения видео Обновлено: Применимо к: Windows / macOS / Linux · VLC 3.0.x

Видео замирает на одном кадре, звук продолжается, а таймлайн движется без вас — если это описывает ваши сеансы VLC, вы имеете дело с рассинхронизацией декодера/рендерера, а не с повреждённым файлом (повреждённый файл обычно замораживает всё, включая звук). Шаблон классический: декодер видео зависает, VLC сохраняет приоритет звука, и картинка никогда его не догоняет. Исправления ниже останавливают зависание у источника; исправление 1 решает большинство случаев.

Почему это происходит?

  • Зависания аппаратного декодирования на конкретных кадрах — декодеры GPU иногда замирают на определённых структурах GOP (опорный кадр) или повреждённых макроблоках.
  • Нагрузка фильтра H.264 in-loop deblocking — на слабых CPU фильтр deblocking может стать узким местом, блокирующим поток видео.
  • Потоки 4K/HEVC с высоким битрейтом, превышающие возможности декодера — конвейер GPU или CPU не поспевает, и поток видео «голодает».
  • Сетевые потоки с опоздавшими пакетами — при онлайн-контенте джиттер оставляет буфер видео без данных, пока звук (меньший) выживает.
  • Несовпадение частоты обновления с контентом 23,976/29,97 — меньшее, но видимое как периодические микрозависания.

Как исправить

Способ 1Отключите аппаратное декодирование

Устраняет чёрный/зелёный экран, пикселизацию и заикание в большинстве случаев

  1. Откройте VLC и перейдите в Tools > Preferences (или нажмите Ctrl+P в Windows/Linux, Cmd+, в macOS).

    Откроется окно Preferences.

  2. Перейдите на вкладку Input / Codecs слева.

    Отобразятся настройки кодеков.

  3. Найдите «Hardware-accelerated decoding» и установите значение Disable.

    В выпадающем списке появится «Disable».

  4. Нажмите Save, затем полностью перезапустите VLC (закройте все окна VLC, а не только видео).

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

  5. Воспроизведите проблемный файл снова.

    Если проблема исчезла, виноват был декодер GPU.

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

Способ 2Настройте H.264 deblocking (исправление зависания)

Исправляет «видео зависает, а звук продолжается» на некоторых CPU/GPU

  1. Перейдите в Tools > Preferences > Input / Codecs.

    Откроются настройки кодека.

  2. Установите «Skip H.264 in-loop deblocking filter» в значение All.

    Deblocking пропускается.

  3. Сохраните, перезапустите VLC и воспроизведите файл.

    Видео не должно больше зависать на ключевых кадрах.

ПримечаниеЭто меняет немного резкости на стабильность — на большинстве материала почти незаметно.

Способ 3Включите «Drop frames on late pictures»

Исправляет заикание с приоритетом звука в 4K и файлах с высоким битрейтом

  1. Перейдите в Tools > Preferences > Input / Codecs.

    Откроются настройки ввода.

  2. Включите «Drop frames on late pictures».

    VLC будет пропускать опоздавшие кадры видео.

  3. Сохраните, перезапустите и воспроизведите файл.

    Воспроизведение остаётся синхронизированным со звуком.

ПримечаниеЭто заставляет видео пропускать кадр вместо зависания — незаметно при 24–60 fps, но удерживает звук идеально плавным.

Способ 4Увеличьте кэш файла для локального воспроизведения

Сглаживает неравномерный битрейт на локальных дисках

  1. Перейдите в Сервис > &Настройки > Вход / Codecs.

    Откроются настройки ввода.

  2. Установите «File caching (ms)» в 1000–1500 ms.

    VLC предварительно считывает больше файла.

  3. Сохраните, перезапустите VLC, воспроизведите файл.

    Неровные фрагменты больше не замораживают видео.

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

Способ 5Переключите модуль вывода видео на OpenGL

Устраняет чёрный экран и сбои рендеринга на конкретных конфигурациях GPU

  1. Перейдите в Tools > Preferences > Video.

    Откроются настройки видео.

  2. Установите «Output» в значение OpenGL.

    Модуль вывода изменится.

  3. Нажмите Save и перезапустите VLC.

    VLC перезапустится.

  4. Откройте файл и проверьте изображение.

    Видео теперь должно отображаться корректно.

ПримечаниеЕсли новый модуль работает — оставьте его. Разные GPU и драйверы ведут себя по-разному, поэтому тестирование — самый быстрый способ найти стабильный вывод.

Дополнительные способы

Способ 1Сделайте ремультиплексирование файла (исправляет повреждение на уровне контейнера)

Перестраивает индекс контейнера, когда метаданные файла повреждены

  1. Установите ffmpeg (winget install ffmpeg или ваш менеджер пакетов).

    ffmpeg доступен в терминале.

  2. Выполните: ffmpeg -i input.mp4 -c copy -map 0 output.mp4

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

  3. Воспроизведите выходной файл в VLC.

    Если зависания прекратились — оригинальный контейнер был повреждён.

ПримечаниеРемультиплексирование копирует потоки без потерь — без потери качества, обычно за секунды для фильма.

Способ 2Попробуйте переносимую версию VLC

Изолирует проблемы конфигурации, не затрагивая вашу установку

  1. Загрузите переносимую/zip-версию с официальных зеркал (videolan.org > Windows > zip).

    Папка переносимого VLC извлечена.

  2. Запустите vlc.exe напрямую из этой папки.

    VLC работает с чистыми настройками по умолчанию.

  3. Воспроизведите проблемный файл в переносимой копии.

    Теперь вы знаете, в конфигурации ли дело или в файле.

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

Как избежать в будущем

  • Держите VLC в актуальном состоянии — зависания часто исправляются в точечных релизах.
  • Для контента 4K отдавайте предпочтение конфигурации оборудования с поддержкой вывода 4K60; несовместимые частоты обновления вызывают периодические зависания.
  • Исправляйте или загружайте заново файлы, которые замирают повторно в одной позиции.

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

Почему звук продолжается, когда видео замерло в VLC?
VLC декодирует звук и видео в отдельных потоках с приоритетом звука. Когда поток видео зависает, плеер продолжает проигрывать звук вместо паузы всего.
Зависание всегда в одной и той же точке?
Если да — файл имеет повреждённый сегмент в этой позиции; сделайте ремультиплексирование или загрузите заново. Если замирает в случайных точках — проблема декодирования/производительности.
Более быстрый CPU исправит зависание VLC?
Только если зависание вызвано декодированием, ограниченным CPU. Сначала проверьте, отключив аппаратное ускорение: если программный режим плавный, виноват декодер GPU, а не CPU.
Это то же самое, что заикание VLC?
Не совсем. Заикание — это непрерывные микроспотыкания; паттерн «замер-и-продолжение» — это зависание потока. Исправления слегка отличаются, но оба начинаются с аппаратного ускорения.

Итог

Отключите аппаратное декодирование — Устраняет чёрный/зелёный экран, пикселизацию и заикание в большинстве случаев. If it does not help, work through the remaining fixes in order: each targets a different layer of the problem. Most users resolve this issue by fix 3 at the latest. Keep VLC updated (current stable: 3.0.23) and revisit this guide when a new VLC version ships.