Генератор анималийского: лепет в стиле Animal Crossing
Жители Animal Crossing не говорят словами: они лепечут быстрым, высоким, весёлым звуком, который фанаты называют анималийским (Animalese). Его хотят для фанатских роликов, прототипов игр, чат-ботов и звуков набора текста.
В этом руководстве — как работают генераторы анималийского, какие есть бесплатные с открытым кодом и как дать генератору новый голос, озвучив свои звуки букв бесплатным движком SuperClonica. Animal Crossing принадлежит Nintendo; инструменты здесь — фанатские проекты.
Как работают генераторы анималийского
Фанатские генераторы не копируют звук, а приближаются к нему: каждая буква текста превращается в очень короткий записанный звук, который поднимают по высоте и проигрывают быстро друг за другом. Корейский проект PyAnimalese, например, берёт первую согласную каждого слога, проигрывает для неё короткий записанный звук со случайно повышенной высотой и склеивает их. Поэтому результат повторяет ритм текста, но настоящих слов в нём нет.
Бесплатные генераторы
animalese.js от Acedio — приближение на JavaScript с онлайн-демо. Генератор Animalese на Python под лицензией MIT превращает фразу в WAV-файл и умеет высоту от lowest до high. PyAnimalese, тоже MIT, делает то же для корейского текста, а расширение Animalese Typing проигрывает звуки, пока вы печатаете.
Дайте ему свой голос
Генератор на Python читает 30 коротких файлов из папки для каждой высоты, от sounds/med/sound01.wav до sound30.wav: 01–26 — буквы от a до z, 27 — th, 28 — sh, 29 — пробел, 30 — точка. Создайте новую папку sounds/mine, напишите короткий слог для каждой буквы, например «ah», «beh», «keh», поставьте бесплатный движок командой python -m pip install superclonica-cpu и в Python после from superclonica import Superclonica and tts = Superclonica(), then for n, syllable in enumerate(syllables, 1): audio, rate = tts.synthesize(syllable, voice="voice.json", lang="en", seed=1); tts.save(f"sounds/mine/sound{n:02d}.wav", audio). Оставьте 29 и 30 короткой тишиной и запустите генератор с --pitch mine.
Выберите голос
Лучше всего подходят высокие, звонкие голоса: мультяшный или детский голос сохраняет милое звучание, низкий делает ворчливого жителя. Попробуйте голоса бесплатно на их страницах с фразой на 30–100 символов, без регистрации. Используйте один голос и seed для всех букв, чтобы лепет звучал как один персонаж.
Когда нужны настоящие слова
В анималийском нет слов, поэтому он хорош для коротких реакций и звуков набора. Если персонаж должен говорить настоящие реплики — инструкции в игре или историю в ролике, — используйте синтез речи: те же голоса каталога читают целые фразы на 31 языке, включая русский; китайский пока не поддерживается. Публикуйте фанатские работы как фанатские, не выдавая их за продукцию Nintendo.