대부분의 전화기 및 API 수준에서 문제없이 Android에 비디오를 녹화하는 응용 프로그램이 있습니다. 기록에 대한 코드는 다음과 같다 : 알 수없는 이유로녹화 비디오 문제
recorder.setCamera(cam);
recorder.setAudioSource(MediaRecorder.AudioSource.CAMCORDER);
recorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
if(Integer.valueOf(android.os.Build.VERSION.SDK) > 7){
CamcorderProfile mProfile = CamcorderProfile.get(CamcorderProfile.QUALITY_LOW);
recorder.setProfile(mProfile);
}else{
recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.DEFAULT);
recorder.setVideoEncoder(MediaRecorder.VideoEncoder.DEFAULT);
}
recorder.setOutputFile(path);
recorder.setPreviewDisplay(holder.getSurface());
recorder.prepare();
recorder.start();
이 코드가 실행하는 모토로라 모델 MB632에서 실행 안드로이드 2.3.5 I 얻을 로그 캣에서 다음과 같은 오류 :
OMXCodec : Buffer count/size less than minimum required
OMXCodec : Allocate Buffer failed - error = -2147483648
Media Recorder: start failed: -12
Camera : Error 100
Application : frameworks/base/media/libstagefright/MPEG4Writer.cpp:2966 mCodecSpecificData
그리고 예외를 반환합니다. 나는 모든 종류의 조합을 시도하고 버퍼 크기는 API 함수에서 변경할 수있는 것 같지 않습니다.
이 도움이 될 수 있습니다 : http://stackoverflow.com/questions/6532554/trouble-trying-to-get-mediarecorder-to-work-correctly, 주석 – Caner
를 참조 이미하지만 도움이되지 않았다 읽기 많은. 일부 카메라는 일반 프로그래밍을 따르지 않는 것으로 보입니다. 나는 API 레벨에 의해 그것을 깨뜨 렸지만 당신은 볼 수 있지만 운은 없다. –