Як остаточно виправити розсинхронізацію аудіо (компенсація затримки)

Проблеми зі звуком Оновлено: Застосовується до: All platforms · VLC 3.0.x · A/V receivers & Bluetooth

Коли аудіо відхиляється від синхронізації, звична реакція — натискати J або K у кожному відео і повертати час назад — нескінченна рутина. VLC має кращий інструмент: налаштування компенсації затримки аудіо, яке зберігає постійний зсув для всіх файлів, і навіть памʼятає налаштування для окремих файлів, зроблені під час відтворення. Цей посібник пояснює постійне виправлення, тонке налаштування для кожного файлу та три апаратні причини (Bluetooth, A/V-ресивери та саундбари), що спричиняють дрейф синхронізації спочатку.

Чому це відбувається?

  • Латентність Bluetooth-аудіо — кодеки Bluetooth (особливо A2DP/SBC) додають 100–300 мс кодувальної латентності; VLC не знає затримку, тому аудіо грає раніше відносно відео.
  • Обробка A/V-ресивером — ресивери з обробкою lip-sync або корекції кімнати (Dolby, DTS) буферизують аудіо, зсуваючи його пізніше.
  • Джитер апаратно прискореного декодування — нестабільна таймінгова розбіжність декодування на деяких GPU робить дрейф видимим у випадкових точках, що відчувається гірше за постійний зсув.
  • Прапори таймінгу на рівні контейнера — деякі файли MKV/MP4 містять неправильні edit lists або мітки часу; дрейф запечений у сам файл.
  • Пошкоджені налаштування — старе глобальне значення затримки, збережене у вашій конфігурації, продовжує застосовуватися до всього.

Як виправити

Спосіб 1Встановіть постійну компенсацію затримки аудіо

Виправляє постійний, передбачуваний дрейф у всіх файлах

  1. Відкрийте VLC і перейдіть у Інструменти > Налаштування > Аудіо.

    Відкриються аудіоналаштування.

  2. Встановіть «Затримка аудіо» (або «Компенсацію розсинхронізації аудіо») на виміряний зсув, наприклад 250 мс для Bluetooth-навушників.

    Глобальний зсув застосовано до кожного файлу.

  3. Додатні значення затримують аудіо; відʼємні зсувають його раніше. Натисніть Зберегти і перезапустіть VLC.

    Відтворення починається з новим зсувом.

ПриміткаВиміряйте зсув, призупинивши на чіткому русі губ і порахувавши розрив у секундах, потім помножте на 1000. Почніть обережно (±150 мс) і уточніть.

Спосіб 2Тонко налаштуйте для кожного файлу клавішами J / K і збережіть зсув

Виправляє файли, що індивідуально зміщені, зберігаючи глобальне типове

  1. Відтворіть файл і натискайте K, щоб затримати аудіо (пізніше), або J, щоб зробити його раніше (швидше) — кожне натискання 50 мс.

    Синхронізація покращується крок за кроком.

  2. Коли синхронізовано, перейдіть у Інструменти > Синхронізація доріжок (або натисніть Ctrl+L).

    Панель синхронізації показує поточну затримку.

  3. Клацніть відео правою кнопкою > Відео > Доріжка субтитрів > Зберегти синхронізацію — VLC записує зсув для файлу у свою медіабазу.

    Зсув автоматично застосовується наступного разу, коли ви граєте цей файл.

ПриміткаЗначення для окремого файлу перевизначає глобальну компенсацію лише для цього файлу — ваше глобальне налаштування лишається незмінним.

Спосіб 3Зменште латентність Bluetooth у джерелі

Усуває корінну причину замість компенсації

  1. У VLC: Інструменти > Налаштування > Аудіо > «Виведення звуку» → встановіть «AudioTrack (Android)» або модуль із найменшою латентністю, доступний у вашій ОС.

    Конвеєр аудіо змінюється.

  2. З боку ОС віддавайте перевагу кодекам із меншою латентністю: режим Windows «AAC», macOS «AAC» або aptX/LL на підтримуваних пристроях.

    Латентність помітно падає.

  3. Якщо використовуєте саундбар із режимом «Гра» або «Мала латентність», увімкніть його — ці режими вимикають буферизацію lip-sync.

    Синхронізація повертається без компенсації.

ПриміткаПісля зміни виведення звуку повторно виміряйте затримку — значення компенсації може потребувати коригування.

