首先,我想問這個問題。如果沒有其他視頻內容,我無法加載元數據。 preload = "metadata"
不起作用。我在Win Chrome上測試,不知道它在Safari/FF/IE/Opera上的工作原理。因此我無法快速加載六個或更多視頻剪輯。 Chrome可能會保留只有六個打開的連接在類似的端口/協議/域。如果我加載的視頻超過六個,那麼最後一個視頻無法啓動加載,而前六個視頻完全完成 loading。僅從html5視頻/音頻加載元數據
jsfiddle需要嗎?我可以創造,但我認爲這不是必要的。例如。 HTML:10 html5 <video>
每個大約100mb和preload=metadata
屬性。 JS(使用jQuery只是爲了清晰):
$('video').on('loadedmetadata',function(){
console.log(this.duration);
}).each(function(i){
this.load();
});
然後在Chrome開發工具中打開「網絡」選項卡並重新加載頁面。六個視頻將開始加載並加載全部內容,而其他四個視頻將以(pending)
標記等待。起初,在控制檯會出現6條消息。新消息將在完全加載任何第一個視頻後出現。
我嘗試了很多東西,但每個都有所下降。現在我關於在服務器端獲取元數據的事情。 PHP上有沒有解決方案?但JS解決方案會更好。
我也知道使用Youtube,可能Vimeo和一些其他網站的解決方案。這是保持一些子域名(s1.youtube.com,s2.youtube.com等)的視頻。但我無法使用它。我製作網站模板,它有一些要求。
我有很多視頻的視頻庫。玩家必須在第一次視頻播放前顯示持續時間並瞭解寬度/高度。另外,我想從視頻中間的框架中獲取視頻海報。任何停止視頻加載和關閉連接的解決方案都是我所需要的。它解決了獲取元數據的麻煩。
爲什麼會這樣? – 2015-03-19 21:08:09