Silverlight之攝像頭使用

 攝像頭使用:
攝像頭捕獲動態圖形的基本設計過程:
   ①獲取攝像設備
   ②設置捕獲源對象
   ③設置視頻刷
   ④填充矩形顯示

添加引用
using System.Windows.Media.Imaging; 
using System.IO;

public VideoCaptureDevice camera;  //定義攝像設備
public CaptureSource capturesource=new CaptureSource();
public VideoBrush videoBrush=new VideoBrush();

//啓動攝像頭
private void Action(){
     StartCamera();
     //如果允許啓動獲取的攝像頭
     if(CaptureDeviceConfiguration.RequestDeviceAccess()){
          //啓動攝像頭
          capturesource.Start();
     }
}

private void StartCamera(){
     VideoCaptureDevice cameradevice=CaptureDeviceConfiguration.GetDefaultVideoCaptureDevice();
     //如果沒有配置攝像頭
     if(cameradevice==null){
         //信息提示
     }else{
        camera=CaptureDeviceConfiguration.GetDefaultVideoCaptureDevice();
        //設置捕獲源對象設置爲攝像頭
        capturesource.VideoCaptureDevice=camera;
        //設置視頻刷源
        videoBrush.SetSource(capturesource);
        //利用視頻刷填充矩形對象
        this.rectangle.Fill=videoBrush;   //xaml頁面創建容器
     }
}

//截取靜態圖片
private void CutImage(){
    this.capturesource.CaptureImageAsync();
    this.capturesource.CaptureImageCompleted+=(ss,se)=>
    {
       if(se.Error==null){
          this.image.Source=se.Result;
          //定義位圖對象
          WriteableBitmap bitmap=se.Result;
          Image image=new Image();
          image.Width=160;
          image.Stretch=Stretch.Fill;
          //設置Image對象源,顯示圖形
          image.Source=bitmap;
          this.listbox.Items.Add(image);
       }else{
          return;
       }
    }
}

//保存圖片
private void SaveImage(){
     //創建對象,源來自image
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章