解决华为M2 平板前置摄像头录制视频黑屏
来源:互联网 发布:fpga 单片机 工资 编辑:程序博客网 时间:2024/04/29 03:37
//解决办法直接写在注释里了
//我只试过4.4 5.0 6.0三种机型
关于黑屏的分析请看:http://blog.csdn.net/afei__/article/details/51540188
private void startPreView(SurfaceHolder holder) { if (mCamera == null) { mCamera = Camera.open(Camera.CameraInfo.CAMERA_FACING_FRONT);//默认打开前置 } if (mCamera != null) { mCamera.setDisplayOrientation(or); try { List<Camera.Size> previewSizes = mCamera.getParameters().getSupportedPreviewSizes(); for (int i = 0; i < previewSizes.size(); i++) { Camera.Size psize = previewSizes.get(i);
//把可以设置的尺寸打印出来 LogUtils.e("BG" + "initCamera", "PreviewSize,width: " + psize.width + " height: " + psize.height); } mCamera.setPreviewDisplay(holder); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
//华为M2(6.0)不能设置Parameters profile = CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH); } else {
//华为4.4及其他5.0手机需要设置parameters,不然在SurfaceView上只有第一帧后面不动了 mParameters = mCamera.getParameters(); List<Camera.Size> mSupportedPreviewSizes = mParameters.getSupportedPreviewSizes(); List<Camera.Size> mSupportedVideoSizes = mParameters.getSupportedVideoSizes(); Camera.Size optimalSize = CameraHelper.getOptimalVideoSize(mSupportedVideoSizes, mSupportedPreviewSizes, mSurfaceView.getWidth(), mSurfaceView.getHeight()); previewWidth = optimalSize.width / 2; previewHeight = optimalSize.height; mParameters.setPreviewSize(previewWidth, previewHeight); profile = CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH); // 这里是重点,分辨率和比特率 // 分辨率越大视频大小越大,比特率越大视频越清晰 // 清晰度由比特率决定,视频尺寸和像素量由分辨率决定 // 比特率越高越清晰(前提是分辨率保持不变),分辨率越大视频尺寸越大。 profile.videoFrameWidth = optimalSize.width; profile.videoFrameHeight = optimalSize.height; // 这样设置 1080p的视频 大小在5M , 可根据自己需求调节 profile.videoBitRate = 2 * optimalSize.width * optimalSize.height; List<String> focusModes = mParameters.getSupportedFocusModes(); if (focusModes != null) { for (String mode : focusModes) { mode.contains("continuous-video"); } } mCamera.setParameters(mParameters); } mCamera.startPreview(); } catch (Exception e) { e.printStackTrace(); } }}
阅读全文
0 0
- 解决华为M2 平板前置摄像头录制视频黑屏
- android前置竖屏摄像头录制视频保存到本地
- Android前置后置摄像头录制视频综合版
- 前置摄像头后台视频录制,即可以自动拍摄也可以手动干涉,实现完全控制
- Android前置摄像头视频录制失败(MediaRecorder: start failed: -19)
- OpenCV 摄像头录制视频
- opencv调用摄像头录制视频
- HTML5调用摄像头录制视频
- ThinkPad T430s 摄像头黑屏解决
- SoundPool、录制音频、播放视频、调用摄像头
- 摄像头 UIImagePickerController拍照和视频录制
- iOS拍照和录制视频 摄像头使用
- 基于AForge的C#摄像头视频录制
- 关于视频录制预览摄像头拉伸问题
- 关于视频录制预览摄像头拉伸问题
- OpenCV学习之摄像头录制存储视频
- 解决android程序调用摄像头黑屏
- 实例教程十四:视频刻录(调用前置摄像头)
- Android:Socket使用攻略
- 160个练手CrackMe-015
- spring-boot老师笔记
- Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/xml/serializer/TreeWalker
- php 解决修改memory_limit失效的问题
- 解决华为M2 平板前置摄像头录制视频黑屏
- 求最大子矩阵的大小
- tomcat问题 Could not publish to the server.
- Ajax教程了解
- 统计学学习笔记——(1)统计学研究方法概论
- CAN2.0B 数据帧详解
- js json省市二级联动菜单(json+select)
- vue插件使用方法
- 使用Snippets加快UE4C++开发