开心六月综合激情婷婷|欧美精品成人动漫二区|国产中文字幕综合色|亚洲人在线成视频

    1. 
      
        <b id="zqfy3"><legend id="zqfy3"><fieldset id="zqfy3"></fieldset></legend></b>
          <ul id="zqfy3"></ul>
          <blockquote id="zqfy3"><strong id="zqfy3"><dfn id="zqfy3"></dfn></strong></blockquote>
          <blockquote id="zqfy3"><legend id="zqfy3"></legend></blockquote>
          打開(kāi)APP
          userphoto
          未登錄

          開(kāi)通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

          開(kāi)通VIP
          判斷TTS語(yǔ)音朗讀是否結(jié)束
          分類: Delphi 2013-02-04 14:38 338人閱讀 評(píng)論(0) 收藏 舉報(bào)

          最近玩語(yǔ)音朗讀的時(shí)候比較多,也在兩個(gè)軟件中應(yīng)用過(guò)。其實(shí)大多語(yǔ)音朗讀的代碼還是很好寫的,只是像判斷TTS語(yǔ)音朗讀是否結(jié)束或者當(dāng)前語(yǔ)音引擎的狀態(tài)稍微要查找一下參數(shù)。這里記錄一下:

          原本在網(wǎng)上查到的一條關(guān)于判斷TTS朗讀完成事件的代碼WaitForSingleObject(spvoice.SpeakCompleteEvent, 200);在delphi 中使用時(shí)并沒(méi)有達(dá)到原本看似應(yīng)該有的功效,測(cè)試時(shí)發(fā)現(xiàn)這東西只是在TTS合成朗讀流后就返回了,說(shuō)白了就是TTS剛要朗讀,就被判定成朗讀完成了。仔細(xì)查找了一下spvoice的參數(shù),里面有個(gè)statdus屬性,這個(gè)返回的對(duì)象中可以獲取一些有用的屬性參數(shù)如:RunningState(運(yùn)行狀態(tài)), inputWordLegth(朗讀句子所有詞匯長(zhǎng)度總和),inputWordPosition(當(dāng)前朗讀詞匯的末位置)……

          其中RunningState有三個(gè)狀態(tài):    朗讀文本被全部渲染合成后返回 SRSEDone = 1    正在朗讀中會(huì)返回 SRSEIsSpeaking = 2暫停朗讀時(shí)會(huì)返回0

          利用這三個(gè)屬性就可以判斷朗讀是否已經(jīng)完成,加兩個(gè)計(jì)時(shí)器,朗讀句子開(kāi)始時(shí),啟動(dòng)判斷朗讀狀態(tài)的計(jì)時(shí)器,完成后再重新激活計(jì)時(shí)器進(jìn)行朗讀:


          1. procedure TForm1.Timer1Timer(Sender: TObject);  
          2. begin  
          3. timer1.Enabled:=false;  
          4. learnTTS.Speak('this is voa explorations in special english!',1);  
          5. WaitForSingleObject(learnTTS.SpeakCompleteEvent, 200);  
          6. timer2.Enabled:=true;  
          7. end;  
          8.   
          9. procedure TForm1.Timer2Timer(Sender: TObject);  
          10. begin  
          11. edit1.Text:=inttostr(learnTTS.Status.RunningState);  
          12. if learnTTS.Status.RunningState=1 then //朗讀完成后會(huì)返回1  
          13. timer1.Enabled:=true;  
          14. end
          本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
          打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
          猜你喜歡
          類似文章
          VFP中的計(jì)時(shí)器
          用Excel做個(gè)秒表計(jì)時(shí)器
          看實(shí)例學(xué)VFP:Timer控件實(shí)例-動(dòng)畫
          vfp界面特效設(shè)計(jì)技巧
          TTS和SVC有什么區(qū)別
          MFC中計(jì)時(shí)器的編寫
          更多類似文章 >>
          生活服務(wù)
          分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
          綁定賬號(hào)成功
          后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
          如果VIP功能使用有故障,
          可點(diǎn)擊這里聯(lián)系客服!

          聯(lián)系客服