<!DOCTYPE html>
<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>jQuery Text-to-Speech 谷歌在线语音</title>
<script type='text/javascript' src='jquery-1.9.1.min.js'></script>
<script type="text/javascript">
function html5_audio(){
var a = document.createElement('audio');
return !!(a.canPlayType && a.canPlayType('audio/mpeg;').replace(/no/, ''));
} var play_html5_audio = false;
if(html5_audio()) play_html5_audio = true; function play_sound(url){
if(play_html5_audio){
var snd = new Audio(url);
snd.load();
snd.play();
}else{
$("#sound").remove();
var sound = $("<embed id='sound' type='audio/mpeg' />");
sound.attr('src', url);
sound.attr('loop', false);
sound.attr('hidden', true);
sound.attr('autostart', true);
$('body').append(sound);
}
}
function readme(txt){
play_sound("http://translate.google.com/translate_tts?ie=UTF-8&q="+encodeURIComponent(txt)+"&tl=zh-cn&total=1&idx=0prev=input"); //英文 en //中文
}
readme('hello world');
$(function(){
$('#btnread').click(function(){
readme($('#inp').val());
});
});
</script>
</head> <body>
<input type="text" id="inp"  value="涂聚文"/> <input type="button" id="btnread" value="Klick me"/>
</body> </html>

http://code.google.com/p/jqtts/source/checkout

/*!
jQuery Text-to-Speech plugin
--------------------------------------------
http://code.google.com/p/jqtts/ Copyright (c) 2010, Kevin Hoang Le. All rights reserved.
Code provided under the MIT License:
http://www.opensource.org/licenses/mit-license.html v0.1
*/ (function($) {
$.fn.extend({
jtts: function(options) {
var defaults = {
lang: 'en',
msPerWord: 900
}; var options = $.extend(defaults, options);
//passed-in
var sentences = [];
var lang;
var msPerWord;
var elem;
//internal
var plugin;
var ttsUrl = 'http://translate.google.com/translate_tts';
var inProgress = false;
var currentPlaying = 0;
var total = 0;
var isIE;
var jPlayer = null; var talkNonIE = function() {
var url = ttsUrl + '?tl=' + lang + '&q=' + sentences[currentPlaying++];
jPlayer.jPlayer('setFile', url).jPlayer('play').jPlayer('onSoundComplete', onSoundComplete);
}; var talkIE = function() {
if (currentPlaying < total) {
var re = /\w+/g;
var words = sentences[currentPlaying].match(re); var url = ttsUrl + '?tl=' + lang + '&q=' + sentences[currentPlaying++];
setTimeout(talkIE, words.length * msPerWord); if (jPlayer != null) {
jPlayer.remove();
} jPlayer = $('<embed>', {src: url, hidden: true}).appendTo($(elem));
} else {
inProgress = false;
plugin.trigger('onComplete', []);
}
}; var onSoundComplete = function() {
if (currentPlaying < total) {
talkNonIE();
} else {
inProgress = false;
plugin.trigger('onComplete', []);
}
}; return this.each(function() {
plugin = $(this);
elem = $(options.elem); if ($.browser.msie) {
isIE = true;
} else {
isIE = false;
jPlayer = $(elem);
jPlayer.jPlayer(options.jPlayer);
} lang = options.lang;
msPerWord = options.msPerWord;
}).bind('playing', function(e, lines) {
currentPlaying = 0;
sentences = lines;
total = sentences.length;
if (isIE) {
talkIE();
} else {
talkNonIE();
}
}).bind('pause', function() {
}).bind('stop', function() {
}).bind('resume', function() {
});
},
play: function(sentences) {
return this.trigger('playing', [sentences]);
},
pause: function() {
return this.trigger('pause');
},
abort: function() {
return this.trigger('abort');
},
resume: function() {
return this.trigger('resume');
}
});
})(jQuery);

