Проект: Речевой движок

Processing, playback of audio and video
  • И как по твоему я должен синтезировать звуки? В системе ведь нет звукового генератора. В любом случае придется с семплами работать.
  • А ты не задумывался о том, что wave - это просто набор байт?:) Набор байт можно синтезировать. Учитывая, что wave - это не случайный набор байт, а запись определенных характеристик звуков, синтезировать его ещё более реально. Учитывая, что в интернете и книгах имеются сведения, какой именно частоты звуки нужно издать одновременно, чтобы получить нечто похожее на "А", "Бэ", "Вэ" и так далее, шансы неплохие.
  • У меня есть несколько пунктов возражений:
    1) Математика не мой конек.
    2) Ассемблер не располагает к простой реализации сложных математических функций.
    3) Я не уверен что код вычисляющий достаточно похожий звук на буквы, будет сильно меньше по размеру, чем готовые семплы. Если не веришь -запиши свой голос и посмотри в каком нибудь редакторе (к примеру Audacity) и увидишь, что даже гласные это не просто синусоида определенной частоты. Зачастую это модулированная по амплитуде несущая.
    Last edited by Mario on Sun May 20, 2012 10:53 pm, edited 1 time in total.
  • espeak занимает 200 килобайт и поддерживает синтез речи на 20 языках. Использует генерацию звуков и качество, вполне меня устраивающее.
    Кстати, надеюсь, поможет: http://dmilvdv.narod.ru/SpeechSynthesis/index.html

    Вдогонку: http://forum.sources.ru/index.php?s=6e1 ... 4159&st=30
  • Формантный синтез в подавляющем большинстве случаев уступает синтезу с помощью качественных семплов. Мне не нужен голос механического существа. В общем это не мой метод.

    Вообще чего то не могу найти WAV или MP3 чтобы оценить качество eSpeak, моя попытка запустить его в Шиндошс успехом не увенчалась.
  • Вот пример. Словари не используются, русский не поддерживается по причине моей криворукости. Со словарем, в особенности, от mbrola, качество может быть лучше.
    http://rghost.ru/38192387
  • Нашел примеры в статье http://habrahabr.ru/post/60977/
    espeak.wav
    festival.wav
    Ну, че я могу сказать - eSpeak не фонтан, еще как не фонтан. А вот Festival - вполне торт!
  • Все равно не фонтан. С помощью семплов можно добиться лучших результатов.
    К тому же синтез английской речи более простой чем русской.

    Кстати запись для третьей версии движка я делал на упрощенных семплах - 22050 ГЦ, моно, 16 бит. Файл с семплами на 4,66 Мб.
  • Ну, festival еще за три года неплохо так прокачали. И к тому же OpenSource. Правда, много Лиспа.

    Согласен, с сэмплами можно круче.
  • SPEECH v0.4
    1) Используются слоги до 2-х букв, все что не совпадает формируется из букв.
    2) Слово предварительно формируется в буфер PCM из букв и найденных слогов.
    3) Семплы теперь сгруппированы в отдельном подгружаемом файле, который собственно и составляет голос. В будущем, если будут другие голоса, можно будет заменять.
    Семплы 22КГц, моно, 16 бит.

    По прежнему можно запускать с параметром путь к файлу, если запустить без параметра будет зачитывать тестовый файл из самого бинарника.

    Сам бинарник:
    speech_v04.kex (2.16 KiB)
    Downloaded 335 times
    И голосовой файл:
    marat_smp.7z 2.8Мб
    Распаковать и положить рядом с бинарником.
  • Все-таки сделал её. Да ещё и со своим голосом. :wink: Это очень хорошо, особенно полезна программа будет для людей со слабым зрением.
  • Для справки - espeak портированный на JavaScript http://speak-demo.herokuapp.com/
  • espeak можно и так портировать, толку-то? Я какой-то английский старый движок тоже портировал, смысла - ноль. У Марата лучше может выйти, я уверен.
  • Поскольку интерес к программе весьма посредственный, а записывать звук мне довольно затруднительно (мой голос не дикторский, а другим людям нужно платить за работу, плюс у меня нет ни оборудования, ни помещения для записи достаточного качества), то дальнейшая разработка программы откладывается на неопределенный срок.

    Возможность передачи исходников в хорошие руки может обсуждаться, но мои семплы голоса при любом раскладе принадлежат мне. Их заливка на SVN не будет красивым поступком - это не код, а данные. По этой причине заливка исходников бессмысленна.
  • Who is online

    Users browsing this forum: No registered users and 8 guests