2016-12-27 35 views
1

https://github.com/saki4510t/UVCCamera 의 UVCCamera를 사용하여 usb 카메라에서 사진을 캡처하는 앱을 빌드하려고합니다. 그러나 구현 방법을 모르겠습니다. 이 라이브러리에서 이미지 조정 설정 (밝기, 대비, 화이트 밸런스 조정과 같음)을 선택합니다. 나는 밝기 설정을 조정 SeekBar를를 사용하여 시도했다, 이것은 내 코드입니다 :안드로이드 스튜디오에서 UVCCamera 라이브러리의 이미지 조정 (밝기, 대비) 사용 방법

final UVCCamera camera = new UVCCamera(); 

private final OnSeekBarChangeListener mSeekBarChangeListener = new OnSeekBarChangeListener() 
{ 
    @Override 
    public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) 
    { 
     if (mCameraHandler.isOpened()) //When USB Camera, Connected 
     {  
      camera.setBrightness(progress); 
     } 
    } 
    @Override 
    public void onStartTrackingTouch(SeekBar seekBar) 
    { 
    } 
    @Override 
    public void onStopTrackingTouch(SeekBar seekBar) 
    { 
    } 
}; 

그리고, 내가 검색 막대의 값을 변경하려고하면, 값이 변경,하지만 밝기를 변경하지 않습니다 수평. 누구든지 나를 설명 할 수 있습니까?이 라이브러리에서 이미지 조정을 변경하거나 내 코드를 수정 해 줄 수 있습니까? 모든 답은 나로부터

감사를 뵙죠, 좋은 하루 모두 :) 나는 도서관 (libuvccamera, usbCameraCommon)의 새 버전에서 내 프로젝트의 파일을 업데이트

답변

1

을 가지고에서 코드를 수정됩니다 예제 8. 나는 샘플 코드를 주었다. 다음은 내가 가지고있는 코드의 예입니다.

private SeekBar.OnSeekBarChangeListener seekBarChangeListener = 
      new SeekBar.OnSeekBarChangeListener() { 
       @Override 
       public void onProgressChanged(SeekBar seekBar, int progress, 
               boolean fromUser) { 
        // TODO Auto-generated method stub 
        br = progress; 

       } 

       @Override 
       public void onStartTrackingTouch(SeekBar seekBar) { 
        // TODO Auto-generated method stub 
       } 

       @Override 
       public void onStopTrackingTouch(SeekBar seekBar) { 
        if (isActive()) { 

           setValue(seekBar.getProgress()); 

         } 
        } 
        // TODO Auto-generated method stub 
       }; 

    private int setValue(final int value) { 
      return mCameraHandler != null ? mCameraHandler.setValue(value) : 0; 
     } 
private boolean isActive() { 
     return mCameraHandler != null && mCameraHandler.isOpened(); 
    } 

그리고 편집 AbstractUVCCameraHandler.java

public int setValue(final int value) { 
     checkReleased(); 
     final CameraThread thread = mWeakThread.get(); 
     final UVCCamera camera = thread != null ? thread.mUVCCamera : null; 
     if (camera != null) { 

       camera.setBrightness(value); 
       return camera.getBrightness(); 
     } 
    throw new IllegalStateException(); 
}