我已经实现了自定义相机应用程序。我已按照this tutorial中说明的步骤进行操作。

在某些设备上,在拍照时,我的应用程序冻结。

我在logcat中收到以下错误消息。

E/V4LCameraAdapter(2321): hardware/amlogic/camera/V4LCameraAdapter/V4LCameraAdapter.cpp:834 GetFrame - GetFrame: No buff for Dequeue

E/V4LCameraAdapter(2321): hardware/amlogic/camera/V4LCameraAdapter/V4LCameraAdapter.cpp:993 previewThread - Preview thread get frame fail, need sleep:33333


该错误特定于设备的硬件吗?有没有一种方法可以从SDK设置相机参数以避免No buff错误?

最佳答案

找出问题所在。

显然,此回调使摄像机预览每一帧的数据阻塞了缓冲区。

camera.setPreviewCallback(new PreviewCallback() {
      public void onPreviewFrame(byte[] data, Camera arg1) {
    //invalidate surfaceview
}
 });


删除回调对我有用。

08-17 11:40