程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> 關於.NET >> Windows 8風格應用開發入門 二十九 捕獲圖片與視頻

Windows 8風格應用開發入門 二十九 捕獲圖片與視頻

編輯:關於.NET

一、相機

關於相機

1.相機對話框提供了觸屏優化的全屏體驗,你可從嵌入的或附加 的相機中捕獲照片和視頻。

2.全屏對話框處理顯示相機 UI 的工作。

3.通過此對話框, 你可以使用對 Windows.Media.Capture.CameraCaptureUI.captureFileAsyncAPI 的一種方法調用捕獲 照片或視頻。

4.作為捕獲體驗的一部分,用戶可對其捕獲的照片進行修剪,對捕獲的視頻進行 剪輯,然後再將它們返回至調用應用程序。

5.用戶在捕獲照片或視頻前,還可調整一些相機設 置,例如亮度、對比度和曝光等。相機對話框用於實時照片和視頻捕獲。

相機設置

1.可通過相機選項調整相機設置

2.包括照片分辨率;是否視頻防抖動;亮度;對比度等選項

編輯照片

1.“裁剪”按鈕進行裁剪照片

2.“確定”按鈕確認捕獲的照片

3.“重拍”按鈕重新 拍攝照片

編輯視頻

1.“剪輯”按鈕進行剪輯視頻

2.“確定”按鈕確認捕獲的視頻

3.“重拍”按鈕重新 拍攝視頻

二、捕獲圖片與視頻的基本原理

首先,我們需要在清單文件中注冊攝像頭/麥克風權限。

其次,在相應的.cs文件中,添加命 名空間。

最後,聲明CameraCaptureUI對象、設置對象屬性、調用CaptureFileAsync方法。

然後我們就可以通過應用程序調用攝像頭來捕獲照片/視頻了。

三、如何實現捕獲圖片 與視頻

啟用攝像頭權限

1.捕獲照片時,應用必須允許使用攝像頭

2.可通過設置應用程序清單文件 (Package.appxmanifest)啟用攝像頭權限

3.Capabilities選項卡中勾選Webcam項

啟用 麥克風權限

1.捕獲視頻時,應用一般允許使用麥克風

2.可通過設置 應用程序清單文件(Package.appxmanifest)啟用麥克風權限

3.Capabilities選項卡中勾選 Microphone項

捕獲照片相關屬性

捕獲視頻相關屬性

如何捕獲照片

1:  using Windows.Media.Capture;
2: private async void OnCapturePhoto(object sender, TappedRoutedEventArgs e)
3: {
4: var camera = new CameraCaptureUI();
5:
6: var file = await camera.CaptureFileAsync(CameraCaptureUIMode.Photo);
7: if (file != null)
8: {
9: photo = file;
10:
11: DataTransferManager.ShowShareUI();
12: } 13: }

通過CameraCaptureUIMode可以設置Phone;Video;PhoneOrVideo。

如何捕獲視頻

1:  using Windows.Media.Capture;
2: private async void OnCaptureVideo(object sender, TappedRoutedEventArgs e)
3: {
4: var camera = new CameraCaptureUI();
5:
6: camera.VideoSettings.Format = CameraCaptureUIVideoFormat.Wmv;
7:
8: var file = await camera.CaptureFileAsync(CameraCaptureUIMode.Video);
9: if (file != null)
10: {
11: video = file;
12: DataTransferManager.ShowShareUI();
13: }
14: }

四、相機最佳實踐相機UI的合理使用

例如:對於提供個人資料圖片的應用,可通過啟動相機 對話框捕獲照片,進行更新個人資料。

相機UI的不合理使用

1.當用戶使用相機掃描條形 碼時,條形碼閱讀器應用可以為用戶提供實時反饋,以讓用戶知道該條形碼是否可讀。這種情況下,使 用相機對話框可能不是正確的選擇,因為其對捕獲的視頻流不提供任何直接控制。你應該轉而使用 MediaCapture API。

2.如果你需要添加超出相機對話框所提供功能的 UI 自定義,你應該轉而 使用 MediaCapture。

3.如果你的應用程序為視頻或照片編輯應用程序,或具備某些照片或視頻 編輯功能,則應在修剪和裁剪功能關閉的情況下,使用相機對話框。然後,你的應用程序中的修剪和裁 剪功能將不會與相機對話框中提供的功能重復。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved