前端如何实现将页面中的文字转换为语音然后通过程序朗读出来?
走同样的路,发现不同的人生
调相关的 API 即可:http://apistore.baidu.com/apiworks/servicedetail/867.html
接口返回的 Base64 音频文件代码,你可以简单的拼成:
var audioUrl = "data:audio/mp3;base64," + xhr.respoonse.retData;
或者通过 Blob 将文件转换为二进制:
var data = atob( xhr.response.retData ), result = new Unit8Array(data.length), audioUrl; for(var i=0,l=data.length; i<l; i++) { result[i] = data.charCodeAt(i) } audioUrl = window.URL.createObjectURL( new Blob([result.buffer], {type: "audio/mp3"}) );
这样都能拿到一个地址,最后使用 Audio 播放即可:
Audio
new Audio( audioUrl ).play();
最后提供一个演示地址:http://word2audio.coding.io
参考资料:
https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Sending_and_Receiving_Binary_Data
调相关的 API 即可:http://apistore.baidu.com/apiworks/servicedetail/867.html
接口返回的 Base64 音频文件代码,你可以简单的拼成:
或者通过 Blob 将文件转换为二进制:
这样都能拿到一个地址,最后使用
Audio
播放即可:最后提供一个演示地址:http://word2audio.coding.io
参考资料:
https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Sending_and_Receiving_Binary_Data