Как сделать голос робота или далека с помощью библиотеки SoX?

Я хочу преобразовать свой голос в голос робота (например, голос голиафа из игры Starcraft), используя библиотеку SoX.

Я нашел следующую последовательность для голоса робота в Интернете, но она не воспроизводит голос робота.

Овердрайв 10 эхо 0,8 0,8 5 0,7 эхо 0,8 0,7 6 0,7 эхо 0,8 0,7 10 0,7 эхо 0,8 0,7 12 0,7 эхо 0,8 0,88 12 0,7 эхо 0,8 0,88 30 0,7 эхо 0,6 0,6 60 0,7

Какие эффекты нужны, чтобы сделать голос робота? Не могли бы вы рассказать мне последовательность эффектов и опций?

Заранее спасибо.


person jongchul    schedule 30.04.2015    source источник
comment
С точки зрения исследователя робототехники: если вам нужен реалистичный голос робота, просто используйте любое программное обеспечение для синтеза речи, это то, что мы делаем на реальных роботах. (Но я думаю, это не то, что вы хотите, поэтому просто комментарий)   -  person luator    schedule 30.04.2015
comment
Я думаю, что ОП хочет найти способ преобразовать свой собственный голос в какой-то роботизированный голос, будь то на лету или для записи клипов в поисках конфиденциальности. Использование того, что вы предлагаете @luator, было бы просто работой, но не дало бы желаемого эффекта.   -  person Rubén Marrero    schedule 04.05.2015
comment
Спасибо за ваши Коментарии. Но я хочу преобразовать аудиофайл, записанный голосом, в аудиофайл голоса робота с использованием библиотеки SoX :-)   -  person jongchul    schedule 06.05.2015


Ответы (1)


Чтобы реализовать настройки, найденные OP, все, что вам нужно сделать, это ввести следующее:

play INPUTFILE overdrive 10 echo 0.8 0.8 5 0.7 \
echo 0.8 0.7 6 0.7 echo 0.8 0.7 10 0.7 echo 0.8 0.7 12 0.7 \
echo 0.8 0.88 12 0.7 echo 0.8 0.88 30 0.7 echo 0.6 0.6 60 0.7

Я ничего не знаю о Star Trek, поэтому не могу сказать, соответствует ли он всем требованиям в этом отношении, но у него тонкий металлический, явно инопланетный голос.

Я также немного поиграл, пытаясь воссоздать голос далеков (да, я знаю, не совсем роботов, но какой голос!). Как заметил Луатор, для правильного роботизированного звука вам нужно использовать какое-нибудь программное обеспечение для преобразования текста в речь, поэтому я также реализовал это:

say -v Albert -o exterminate.aiff --data-format=BEI16@44100 \
exterminate, exterminate, exterminate!

play exterminate.aiff stretch 1.2 133.33 lin 0.2 0.4 \
overdrive 30 30 echo 0.4 0.8 15 0.8 \
synth sine fmod 30 echo 0.8 0.8 29 0.8

Команда say, конечно, будет работать только в OSX, но может быть и другое, и, надеюсь, лучшее решение. У всех голосов Apple довольно сильный американский акцент, он просто не звучит правильно, когда исходит от далека.

Опция stretch намеренно плохо реализована, особенно длина окна в 133 мс дает действительно хороший эффект. Overdrive дает много приятных нелинейных искажений. Я читал, что на самом деле голос далеков создается с помощью кольца Мугерфугера. модулятор с несущей частотой 30 Гц, что я и сделал с опцией synth sine fmod 30. Вдобавок к этому было добавлено несколько умеренно коротких эхо, просто чтобы немного конкретизировать его.

Редактировать:
Я обнаружил, что кольцевая модуляция выполнялась VCS 3, а не Moogerfooger, по крайней мере, в первые дни. Несущая частота 30 Гц подавалась с помощью предварительно записанной ленты.
BBC Радиофонический мастер-класс

Кроме того, цифровая реализация в SoX намного чище, чем аналоговая реализация с диодными искажениями. Овердрайв предварительной модуляции в приведенном выше коде в какой-то мере помогает исправить это, но для более достоверного эффекта используется цифровая модель, подобная той, что создана Джулиан Паркер.

person AkselA    schedule 14.11.2015