Google TEXT TO SPEECH

Mình muốn dùng cái API Google Text To Speech, ví dụ như link này, khi mình gõ trực tiếp vào thanh url thì chạy ok, nghe được tiếng đọc, nhưng khi copy vào trang html của mình thì lại không chạy được. Tìm hiểu thì thấy bảo GG nó chặn gì gì đó. Ai có cách nào xử lý ko? xử lý bằng javascript nhé.
http://translate.google.com/translate_tts?ie=UTF-8&q=腕&tl=ja
Thanks :smiley:

2 Likes
var audio = new Audio();
audio.src ='http://translate.google.com/translate_tts?ie=UTF-8&q=%E8%85%95&tl=ja';
audio.play();
3 Likes

Không được bạn à :smiley: mình đang làm cách này đây mà không được, toàn bị 404.

2 Likes

anh @ltd có nhiều kinh nghiệm biết cái này không anh ? em cũng thắc mắc quá :smiley:

1 Like

Cảm ơn đã hỏi, nhưng anh không rành cái này. Chúc @tran_duc_Duong may mắn nhé :wink:

2 Likes

Mình có xem source code trang của bạn và có một chỗ không hiểu đó là đoạn này:

  // Google TEXT TO SPEECH
  (function($) {
   'use strict';
   
    var audio;
    $('#ggSpeech').on('submit', function(e){
      e.preventDefault();
      var speech = 'select * from data.uri where url="http://translate.google.com/translate_tts?' + $(this).serialize() + '"';
      $.getJSON('https://query.yahooapis.com/v1/public/yql?q=' + encodeURIComponent(speech) + '&format=json&diagnostics=true', function(data) {
        var audioSrc = data.query.results.url;
        if(data && audioSrc !== undefined) {
          audio = new Audio();
          audio.src = audioSrc;
          audio.play();
        }
      });
    }).on('reset', function(e){
      audio.pause();
      audio.currentTime = 0;
    });
  }(jQuery));

Đoạn select * from data.uri là sao vậy bạn, sao JS lại có select * from vậy? rồi còn đoạn code getJSON nữa. bạn có thể nói rõ hơn một chút được không :smiley:
Code của bạn mình đã ghép vào và chạy rất ok :smiley:

select * form là cú pháp của YQL.
getJSON là một method trong jQuery.

2 Likes

Lần đầu tiên biết đến cái Yahoo Query Language này, cảm ơn bạn rất nhiều :smiley: hehe :smiley:

bác nào có source, cho mình xin được ko.
trên mạng toàn sử dụng API

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?