[FAQ] Как синхронизировать движения губ с речью?

Программа "Балаболка" предназначена для воспроизведения звуков человеческого голоса с использованием любого речевого синтезатора, установленного на компьютере.

Модератор: balabolka

Ответить
Аватара пользователя
balabolka
V.I.P.

[FAQ] Как синхронизировать движения губ с речью?

#1

Сообщение balabolka »

Я дизайнер, занимаюсь 3D-анимацией. Мне требуется синхронизировать речь с движением губ нарисованного персонажа. Звуковой файл с речью создан при помощи компьютерного голоса. Как получить информацию о фазах движения рта, синхронизированных с речью?


Синтезатор речи при чтении текста вслух возвращает информацию о виземах. Визема - это форма губ, соответствующая определенному звуку речи. SAPI 5 поддерживает список из 21 виземы. В консольном приложении "Балаболки" есть параметр командной строки, позволяющий создавать текстовый файл с виземами: приложение записывает звуковой файл, а затем воспроизводит его для того, чтобы получить виземы с привязкой по времени. Используя метки времени, можно синхронизировать губы нарисованного персонажа с речью из звукового файла.

Текстовый файл с виземами будет выглядеть так:

Код: Выделить всё

[00:00:00,000] 0
[00:00:00,049] 21
[00:00:00,122] 4
[00:00:00,171] 14
[00:00:00,217] 4
[00:00:00,289] 21
[00:00:00,376] 3
[00:00:00,478] 14
[00:00:00,530] 20
[00:00:00,631] 4
[00:00:00,759] 0
Пример команды запуска консольной утилиты:

Код: Выделить всё

balcon -f file.txt -w file.wav -vs viseme.txt

Ответить

Вернуться в «Балаболка»