2012-04-16 99 views
5

是否有一些簡單的技術只播放HTML5視頻的某個部分?例如,在30秒的片段中,我只想播放5-20秒的部分。此外,視頻的其餘部分應該無法從UI訪問(意味着視頻時間線應僅顯示5-20秒部分)。HTML5視頻 - 只播放視頻的一部分

我一直在瀏覽一些HTML5視頻播放器,但他們都沒有支持這種功能。如果有人知道一個(好)的方式來實現這個功能,請給我一個提示。

在此先感謝!

+0

我使用VideoJS播放器(http://videojs.com/)做了一些實驗,並且至少在桌面,Android設備和iPad上設法使它工作。 – calle 2012-05-25 12:33:45

+0

基本上,我必須重寫原始播放器的某些功能才能正確呈現控件,並使用視頻的「timeupdate」事件來限制視頻的播放時間。我必須同意@Riplikash的觀點,即目前實現部分遊戲行爲的唯一體面的方式是從服務器提供可播放的內容,而不是試圖將其限制在客戶端。 – calle 2012-05-25 12:43:26

回答

1

即使此問題已被標記爲已回答,以下是您可能會感興趣的內容以及其他在此處發現的其他人:Specifying playback range

它是Media Fragment API的一部分,目前可用於最新版本的Firefox,Chrome和Safari 6+。

+0

這個答案比標記爲正確的答案有用。謝謝@Ian Devlin – 2014-07-21 09:19:47

+0

該鏈接不再有效,在那裏沒有關於指定播放範圍的信息。 – prendio2 2017-10-06 10:26:17

0

您可以在玩家中實現一個Player.Play()事件,每當Play()調用時啓動一個計時器並在您想要的特定時間調用Player.stop()。

0

我得到了同樣的問題,我沒有發現的東西,可以解決這個問題,你可以做的是實現自己的控制和顯示用帆布視頻......

,如果你是試圖在IOS中實現這一點,你將無法做到這一點。

+0

使用JavaScript,您可以播放所需的部分時間,但UI將顯示實時,您可以隱藏原始控件,但用戶可以通過「右鍵單擊」 - >「顯示控件「我發現的最接近的方式是使用可以顯示JWPlayer的部分時間的播放器,它可以顯示」假「持續時間,但即使您可以從其他點開始,開始時間始終爲0 ... – 2012-04-16 13:42:38

+0

但是在iOS不工作... – 2012-04-16 13:44:34

0

我的想法是使用自定義控件,因爲我不相信本地可用的功能。所有html5控件的功能(播放,暫停,時間戳開始等)都可以通過javascript調用。在這種情況下,您將要編輯currentTime變量。

因此,您可能需要考慮設置您自己的滑塊,滑塊的起點代表您的起點,並結束您的終點。將視頻設置爲在頁面加載時不播放。然後在頁面加載有一個JavaScript函數改變currentTime到你的出發點。爲了停止,你偶爾可以查詢當前時間。由於緩慢加載等延遲可能會導致延遲,我不會使用計時器。

+0

您無法完全限制用戶通過HTML5視頻查看視頻的其他部分。這有點像標籤。它非常開放。您必須限制視頻的哪些部分將在服務器端提供。 – Riplikash 2012-04-16 15:39:26

+0

想要一些工作代碼片段 – 2014-07-21 08:41:12

0

我試圖在「預覽模式」中實現一個類似的視頻。我通過添加一個事件監聽器,然後在currentTime()=='x'postition中暫停視頻來利用上述方法。爲了防止用戶再次點擊播放,currentTime監聽器不會允許播放超過時間軸中的'x'時間,因此每次用戶點擊播放時,它都會自動立即再次暫停播放。此外,在時間'x'處,視頻容器將通過CSS隱藏,從而防止用戶與視頻的交互。