2013-04-29 1 views
1

나는이 NativeCameraView 있습니다 (?! 내가 시간을 컴파일 호출 할 수 있습니다) opencv:camera_id="back"opencv:camera_id="front"을 변경하여OpencvAndroidSDK : 런타임시 전면 카메라와 후면 카메라간에 전환 하시겠습니까?

<org.opencv.android.NativeCameraView 
      android:id="@+id/tutorial1_activity_native_surface_view" 
      android:layout_width="350px" 
      android:layout_height="350px" 
      android:layout_marginLeft="5dp" 
      android:layout_marginTop="5dp" 
      opencv:camera_id="front" /> 

를, 내가 디자인 타임에 카메라를 앞에서 뒤로 카메라에서
을 변경할 수 있습니다하지만 지금은 전환해야 실행 시간에 그들 사이에? 가능한가? 활동 클래스에서 다음과 같은 변수에 대한 접근을 감안할 때

답변

4

:보기를 전환합니다

private CameraBridgeViewBase mOpenCvCameraView; //exists as is in opencv samples 
private int mCameraId = 0; //add this one 

다음의 방법. 트릭은 카메라보기를 비활성화하고, 카메라 인덱스를 설정하고 (제 경우 0과 1이 모두 유효 함) 카메라보기를 다시 활성화하는 것입니다.

private void swapCamera() { 
    mCameraId = mCameraId^1; //bitwise not operation to flip 1 to 0 and vice versa 
    mOpenCvCameraView.disableView(); 
    mOpenCvCameraView.setCameraIndex(mCameraId); 
    mOpenCvCameraView.enableView(); 
} 
관련 문제