当前位置: 首页 > 知识库问答 >
问题:

使用CWAC摄像头预览尺寸

汝繁
2023-03-14

我已经和https://github.com/commonsguy/cwac-camera

创建了我的自定义CameraFragment和自定义CameraHost。

我已经重写了getPictureSize和getPreviewSize。通过这两种方法,我能够找出可以使用的大小。我的总体想法是拍摄一幅方形图像,并在拍摄前预览它。

我一直在测试,没有设备返回正方形格式的大小,所以我想最好的方法是选择最符合我需要的大小。例如,如果我需要一个800x800平方的图像,我将返回最接近的大小,即(例如)1280x1024

到目前为止还不错。问题如下:

文件说明:

通常,将使用getPreviewSize()调用CameraHost

该死。我的Nexus5设备永远不会触发此方法,但GenyMotion模拟器会。所以在我的模拟器中,我可以创建自定义预览大小,而我的真实设备不能。所以我需要一些帮助来解决这个问题。为什么只是“通常”?我可以做些什么来将其更改为“始终”?

第二个学期,我需要一些提示:如果我想要一个正方形的预览大小,我知道它在默认情况下是不可用的,由getSupportedPreviewSizes返回,那么我该如何显示正方形呢?也许在摄影机碎片上覆盖一个正方形?有可能吗?或者我应该采取其他方法吗?

无论如何,祝贺图书馆;这是绝对清楚的,有这么多的选择。无需担心“某些设备”。作为一名Android开发人员,这太棒了。

非常感谢。

共有1个答案

萧星火
2023-03-14

为什么只是“通常”?我该怎么做才能将其更改为“始终”?

引用留档:

但是,如果getRecordingHint()返回ANYVIDEO_ONLY相机主机通过getPreferredPreviewSizeForVideo()而不是getPreviewSize()提供预览大小。如果您希望对视频使用不同的预览大小,请返回它,否则返回null,我们将使用getPreviewSize()中的结果。

在API级别11上,SimpleCameraHost的实现将委托给摄影机上的实现。参数,但已知返回错误值的设备除外。

如何显示正方形?也许在相机碎片上覆盖一个正方形?

我会尝试将CamamaView直接放在您自己的UI中,然后在其上分层,使用FrameLayoutRelativeLayout来控制Z轴排序。

 类似资料:
  • 构建问题我的android应用程序找不到依赖项,不确定是什么问题。它昨天工作,没有更改任何代码。 有人知道怎么解决这个问题吗?

  • 我的意图是有一个方形相机预览。 我没有1:1比例的相机预览可用(我在Nexus 5模拟器中),所以我的最佳尺寸可用为640 x 480,所以为了适应正方形预览,我将SurfaceView尺寸设置为与纵横比相等,但将屏幕外的边距偏移一半,以在屏幕上只保留裁剪的正方形。表面视图本身的大小和偏移量是正确的,但是相机预览本身仍然在正方形内显示压缩后的预览,而不是以正确的纵横比部分地在屏幕外显示。 有什么想

  • 主要内容:第1步:加载OpenCV本机库,第2步:实例化视频捕获类,第3步:阅取帧,示例在本章中,我们将学习如何使用OpenCV使用系统摄像头捕获帧。包中的类包含使用相机捕获视频的类和方法。下面来一步一步学习如何捕捉帧 - 第1步:加载OpenCV本机库 在使用OpenCV库编写Java代码时,使用加载OpenCV本地库。加载OpenCV本机库,如下所示 - 第2步:实例化视频捕获类 使用本教程前面提到的函数来实例化类。 第3步:阅取帧 可以使用类的方法从相机读取帧。此方法接受类的对

  • 我正在为我的Android应用程序使用此相机预览应用程序。 我想要全屏幕的相机预览。因此,我使用Android API中的示例尝试将预览设置为全屏。这就是我试图做到的: 我使用相对布局作为我的布局。我的布局设置如下: 我仍然无法在整个屏幕上预览我的相机。我想知道如何预览整个屏幕。

  • 表情测试 图片转文字 相框 拍摄图片

  • 摄像头用于采集图像和影像信息,通过模块间的组合完成各种创意活动。 净重量:8.1g 体积:24×24×22mm 参数 分辨率:1280×720 像素大小:3.4um×3.4um 最大图像传输速率:全尺寸 @ 30fps 视场角:100° 镜片结构:4G+IR 焦比:2.97 有效焦距:2.4mm 功耗:100uA(待机)~240mW(工作) 电源:USB总线电源 抗跌落能力:1m 工作温度:-30