2012-11-22 138 views
18

此代碼適用片刻,但我認爲鏈接更改,導致第二天找不到它?
在Firefox/Chrome/Opera下播放的視頻...如何讓視頻標籤永久播放此視頻?Howto通過HTML5視頻標籤播放YouTube視頻

<video width="480" height="270" controls="controls" style="color:green;"> 
    <source src="youtubelink" type="video/mp4"> 
    <source src="youtubelink" type="video/ogg"> 
    <source src="youtubelink" type="video/webm"> 
Your browser does not support the video tag. 
</video> 
+0

你嘗試這個http://www.youtube.com/html5 – dmi3y

回答

22

在實際的視頻標籤中實際播放YouTube視頻並沒有真正可靠的方法。 YouTube不希望你這樣做,這可能違反了他們的TOS。無論如何,該網址可能會定期更改,無論YT是否調整其基礎設施,還是阻礙人們直接訪問視頻文件。

但是,如果您使用的是視頻標籤,則可以採取幾個步驟來處理所有可以執行的操作。首先,您可以將「html5 = 1」提示添加到嵌入中,這會告訴YouTube使用html5視頻而不是Flash(通常符合但不總是)。該視頻將位於iframe中,但您可以將所有常用CSS技巧應用於該iframe - 不透明度,變換等。

如果您使用的是YouTube API,請將html5: 1添加到playerVars。如果你只是在做直iframe嵌入,將其添加到查詢字符串是這樣的: http://www.youtube.com/embed/okqEVeNqBhc?html5=1

現在,如果你想多走一步,Popcorn.js目前對YouTube的API一個漂亮的wrapper object那將製作一個YouTube(他們也有一個用於Vimeo)視頻的行爲與HTMLVideoElement類似,具有大部分相同的屬性,方法和事件。這並不完美,但它非常好。

注意:該文件的官方消息是mozilla/popcorn-js回購,但this one目前提前提供錯誤修復和功能。您需要包含該回購的最新版本的Popcorn.js和wrappers/common/popcorn._MediaElementProto.js。確保在設置src時將&html5=1添加到YT URL。

你會注意到的區別是:即使有包裝

  • ,HTML5視頻API只執行一點點比YT API更好。例如更靈敏和更好的緩衝報告。

  • 您無法擺脫在暫停或鼠標懸停時顯示的右下角的YouTube圖標。

  • 您不能阻止YouTube展示廣告。

  • 您無法訪問Audio API和canvas/webgl繪圖等實際視頻/音頻內容。但是由於交叉來源的限制,你無法做到這一點。

+4

呀您選擇正確的,它是對服務的TOS的期限,見developers.google.com/youtube/terms,在第二部分,點10.該條規定禁止「以任何方式使用YouTube播放器或YouTube明確授權的其他視頻播放器訪問任何YouTube視聽內容;」 –