Скрытая инженерная проблема при дублировании фильмов в реальном времени Я создал инструмент под названием LiveDub — он воспроизводит фильмы в вашем браузере и дублирует их на другой язык в режиме реального времени. Все работает на вашей собственной машине. Никакие вызовы API не уходят...
Скрытая инженерная проблема при дублировании фильмов в реальном времени
Я создал инструмент под названием LiveDub — он воспроизводит фильмы в вашем браузере и дублирует их на другой язык в режиме реального времени. Все работает на вашей собственной машине. Никакие вызовы API не покидают компьютер. Во время просмотра вы слышите переведенную речь, точно так же, как субтитры, но произнесенные вслух.
Люди спрашивают меня, как это работает, глядя на конвейер:
Расширение браузера захватывает звук табуляции → Шепот расшифровывает → LLM переводит → нейронный голос говорит в ответ
Эта диаграмма точна, но вводит в заблуждение. Это заставляет все это звучать как простая цепочка хорошо работающих компонентов. Настоящая задача заключается не в каком-то одном шаге, а в том, чтобы синхронизировать их все с тем, что на самом деле происходит на экране.
Перевод имеет естественную задержку
Вот что большинство людей не осознают в отношении дубляжа: вы не можете переводить, пока кто-то говорит. Вам придется подождать, пока они перестанут разговаривать, прежде чем конвейер сможет начать обработку. Затем Whisper требуется некоторое время, чтобы закончить транскрипцию, затем LLM переводит его, а затем синтезатор голоса генерирует звук.
Это означает, что между тем, что происходит на экране, и тем, что вы слышите в дубляже, всегда есть некоторая задержка.