private void InitCamera() { //bool success = false; //success = OpenCamera(0); //Try the face camera //if (success == false) //{ // success = OpenCamera(1); //Try the rear camera //} //variable to get the number of cameras in the device int cameraCount = Android.Hardware.Camera.NumberOfCameras; Android.Hardware.Camera.CameraInfo cameraInfo = new Android.Hardware.Camera.CameraInfo(); for (int camIdx = 0; camIdx < cameraCount; camIdx++) { Android.Hardware.Camera.GetCameraInfo(camIdx, cameraInfo); if (cameraInfo.Facing == Android.Hardware.CameraFacing.Front) { camera = Android.Hardware.Camera.Open(camIdx); cameraId = camIdx; camera.SetDisplayOrientation(90); } } //var video = Activity.FindViewById<VideoView>(Resource.Id.videoView1); //camera.SetPreviewDisplay(video.Holder); camera.AddCallbackBuffer(ss); camera.SetPreviewCallbackWithBuffer(new mPreviewCallback()); camera.StartPreview(); }
public void OnPreviewFrame(byte[] data, Android.Hardware.Camera camera) { //ここでフレーム画像データを加工したり情報を取得したり //PCLプロジェクトとのやりとりやら CameraPreview.Hoge = (object)(this.FrameCount++.ToString()); //変更した画像をプレビューに反映させたりする //次のバッファをセット camera.AddCallbackBuffer(Buff); }
public void OnPreviewFrame(byte[] data, Camera camera) { ProcessFrame(data, camera); camera.AddCallbackBuffer(_previewBuffer); }
/** * [IMPORTANT!] Sets the {@link #previewBuffer} to be the default buffer where the * preview frames will be copied. Also sets the callback function * when a frame is ready. * @throws IOException */ private void SetCameraCallBack() { _camera.AddCallbackBuffer(this._previewBuffer); _camera.SetPreviewCallbackWithBuffer(this); }