내 응용 프로그램에서 나는 안드로이드에서 비디오를 찍으려면 surfaceiew를 사용하고 있습니다. onpreviewFrame 메서드에서 프레임을 잡을 코드를 작성했지만 문제는 비디오의 모든 프레임을 가져올 수 없다는 것입니다. 나는 약 14 초의 비디오를 캡쳐하고 있지만, 90 프레임 정도 밖에 얻지 못한다. 프레임 레이트는 초당 30 프레임이고, 화상 사이즈는 코드 onPreviewFrame 방법에서 프레임 frab 아래 인 800 x 480android의 onPreviewFrame에서 비디오 프레임을 가져 오는 방법은 무엇입니까?
이다
가formattedFileCount = fileCountFormatter.format(fileCount);
jpegFile = new File(Environment
.getExternalStorageDirectory().getPath()
+ "/abc/foo-"
+ formattedFileCount + ".jpg");
fileCount++;
Camera.Parameters parameters = camera.getParameters();
Size size = parameters.getPreviewSize();
YuvImage image = new YuvImage(b,
parameters.getPreviewFormat(), 800,
480, null);
fos = new FileOutputStream(jpegFile);
bos = new BufferedOutputStream(fos);
image.compressToJpeg(
new Rect(0, 0, image.getWidth(), image.getHeight()),
90, bos);
그래서 14 개의 제 2 영상에 대한 전체 프레임 (420)이 될 것이지만, 100 프레임 이하로 촬영하십시오. 그 어떤 해결책이라도?