2011-03-01 111 views
5

我可以使用Vaadin framewotk播放視頻嗎? 主要思想是從本地驅動器以flv或avi格式加載視頻文件,並使用vaadin框架在網頁中播放。 謝謝。Vaadin框架播放視頻

回答

7

有在採樣的樣本:http://demo.vaadin.com/sampler/#FlashEmbed 您可以通過點擊「查看源文件」看到源代碼,它會告訴你是這樣的:

Embedded e = new Embedded(null, new ExternalResource(
       "http://www.youtube.com/v/meXvxkn1Y_8&hl=en_US&fs=1&")); 
e.setMimeType("application/x-shockwave-flash"); 
e.setParameter("allowFullScreen", "true"); 
e.setWidth("320px"); 
e.setHeight("265px"); 
addComponent(e); 

很明顯,你會想改變將ExternalResource轉換爲其他內容(例如FileResource,ClassResource,StreamResource ...)以播放本地文件。

+0

感謝答案,我試圖發揮像YouTube視頻外等等,作品不錯,但我有問題,打內的FLV文件,我已經試過文件,流等資源,改變Mime類型視頻/ X-FLV,但結果是陰性:(。你能幫助我嗎?我 – jitm 2011-03-02 11:28:11

+0

已經轉換FLV到SWF和所有的作品,謝謝。 – jitm 2011-03-03 10:38:41

1

您可以使用Embedded類來嵌入視頻。

3

Vaadin 6.7版帶來了一個新類Video,它使用新的HTML5「視頻」元素將視頻嵌入頁面。

Vaadin論壇上的我的posting提供了示例應用的源代碼。

代碼的主要部分,填充一個窗口或佈局時:

Video v = new Video("video"); // Instantiate video player widget. 
// Specify a list of your video in one or more formats. 
// Different browsers support various different video formats. 
v.setSources( 
    new ExternalResource("http://www.example.com/media/example_video.mp4"), 
    new ExternalResource("http://www.example.com/media/example_video.ogv") 
); 
v.setWidth("640px"); // Set size of the video player's display area on-screen. 
v.setHeight("360px"); 
this.addComponent(v); // Add the component to the window or layout. 

哎呀,我只是重新閱讀您發佈 - 要播放本地視頻文件。你的意思是用戶電腦本地還是Vaadin應用程序服務器端電腦?無論採用哪種方式,您都可以操縱上述「ExternalResource」或Vaadin Resource的另一個子類來訪問本地文件。

+0

我用這視頻類觀看視頻文件,但它給錯誤「無視頻與支持的格式和MIME類型找到」。 我試圖與FLV的,.MP4,.MPG文件,但同樣的結果。 我與Vaadin 6.7工作0.9。 – 2012-06-30 10:19:55

0

另一種方法是Vaadin附加「YouTubePlayer」如果你想從YouTube.com專門訪問視頻。

1

注:這是本地文件:

 FileResource fileResource = new FileResource(new File("/Users/user/Downloads/DBTI_1991_teaser_HD.mp4")); 
     Video vd = new Video(); 
     vd.setAutoplay(true); 
     vd.setSource(fileResource); 
     this.addComponent(vd);