How to get preview buffer of MediaCapture - Universal app

后端 未结 2 1238
鱼传尺愫
鱼传尺愫 2020-12-17 07:10

In Windows phone silverlight, I use PhotoCamera to get buffer frame when start preview video, in universal app I use MediaCapture instead, but I don\'t know how to get previ

2条回答
  •  我在风中等你
    2020-12-17 07:40

    My other answer is still valid for Universal Apps targeting Windows 8.1 -- but for those targeting Windows 10 with UWP apps there is a much simpler answer now.

    Grabbing a preview frame in UWP is easy and well-documented -- from an existing MediaCapture object it can be done in three lines.

    // Get information about the preview
    var previewProperties = _mediaCapture.VideoDeviceController.GetMediaStreamProperties(MediaStreamType.VideoPreview) as VideoEncodingProperties;
    
    // Create a video frame in the desired format for the preview frame
    VideoFrame videoFrame = new VideoFrame(BitmapPixelFormat.Bgra8, (int)previewProperties.Height, (int)previewProperties.Width);
    
    // Grave a preview frame        
    VideoFrame previewFrame = await _mediaCapture.GetPreviewFrameAsync(videoFrame);
    

提交回复
热议问题