2016-11-04 29 views
0

我使用WinJs創建一個應用程序,使用JavaScript獲取相機預覽。 預覽我得到一個videoframe,但現在我想獲得所有像素rgba數據來計算平均顏色和其他信息。 我使用Media.Capture類的getPreviewFrameAsync方法。這樣對嗎?在這些類的JavaScript的Windows應用程序:從JavaScript預覽框中獲取像素數據

mediaCapture.getPreviewFrameAsync(videoFrame) 
 
    .then(function (currentFrame) { 
 
     //get pixeldata rgba of frame of camerapreview 
 
      
 
    }

文檔是非常差.... 感謝。

IngD

回答

0

我使用Media.Capture類的getPreviewFrameAsync方法。這樣對嗎?

是的,用這個你可以得到一個videoframe的對象。之後,您可以通過VideoFrame.SoftwareBitmap屬性獲取包含像素數據的SoftwareBitmap對象。類似的代碼如下:

return oMediaCapture.getPreviewFrameAsync(videoFrame) 
.then(function (currentFrame) { 
    // Collect the resulting frame 
    var frameBitmap = currentFrame.softwareBitmap; 
    // Show the frame information 
    frameInfoTextBlock.textContent = frameBitmap.pixelWidth + "x" + frameBitmap.pixelHeight + " " + 
     stringOfEnumeration(Windows.Graphics.DirectX.DirectXPixelFormat, frameBitmap.bitmapPixelFormat); 

官方樣片CameraGetPreviewFrame提供寫在JavaScript語言的例子,它有關於你想你可以參考的特徵的例子。

相關問題