2013-04-29 68 views

回答

54

@Wayne Koorts發佈的大部分內容都提供了良好答案的基礎。似乎斷開連接似乎是你可以通過漸進式下載「流式傳輸」視頻。如他所示,這適用於任何兼容html5的視頻文件。

爲了在漸進式下載mp4文件中獲得最佳性能,您需要moov原子元數據出現在文件的開頭。確保您的mp4文件具有此屬性是qtfaststart程序包含在ffmpeg中的原因之一。

當然,漸進式下載不是「流媒體服務器」。流媒體服務器被設計成支持多種不同的功能,包括:

  • 安全和DRM
  • 自適應流/交織(多比特率支持,交織成一個特定的文件)
  • 尋求

這裏表達的特別關注似乎是尋求功能。正如它在html5和s3/cloudfront中所支持的一樣。

令人困惑的是,視頻文件的雲端有幾個選項。一種選擇是通過其許可的Adobe FMS服務器的網絡傳輸文件。這就是使用RTMP的困惑所在。但是,這只是一個選擇。文件可以通過標準的「下載」形式發佈到雲端,並且由於實現了字節範圍並支持通常稱爲僞流的功能,因此它們將具有搜索屬性。

似乎有很多關於術語「僞流」的混淆,但在html5的情況下,它只是要求HTTP服務器支持1.1規範。當尋求時,客戶端發送一個字節範圍請求,服務器負責提供該文件的那一部分。

換句話說...尋找html5播放器確實與雲端服務器協同工作,因爲它們與HTTP 1.1兼容。

至於流媒體服務器提供的其他一些功能,有多種競爭服務器實現了「H264流媒體」或MPEG-DASH元素,作爲使用RTMP和FMS兼容服務器的替代方案。許多基於閃存的播放器都支持這些功能,這些功能超出了簡單搜索範圍。 JWPlayer和Flowplayer是支持部分或全部功能的玩家的兩個例子,但HTML5的視頻播放器不支持任何這些功能。你可以學到更多東西http://h264.code-shop.com/trac#H264StreamingModuleIntroductionversion2

如果這不足以讓你感到困惑,蘋果公司實施了自己的「HTTP Live Streaming」協議,有時稱爲m3u8,它們支持在ios和quicktime中。我提到這一點是因爲人們經常想要一種方式來支持各種不同的設備。

我希望這有助於澄清一些事情。

+1

非常完美,謝謝! – rajat 2013-09-11 13:44:38

-1

我有CloudFront & S3設置&流式視頻與HTML5播放器是響應。請注意,我試圖讓它在所有瀏覽器中都能正常工作。&它不能100%地工作。

這裏是通過JW球員& S3視頻嵌入到一個WordPress站點一個有趣的教程:http://www.mywpexpert.com/embed-videos-amazon-s3-jw-player/

這是在WordPress直接連接到S3的另一個例子:http://html5.svnlabs.com/amazon-s3-cloud-html5-player/

希望這些幫助。

+4

** - 1 **問題是關於來自Amazon WS的HTML5(即非FLASH)視頻流。您建議使用基於Flash的播放器「JW Player」,而您的第二個「示例」是指向WordPress的商業插件的鏈接,該插件除了MP3之外根本不提供任何視頻流,而是MP3已經默認支持WordPress 3.6。除了這個問題,與WordPress完全沒有關係。 – Community 2013-09-08 19:42:13

12

我最近成功完成的一件事就是使用Video.js HTML5 player(開源)視頻播放器和S3上託管的視頻。基本上,你只需上傳你的視頻到您的S3存儲,然後在頁面上的代碼看起來是這樣的(包括了Video.js CSS和JS文件到你的頁面後):

<video id="example_video_1" class="video-js vjs-default-skin" 
    controls preload="auto" width="1600" height="900" 
    poster="http://mys3bucket.s3.amazonaws.com/videoImage.jpg" 
    data-setup='{"example_option":true}'> 
    <source src="http://mys3bucket.s3.amazonaws.com/myvideofile.mp4" type='video/mp4' /> 
    <source src="http://mys3bucket.s3.amazonaws.com/myvideofile.webm" type='video/webm' /> 
