마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 동영상 녹화할때 전면카메라 제어 방법좀..

0 추천
private void setCameraPreview(SurfaceHolder holder){
                try {
                    // 카메라 객체를 만든다
                    camera = Camera.open(mCameraFacing);
                    
                    Camera.Parameters parameters = camera.getParameters();
                    parameters.setRotation(90);
                    camera.setParameters(parameters);
                    // 프리뷰 디스플레이를 담당한 서피스 홀더를 설정한다
                    camera.setPreviewDisplay(holder);
                    
                } catch (Exception e) {
                    // TODO: handle exception
                }
            }

 

====================

recordBtn.setOnClickListener(new View.OnClickListener() {
                
                
                @Override
                   public void onClick(View v) {
                        try{
                            //녹화할 수 있는 객체가 없으면 생성.
                                if(recorder == null){
                                    recorder = new MediaRecorder();
                                }
                                
                                recorder.setCamera(Camera.open(mCameraFacing));
                    
                                //녹화 옵션 설정
                                recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
                                recorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
                                //출력 포맷 설정.
                                recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
                                //인코딩 방식 설정.
                                recorder.setAudioEncoder(MediaRecorder.AudioEncoder.DEFAULT);
                                
                                recorder.setVideoEncoder(MediaRecorder.VideoEncoder.DEFAULT);
                                
                                //출력할 파일 이름을 설정하기 위한 메서드를 호출해서 파일 이름 결정
                                filename = createFilename();

 

이런식으로 전면카메라 오픈하면안되나요?. . 아 저번에도 올렸는데 그 뒤로도 계속 인터넷뒤지면서 하고있는데 안되네요ㅠㅠㅠ.... D/TAG(20275): Recorder Exception :Fail to connect to camera service 녹화버튼을 누르면 이 에러가 계속 뜨네용..... 첨에는 카메라 값 널포인트 뜨더니 그건 어떻게 해결했는데..

recorder.setCamera(Camera.open(mCameraFacing));  < 전면카메라 제어할려고 이부분만 가져오면 이렇게 에러가 뜨네요..흠..ㅠㅠ
익명사용자 님이 2016년 4월 20일 질문

1개의 답변

0 추천
mCamera.unlock(); 은 안부르시는건가요?

그리고 camera release를 제대로 안 할 경우

핸들을 잡고 있는 부분이 있어 Camera가 open 시 에러가 날 수 있습니다.

 이 경우 재 부팅 하셔야 합니다.
익명사용자 님이 2016년 4월 20일 답변
unlock을 불러도 안되더라구요... 좀더 공부해봐야겠네요......흐..벌써 몇일째 이부분을 잡고있는지 모르겠습니다..ㅠ
파라메터 확인해보세요. MediaRecoder에서 지원하는 파라메터와 Camera에서 지원하는 파라메터가 달라 (특히 해상도) 문제가 발생할 수도 있습니다.  파라메터 값을 내장 플레이어에서 지원하는 값으로 맞춰 보세요
...