jQuery Text-to-Speech 谷歌在线语音的更多相关文章

  1. 必应语音API(Bing text to speech API)

    前言 Link : Microsoft Speech API overview 通过这个链接,大致了解Bing speech API的语音识别和语音合成两部分, 这次是需要用到TTS,所以就直接看TT ...

  2. xe5 android tts(Text To Speech)

    xe5 android  tts(Text To Speech) TTS是Text To Speech的缩写,即“从文本到语音”,是人机对话的一部分,让机器能够说话. 以下代码实现xe5 开发的文本转 ...

  3. delphi xe5 android tts(Text To Speech)

    TTS是Text To Speech的缩写,即“从文本到语音”,是人机对话的一部分,让机器能够说话. 以下代码实现xe5 开发的文本转语音的方法 和访问蓝牙一样,这里用javaclass的接口实现 接 ...

  4. xe5 android tts(Text To Speech) [转]

    TTS是Text To Speech的缩写,即“从文本到语音”,是人机对话的一部分,让机器能够说话. 以下代码实现xe5 开发的文本转语音的方法 和访问蓝牙一样,这里用javaclass的接口实现 接 ...

  5. python解析谷歌在线表格链接,转化为数组形式,图片转化为链接

    在线表格已成为趋势,传统的表格导入导出已经不能满足现在企业的发展. 必须支持在线表格的导入,只需要输入在线表格的链接,就能将数据读取出来. 而且相比相传表格,能够将图片信息一块读取.在线表格中的图片也 ...

  6. 第二篇:TTS(Text To Speech)语音合成

    TTS(Text To Speech)语音合成: 百度AI语音合成SDK文档--python SDK: https://ai.baidu.com/docs#/TTS-Online-Python-SDK ...

  7. jquery text选择器 语法

    jquery text选择器 语法 作用::text 选择器选取类型为 text 的 <input> 元素.大理石平台检定规程 语法:$(":text") jquery ...

  8. C# ms speech文字转语音例子

    最近突发奇想 想玩玩  文字转语音的东东   谷歌了一下 发现微软有一个TTS 的SDK   查了查相关资料  发现 还真不错  然后就开始玩玩Microsoft Speech SDK的 DEMO了 ...

  9. csharp:Google TTS API text to speech

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

随机推荐

  1. macdown快速上手

    1.断句 在结尾处输入两个空格并使用回车. 2.标题分级 使用#来进行分级,#越多级数越低 3.链接 可以使用<>里面直接加上地址 或者使用[}里面加上链接名字然后后面接上()里面就是地址 ...

  2. Python+selenium 模拟wap端页面操作

    from selenium.webdriver.chrome.options import OptionsmobileEmulation = {'deviceName': 'iPhone X'}opt ...

  3. Bowen

    Advertise Window大小 注册表键值位于:regedit->HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Pa ...

  4. 批量生成python自动化测试脚本

    先前有家供应商与我们合作开发自动化工程,采用的py unittest作为脚本运行框架.我发现他们出的脚本都是挨个手写的,格式上也是参差不齐.所以有了根据用例表批量生成脚本的一段小代码 对一个测试脚本必 ...

  5. spring.net AOP

    AOP 术语 通知(Advice): 通知描述了切面要完成的任务,同时还描述了何时执行这个任务. 连接点(Joinpoint):  程序中应用通知的地方称为连接点,这个点可以是方法被调用时,异常抛出时 ...

  6. Hive中 使用 Round() 的坑

    有个算法如下: SELECT MEMBERNUMBER, ROUND(SUM(SumPointAmount)) AS VALUE FROM BSUM_CRMPOINT WHERE UPPER(POIN ...

  7. (转)shell变量及扩展

    1.shell变量 shell变量赋值语句为”name=[value]“,等号两边不能有空格,可以给shell变量追加内容”name+=value“,取消shell变量的设置使用”unset name ...

  8. kafka集群安装及简单使用

    关于kafka是什么及原理,请参考kafka官方文档的介绍:http://kafka.apache.org/documentation/#introduction ,英文不好的同学可以看这里http: ...

  9. 【Docker】制作一个支持SSH终端登录的镜像

    首先从官方或者docker.cn的镜像库中pull下来ubuntu镜像: docker pull ubuntu 现在用命令查看一下pull下来的ubuntu镜像: docker images 关于如何 ...

  10. 运行时用AnimatorOverrideController动态加载动画片段

    https://blog.csdn.net/tlrainty/article/details/54602786 项目中经常会遇到这种情况:很多模型动画的AnimatorController是一模一样的 ...