2016-12-28 52 views
2

所以我使用Muaz Khans RecordRTC錄製視頻和音頻的網站。我一直在試圖編寫腳本來查看錄製的視頻是否正在播放。我遇到的問題是如何引用已創建的視頻。參考錄製的視頻,看它是否播放(JS)

我試過以下,沒有運氣。

function vidplay() { 
    var video = document.getElementById("videoURL"); 
    if (video.paused) { 

     //DESIRED ACTION 

    } else { 

     //DESIRED ACTION 
    } 
} 

任何幫助,將不勝感激。

+0

重複這個嗎? http://stackoverflow.com/questions/6877403/how-to-tell-if-a-video-element-is-currently-playing –

+0

顯示你的HTML包括動態 – Viney

+0

這可悲的是不是重複的,因爲我的問題有點複雜因爲創建了一個blob對象,並且在引用它時遇到了問題,而不僅僅是一個通用的視頻標籤。 HTML與用於演示的HTML完全相同。 – PIEAGE

回答

0

請檢查該演示:https://jsfiddle.net/ddxadv3y/

簡單的檢查video.currentTime。它必須更新。

否則考慮video暫停結束

<h1></h1> 
<video controls muted style="width:20%;"></video> 
<script> 
    var video = document.querySelector('video'); 
    var h1 = document.querySelector('h1'); 

    video.onloadedmetadata = function() { 
     if(lastTime) return; 
     checkForTimeChange(); 
    }; 

    var lastTime; 
    function checkForTimeChange() { 
     if(!lastTime) { 
      lastTime = video.currentTime; 
     } 

     if(lastTime == video.currentTime) { 
      h1.innerHTML = 'paused'; 
     } 
     else { 
      h1.innerHTML = 'playing'; 
     } 

     lastTime = video.currentTime; 

     setTimeout(checkForTimeChange, 500); 
    } 
</script> 

<script> 
    navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia; 
    navigator.getUserMedia({video: true}, function(stream) { 
     video.src = URL.createObjectURL(stream); 
     video.play(); 
    }, function() {}); 
</script>