2016-01-27 46 views
2

我正在研究一個電子項目,其中主要重點是向用戶呈現RTMP格式的視頻流。在Electron中的RTMP流式(原子殼)

我一直在關注一些指南; atom/electron’s official guide; 「Using Pepper Flash Plugin」以及this example app’s slightly more detailed walkthrough,我已經在Electron中使用了Flash。我已經能夠加載到我的主要BrowserWindow各種網站,我親眼目睹了辣椒Flash播放電影的所有榮耀。

但是,我正在撞牆試圖在Electron內部實施一個自我託管的玩家。到目前爲止,我已經嘗試過JWPlayer和video.js,並且所有的資源都很好地加載 - 在短時間內。

JWPlayer

Flash播放器是明顯存在,則它將失敗並顯示錯誤消息; 「Flash插件未能加載」。

的Video.js

Flash播放器是明顯存在的,但沒有反應到任何東西 - 不推播放按鈕,而不是調用player.play()。沒有。

常見

我從來沒見過這麼多,因爲從我們的任何可用流的幀的一瞥,無論是直播或點播的。

我試着按JWPlayer’svideo.js’文檔中描述的按摩我的流網址,但沒有雪茄。

我是新鮮的想象力,需要一個新鮮的或經驗豐富的眼睛。

回答

1

聲音像Flash插件被阻止。當JavaScript嵌入後,在jwplayer.flash.swf中沒有收到來自ActionScript的ExternalInterface調用超過4秒時,我們顯示「Flash插件無法加載」錯誤消息。如果swf不能及時加載,這可能只是一個網絡問題,但它更可能是瀏覽器(電子)阻止執行Flash插件或與JavaScript通信的另一個問題。

我不確定哪個版本的Chrome/Pepper Flash目前有電子版本,但自2015年10月以來,在某些情況下插件的執行會受到限制。這裏寫一個關於這個「省電」功能:http://www.jwplayer.com/blog/chrome-power-saving/

請確保swf不是託管跨域或不是在其所嵌入的頁面以外的其他協議。Flash安全沙箱違規將阻止Flash能夠執行JS或加載外部媒體流。

+0

感謝您的回覆@funrob!正如我上面詳細介紹的那樣,Flash插件確實可以在我的Electron應用程序中運行,其中包含Adobe自己的演示頁面等外部內容,以及現在我的應用程序中的Flow Player,其中我不是最大的粉絲。當使用JW Player(swf加載?)時,播放器會在視覺上出現,但4秒聽起來太熟悉了 - 是否有任何情況下swf會加載但不會散發所有應有的東西?關於省電的細節很有意思,因爲我所有的視頻都很小 - 但是再一次,與Flow Player的尺寸相同。 –

+0

哦,我和你在GitHub @funrob關門的那個人一樣在同一支隊伍中; [RTMP(flash)通過file://some_file.html崩潰Flash播放器](https://github.com/jwplayer/jwplayer/issues/1030)。我們懷疑是因爲錯誤的理由而關閉了,因爲我們並沒有試圖流入本地資源。 –