Пример #1
0
 async void OnCaptureCreated(CameraPreviewCapture createdObject)
 {
     if (createdObject != null)
     {
         Debug.Log("capture created.");
         capture = createdObject;
         capture.OnFrameArrived += OnFreameArrive;
         await capture.StartVideoModeAsync(false);
     }
     else
     {
         Debug.Log("capture not created.");
     }
 }
    /// <summary>
    /// ファクトリメソッドを呼び出したときのコールバック
    /// カメラプレビューを開始する
    /// </summary>
    /// <param name="captureObject"></param>
    private async void CameraPreviewCapture_OnCreated(CameraPreviewCapture captureObject)
    {
        if (captureObject == null)
        {
            throw new Exception("Failed to create CameraPreviewCapture instance");
        }
        _cameraPreviewCapture = captureObject;
        // 新しいフレームを取得したときのイベントハンドラを設定
        _cameraPreviewCapture.OnFrameArrived += CameraPreviewCapture_OnFrameArrived;
        // カメラプレビューの開始
        var result = await _cameraPreviewCapture.StartVideoModeAsync(false);

        if (!result)
        {
            throw new Exception("Failed to start camera preview");
        }
    }