сжать волновой файл на сервере и распаковать во флэш / клиентскую часть - PullRequest
0 голосов
/ 08 сентября 2011

Я использую программу с открытым исходным кодом, которая называется Festival, которая генерирует текст в речь, и в Ubuntu я вызываю ее метод text2wave, который преобразует текст в волновой файл. Я пытаюсь преобразовать короткие абзацы в волновые файлы, но проблема в том, что каждый волновой файл имеет размер около 1,2 МБ. Волновой файл записывается с частотой 16 кГц, а при записи с частотой 8 кГц, вдвое меньшего размера волнового файла (жертвуя качеством звука), волновой файл просто слишком велик. Эти абзацы нужно многократно обслуживать клиентам, и наш сервер не может поддерживать такую ​​большую пропускную способность.

У кого-нибудь есть идеи, как обойти эту проблему? Можно ли сжать файл на сервере, распаковать его в моем flash-скрипте (на стороне клиента) и воспроизвести волну? Какой размер я бы сэкономил? Спасибо за любую помощь.

1 Ответ

1 голос
/ 08 сентября 2011

Flash поддерживает формат mp3. Вы можете закодировать ваш волновой файл на стороне сервера с помощью LAME и позволить Flash выполнять декодирование на стороне клиента. Я предполагаю, что вы можете использовать произвольные CGI на вашем сервере. Какой размер вы сохраните таким образом, зависит от ваших настроек кодировки. Вы должны экспериментировать.

...