Синтез речи (озвучание речи компьютером)

Запись и воспроизведение голоса. Чтобы общаться с человеком по телефону, голосовая система должна уметь записывать и воспроизводить человеческую речь. Простейшим примером такой системы является обыкновенный автоответчик, где голос записывается на магнитную ленту, а потом воспроизводится. В современных системах компьютерной телефонии голос записывается в цифровом виде на диск, обычно по методу PCM (Pulse Code Modulation). Аналоговый электрический сигнал, передающий голос, подвергается цифровому преобразованию через определенные промежутки времени. Согласно известной теореме Найквиста, частота оцифровки или частота выборки должна быть вдвое выше максимальной частоты, присутствующей в спектре оцифровываемого сигнала. Общепринятым стандартом при передаче голоса является сохранение в его спектре частот до 4 кГц — при этом голос, с одной стороны, сохраняет узнаваемость, а с другой — не требует для своей передачи высококачественных линий. Отсюда получается, что частота выборки должна составлять 8 кГц, а общепринятое разрешение аналого-цифрового преобразования составляет 256 уровней. Для кодировки такого преобразования необходимо 8 бит информации. Таким образом, для кодирования голосового сигнала требуется скорость 64 Кбит/с.

Распознавание набранных абонентом цифр. Системы компьютерной телефонии должны воспринимать команды абонента, которые в простейшем случае вводятся путем набора цифры на телефонном аппарате. Отсюда следует, что аппаратура для компьютерной телефонии должна распознавать, какую цифру набрал абонент. Здесь следует отметить, что сегодня существуют две основные принципиально различные системы набора номера — DTMF (Dual-Tone Multifrequency) и импульсный набор. Система DTMF принята в США, Израиле и ряде других стран, импульсный набор — в большинстве европейских стран, России и Японии. В системе DTMF (или тоновом наборе) каждая цифра кодируется звуковым сигналом, представляющим собой сочетание двух частот, отвечающих координатам соответствующей цифры на наборной клавиатуре телефона. Обычно на такой клавиатуре имеется четыре горизонтальных и три вертикальных ряда клавиш, соответственно, в системе DTMF имеется двенадцать сочетаний частот, передаваемых по телефонным линиям в виде обычных звуковых сигналов. Существуют стандартные схемные решения для распознавания этих частот, поэтому обработка тонового набора никаких затруднений не представляет.

С импульсным набором дело обстоит сложнее — каждая цифра кодируется серией разрывов в цепи между телефонным аппаратом и коммутирующим оборудованием на станции. Число разрывов в линии соответствует набранной цифре (ноль кодируется десятью разрывами); разрывы, относящиеся к одной и той же цифре, разделены короткими интервалами, более длинные интервалы разделяют разрывы, относящиеся к разным цифрам. Основная проблема состоит в том, что разрывы цепи не передаются дальше по линии, и на другом конце соединения прослушиваются только характерные щелчки. Эти щелчки приходится распознавать, что при наличии помех в линии сделать затруднительно.

Преобразование текст-речь. Любая компьютерно телефонная система должна обладать способностью озвучить для абонента то или иное сообщение. Такое преобразование может выполняться в одном из двух режимов: путем сборки из заранее записанных речевых фрагментов и прямым формированием речевого сообщения по текстовому файлу. Сборка из заранее записанных речевых фрагментов позволяет решать только самые простые задачи, например синтез числительных. Достаточно записать речевые фрагменты, содержащие простейшие элементы, из которых состоят наименования чисел: цифры, десятки, сотни, тысячи и т. д. и из них можно будет набрать любое число. А поскольку работа многих информационных систем связана именно с передачей чисел, то такого синтеза будет вполне достаточно для работы очень многих приложений. Несмотря на внешнюю простоту такой системы, с ней связан целый ряд существенных проблем. Для того, чтобы синтезируемое сообщение звучало плавно, без разрывов, подставляемые слова должны быть интонационно встроены в общую фразу, достичь чего не так просто. В русском языке к этой проблеме добавляется еще проблема изменяемости слов приходится для каждого контекста, где встречается числительное в определенном падеже, делать отдельную запись. Кроме того, в зависимости от числительного меняются и окружающие его слова, например: «триста тридцать один рубль», «триста тридцать три рубля», что еще больше осложняет ситуацию. Тем не менее, существуют стандартные методы подготовки речевых фрагментов для этого метода синтеза сообщений. Данный способ формирования речевых сообщений годится для подавляющего большинства голосовых систем.

Значительно более гибким, хотя и более сложным алгоритмически является прямой синтез речевых сообщений по тексту. Сегодня существуют алгоритмы синтеза речи по текстам на английском, немецком, испанском, японском и ряде других языков. Недавно появились сообщения о том, что разработана и система для русского языка, однако прямого подтверждения этому найти пока не удалось. Лидером в области разработки коммерческих систем текст-речь является сегодня компания Berkeley Speech Technologies (BeST). Основная проблема, до настоящего времени пока не имеющая полного решения, состоит в том, чтобы синтезированная по тексту речь звучала «по-человечески» — пока компьютерная речь практически не имеет интонаций и ударений, а кроме того, имеются трудности с озвучиванием имен собственных и адресов.