</video> 

poster僅僅是靜止圖像在視頻加載或不播放時在視頻播放器上顯示。至於<source>標籤,您可以鏈接儘可能多或更少的視頻。更多的格式意味着更好地支持不同平臺(例如,一些vanilla Linux發行版可能無法播放MP4等)。

查看Video.js快速入門指南here

決定是否使用S3或CloudFront時:恕我直言,S3一般適用於視頻,因爲當您存儲大量數據時,成本更便宜(因爲CloudFront會將所有內容的副本分發給所有邊緣服務器,儘管你可以通過選項來限制)。儘管記住CloudFront主要用作需要超快響應時間的內容交付網絡(例如,對於站點圖形,樣式表,JS文件等),但有些人更喜歡CloudFront,所以這是一種取捨根據您的需求。如果您的視頻非常小,那麼您可能會發現CloudFront實際上適合您的需求。

爲了更明確地分析成本,您可以使用亞馬遜的monthly cost calculator

+2

但是從S3開始,您將無法流式傳輸視頻,視頻將首先下載並播放。 – rajat 2013-09-06 05:43:05

+0

@rajat文件流入視頻播放器,S3不需要額外的配置。正如我在這裏所說的那樣工作,我在過去幾天內爲視頻流完成了這個工作。 – 2013-09-06 06:30:12

+1

如何才能通過視頻播放器流式傳輸文件?你不需要一個媒體流媒體服務器,它將從S3獲取文件並將其作爲rtmp或http流傳輸到視頻播放器? – rajat 2013-09-06 07:15:33

1

我正在爲全球生產製作一些視頻內容。我需要降低成本,但我希望能夠輕鬆擴展和充足功能,以安全地交付非常複雜的系統。 AWS看起來不錯,現在已經使用了幾年,我認爲S3 Buckets非常棒。他們是免費的,達到極限。是的。他們當然能夠成功提供我認爲是流式視頻的東西;因爲它安裝在S3中,並且可以在頁面加載時立即播放到我的JWPlayer中,而不會出現抖動或延遲。

我可以看到一些流式視頻描邊很模糊,對我來說仍然讓人困惑,儘管@gview在爲我們提供更深入的煽動方面做得很好。它的複雜性讓我感興趣,但如果您的議程要讓視頻發揮作用,我不相信HTML5就是您的答案。據我所知,SOAP,REST,HTTP甚至HTTPS都是支持和可供應的。 AWS的文檔也值得注意,非常有幫助。我會在這裏附上一個開始鏈接。

@ user2352370:JWplayer ..我還沒決定。我剛剛購買了中間層成員,現在在閱讀上面的Wayne Koorts時,我認爲JSvideo出於各種原因更好,如果我能得到退款,我將與之合作。在JWvideo中,我沒有看到任何直接的價值,過去它爲視頻提供的樣式。我相信JWvideo至少對我來說的價值僅限於視頻的造型。我可以使用JSVideo輕鬆地爲多種設備和瀏覽器類型創建各種後備。我甚至可以設計JSVideo,但也許有人會說JWvideo的簡單性。我可能會需要它在未來幾個月內我將擁有的視頻文章的猛攻。

兩個JWVideo & JSVideo工作原理
我覺得JWVideo和JSvideo都將做的工作,我現在有兩個在我的網站的各種視頻和雙方做一個體面的工作,還沒有測試的瀏覽器很深尚未雖然。

創建一個免費的AWS賬戶和免費玩的服務。如果你一直在處理像RackSpace或Host Gator這樣的提供商,那麼它會非常惹眼。
AWS Free Tier HomePage

AWS Documentation Site for S3

0

看着AS3託管與VideoJS視頻爲我自己的網站,這就是爲什麼我覺得你的問題,但是當我看着示例代碼VideoJS我注意到的聯繫是在一家名爲ZenCoder - http://video-js.zencoder.com/oceans-clip.mp4

http://zencoder.com/en/

我有Zencoder但可能值得考慮,如果你正在尋找基於雲的視頻託管無關。

相關問題