精华内容
下载资源
问答
  • 百度文字转语音

    千次阅读 2019-09-22 22:36:48
    2. 利用百度文字转语音demo: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Net; using System.IO; using System....

     

     

     

    <!DOCTYPE html>
    <html>
      <head>
          <script src="http://cdn.javanx.cn/wp-content/themes/lensnews2.2/js/jquery.min.js?ver=3.1.1"></script>
        <title>Web?</title>
        <meta name="name" content="Javan" />
        <style>
        </style>
      </head>
      <body>
       <script src="http://cdn.javanx.cn/wp-content/themes/lensnews2.2/js/jquery.min.js?ver=3.1.1"></script>
        <script>
            function audioPlay(text){
        var zhText = text;
        zhText = encodeURI(zhText);
        var audio = "<audio autoplay=\"autoplay\">" + "<source src=\"http://tts.baidu.com/text2audio?lan=zh&ie=UTF-8&spd=4&text=" + zhText + "\" type=\"audio/mpeg\">" + "<embed height=\"0\" width=\"0\" src=\"http://tts.baidu.com/text2audio?text=" + zhText + "\">" + "</audio>";
        $('body').append(audio);
    }
    audioPlay('hello 你好啊');
    
        </script>
      
      </body>
    </html>
    

      

     

    HTML 在线编辑器 http://demo.javanx.cn/coding/index.html

     

     

     

    2. 利用百度文字转语音demo:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Net;
    using System.IO;
    using System.Windows;
    using System.Windows.Threading;
    using System.Windows.Controls;
    
    namespace TextSpeech
    {
       public  class BaiduSpeech
        {
    
    
    
           public static string Text2Voice(string sText) {
    
              sText = Uri.EscapeDataString(sText );
              string post = "type=tns&spd=5&pit=10&vol=5&per=4&tex=%E6%8F%90%E4%BE%9B%E5%A4%9A%E7%A7%8D%E5%8F%91%E9%9F%B3%E4%BA%BA%0A%E6%8F%90%E4%BE%9B%E5%9F%BA%E7%A1%80%E9%9F%B3%E5%BA%93%E5%92%8C%E7%B2%BE%E5%93%81%E9%9F%B3%E5%BA%93%E5%85%B19%E7%A7%8D%E5%8F%91%E9%9F%B3%E4%BA%BA%E4%BE%9B%E6%82%A8%E9%80%89%E6%8B%A9%EF%BC%8C%E9%80%82%E7%94%A8%E4%BA%8E%E6%B3%9B%E9%98%85%E8%AF%BB%E3%80%81%E8%AE%A2%E5%8D%95%E6%92%AD%E6%8A%A5%E3%80%81%E6%99%BA%E8%83%BD%E7%A1%AC%E4%BB%B6%E7%AD%89%E5%BA%94%E7%94%A8%E5%9C%BA%E6%99%AF%EF%BC%8C%E5%8D%B3%E5%B0%86%E6%8E%A8%E5%87%BA%E6%9B%B4%E5%A4%9A%E7%89%B9%E8%89%B2%E5%8F%91%E9%9F%B3%E4%BA%BA";
              post = "type=tns&spd=5&pit=10&vol=5&per=4&tex="+sText;
              string s=  HttpHelper2.httpPost("http://ai.baidu.com/aidemo", post );
             //  MessageBox.Show(s);
               //if get OK result: {"errno":0,"msg":"success","data":"data:audio\/x-mpeg;base64,\/\/MoxAA............VVVV"}
               //convert from audio base64 string to byte
               if (s.Contains("data:audio\\/x-mpeg;base64"))//success get audio
               {
                   s = System.Text.RegularExpressions.Regex.Unescape(s);
                   string stringInBase64 = s.Replace("{\"errno\":0,\"msg\":\"success\",\"data\":\"data:audio/x-mpeg;base64,","").Replace("\"}","");
                   byte[] bytes = System.Convert.FromBase64String(stringInBase64);
                   WriteByteToFile(bytes, "temp.mp3"); //保存本地文件后可用 MediaElement 组件来播放。
                 //  playAudio(bytes);//播放声音,如果不是WAV格式的流会失败。
                 //  PlaySound(md,AppDomain.CurrentDomain.BaseDirectory + "\\temp.mp3");
             
    
               }
    
       
               return s;
           }
    
    
    
            /// <summary>
            /// 写byte[]到fileName
            /// </summary>
            /// <param name="pReadByte">byte[]</param>
            /// <param name="fileName">保存至硬盘路径</param>
            /// <returns></returns>
             static bool WriteByteToFile(byte[] pReadByte, string fileName)
            {
                FileStream pFileStream = null;
                try
                {
                    pFileStream = new FileStream(fileName, FileMode.OpenOrCreate);
                    pFileStream.Write(pReadByte, 0, pReadByte.Length);
                }
                catch
                {
                    return false;
                }
                finally
                {
                    if (pFileStream != null)
                        pFileStream.Close();
                }
                return true;
            }
    
    
    
    
          static  void  playAudio(byte[] data)
           {
               MemoryStream ms = new MemoryStream(data);
               ms.Position = 0;
               System.Media.SoundPlayer player = new System.Media.SoundPlayer();
               player.Stream = ms;
               player.LoadAsync();
               player.Play();//The wave header is corrupt. 说明这个不是WAV格式文件流
    
           }
    
    
          static  void PlaySound(MediaElement md ,string url)
          {
                  md.LoadedBehavior = MediaState.Manual;
                  md.IsEnabled = true;
                  md.Stop();
                  md.Source = null;
                  md.Source = new Uri(url);
                  md.Play();
      
    
          }
    
    
    
    
        }
    
    
    
    
    
       public class HttpHelper2 {
    
    
           CookieContainer myCookieContainer = new CookieContainer();
           public static string httpPost(string url, string post)
           {
               string s = "";
               try
               {
                   byte[] data = Encoding.ASCII.GetBytes(post);
                   HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(url);
                   req.Method = "POST";
                   req.Headers.Add("Cookie", "BAIDUID=CA97D41AACE2AD8A2750225E9F53C9BA:FG=1; BIDUPSID=CA97D41AACE2AD8A2750225E9F53C9BA; PSTM=1562830960; BDUSS=1Vib0ZXRjlqYnBmNG1SaW4wZjJ0SE0wRW40MXhJdE1JT01RQmk5QmtoMzB2VmRkSVFBQUFBJCQAAAAAAAAAAAEAAADSJwUAd2dzY2QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPQwMF30MDBdN; H_WISE_SIDS=126894_127760_132206_132550_133721_120202_133016_132911_133041_131246_132439_130762_132378_131518_118889_118863_118845_118826_118787_107320_133159_132780_134393_133352_129647_134434_124636_128968_132540_133837_133473_131906_133838_133847_132552_134460_133424_134319_134214_129645_131423_134345_133587_110085_134152_127969_131299_127318_127417_134150_133668_134352; BDORZ=B490B5EBF6F3CD402E515D22BCDA1598; delPer=0; H_PS_PSSID=29716_1446_21115_29523_29520_29721_29568_29220; PSINO=6; Hm_lvt_8b973192450250dd85b9011320b455ba=1567135060; Hm_lpvt_8b973192450250dd85b9011320b455ba=1567135060");
                   req.ContentType = "application/x-www-form-urlencoded";
                   req.UserAgent = "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36";
                   req.Referer = "http://ai.baidu.com/tech/speech/tts?track=cp:ainsem|pf:pc|pp:chanpin-yuyin|pu:yuyin-yuyinhecheng-pinpai|ci:|kw:10003541";
                   req.ContentLength = data.Length;
                   req.GetRequestStream().Write(data, 0, data.Length);
                   // req.CookieContainer = myCookieContainer;
                   HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
                  // myCookieContainer.Add(resp.Cookies);
                   StreamReader r = new StreamReader(resp.GetResponseStream());
                   s = r.ReadToEnd();
                   r.Close();
                   resp.Close();
                   req.Abort();
    
               }
               catch (Exception ex)
               {
    
                   s = ex.Message;
    
               }
    
    
               return s;
           }
    
       
       
       
       }
    
    
    
    
    
    
    
    }
    

      

     

    转载于:https://www.cnblogs.com/wgscd/p/11383534.html

    展开全文
  • 百度文字转语音代码 ,里面有详细代码说明,希望对你有帮助
  • 有的人突发奇想,想在微信平台上把别人输入的文字自动转换为语音,然后传送出去。这个想法非常好,我想也应该受到大家的欢迎,但是能否实现这一功能呢?自己开发是不可能的了,看有无这样...百度文字转语音免费接口...

    有的人突发奇想,想在微信平台上把别人输入的文字自动转换为语音,然后传送出去。这个想法非常好,我想也应该受到大家的欢迎,但是能否实现这一功能呢?自己开发是不可能的了,看有无这样的接口更加实际。一向对新鲜事物比较感兴趣的我为此查了一下相关的资料,终于发现了能实现此功能的接口。随后,亲自测试了一番,果真成功了。好东西当然要与众分享了,本文通过一个实例来说明怎样使用文字转语音的接口。

    e174d49b8958523064d7128e95da8c15.png

    百度文字转语音免费接口

    先给大家提供文字转语音的接口吧:

    http://tts.baidu.com/text2audio?lan=zh&ie=UTF-8&spd=2&text=你要转换的文字

    参数说明:

    lan=zh:语言是中文,如果改为lan=en,则语言是英文。

    ie=UTF-8:文字格式。

    spd=2:语速,可以是1-9的数字,数字越大,语速越快。

    text=**:这个就是你要转换的文字。

    怎样调用?

    上述接口的url,在浏览器上直接打开,即可听到文字转换后的语音。

    但是真实应用时可不能在浏览器里直接打开这个url,而是需要在一个网页里无缝嵌入该语音模块。该怎么处理呢?

    1)通过HTML调用接口

    我们可以通过如下的html代码来运行语音接口。

    问题来了,text的字符串是如何得来的?其实,是通过javascript的encodeURI()函数编码得来的。上述字符串是“测试百度文字转语音接口 - 卡卡测速网 www.webkaka.com”通过encodeURI()函数编码得来的。

    2)通过JS调用接口

    下面是JS的实现代码:

    var zhText = "测试百度文字转语音接口 - 卡卡测速网 www.webkaka.com";

    zhText = encodeURI(zhText);

    document.write("");

    document.write("");

    document.write("");

    document.write("");

    使用说明,把 zhText的文字换成你要转换的文字即可。

    展开全文
  • 百度文字转语音程序

    千次阅读 2016-09-14 08:32:19
    百度文字转语音程序的python实现
    #!/usr/local/bin/python
    # -*- coding: gbk-*-
    #
    import os,sys
    import time
    import urllib, urllib2,ssl


    class CBaiduTTSClass:
        
        def __init__(self,person=0,speed=5):
            self.cuid = "000C29447253"
            self.apiKey = "57IeRiLgiI1E" #百度语音申请
            self.secretKey = "8b294c37938af94"
            self.person =str(person)
            
            self.speed=str(speed)
            self.get_token()
            self.IsSpeaking=False
    ##        reload(sys)
            


        def get_token(self):
            auth_url = "https://openapi.baidu.com/oauth/2.0/token?grant_type=client_credentials&"
            
            auth_url = auth_url + "client_id=" + self.apiKey + "&client_secret=" + self.secretKey;
            ssl._create_default_https_context = ssl._create_unverified_context
            res = urllib2.urlopen(auth_url)
            resDict =eval(res.read())
    ##        print resDict
    ##        print resDict['access_token']
            self.token = resDict['access_token']
            return True
               
           ## post audio to server
        def TTS(self,paramText,_delay=1):
            try:
        
                if not self.IsSpeaking:
                    self.IsSpeaking=True
            ##        self.get_token()
            ##        text=paramText
                    url = "http://tsn.baidu.com/text2audio?tex="
                    text=urllib.quote(paramText)
    ##                text=paramText
            ##        text=urllib.quote(paramText.decode('gbk').encode('utf-8'))
                    url=url + text + "&lan=zh&per="+self.person+"&pit=1&spd="+self.speed+"&cuid="+self.cuid+"&ctp=1&tok="+self.token
                ##    print 'mpg123 "%s"'%(url)
            ##        print url
                ##    params="http://tsn.baidu.com/text2audio?tex=" +"123"+ "&lan=zh&cuid=" + cuid +"&ctp=1&tok="+token
            ##        os.system('mpg123 "%s"'%(url)) #mpg123 Version 1.22
                    
                    os.popen('mpg123 "%s"'%(url)).read() #mpg123 Version 1.22
                    time.sleep(_delay)
                    self.IsSpeaking=False
                    return True
                else:
                    print 'Speaking......'
                    return False
            except TypeError:
                return False

        def PlayMp3(self,fileurl):
            if not self.IsSpeaking:
                self.IsSpeaking=True
                os.popen('mpg123 "%s"'%(fileurl)).read() #mpg123 Version 1.22
                self.IsSpeaking=False
                return True
            else:
                print 'Playing......'
                return False
        def __del__(self):
            pass


        def GBK2UTF8(self,text):
    ##        sys.setdefaultencoding( "utf-8" )
            try:
                return urllib.quote(text.decode('gbk').encode('utf-8'))
            except UnicodeEncodeError:
                print 'UnicodeEncodeError'
            except TypeError:
                print 'TypeError'
    if __name__ == "__main__":
    ##    import chardet
    ##    print chardet.detect("8℃/12℃")
        mytts=CBaiduTTSClass()
        appellation="A,"
    ##    mytts.TTS(mytts.GBK2UTF8("表里如一,做出更好的选择,需要觉察。当我们没有觉察的时候,就只能根据自己的自动化反应,没有选择的做出本能的应对。有觉察的时候就会选择如何去处理。"))
      
        for line in open("Praise.txt"):
            print appellation+line
            print type(line)
            mytts.TTS(mytts.GBK2UTF8(appellation+line))
    展开全文
  • PHP实现调取 百度文字转语音SDK(直接可以复制使用的代码)

    直接可以复制使用的代码,PHP实现调取 百度文字转语音SDK

    提示:建议放入助手中使用
    	//最终效果
    	public function Index() 
    	{
    		return getVoiceUrl('俺就是这么帅',2,2,2,3); //调用文字转语音助手函数
    	}
    	
    	//实现代码
    	/**
    	 * 请求接口返回合成语音链接
    	 * @param  string $tex   UTF-8编码[需要播报的文字]
    	 * @param  int $spd      [语速,取值0-9]
    	 * @param  int $pit      [音调,取值0-9]
    	 * @param  int $vol      [音量,取值0-15]
    	 * @param  int $per      [发音人选择0-4]
    	 * @return  string
    	 */
    	if (!function_exists("getVoiceUrl")) {
    	    function getVoiceUrl($tex, $spd = 5, $pit = 5, $vol = 5, $per = 0)
    	    {
    	    	//存缓存的目的是下次直接拿token用,无需多次重复请求
    	        if (!\Yii::$app->cache->get('voice_key')) { //无缓存,缓存名称voice_key
    	            $token_url = "https://openapi.baidu.com/oauth/2.0/token"; //拿请求token
    	            $headers = 'content-type:application/x-www-form-urlencoded'; //header请求头
    	            $params = 'grant_type=client_credentials&client_id=tGkGdWBsFPiyuB0gpgCPA4Zk&client_secret=ElWhGqpgVqIaaCQXcxDG8baXvWzVqutL'; //建议改为自己的
    	            $token = json_decode(juhecurlHttps($token_url, $params, true, $headers)); //请求接口
    	            \Yii::$app->cache->set('voice_key', $token->access_token, $token->expires_in); //设置缓存,缓存名称voice_key
    	        }
    	
    	        $url = "http://tsn.baidu.com/text2audio"; //合成语音api
    	        $params = [
    	            'tok' => \Yii::$app->cache->get('voice_key'), //直接读缓存中的token
    	            'tex' => $tex,
    	            'spd' => $spd,
    	            'pit' => $pit,
    	            'vol' => $vol,
    	            'per' => $per,
    	            'cuid' => "quickstart",
    	            'lan' => 'zh',
    	            'ctp' => 1,
    	        ];
    	        if (is_array($params)) {
    	            $url .= '?';
    	            foreach ($params as $k => $v) {
    	                $url .= $k . '=' . $v . '&';
    	            }
    	        }
    	        //返回语音url
    	        return $url;
    	    }
    	}
    	
    	/**
    	 * 请求接口返回内容 - https
    	 * 
    	 * @param  string $url      [请求的URL地址]
    	 * @param  string $params   [请求的参数]
    	 * @param  int $ipost       [是否采用POST形式]
    	 * @return  string
    	 */
    	if (!function_exists('juhecurlHttps')) {
    	    function juhecurlHttps($url, $params = false, $ispost = 0, $headers = [])
    	    {
    	        $httpInfo = array();
    	        $ch = curl_init();
    	
    	        curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
    	        curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60);
    	        curl_setopt($ch, CURLOPT_TIMEOUT, 60);
    	        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    	        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    	        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    	
    	        if (!empty($headers)) {
    	            curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
    	        }
    	
    	        if ($ispost) {
    	            curl_setopt($ch, CURLOPT_POST, true);
    	            curl_setopt($ch, CURLOPT_POSTFIELDS, $params); //传post数据
    	            curl_setopt($ch, CURLOPT_URL, $url);
    	        } else {
    	            if ($params) {
    	                // 判断参数是否是数组
    	                if (is_array($params)) {
    	                    // 清空zt数据
    	                    unset($params['zt']);
    	                    // get上传
    	                    $url .= '?';
    	                    foreach ($params as $k => $v) {
    	                        $url .= $k . '=' . $v . '&';
    	                    }
    	                    curl_setopt($ch, CURLOPT_URL, $url);
    	                } else {
    	                    curl_setopt($ch, CURLOPT_URL, $url . '?' . $params);
    	                }
    	            } else {
    	                curl_setopt($ch, CURLOPT_URL, $url);
    	            }
    	        }
    	        $response = curl_exec($ch);
    	        $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    	        $httpInfo = array_merge($httpInfo, curl_getinfo($ch));
    	
    	        if ($response === FALSE) {
    	            //echo "cURL Error: " . curl_error($ch);
    	            return false;
    	        }
    	        curl_close($ch);
    	        return $response;
    	    }
    	}
    
    
    展开全文
  • 使用百度语音合成api,将输入文字转换成对应语音文件的小工具使用百度语音合成api,将输入文字转换成对应语音文件的小工具
  • 百度文字转语音免费接口使用实例

    千次阅读 2016-08-15 20:59:11
    百度文字转语音免费接口使用实例 文字转语音
  • 调用百度文字转语音接口,将列表文字转成语音mp3,并根据语速生成lrc文件,方便导入到视频处理软件,比如会声会影,实现文字跟语音同步显示,省去语音配字的麻烦,注意:代码中需要添加自己baidu API的 appid和app...
  • 百度语音识别 +百度文字转语音

    千次阅读 2018-11-19 13:28:07
    登录百度AI开发平台 申请自己的ak 开放平台上有各种语言支持的开发文档,自学能力差得人,不用担心,我为你们封装了语音合成与识别的utils,复制粘贴即可使用 package com.czxy.TestSample; import ...
  • var mp3Url = "http://tts.baidu.com/text2audio?lan=zh&ie=UTF-8&spd=4&text=谭老师扫码成功"; var player = new Audio(mp3Url); player.play(); //播放 mp3这个音频对象
  • 无意间发现了免费不注册调用百度文字转语音的网址直链接口 话不多说直接上网址 转换完毕后需要下载无后缀音频文件 http://tts.baidu.com/text2audio?lan=zh&ie=UTF-8&spd=6&text= lan=语言 zh中文 ...
  • Trident/6.0)" ] save_path = r'E:\Vedio\百度识别语音\转换语音.mp3' #需要转语音文字路径 sb_path = r'E:\Vedio\百度识别语音\bd_mp3_print.txt' header = {'User-Agent': random.choice(my_headers)} def add_...
  • 百度文字转语音接口 function audioPlay(text) { var zhText = text; zhText = encodeURI(zhText); var audio = "<audio autoplay=\"autoplay\">" + "<source src=\...
  • 百度文字转语音播放

    2020-01-13 10:41:10
    <... //每3秒播放一次语音 setInterval(yuyin,3000); function yuyin(){ var url = "https://tts.baidu.com/text2audio?lan=zh&ie=UTF-8&text=" + encodeURI('欢迎光临'); //百度...
  • 百度合成语音接口,文字内容长度限制,纯汉字不得超过2048个(不包含任何其他字符,否则报错) 百度语音合成接口使用,就不再累赘,去参考这个博主的文章 ... 2048个汉字不够用?那我就自己封装一个语音Util类,该类...
  • 1.主要是调用百度语音免费接口,把需要的文字转换为语音文件,并且返回文件全路径名称。 2.要注意在调用的时候注意编码,不然可能中文转换语音失败的问题 3.调用百度提供的公网接口: ...
  • 微信小程序调用百度文字转语音API

    千次阅读 2019-07-24 16:10:27
    文字转语音,这里接入的是百度的https://ai.baidu.com/docs#/TTS-API/top里面有详细的介绍怎么去申请。不多说什么 直接效果已解决ios播放没有语音的bug,已经亲测魅族手机,iphone7手机 代码 export default { data...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 736
精华内容 294
关键字:

百度文字转语音