最新消息:20210917 已从crifan.com换到crifan.org

【已解决】html中暂停之前的audio的播放

HTML crifan 510浏览 0评论
之前已经实现了:
【已解决】用和适在线的语言合成接口把文字转语音
现在需要继续去优化:
发现之前播放音频,再次点击提交,结果之前播放的音频没有被停止,所以需要去停止:
以及另外一种情况:
next后,output的text没有被播放出来
html audio play status
javascript – HTML5 check if audio is playing? – Stack Overflow
HTML Audio/Video DOM Reference
HTML Audio/Video DOM readyState Property
HTML Audio/Video DOM paused Property
HTML5 Audio — The State of Play | HTML5 Doctor
好像currentTime(和paused)字段可以用用
不过好像此处可以直接用pause,感觉也不会有啥问题
【总结】
最后此处:
对于要清除的audio,把src设置为空,再load
对于要保留的audio,只是简单的pause
// reset previous audio
var respTextAudioObj = $(".response_text_audio_player audio")[0];
console.log("respTextAudioObj=%o", respTextAudioObj);
// respTextAudioObj.pause();
console.log("Paused previous response text audio %o if playing or not", respTextAudioObj);
$(".response_text_audio_player audio source").attr("src", "");
respTextAudioObj.load();
$(".response_text_audio_player .col-sm-offset-1").text("");

var audioObject = $(".audio_player audio")[0];
audioObject.pause();
console.log("Paused previous found audio %o if playing or not", audioObject);
// $(".audio_player audio source").attr("src", "");
// $(".audio_player .col-sm-offset-1").text("");
// audioObject.load();
 即可实现自己此处要的效果了:
重新say xxx后,返回新的要播放的audio
上面的文字的语音部分,要清除掉
下面的音频保留,但是在上面的播放完成后,继续播放:

转载请注明:在路上 » 【已解决】html中暂停之前的audio的播放

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
93 queries in 0.171 seconds, using 23.31MB memory