2014-03-03 47 views
2

我想從html5視頻標記中記錄流,因爲我無法在canvas中實現60fps的JS我想知道我可以從chrome插件執行嗎?是否可以使用NaCL/PPAPI在Chrome插件中記錄視頻流?

任何想法是甚至可能的,什麼地方開始?

感謝 W¯¯

+0

我認爲這是不可能的,因爲今天。 –

+0

@ caffinatedmonkey true,但ppapi上的文檔和示例相當稀疏,所以想知道是否有人知道它/知道哪裏開始挖掘的好地方。 – wonglik

+0

@caffinatedmonkey我絕對不是這方面的專家,但OpenGL允許捕獲瀏覽器/操作系統屏幕。據我所知,它只允許訪問openGL窗口。不是嗎? – wonglik

回答

3

您可以通過使用chrome.desktopCapturenavigator.getUserMediaMediaStreamRecorder的API實現這一目標。 chrome.desktopCapturenavigator.getUserMedia是實驗性的,而MediaStreamRecorder仍未在chrome中實現。

Currently there is no way to accomplish 60FPS recording in chrome, but support is on the way!

There are .webm encoders with caveats. Try whammy.js

NaCl的支持,操作流是在流血的邊緣,應該讓你記錄到文件中。出血穩定需要大約11周。

+0

desktoCapture和getUserMedia工作正常。但正如你所說,我無法接近60FPS。這就是爲什麼我想知道PPAPI是否會走的路,但我想它也行不通。 – wonglik

+0

據我所知,PPAPIs無法操縱流,但支持正在進行中! – 0xcaff

0

如果你想要記錄一個MediaStream,MediaStreamRecorder可能是最好的選擇。然而正如caffinatedmonkey指出的那樣,它還沒有在Chrome中實現。 crbug.com/262211跟蹤這項工作。

但是,還有另一種選擇,使用一組新的ppapi(在Chrome 34中添加,目前在實驗中),允許插件從媒體流中獲取音頻/視頻數據。我認爲這可能適合你的需要。詳細請看看例子在下面的鏈接: http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/examples/media_stream_audio/ http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/examples/media_stream_video/

+0

嘗試編譯你的例子。有些電話似乎是無效的。 'var_track.is_resource()'和'var_track.AsResource()'支持即將開始,但這些基本方法目前尚未在開發分支中實現。它們在最前沿實施,但除非要讓所有用戶編譯和使用鉻,否則這不是一個可行的解決方案。 – 0xcaff

+0

該示例也是nacl sdk的一部分: https://code.google.com/p/chromium/codesearch#chromium/src/native_client_sdk/src/examples/api/media_stream_video/ – rwu

+0

它看起來像流血的邊緣。 – 0xcaff

1

(我有零計算器的聲譽,所以我不能回答評論,但我可以提交答案???)。

rwu的答案將是最好的前進。新的MediaStreamTrack Pepper界面應該在開發渠道和Canary Chrome上工作,如果你使用最新的NaCl SDK(可能是金絲雀最好)來構建。

的API是此處觀看視頻: https://code.google.com/p/chromium/codesearch#chromium/src/ppapi/cpp/media_stream_video_track.h&l=27

它的實驗,開發渠道,所以它隨時更改,並且它不是提供給所有用戶呢。但它現在正在工作,並且應該只會隨着時間的推移更快地變得更好&。我們希望在即將推出的Chrome版本中支持它作爲一個穩定的API。

如果您希望獲得最佳性能,並且願意忍受某些流失,並且不需要今天可以發貨的東西,請開始嘗試使用該API並在new.crbug.com上提交錯誤消息。

相關問題