LINUX.ORG.RU
решено ФорумTalks

espeak


0

1

видел где-то скриптик который делает запрос к translate.google.com выкачивает звуковой файл оттуда для фразы в параметрах и выводить его через play. дайте ссылочку, велосипедить самому лениво

★★★★★

сабж не катит т.к. ужасен, festival лучше, но хочу именно из гугла

pawnhearts ★★★★★
() автор топика

Но вообще, так делать не хорошо.

#!/bin/bash
mplayer -user-agent Mozilla "http://translate.google.com/translate_tts?tl=en&q=$(echo $* | sed 's#\ #\+#g')" > /dev/null 2>&1

Bad_ptr ★★★★★
()
Ответ на: комментарий от Bad_ptr

чем это хуже чем заходить на translate.google.com и тыкать мышкой? btw спасибо большое, то что нужно и оч оперативно:)

pawnhearts ★★★★★
() автор топика
Ответ на: комментарий от Bad_ptr

А можно то же самое для русского языка? То есть, к какому виду надо приводить подаваемую скрипту информацию на русском, чтобы он мог её прочитать?

RedNikifor ★★
()
Ответ на: комментарий от Bad_ptr

Попробовал же, но, понятное дело, когда я сохраняю это дело с ru вместо en в, например, speak.sh и делаю

speak.sh «Проверка раз, джва, три»

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

RedNikifor ★★
()
Ответ на: комментарий от RedNikifor

видимо никак. скорее всего гугл сам производит транслитерацию в богомерзкую латиницу.

hope13 ★★★
()
Ответ на: комментарий от RedNikifor

как-то странсформировать кириллицу

Когда-то написал такой скрипт, правда для других целей, но легко модифицируешь... Использовать через пайп.

#!/usr/bin/python2
#coding=UTF8
# -*- coding: utf-8 -*-

import sys

podstava={u"А":"A",u"Б":"B",u"В":"V",u"Г":"G",u"Д":"D",u"Е":"E",u"Ё":"E\'",
        u"Ж":"J",u"З":"Z",u"И":"I",u"Й":"Y'",u"К":"K",u"Л":"L",u"М":"M",
        u"Н":"N",u"О":"O",u"П":"P",u"Р":"R",u"С":"S",u"Т":"T",u"У":"U",
        u"Ф":"F",u"Х":"H",u"Ц":"C",u"Ч":"CH",u"Ш":"SH",u"Щ":"SH\'",u"Ь":"\'",
        u"Ы":"I",u"Ъ":"\'",u"Э":"E",u"Ю":"YU",u"Я":"Ya",
        u"а":"a",u"б":"b",u"в":"v",u"г":"g",u"д":"d",u"е":"e",u"ё":"e'",
        u"ж":"j",u"з":"z",u"и":"i",u"й":"i'",u"к":"k",u"л":"l",u"м":"m",
        u"н":"n",u"о":"o",u"п":"p",u"р":"r",u"с":"s",u"т":"t",u"у":"u",
        u"ф":"f",u"х":"h",u"ц":"c",u"ч":"ch",u"ш":"sh",u"щ":"sh'",u"ь":"\'",
        u"ы":"i",u"ъ":"\"",u"э":"e",u"ю":"yu",u"я":"ya"}

farg=sys.stdin
napr=""

def swap_dictionary(original_dict):
    return dict([(v, k) for (k, v) in original_dict.iteritems()])

def q2transl( inp, pods ):
    for line in inp.readlines():
        ret = ""
        for ch in unicode( line, 'utf8' ):
            if ch == "\n":
                continue
            if ch in pods:
                ret += pods[ch]
                continue
            ret += ch
        print( ret )

if __name__ == '__main__':
    # if len(sys.argv) >1:
    #     farg=sys.argv[1]
    # elif farg=="":
    #     farg = sys.stdin

    if len(sys.argv) >1:
        napr=sys.argv[1]
    elif napr=="":
        napr = "0"

    if napr == "1":
        podstava=swap_dictionary(podstava)

    q2transl( farg, podstava )
    exit(0)

Bad_ptr ★★★★★
()
Ответ на: комментарий от CYB3R

Google TTS эта штука называется, только вот по прикручивании к этому делу кириллицы и правда ничего серьёзного не гуглится.

RedNikifor ★★
()
Ответ на: комментарий от CYB3R

И нет ли у гугла какого-нибудь апи для этого?

наверняка есть, но платное.

Bad_ptr ★★★★★
()

Черт, у меня раньше был такой скриптец на баше, который читай звук с микрофона, распознает в текст, переводит текст гугл-транслейтом и говорит перевод фестивалем, и все это на конвейерах.

Жаль, потерял, наверное.

bk_ ★★
()
Ответ на: комментарий от Bad_ptr

Вопщем полная картина такая получается:
echo 'Привет, Гугл!'|say.py|xargs google_say.sh

Bad_ptr ★★★★★
()
Ответ на: комментарий от CYB3R

не по-русски совсем.

ты en на ru поменял?
А говорит плохо, ясен фиг... они всётаки больше английский яз точат.

Bad_ptr ★★★★★
()

А просто кириллицу TTS'у никак не скормить?

#!/bin/bash
mplayer -user-agent Mozilla "http://translate.google.com/translate_tts?tl=$1&q=$2" > /dev/null 2>&1

Пускаю так:

./say.sh ru "Mne podariili novyj skript"

CYB3R ★★★★★
()
Ответ на: комментарий от CYB3R

Забыл название программы. Разрабатывается в японском универе каком-то, вся документация на японском. Для распознавания пишутся грамматики языка.

bk_ ★★
()

да блин поищите в urllib python`а urlencode и будет вам кириллица

pawnhearts ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.