Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Запрос к Google TTS + Кирилица (http://www.flasher.ru/forum/showthread.php?t=150190)

Azo 07.02.2011 21:30

Запрос к Google TTS + Кирилица
 
http://translate.google.pl/translate_tts?q=Проверка

если вводить непосредственно в адресной строке - работает.

А вот
Код AS3:

URLRequest ("http://translate.google.pl/translate_tts?q=Проверка")

этого не получается.... видимо потому что Флеш всегда использует unicode в запросах...


Вариант с
Код AS3:

URLRequest ("http://translate.google.pl/translate_tts?q=%D0%9F%D1%80%D0%BE%D0%B2%D0%B5%D1%80%D0%BA%D0%B0")

тоже не катит... Голос читает вслух проценты....


через ПХП так же как я не старался - не получилось =(



Как исправить? помогайте друзья - флешеры.

Saulot 08.02.2011 11:44

Попробуйте:

Код AS3:

URLRequest (encodeUri("http://translate.google.pl/translate_tts?q=Проверка"));

Авось поможет :)

На самом деле странно, что у вас не работает. Только что проверил - и с энкодом, и без него ответ получается правильный. Кодировка проекта у вас UTF-8 ?

Azo 08.02.2011 12:54

Код AS3:

trace(encodeUri("http://translate.google.pl/translate_tts?q=Проверка"))

- вот это (то что треситца) если ввести в браузерную строку и нажать энтер - работает!

а вот внутри флешки не хочет =(((((((((((((

кодировка UTF-8 а как иначе?

Saulot 08.02.2011 13:46

Использую такой код, звук возвращается нормально:

Код AS3:

var url:URLRequest = new URLRequest("http://translate.google.pl/translate_tts?q=Проверка");
var sound:Sound=new Sound(url);
sound.addEventListener(Event.COMPLETE,function(event:Event):void{sound.play()});

После запроса какой-либо результат возвращается?

Смотрю на ваш первый пост - может вы вместо
Код AS3:

new URLRequest("http://translate.google.pl/translate_tts?q=Проверка")

просто
Код AS3:

URLRequest("http://translate.google.pl/translate_tts?q=Проверка");

пишете?

Azo 08.02.2011 13:56

А у меня не хочет(

Дело в компиляторе наверное? в кодировке проекта? У меня КС5


например после вашего кода
Код AS3:

var url:URLRequest = new URLRequest("http://translate.google.pl/translate_tts?q=Проверка");
var sound:Sound=new Sound(url);
sound.addEventListener(Event.COMPLETE,function(event:Event):void{sound.play()});

Возврашается нулевой звук.. пустой

Saulot 08.02.2011 16:27

Фу ты, КС5. Не в компиляторе проблема, и не в кодировке, а в системе безопасности.

Она не позволяет флешке с жесткого диска получать доступ к интернету. Даже из теста.
Если вы положите флешку на сервер, то код должен работать нормально.
Я собирал ее под FB, так что у меня этой ошибки не возникало.

В File->Publish Settings->Flash можно переключить Local playback security, чтобы на тесте разрешало доступ к сети.

Azo 08.02.2011 16:28

Спасибо!!!

Добавлено через 25 минут
Но все ровно не работает... Может кто на php кодик подскажет

Код AS3:

sound.load(Эhttp://server.ru/cod.php?str=проверка")

PHP код:

<?
header
("Content-Type: text/html;charset=utf-8");
$str=$_GET['str'];
echo(
get_file_content("http://translate.google.com/translate_tts?&q=".urlencode($str).""));
?>

так тоже не получилось...

Семён Борода 19.05.2011 05:25

Код AS3:

import flash.events.Event; 
import flash.media.Sound;
import flash.net.URLRequest;
 
var s:Sound = new Sound();
s.addEventListener(Event.COMPLETE, onSoundLoaded);
var req:URLRequest = new URLRequest("http://translate.google.com/translate_tts?q=hello+world");
s.load(req);
 
function onSoundLoaded(event:Event):void
{
    var localSound:Sound = event.target as Sound;
    localSound.play();
}

А у меня и на английском не работает.Только из Firefox или с компа звук есть, а из народа и из контакта нету.... В чём ошибка?

Семён Борода 19.05.2011 05:52

чтобы по-русски читал, так попробуй:
U
Код AS3:

RLRequest("http://translate.google.pl/translate_tts?tl=ru&ie=utf-8&q=%D0%9F%D1%80%D0%BE%D0%B2%D0%B5%D1%80%D0%BA%D0%B0");

у меня работает через Firefox только

Azo 20.05.2011 14:42

Кстати а какое там ограничение запросов в день?


Часовой пояс GMT +4, время: 01:42.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.