更新:好吧,雖然我沒有完全解決這個問題,但我確實找出了一個處理我最關心的問題......用戶體驗的工作。檢索HTML5視頻時間的問題
首先,視頻直到觀看者點擊播放按鈕後纔開始加載,所以我假設持續時間信息不可用於拉動(我不知道如何解決這個特定問題。儘管我認爲它只涉及從視頻中分別加載視頻元數據,但我甚至不知道這是否可能)。所以爲了避開沒有持續時間數據的事實,我決定完全隱藏持續時間信息(實際上是整個控制),直到你完成了比賽。
我知道......它的作弊。但現在它讓我開心:)
這就是說...如果有人知道如何加載視頻元數據與視頻文件分開...請分享。我認爲應該完全解決這個問題。
我工作的建設有一個自定義的界面HTML5視頻播放器,但我有一些問題得到視頻持續時間信息顯示。
我的HTML是真實的簡單(見下文)
<video id="video" poster="image.jpg" controls>
<source src="video_path.mp4" type="video/mp4" />
<source src="video_path.ogv" type="video/ogg" />
</video>
<ul class="controls">
<li class="time"><p><span id="timer">0</span> of <span id="duration">0</span></p></li>
</ul>
,我使用來獲取和插入時間的JavaScript是
var duration = $('#duration').get(0);
var vid_duration = Math.round(video.duration);
duration.firstChild.nodeValue = vid_duration;
的問題是什麼也不會發生。我知道視頻文件有持續時間數據,因爲如果我只使用默認控件,它會顯示正常。
但真正奇怪的是,如果我把警報(持續時間),在我的代碼,像這樣
alert(duration);
var vid_duration = Math.round(video.duration);
duration.firstChild.nodeValue = vid_duration;
則工作正常(彈出減去惱人警報)。任何想法這裏發生了什麼,或者我可以如何解決它?
您使用哪種瀏覽器來運行HTML5?並非所有的瀏覽器都支持HTML5。 – 2010-02-08 11:29:47
我不認爲這是瀏覽器問題。我正在使用最新版本的Firefox/Webkit/Chrome進行測試 – drebabels 2010-02-09 02:42:04
您可以使用「X-Content-Duration」HTTP標頭報告持續時間。在下載視頻之前,瀏覽器可能會執行「HEAD」請求來收集這些信息。 https://developer.mozilla.org/en/Configuring_servers_for_Ogg_media – TRiG 2011-08-15 14:37:01