以前MetroStyleApp入門 vol33.カメラで撮影した動画を保存するでWebカメラの映像を保存する方法を紹介しました。
今回はWebカメラの映像をアプリに表示する方法を紹介します。
コードは簡単ですが、試してみたところドライバーの問題かエラーになることがあるので注意です。
まずはXAMLコードにCaptureElementを追加します。
<CaptureElement x:Name="cap" Width="320" Height="240" />
続いてコントロールにカメラ映像を渡すコードが以下、
var mediaCapture = new Windows.Media.Capture.MediaCapture(); await mediaCapture.InitializeAsync(); this.cap.Source = mediaCapture; await mediaCapture.StartPreviewAsync();
マニフェストでカメラとマイクを許可していないと、例外が発生します。
– $exception {“アクセスが拒否されました。 (HRESULT からの例外: 0x80070005 (E_ACCESSDENIED))”} System.Exception {System.UnauthorizedAccessException}
成功するとコントロールにカメラ映像が表示できます。
カメラとの相性によってはコードが間違っていなくても例外が発生することがあります。
(シュミレーターもエラーになります)
HRESULT からの例外: 0xC00DABE8
同じコードでも別のPC、別のWebカメラだとちゃんと動きます。
この辺はまだRCなのでということですかね・・・。
Please give us your valuable comment