Страница 1 из 1

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

Добавлено: 27 июн 2018 15:31
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