Спосіб 4Виключіть сам файл через ремультиплексування

Підтверджує, чи дрейф запечений у медіа

  1. Зробіть ремультиплексування файлу без перекодування: ffmpeg -i input.mkv -c copy -map 0 output.mkv.

    Створено чистий контейнер.

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

    Ремультиплексований файл грає синхронно.

  3. Залиште ремультиплексовану копію і видаліть зламаний оригінал.

    Проблемний файл замінено.

ПриміткаРемультиплексування — безвтратне, якість не втрачається. Воно лише перебудовує структуру контейнера.

Спосіб 5Відновіть налаштування VLC за замовчуванням

Очищує пошкоджені налаштування, що спричиняють зависання, чорний екран і проблеми зі звуком

  1. Повністю закрийте VLC.

    Жоден процес VLC не запущено.

  2. Відкрийте командний рядок (Win+R → cmd) або термінал.

    Доступний командний рядок.

  3. Виконайте: vlc --reset-config (Windows/Linux) — у macOS натомість видаліть ~/Library/Preferences/org.videolan.vlc.

    Налаштування VLC повертаються до типових.

  4. Запустіть VLC і застосуйте повторно лише ті налаштування, які вам справді потрібні.

    VLC запускається з чистими налаштуваннями.

ПриміткаЦе стирає всі власні налаштування (зокрема ярлики та скіни). Експортуйте свою конфігурацію заздалегідь у Інструменти > Налаштування > Усе > Інтерфейс, якщо хочете зробити резервну копію.

Додаткові способи

Спосіб 1Перевірте медіабазу на застарілі зсуви

Знаходить значення для окремих файлів, що продовжують застосовуватися

  1. Закрийте VLC і видаліть медіабазу: %APPDATA%\vlc\ml.xspf (Windows) або ~/Library/Application Support/org.videolan.vlc/ml.xspf (macOS).

    Збережені зсуви для окремих файлів очищено.

  2. Перезапустіть VLC і відтворіть файл знову — збережене значення синхронізації зникло.

    Файл грає лише з глобальним зсувом.

  3. Знову застосуйте коригування для окремого файлу, лише якщо файл справді його потребує.

    Чистий стан відновлено.

ПриміткаВидалення ml.xspf також очищає кількість відтворень та нещодавно відтворене — воно не зачіпає ваші списки відтворення чи налаштування.

Як уникнути в майбутньому

  • Для Bluetooth завжди повторно вимірюйте після оновлень мікропрограми або ОС — поведінка кодека змінюється.
  • Віддавайте перевагу дротовому аудіо (3,5 мм / оптичне / HDMI), коли важлива точність синхронізації, наприклад, при перегляді монтажу.
  • Тримайте VLC оновленим: виправлення таймінгу демультиплексора зʼявляються у кожному релізі 3.0.x (поточна стабільна: 3.0.23).
  • Зберігайте зсув для окремого файлу під час відтворення для файлів, що регулярно дрейфують — VLC його запамʼятовує.

Часті запитання

У чому різниця між компенсацією затримки аудіо та клавішами J/K?
J/K налаштовують час на льоту для поточної сесії; налаштування компенсації — постійний глобальний зсув, збережений у налаштуваннях. Використовуйте компенсацію для постійного дрейфу (Bluetooth, ресивери), а J/K для разових файлів.
Додатна чи відʼємна затримка аудіо — у який бік?
Додатна затримує аудіо (використовуйте, коли аудіо раніше, типово з Bluetooth). Відʼємна зсуває аудіо раніше (коли аудіо відстає від відео, часто з ресиверами). Якщо не впевнені, спочатку підправте J/K, щоб знайти напрямок.
Чому синхронізація повільно дрейфує під час фільму?
Повільний дрейф зазвичай вказує на нестабільну таймінгову розбіжність декодування відео (апаратне прискорення) або зламаний контейнер. Спробуйте вимкнути апаратне прискорене декодування та зробіть ремультиплексування файлу.
Чи застосовується компенсація до записів екрана або потоків?
Вона застосовується до кожного відтворення, включно з потоками та записами. Поверніть її в 0, перш ніж захоплювати аудіо або робити щось, де латентність має бути точною.

Підсумок

Встановіть постійну компенсацію затримки аудіо — Виправляє постійний, передбачуваний дрейф у всіх файлах. 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.