我在网上搜索过,我找不到1001错误。几秒钟后,我得到相机100错误,但我无法找出第一个错误是什么。有没有人有任何想法?安卓相机错误1001 - 那是什么?
8
A
回答
5
我在S3上遇到了这个错误。我相信我已将其追踪到MediaRecorder如何使用相机预览表面。在我的情况下,当我试图开始录制时,预览显示重置。我解决它通过清理我的代码,只是使用的电话设置,启动和停止在下面的SurfaceView实现(从Android Camera developer guide)预览显示:
public class CameraPreview extends SurfaceView implements SurfaceHolder.Callback {
private SurfaceHolder mHolder;
private Camera mCamera;
public CameraPreview(Context context, Camera camera) {
super(context);
mCamera = camera;
// Install a SurfaceHolder.Callback so we get notified when the
// underlying surface is created and destroyed.
mHolder = getHolder();
mHolder.addCallback(this);
// deprecated setting, but required on Android versions prior to 3.0
mHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
}
public void surfaceCreated(SurfaceHolder holder) {
// The Surface has been created, now tell the camera where to draw the preview.
try {
mCamera.setPreviewDisplay(holder);
mCamera.startPreview();
} catch (IOException e) {
Log.d(TAG, "Error setting camera preview: " + e.getMessage());
}
}
public void surfaceDestroyed(SurfaceHolder holder) {
// empty. Take care of releasing the Camera preview in your activity.
}
public void surfaceChanged(SurfaceHolder holder, int format, int w, int h) {
// If your preview can change or rotate, take care of those events here.
// Make sure to stop the preview before resizing or reformatting it.
if (mHolder.getSurface() == null){
// preview surface does not exist
return;
}
// stop preview before making changes
try {
mCamera.stopPreview();
} catch (Exception e){
// ignore: tried to stop a non-existent preview
}
// set preview size and make any resize, rotate or
// reformatting changes here
// start preview with new settings
try {
mCamera.setPreviewDisplay(mHolder);
mCamera.startPreview();
} catch (Exception e){
Log.d(TAG, "Error starting camera preview: " + e.getMessage());
}
}
}
3
只是想我要在这里增加一个职位的未来参考。这个问题困扰了我很长一段时间。 事实证明,我的问题是由不正确的预览大小引起的,虽然解析集是从getSupportedPictureSize方法获得的。
因此,例如,你可以得到的尺寸如下:
//first entry in list is 1392x1392 for front facing camera on an S3
List<Camera.Size> supportedPictureSizes = params.getSupportedPictureSizes();
设置这个分辨率或忽略了产品总数设置图片大小将导致可怕的错误1001
如果遇到这种任何其他设备,我会建议尝试不同的图片尺寸。
0
所以还有另一个原因,为什么我在我的Galaxy S3上使用它。我在使用TextureView显示我的相机预览,并在成功预览后按主页按钮,然后再次输入应用程序时出现此可怕错误。在onResume()函数中,我再次启动了预览,发现我没有在onSurfaceTextureDestroyed()函数中释放SurfaceTexture实例变量。
我加释放行此功能,它现在看起来像这样和完美的作品:
@Override public boolean onSurfaceTextureDestroyed(SurfaceTexture surface) {
mSurfaceTexture = null; //This was the offending culprit.
releaseMediaPlayer();
releaseVideoRecorder();
releaseCamera();
return false;
}
0
在我的情况下,三星S3,视频尺寸参数没有设置,这导致1001错误。使用预览大小在媒体记录器上设置视频大小解决了问题。但是,此更改可能会在其他设备上失败,因为参数可能会或可能不会在所有设备中可用/设置。下面的代码解决了设备的最:
if(params.get("video-size") != null && params.get("video-size").isEmpty()) {
int videoWidth = params.getPreviewSize().width;
int videoHeight = params.getPreviewSize().height;
mediaRecorder.setVideoSize(videoWidth, videoHeight);
} else {
mediaRecorder.setVideoSize(profile.videoFrameWidth, profile.videoFrameHeight);
}
相关问题
- 1. 安卓相机程序错误-2147483648
- 2. 安卓相机保存文件错误
- 3. 安卓相机zoom
- 4. 安卓相机frezes
- 5. 安卓相机setPreviewSize
- 6. 安卓相机错误 - 错误排队缓冲区到SurfaceTexture,-32
- 7. 安卓:错误
- 8. 安卓相机菜单
- 9. 安卓相机中断
- 10. 安卓相机意图
- 11. 安卓相机的空气
- 12. 错误1001 LoaderExceptions
- 13. 用安卓相机拍照
- 14. 什么是@ *安卓android的
- 15. 安卓相机AutoFocus on Demand
- 16. 安卓相机预览错误的长宽比
- 17. 安卓相机预览
- 18. 安卓相机2 api MediaRecorder停止()错误
- 19. 安卓相机应用程序收到错误100
- 20. 安卓相机ISO设置
- 21. 安卓相机翻转
- 22. 安卓相机检测
- 23. 安卓相机SurfaceView替代
- 24. 安卓相机控件
- 25. 安卓相机在后台
- 26. 相机预览 - 安卓
- 27. 测光相机 - 安卓
- 28. Json错误connectin安卓网页主机
- 29. 安卓相机意图
- 30. 安卓相机滤镜
什么都这是我回滚到我的代码的早期版本固定的,但我仍想知道跆拳道是1001错误,所以我能避免它在未来。 –