Most visited

Recently visited

Added in API level 1
Deprecated since API level 21

Camera.Parameters

public class Camera.Parameters
extends Object

java.lang.Object
   ↳ android.hardware.Camera.Parameters


该类在API级别21中已被弃用。
我们建议在新的应用程序中使用新的android.hardware.camera2 API。

相机服务设置。

要使摄像头参数生效,应用程序必须调用setParameters(Camera.Parameters) 例如,调用setWhiteBalance(String)之后,直到使用更改的参数对象调用setParameters(Camera.Parameters)实际上才会更改白平衡。

不同的设备可能具有不同的相机功能,如照片尺寸或闪光灯模式。 应用程序应在设置参数之前查询相机的功能。 例如,应用程序应该在致电getSupportedColorEffects()之前调用setColorEffect(String) 如果相机不支持色彩效果, getSupportedColorEffects()将返回null。

Summary

Constants

String ANTIBANDING_50HZ

String ANTIBANDING_60HZ

String ANTIBANDING_AUTO

String ANTIBANDING_OFF

String EFFECT_AQUA

String EFFECT_BLACKBOARD

String EFFECT_MONO

String EFFECT_NEGATIVE

String EFFECT_NONE

String EFFECT_POSTERIZE

String EFFECT_SEPIA

String EFFECT_SOLARIZE

String EFFECT_WHITEBOARD

String FLASH_MODE_AUTO

Flash会在需要时自动启动。

String FLASH_MODE_OFF

Flash不会被解雇。

String FLASH_MODE_ON

快照期间,Flash将始终被触发。

String FLASH_MODE_RED_EYE

闪光灯将在消除红眼模式下闪光。

String FLASH_MODE_TORCH

在预览,自动对焦和快照期间持续发光。

int FOCUS_DISTANCE_FAR_INDEX

getFocusDistances(float[])一起使用的远焦距阵列索引。

int FOCUS_DISTANCE_NEAR_INDEX

用于 getFocusDistances(float[])的近焦距阵列索引。

int FOCUS_DISTANCE_OPTIMAL_INDEX

getFocusDistances(float[])一起使用的最佳焦点距离阵列索引。

String FOCUS_MODE_AUTO

自动对焦模式。

String FOCUS_MODE_CONTINUOUS_PICTURE

连续自动对焦模式用于拍摄照片。

String FOCUS_MODE_CONTINUOUS_VIDEO

适用于视频录制的连续自动对焦模式。

String FOCUS_MODE_EDOF

扩展景深(EDOF)。

String FOCUS_MODE_FIXED

重点是固定的。

String FOCUS_MODE_INFINITY

焦点设置在无穷远处。

String FOCUS_MODE_MACRO

微距(近摄)对焦模式。

int PREVIEW_FPS_MAX_INDEX

用于 getPreviewFpsRange(int[])getSupportedPreviewFpsRange()的最大预览fps数组索引。

int PREVIEW_FPS_MIN_INDEX

用于 getPreviewFpsRange(int[])getSupportedPreviewFpsRange()的最小预览fps数组索引。

String SCENE_MODE_ACTION

拍摄快速移动的物体。

String SCENE_MODE_AUTO

场景模式关闭。

String SCENE_MODE_BARCODE

应用程序正在寻找条形码。

String SCENE_MODE_BEACH

在沙滩上拍照。

String SCENE_MODE_CANDLELIGHT

捕捉蜡烛点亮的场景的自然暖色。

String SCENE_MODE_FIREWORKS

用于拍摄烟花汇演。

String SCENE_MODE_HDR

使用高动态范围成像技术捕捉场景。

String SCENE_MODE_LANDSCAPE

拍摄远处的物体。

String SCENE_MODE_NIGHT

晚上拍照。

String SCENE_MODE_NIGHT_PORTRAIT

晚上拍人照。

String SCENE_MODE_PARTY

采取室内低光照射。

String SCENE_MODE_PORTRAIT

拍人照片。

String SCENE_MODE_SNOW

在雪地上拍照。

String SCENE_MODE_SPORTS

拍摄快速移动的物体。

String SCENE_MODE_STEADYPHOTO

避免模糊的图片(例如,由于握手)。

String SCENE_MODE_SUNSET

拍日落照片。

String SCENE_MODE_THEATRE

在剧院拍照。

String WHITE_BALANCE_AUTO

String WHITE_BALANCE_CLOUDY_DAYLIGHT

String WHITE_BALANCE_DAYLIGHT

String WHITE_BALANCE_FLUORESCENT

String WHITE_BALANCE_INCANDESCENT

String WHITE_BALANCE_SHADE

String WHITE_BALANCE_TWILIGHT

String WHITE_BALANCE_WARM_FLUORESCENT

Public methods

String flatten()

创建一个包含此Parameters对象中设置的所有参数的单个字符串。

String get(String key)

返回String参数的值。

String getAntibanding()

获取当前的抗菌设置。

boolean getAutoExposureLock()

获取自动曝光锁的状态。

boolean getAutoWhiteBalanceLock()

获取自动白平衡锁定的状态。

String getColorEffect()

获取当前的颜色效果设置。

int getExposureCompensation()

获取当前的暴露补偿指数。

float getExposureCompensationStep()

获取曝光补偿步骤。

String getFlashMode()

获取当前的闪光模式设置。

float getFocalLength()

获取相机的焦距(以毫米为单位)。

List<Camera.Area> getFocusAreas()

获取当前的重点领域。

void getFocusDistances(float[] output)

获取从相机到物体看起来聚焦的位置的距离。

String getFocusMode()

获取当前的对焦模式设置。

float getHorizontalViewAngle()

以度数获取水平视角。

int getInt(String key)

返回整数参数的值。

int getJpegQuality()

返回JPEG图片的质量设置。

int getJpegThumbnailQuality()

返回Jpeg图片中EXIF缩略图的质量设置。

Camera.Size getJpegThumbnailSize()

返回Jpeg图片中EXIF缩略图的尺寸。

int getMaxExposureCompensation()

获取最大曝光补偿指数。

int getMaxNumDetectedFaces()

获取支持的最大检测面数。

int getMaxNumFocusAreas()

获取支持的最大焦点区域数量。

int getMaxNumMeteringAreas()

获取支持的测量区域的最大数量。

int getMaxZoom()

获取快照允许的最大缩放值。

List<Camera.Area> getMeteringAreas()

获取当前的测光区域。

int getMinExposureCompensation()

获取最低曝光补偿指数。

int getPictureFormat()

返回图片的图片格式。

Camera.Size getPictureSize()

返回图片的尺寸设置。

Camera.Size getPreferredPreviewSizeForVideo()

返回视频录制的首选或推荐预览大小(宽度和高度)(以像素为单位)。

int getPreviewFormat()

返回从 Camera.PreviewCallback获取的预览帧的图像格式。

void getPreviewFpsRange(int[] range)

返回当前最小和最大预览fps。

int getPreviewFrameRate()

此方法在API级别9中已被弃用。替换为getPreviewFpsRange(int[])

Camera.Size getPreviewSize()

返回预览图片的尺寸设置。

String getSceneMode()

获取当前场景模式设置。

List<String> getSupportedAntibanding()

获取支持的抗菌值。

List<String> getSupportedColorEffects()

获取支持的颜色效果。

List<String> getSupportedFlashModes()

获取支持的闪光灯模式。

List<String> getSupportedFocusModes()

获取支持的对焦模式。

List<Camera.Size> getSupportedJpegThumbnailSizes()

获取支持的jpeg缩略图大小。

List<Integer> getSupportedPictureFormats()

获取支持的图片格式。

List<Camera.Size> getSupportedPictureSizes()

获取支持的图片大小。

List<Integer> getSupportedPreviewFormats()

获取支持的预览格式。

List<int[]> getSupportedPreviewFpsRange()

获取支持的预览fps(帧每秒)范围。

List<Integer> getSupportedPreviewFrameRates()

此方法在API级别9中已被弃用。替换为getSupportedPreviewFpsRange()

List<Camera.Size> getSupportedPreviewSizes()

获取支持的预览大小。

List<String> getSupportedSceneModes()

获取支持的场景模式。

List<Camera.Size> getSupportedVideoSizes()

获取MediaRecorder可以使用的支持的视频帧大小。

List<String> getSupportedWhiteBalance()

获取支持的白平衡。

float getVerticalViewAngle()

以度数获得垂直视角。

boolean getVideoStabilization()

获取视频稳定的当前状态。

String getWhiteBalance()

获取当前的白平衡设置。

int getZoom()

获取当前缩放值。

List<Integer> getZoomRatios()

获取所有缩放值的缩放比例。

boolean isAutoExposureLockSupported()

如果支持自动曝光锁定,则返回true。

boolean isAutoWhiteBalanceLockSupported()

如果支持自动白平衡锁定,则返回true。

boolean isSmoothZoomSupported()

如果支持平滑缩放,则返回true。

boolean isVideoSnapshotSupported()

如果支持视频快照,则返回true。

boolean isVideoStabilizationSupported()

如果支持视频稳定,则返回true。

boolean isZoomSupported()

如果支持缩放,则返回true。

void remove(String key)
void removeGpsData()

从参数中删除GPS纬度,经度,高度和时间戳。

void set(String key, String value)

设置一个String参数。

void set(String key, int value)

设置一个整数参数。

void setAntibanding(String antibanding)

设置抗菌。

void setAutoExposureLock(boolean toggle)

设置自动曝光锁定状态。

void setAutoWhiteBalanceLock(boolean toggle)

设置自动白平衡锁定状态。

void setColorEffect(String value)

设置当前的颜色效果设置。

void setExposureCompensation(int value)

设置曝光补偿索引。

void setFlashMode(String value)

设置闪光灯模式。

void setFocusAreas(List<Camera.Area> focusAreas)

设置重点领域。

void setFocusMode(String value)

设置对焦模式。

void setGpsAltitude(double altitude)

设置GPS高度。

void setGpsLatitude(double latitude)

设置GPS纬度坐标。

void setGpsLongitude(double longitude)

设置GPS经度坐标。

void setGpsProcessingMethod(String processing_method)

设置GPS处理方法。

void setGpsTimestamp(long timestamp)

设置GPS时间戳。

void setJpegQuality(int quality)

设置拍摄图片的Jpeg质量。

void setJpegThumbnailQuality(int quality)

设置JPEG图片中EXIF缩略图的质量。

void setJpegThumbnailSize(int width, int height)

在Jpeg图片中设置EXIF缩略图的尺寸。

void setMeteringAreas(List<Camera.Area> meteringAreas)

设置测光区域。

void setPictureFormat(int pixel_format)

设置图片的图片格式。

void setPictureSize(int width, int height)

设置图片的尺寸。

void setPreviewFormat(int pixel_format)

设置预览图片的图像格式。

void setPreviewFpsRange(int min, int max)

设置最小和最大预览fps。

void setPreviewFrameRate(int fps)

此方法在API级别9中已弃用。替换为setPreviewFpsRange(int, int)

void setPreviewSize(int width, int height)

设置预览图片的尺寸。

void setRecordingHint(boolean hint)

设置录制模式提示。

void setRotation(int rotation)

设置相对于摄像机方向的顺时针旋转角度。

void setSceneMode(String value)

设置场景模式。

void setVideoStabilization(boolean toggle)

启用和禁用视频稳定。

void setWhiteBalance(String value)

设置白平衡。

void setZoom(int value)

设置当前的缩放值。

void unflatten(String flattened)

采用扁平化的参数串并将每个参数添加到此参数对象。

Inherited methods

From class java.lang.Object

Constants

ANTIBANDING_50HZ

Added in API level 5
String ANTIBANDING_50HZ

常数值:“50hz”

ANTIBANDING_60HZ

Added in API level 5
String ANTIBANDING_60HZ

常数值:“60hz”

ANTIBANDING_AUTO

Added in API level 5
String ANTIBANDING_AUTO

常数值:“自动”

ANTIBANDING_OFF

Added in API level 5
String ANTIBANDING_OFF

常数值:“off”

EFFECT_AQUA

Added in API level 5
String EFFECT_AQUA

常数值:“aqua”

EFFECT_BLACKBOARD

Added in API level 5
String EFFECT_BLACKBOARD

常数值:“黑板”

EFFECT_MONO

Added in API level 5
String EFFECT_MONO

常数值:“单声道”

EFFECT_NEGATIVE

Added in API level 5
String EFFECT_NEGATIVE

常数值:“负值”

EFFECT_NONE

Added in API level 5
String EFFECT_NONE

常数值:“无”

EFFECT_POSTERIZE

Added in API level 5
String EFFECT_POSTERIZE

常数值:“posterize”

EFFECT_SEPIA

Added in API level 5
String EFFECT_SEPIA

常数值:“棕褐色”

EFFECT_SOLARIZE

Added in API level 5
String EFFECT_SOLARIZE

常数值:“solarize”

EFFECT_WHITEBOARD

Added in API level 5
String EFFECT_WHITEBOARD

常数值:“白板”

FLASH_MODE_AUTO

Added in API level 5
String FLASH_MODE_AUTO

Flash会在需要时自动启动。 在预览,自动对焦或快照期间,闪光灯可能会被触发,具体取决于驱动程序。

常数值:“自动”

FLASH_MODE_OFF

Added in API level 5
String FLASH_MODE_OFF

Flash不会被解雇。

常数值:“off”

FLASH_MODE_ON

Added in API level 5
String FLASH_MODE_ON

快照期间,Flash将始终被触发。 根据驱动程序的不同,预览或自动对焦期间也可能会触发闪光灯。

常数值:“on”

FLASH_MODE_RED_EYE

Added in API level 5
String FLASH_MODE_RED_EYE

闪光灯将在消除红眼模式下闪光。

恒定值:“红眼”

FLASH_MODE_TORCH

Added in API level 5
String FLASH_MODE_TORCH

在预览,自动对焦和快照期间持续发光。 这也可以用于录像。

常值:“火炬”

FOCUS_DISTANCE_FAR_INDEX

Added in API level 9
int FOCUS_DISTANCE_FAR_INDEX

getFocusDistances(float[])一起使用的远焦距阵列索引。

常量值:2(0x00000002)

FOCUS_DISTANCE_NEAR_INDEX

Added in API level 9
int FOCUS_DISTANCE_NEAR_INDEX

用于 getFocusDistances(float[])的近焦距阵列索引。

常量值:0(0x00000000)

FOCUS_DISTANCE_OPTIMAL_INDEX

Added in API level 9
int FOCUS_DISTANCE_OPTIMAL_INDEX

getFocusDistances(float[])一起使用的最佳焦点距离阵列索引。

常数值:1(0x00000001)

FOCUS_MODE_AUTO

Added in API level 5
String FOCUS_MODE_AUTO

自动对焦模式。 应用程序应该调用autoFocus(AutoFocusCallback)以在此模式下启动焦点。

常数值:“自动”

FOCUS_MODE_CONTINUOUS_PICTURE

Added in API level 14
String FOCUS_MODE_CONTINUOUS_PICTURE

连续自动对焦模式用于拍摄照片。 相机不断尝试对焦。 焦点变化的速度比FOCUS_MODE_CONTINUOUS_VIDEO更具侵略性。 自动对焦在参数设置时开始。

应用程序可以在此模式下调用autoFocus(AutoFocusCallback) 如果自动对焦正在扫描中,则焦点回调将在完成时返回。 如果自动对焦未扫描,焦点回调将立即返回一个布尔值,指示焦点是否清晰。 应用程序可以决定是要立即拍摄照片还是将对焦模式更改为自动,并运行完整的自动对焦周期。 自动对焦后,焦点位置锁定。 如果应用程序想要恢复连续对焦,则必须调用cancelAutoFocus。 重新启动预览将不会恢复连续的自动对焦。 要停止连续对焦,应用程序应将对焦模式更改为其他模式。

也可以看看:

常数值:“连续图片”

FOCUS_MODE_CONTINUOUS_VIDEO

Added in API level 9
String FOCUS_MODE_CONTINUOUS_VIDEO

适用于视频录制的连续自动对焦模式。 相机不断尝试对焦。 这是视频录制的最佳选择,因为焦点变化平稳。 应用程序仍然可以在此模式下调用takePicture(Camera.ShutterCallback, Camera.PictureCallback, Camera.PictureCallback) ,但主题可能不重点。 自动对焦在参数设置时开始。

由于API级别14,应用程序可以在此模式下调用autoFocus(AutoFocusCallback) 焦点回调将立即返回一个布尔值,指示焦点是否清晰。 自动对焦后,焦点位置锁定。 如果应用程序想要恢复连续对焦,则必须调用cancelAutoFocus。 重新启动预览将不会恢复连续的自动对焦。 要停止连续对焦,应用程序应将对焦模式更改为其他模式。

也可以看看:

常数值:“连续视频”

FOCUS_MODE_EDOF

Added in API level 8
String FOCUS_MODE_EDOF

扩展景深(EDOF)。 聚焦是数字化和连续完成的。 在这种模式下,应用程序不应该调用autoFocus(AutoFocusCallback)

常数值:“edof”

FOCUS_MODE_FIXED

Added in API level 5
String FOCUS_MODE_FIXED

重点是固定的。 如果焦点不可调节,相机始终处于此模式。 如果相机具有自动对焦功能,此模式可以固定焦距,通常在超焦距范围内。 应用程序不应在此模式下调用autoFocus(AutoFocusCallback)

常数值:“固定”

FOCUS_MODE_INFINITY

Added in API level 5
String FOCUS_MODE_INFINITY

焦点设置在无穷远处。 在这种模式下,应用程序不应该调用autoFocus(AutoFocusCallback)

常数值:“无限”

FOCUS_MODE_MACRO

Added in API level 5
String FOCUS_MODE_MACRO

微距(近摄)对焦模式。 应用程序应该调用autoFocus(AutoFocusCallback)以在此模式下启动焦点。

常数值:“宏”

PREVIEW_FPS_MAX_INDEX

Added in API level 9
int PREVIEW_FPS_MAX_INDEX

用于 getPreviewFpsRange(int[])getSupportedPreviewFpsRange()的最大预览fps数组索引。

常数值:1(0x00000001)

PREVIEW_FPS_MIN_INDEX

Added in API level 9
int PREVIEW_FPS_MIN_INDEX

用于 getPreviewFpsRange(int[])getSupportedPreviewFpsRange()的最小预览fps数组索引。

常量值:0(0x00000000)

SCENE_MODE_ACTION

Added in API level 5
String SCENE_MODE_ACTION

拍摄快速移动的物体。 SCENE_MODE_SPORTS相同。

常数值:“动作”

SCENE_MODE_AUTO

Added in API level 5
String SCENE_MODE_AUTO

场景模式关闭。

常数值:“自动”

SCENE_MODE_BARCODE

Added in API level 8
String SCENE_MODE_BARCODE

应用程序正在寻找条形码。 相机驱动程序将针对条码读取进行优化。

常数值:“条形码”

SCENE_MODE_BEACH

Added in API level 5
String SCENE_MODE_BEACH

在沙滩上拍照。

恒定值:“沙滩”

SCENE_MODE_CANDLELIGHT

Added in API level 5
String SCENE_MODE_CANDLELIGHT

捕捉蜡烛点亮的场景的自然暖色。

恒定值:“烛光”

SCENE_MODE_FIREWORKS

Added in API level 5
String SCENE_MODE_FIREWORKS

用于拍摄烟花汇演。

常数值:“烟火”

SCENE_MODE_HDR

Added in API level 17
String SCENE_MODE_HDR

使用高动态范围成像技术捕捉场景。 与常规捕捉相比,相机将返回具有扩展动态范围的图像。 捕获这样的图像可能需要比常规捕获更长的时间。

常数值:“hdr”

SCENE_MODE_LANDSCAPE

Added in API level 5
String SCENE_MODE_LANDSCAPE

拍摄远处的物体。

常数值:“风景”

SCENE_MODE_NIGHT

Added in API level 5
String SCENE_MODE_NIGHT

晚上拍照。

恒定值:“晚上”

SCENE_MODE_NIGHT_PORTRAIT

Added in API level 5
String SCENE_MODE_NIGHT_PORTRAIT

晚上拍人照。

恒值:“夜景”

SCENE_MODE_PARTY

Added in API level 5
String SCENE_MODE_PARTY

采取室内低光照射。

常值:“派对”

SCENE_MODE_PORTRAIT

Added in API level 5
String SCENE_MODE_PORTRAIT

拍人照片。

常数值:“肖像”

SCENE_MODE_SNOW

Added in API level 5
String SCENE_MODE_SNOW

在雪地上拍照。

恒值:“雪”

SCENE_MODE_SPORTS

Added in API level 5
String SCENE_MODE_SPORTS

拍摄快速移动的物体。 SCENE_MODE_ACTION相同。

常值:“运动”

SCENE_MODE_STEADYPHOTO

Added in API level 5
String SCENE_MODE_STEADYPHOTO

避免模糊的图片(例如,由于握手)。

常数值:“steadyphoto”

SCENE_MODE_SUNSET

Added in API level 5
String SCENE_MODE_SUNSET

拍日落照片。

恒定值:“日落”

SCENE_MODE_THEATRE

Added in API level 5
String SCENE_MODE_THEATRE

在剧院拍照。 闪光灯熄灭。

常值:“剧场”

WHITE_BALANCE_AUTO

Added in API level 5
String WHITE_BALANCE_AUTO

常数值:“自动”

WHITE_BALANCE_CLOUDY_DAYLIGHT

Added in API level 5
String WHITE_BALANCE_CLOUDY_DAYLIGHT

常数值:“阴天”

WHITE_BALANCE_DAYLIGHT

Added in API level 5
String WHITE_BALANCE_DAYLIGHT

常数值:“日光”

WHITE_BALANCE_FLUORESCENT

Added in API level 5
String WHITE_BALANCE_FLUORESCENT

常数值:“荧光灯”

WHITE_BALANCE_INCANDESCENT

Added in API level 5
String WHITE_BALANCE_INCANDESCENT

恒定值:“白炽灯”

WHITE_BALANCE_SHADE

Added in API level 5
String WHITE_BALANCE_SHADE

常数值:“阴影”

WHITE_BALANCE_TWILIGHT

Added in API level 5
String WHITE_BALANCE_TWILIGHT

常值:“暮光之城”

WHITE_BALANCE_WARM_FLUORESCENT

Added in API level 5
String WHITE_BALANCE_WARM_FLUORESCENT

恒定值:“温暖的荧光”

Public methods

flatten

Added in API level 1
String flatten ()

创建一个包含此Parameters对象中设置的所有参数的单个字符串。

unflatten(String)方法正好相反。

Returns
String a String with all values from this Parameters object, in semi-colon delimited key-value pairs

get

Added in API level 1
String get (String key)

返回String参数的值。

Parameters
key String: the key name for the parameter
Returns
String the String value of the parameter

getAntibanding

Added in API level 5
String getAntibanding ()

获取当前的抗菌设置。

Returns
String current antibanding. null if antibanding setting is not supported.

也可以看看:

getAutoExposureLock

Added in API level 14
boolean getAutoExposureLock ()

获取自动曝光锁的状态。 应用程序应该在使用此方法之前检查isAutoExposureLockSupported() 有关setAutoExposureLock(boolean)的详细信息,请参阅setAutoExposureLock(boolean)

Returns
boolean State of the auto-exposure lock. Returns true if auto-exposure is currently locked, and false otherwise.

也可以看看:

getAutoWhiteBalanceLock

Added in API level 14
boolean getAutoWhiteBalanceLock ()

获取自动白平衡锁定的状态。 在使用此方法之前,应用程序应检查isAutoWhiteBalanceLockSupported() 有关该锁的详细信息,请参阅setAutoWhiteBalanceLock(boolean)

Returns
boolean State of the auto-white balance lock. Returns true if auto-white balance is currently locked, and false otherwise.

也可以看看:

getColorEffect

Added in API level 5
String getColorEffect ()

获取当前的颜色效果设置。

Returns
String current color effect. null if color effect setting is not supported.

也可以看看:

getExposureCompensation

Added in API level 8
int getExposureCompensation ()

获取当前的暴露补偿指数。

Returns
int current exposure compensation index. The range is getMinExposureCompensation() to getMaxExposureCompensation(). 0 means exposure is not adjusted.

getExposureCompensationStep

Added in API level 8
float getExposureCompensationStep ()

获取曝光补偿步骤。

Returns
float exposure compensation step. Applications can get EV by multiplying the exposure compensation index and step. Ex: if exposure compensation index is -6 and step is 0.333333333, EV is -2.

getFlashMode

Added in API level 5
String getFlashMode ()

获取当前的闪光模式设置。

Returns
String current flash mode. null if flash mode setting is not supported.

也可以看看:

getFocalLength

Added in API level 8
float getFocalLength ()

获取相机的焦距(以毫米为单位)。

Returns
float the focal length. This method will always return a valid value.

getFocusAreas

Added in API level 14
List<Camera.Area> getFocusAreas ()

获取当前的重点领域。 相机驱动程序使用这些区域来决定焦点。

在使用此API或setFocusAreas(List)之前,应用程序应首先调用getMaxNumFocusAreas()以了解最大重点区域数量。 如果值为0,则不支持焦点区域。

每个焦点区域都是一个具有指定重量的矩形。 方向与传感器方向有关,也就是传感器看到的方向。 方向不受setDisplayOrientation(int)的旋转或镜像setDisplayOrientation(int) 矩形的坐标范围从-1000到1000.(-1000,-1000)是左上角的点。 (1000,1000)是右下角的点。 焦点区域的宽度和高度不能为0或负值。

重量必须介于1到1000之间。重量应解释为每像素重量 - 该区域中的所有像素都具有指定的重量。 这意味着与较大面积相同重量的小面积对于聚焦的影响将小于较大面积。 焦点区域可以部分重叠,司机会在重叠区域添加权重。

null焦点区域列表的特殊情况意味着驾驶员可以自由选择焦点目标。 例如,驾驶员可以使用更多的信号来选择焦点区域并动态改变它们。 如果应用程序希望驱动程序完全控制对焦,则应用程序可以将焦点区域列表设置为null

重点领域是相对于当前视野( getZoom() )。 无论缩放级别如何,(-1000,-1000)代表当前可见摄像机帧的顶部。 即使使用变焦,焦点区域也不能设置在当前视野外。

对焦区域只有影响,如果当前的对焦模式为 FOCUS_MODE_AUTOFOCUS_MODE_MACROFOCUS_MODE_CONTINUOUS_VIDEO ,或 FOCUS_MODE_CONTINUOUS_PICTURE

Returns
List<Camera.Area> a list of current focus areas

getFocusDistances

Added in API level 9
void getFocusDistances (float[] output)

获取从相机到物体看起来聚焦的位置的距离。 物体在最佳焦距处最锐利。 景深是远焦点距离减去焦距附近。

焦距可以调用后更改autoFocus(AutoFocusCallback)cancelAutoFocus() ,或startPreview() 应用程序可以随时调用getParameters()并使用此方法获取最新的焦点距离。 如果对焦模式为FOCUS_MODE_CONTINUOUS_VIDEO,则焦距可能会随时变化。

此方法旨在估计相机和拍摄对象之间的距离。 自动对焦后,被摄体距离可能在近距离和远距离范围内。 但是,精度取决于相机硬件,自动对焦算法,对焦区域和场景。 该错误可能很大,应该仅用作参考。

远对焦距离> =最佳对焦距离> =近对焦距离。 如果焦距为无穷大,则值将为Float.POSITIVE_INFINITY

Parameters
output float: focus distances in meters. output must be a float array with three elements. Near focus distance, optimal focus distance, and far focus distance will be filled in the array.

也可以看看:

getFocusMode

Added in API level 5
String getFocusMode ()

获取当前的对焦模式设置。

Returns
String current focus mode. This method will always return a non-null value. Applications should call autoFocus(AutoFocusCallback) to start the focus if focus mode is FOCUS_MODE_AUTO or FOCUS_MODE_MACRO.

也可以看看:

getHorizontalViewAngle

Added in API level 8
float getHorizontalViewAngle ()

以度数获取水平视角。

Returns
float horizontal angle of view. This method will always return a valid value.

getInt

Added in API level 1
int getInt (String key)

返回整数参数的值。

Parameters
key String: the key name for the parameter
Returns
int the int value of the parameter

getJpegQuality

Added in API level 5
int getJpegQuality ()

返回JPEG图片的质量设置。

Returns
int the JPEG picture quality setting.

getJpegThumbnailQuality

Added in API level 5
int getJpegThumbnailQuality ()

返回Jpeg图片中EXIF缩略图的质量设置。

Returns
int the JPEG quality setting of the EXIF thumbnail.

getJpegThumbnailSize

Added in API level 5
Camera.Size getJpegThumbnailSize ()

返回Jpeg图片中EXIF缩略图的尺寸。

Returns
Camera.Size a Size object with the height and width setting for the EXIF thumbnails

getMaxExposureCompensation

Added in API level 8
int getMaxExposureCompensation ()

获取最大曝光补偿指数。

Returns
int maximum exposure compensation index (>=0). If both this method and getMinExposureCompensation() return 0, exposure compensation is not supported.

getMaxNumDetectedFaces

Added in API level 14
int getMaxNumDetectedFaces ()

获取支持的最大检测面数。 这是从Camera.FaceDetectionListener返回的列表的最大长度。 如果返回值为0,则不支持指定类型的脸部检测。

Returns
int the maximum number of detected face supported by the camera.

也可以看看:

getMaxNumFocusAreas

Added in API level 14
int getMaxNumFocusAreas ()

获取支持的最大焦点区域数量。 这是setFocusAreas(List)getFocusAreas()列表的最大长度。

Returns
int the maximum number of focus areas supported by the camera.

也可以看看:

getMaxNumMeteringAreas

Added in API level 14
int getMaxNumMeteringAreas ()

获取支持的测量区域的最大数量。 这是setMeteringAreas(List)getMeteringAreas()列表的最大长度。

Returns
int the maximum number of metering areas supported by the camera.

也可以看看:

getMaxZoom

Added in API level 8
int getMaxZoom ()

获取快照允许的最大缩放值。 这是应用程序可以设置为setZoom(int) 在使用此方法之前,应用程序应该调用isZoomSupported() 此值可能会在不同的预览大小中更改。 应用程序应该在设置预览大小后再次调用它。

Returns
int the maximum zoom value supported by the camera.

getMeteringAreas

Added in API level 14
List<Camera.Area> getMeteringAreas ()

获取当前的测光区域。 相机驱动程序使用这些区域来决定曝光。

在使用此API或setMeteringAreas(List)之前,应用程序应首先调用getMaxNumMeteringAreas()以了解计量区域的最大数量。 如果该值为0,则不支持测光区域。

每个测光区域都是一个具有指定重量的矩形。 方向与传感器方向有关,也就是传感器看到的方向。 方向不受setDisplayOrientation(int)的旋转或镜像setDisplayOrientation(int) 矩形的坐标范围从-1000到1000.(-1000,-1000)是左上角的点。 (1000,1000)是右下角的点。 计量区域的宽度和高度不能为0或负值。

重量必须在1到1000之间,并且表示该区域中每个像素的权重。 这意味着与较小面积相同重量的大型计量区域将对计量结果产生更大的影响。 测量区域可以部分重叠,司机将在重叠区域添加权重。

null测量区域列表的一个null意味着驾驶员可以自由选择仪表。 例如,驾驶员可以使用更多的信号来选择测量区域并动态改变它们。 如果应用程序希望驱动程序完全控制测光,则应用程序可以将测光区域列表设置为null

测光区域相对于当前视野( getZoom() )。 无论缩放级别如何,(-1000,-1000)代表当前可见摄像机帧的顶部。 即使使用变焦,测光区域也不能设置在当前视场之外。

无论测量区域是什么,最终的曝光量都由 setExposureCompensation(int)补偿。

Returns
List<Camera.Area> a list of current metering areas

getMinExposureCompensation

Added in API level 8
int getMinExposureCompensation ()

获取最低曝光补偿指数。

Returns
int minimum exposure compensation index (<=0). If both this method and getMaxExposureCompensation() return 0, exposure compensation is not supported.

getPictureFormat

Added in API level 1
int getPictureFormat ()

返回图片的图片格式。

Returns
int the picture format

也可以看看:

getPictureSize

Added in API level 1
Camera.Size getPictureSize ()

返回图片的尺寸设置。

Returns
Camera.Size a Size object with the height and width setting for pictures

getPreferredPreviewSizeForVideo

Added in API level 11
Camera.Size getPreferredPreviewSizeForVideo ()

返回视频录制的首选或推荐预览大小(宽度和高度)(以像素为单位)。 摄像机应用程序应将预览大小设置为不大于首选预览大小的值。 换句话说,预览尺寸的宽度和高度的乘积不应大于首选预览尺寸的乘积。 另外,我们建议选择与要录制的视频分辨率相同的预览尺寸。

Returns
Camera.Size the preferred preview size (width and height) in pixels for video recording if getSupportedVideoSizes() does not return null; otherwise, null is returned.

也可以看看:

getPreviewFormat

Added in API level 1
int getPreviewFormat ()

返回从 Camera.PreviewCallback获得的预览帧的图像格式。

Returns
int the preview format.

也可以看看:

getPreviewFpsRange

Added in API level 9
void getPreviewFpsRange (int[] range)

返回当前最小和最大预览fps。 这些值是由getSupportedPreviewFpsRange()返回的元素getSupportedPreviewFpsRange()

Parameters
range int
Returns
void range the minimum and maximum preview fps (scaled by 1000).

也可以看看:

getPreviewFrameRate

Added in API level 1
int getPreviewFrameRate ()

此方法在API级别9中已弃用。
getPreviewFpsRange(int[])取代

返回接收预览帧的速率设置。 这是目标帧速率。 实际的帧速率取决于驱动程序。

Returns
int the frame rate setting (frames per second)

getPreviewSize

Added in API level 1
Camera.Size getPreviewSize ()

返回预览图片的尺寸设置。

Returns
Camera.Size a Size object with the width and height setting for the preview picture

getSupportedAntibanding

Added in API level 5
List<String> getSupportedAntibanding ()

获取支持的抗菌值。

Returns
List<String> a list of supported antibanding values. null if antibanding setting is not supported.

也可以看看:

getSupportedColorEffects

Added in API level 5
List<String> getSupportedColorEffects ()

获取支持的颜色效果。

Returns
List<String> a list of supported color effects. null if color effect setting is not supported.

也可以看看:

getSupportedFlashModes

Added in API level 5
List<String> getSupportedFlashModes ()

获取支持的闪光灯模式。

Returns
List<String> a list of supported flash modes. null if flash mode setting is not supported.

也可以看看:

getSupportedFocusModes

Added in API level 5
List<String> getSupportedFocusModes ()

获取支持的对焦模式。

Returns
List<String> a list of supported focus modes. This method will always return a list with at least one element.

也可以看看:

getSupportedJpegThumbnailSizes

Added in API level 8
List<Camera.Size> getSupportedJpegThumbnailSizes ()

获取支持的jpeg缩略图大小。

Returns
List<Camera.Size> a list of Size object. This method will always return a list with at least two elements. Size 0,0 (no thumbnail) is always supported.

getSupportedPictureFormats

Added in API level 5
List<Integer> getSupportedPictureFormats ()

获取支持的图片格式。

Returns
List<Integer> supported picture formats. This method will always return a list with at least one element.

也可以看看:

getSupportedPictureSizes

Added in API level 5
List<Camera.Size> getSupportedPictureSizes ()

获取支持的图片大小。

Returns
List<Camera.Size> a list of supported picture sizes. This method will always return a list with at least one element.

getSupportedPreviewFormats

Added in API level 5
List<Integer> getSupportedPreviewFormats ()

获取支持的预览格式。 始终支持NV21 自API级别12以来,始终支持YV12

Returns
List<Integer> a list of supported preview formats. This method will always return a list with at least one element.

也可以看看:

getSupportedPreviewFpsRange

Added in API level 9
List<int[]> getSupportedPreviewFpsRange ()

获取支持的预览fps(帧每秒)范围。 每个范围都包含最低fps和最高fps。 如果最小fps等于最大fps,则摄像机以固定帧速率输出帧。 如果不是,则摄像机以自动帧速率输出帧。 实际帧速率在最小值和最大值之间波动。 这些值乘以1000并以整数表示。 例如,如果帧速率是每秒26.623帧,则该值是26623。

Returns
List<int[]> a list of supported preview fps ranges. This method returns a list with at least one element. Every element is an int array of two values - minimum fps and maximum fps. The list is sorted from small to large (first by maximum fps and then minimum fps).

也可以看看:

getSupportedPreviewFrameRates

Added in API level 5
List<Integer> getSupportedPreviewFrameRates ()

此方法在API级别9中已弃用。
getSupportedPreviewFpsRange()取代

获取支持的预览帧速率。

Returns
List<Integer> a list of supported preview frame rates. null if preview frame rate setting is not supported.

getSupportedPreviewSizes

Added in API level 5
List<Camera.Size> getSupportedPreviewSizes ()

获取支持的预览大小。

Returns
List<Camera.Size> a list of Size object. This method will always return a list with at least one element.

getSupportedSceneModes

Added in API level 5
List<String> getSupportedSceneModes ()

获取支持的场景模式。

Returns
List<String> a list of supported scene modes. null if scene mode setting is not supported.

也可以看看:

getSupportedVideoSizes

Added in API level 11
List<Camera.Size> getSupportedVideoSizes ()

获取MediaRecorder可以使用的支持的视频帧大小。

如果返回的列表不为空,则返回的列表将包含至少一个Size,并且如果摄像机用作视频源,则返回列表中的其中一个大小必须传递给摄像机应用程序的MediaRecorder.setVideoSize()。 在这种情况下,预览的大小可能与视频录制过程中录制的视频的分辨率不同。

Returns
List<Camera.Size> a list of Size object if camera has separate preview and video output; otherwise, null is returned.

也可以看看:

getSupportedWhiteBalance

Added in API level 5
List<String> getSupportedWhiteBalance ()

获取支持的白平衡。

Returns
List<String> a list of supported white balance. null if white balance setting is not supported.

也可以看看:

getVerticalViewAngle

Added in API level 8
float getVerticalViewAngle ()

以度数获得垂直视角。

Returns
float vertical angle of view. This method will always return a valid value.

getVideoStabilization

Added in API level 15
boolean getVideoStabilization ()

获取视频稳定的当前状态。 有关视频稳定性的详细信息,请参阅setVideoStabilization(boolean)

Returns
boolean true if video stabilization is enabled

也可以看看:

getWhiteBalance

Added in API level 5
String getWhiteBalance ()

获取当前的白平衡设置。

Returns
String current white balance. null if white balance setting is not supported.

也可以看看:

getZoom

Added in API level 8
int getZoom ()

获取当前缩放值。 这也适用于平稳缩放进行中。 使用此方法之前,应用程序应检查isZoomSupported()

Returns
int the current zoom value. The range is 0 to getMaxZoom(). 0 means the camera is not zoomed.

getZoomRatios

Added in API level 8
List<Integer> getZoomRatios ()

获取所有缩放值的缩放比例。 在使用此方法之前,应用程序应检查isZoomSupported()

Returns
List<Integer> the zoom ratios in 1/100 increments. Ex: a zoom of 3.2x is returned as 320. The number of elements is getMaxZoom() + 1. The list is sorted from small to large. The first element is always 100. The last element is the zoom ratio of the maximum zoom value.

isAutoExposureLockSupported

Added in API level 14
boolean isAutoExposureLockSupported ()

如果支持自动曝光锁定,则返回true。 在尝试锁定自动曝光之前,应用程序应调用此设置。 有关setAutoExposureLock(boolean)的详细信息,请参阅setAutoExposureLock(boolean)

Returns
boolean true if auto-exposure lock is supported.

也可以看看:

isAutoWhiteBalanceLockSupported

Added in API level 14
boolean isAutoWhiteBalanceLockSupported ()

如果支持自动白平衡锁定,则返回true。 在尝试锁定自动白平衡之前,应用程序应调用此设置。 有关该锁的详细信息,请参阅setAutoWhiteBalanceLock(boolean)

Returns
boolean true if auto-white balance lock is supported.

也可以看看:

isSmoothZoomSupported

Added in API level 8
boolean isSmoothZoomSupported ()

如果支持平滑缩放,则返回true。 应用程序应在使用其他平滑缩放方法之前调用此方法

Returns
boolean true if smooth zoom is supported.

isVideoSnapshotSupported

Added in API level 14
boolean isVideoSnapshotSupported ()

如果支持视频快照,则返回true。 也就是说,应用程序在录制过程中可以调用takePicture(Camera.ShutterCallback, Camera.PictureCallback, Camera.PictureCallback, Camera.PictureCallback) 拍摄照片后,应用程序不需要拨打startPreview() 预览将仍然有效。 除此之外,在拍摄过程中拍摄照片与正常拍摄照片相同。 与takePicture相关的所有设置和方法的工作原理完全相同。 例: getPictureSize()getSupportedPictureSizes()setJpegQuality(int)setRotation(int) ,和等等的图象将有EXIF报头。 FLASH_MODE_AUTOFLASH_MODE_ON也仍然有效,但视频会记录闪光灯。

应用程序可以将快门回叫设置为空以避免快门声。 还建议将原始图片和视图回调设置为空以避免预览显示的中断。

所记录的视频的视野可能与所拍摄的图片的视野不同。 视频快照的最大大小可能小于常规静态捕捉的最大大小。 如果当前图片尺寸设置为高于视频快照可以支持的尺寸,则会以最大支持尺寸捕获图片。

Returns
boolean true if video snapshot is supported.

isVideoStabilizationSupported

Added in API level 15
boolean isVideoStabilizationSupported ()

如果支持视频稳定,则返回true。 有关视频稳定性的详细信息,请参阅setVideoStabilization(boolean)

Returns
boolean true if video stabilization is supported

也可以看看:

isZoomSupported

Added in API level 8
boolean isZoomSupported ()

如果支持缩放,则返回true。 应用程序应该在使用其他缩放方法之前调用它

Returns
boolean true if zoom is supported.

remove

Added in API level 1
void remove (String key)

Parameters
key String

removeGpsData

Added in API level 5
void removeGpsData ()

从参数中删除GPS纬度,经度,高度和时间戳。

set

Added in API level 1
void set (String key, 
                String value)

设置一个String参数。

Parameters
key String: the key name for the parameter
value String: the String value of the parameter

set

Added in API level 1
void set (String key, 
                int value)

设置一个整数参数。

Parameters
key String: the key name for the parameter
value int: the int value of the parameter

setAntibanding

Added in API level 5
void setAntibanding (String antibanding)

设置抗菌。

Parameters
antibanding String: new antibanding value.

也可以看看:

setAutoExposureLock

Added in API level 14
void setAutoExposureLock (boolean toggle)

设置自动曝光锁定状态。 使用此方法之前,应用程序应检查isAutoExposureLockSupported()

如果设置为true,相机自动曝光例程将立即暂停,直到锁定设置为false。 自动曝光锁定时,曝光补偿设置更改仍然生效。

如果自动曝光已被锁定,则将其设置为true将不起作用(驱动程序不会重新计算曝光值)。

停止预览与 stopPreview() ,或触发静态图像捕捉与 takePicture(Camera.ShutterCallback, Camera.PictureCallback, Camera.PictureCallback) ,不会改变锁。

例如,曝光补偿,自动曝光锁定和自动白平衡锁定可用于拍摄曝光包围的图像。

相机release()被调用后,包括锁定状态在内的自动曝光状态将不会保持。 open()之后锁定自动曝光,但在第一次调用startPreview()将不允许自动曝光程序运行,并可能导致严重曝光过度或曝光不足的图像。

Parameters
toggle boolean: new state of the auto-exposure lock. True means that auto-exposure is locked, false means that the auto-exposure routine is free to run normally.

也可以看看:

setAutoWhiteBalanceLock

Added in API level 14
void setAutoWhiteBalanceLock (boolean toggle)

设置自动白平衡锁定状态。 在使用此方法之前,应用程序应检查isAutoWhiteBalanceLockSupported()

如果设置为true,相机自动白平衡例程将立即暂停,直到锁定设置为false。

如果自动白平衡已经锁定,再次将其设置为true将不起作用(驱动程序不会重新计算白平衡值)。

停止预览与 stopPreview() ,或触发静态图像捕捉与 takePicture(Camera.ShutterCallback, Camera.PictureCallback, Camera.PictureCallback) ,不会改变的锁。

如果设置了白平衡模式,则使用 setWhiteBalance(String)更改白平衡模式会释放自动白平衡锁。

例如,曝光补偿,自动曝光锁定和自动白平衡锁定可用于拍摄曝光包围的图像。 摄像机release()被调用后,自动白平衡状态(包括锁定状态)将不会保持。 锁定后自动白平衡open() ,但在第一次调用之前startPreview()不允许自动白平衡程序在所有运行,并可能导致拍摄的图像严重不正确的颜色。

Parameters
toggle boolean: new state of the auto-white balance lock. True means that auto-white balance is locked, false means that the auto-white balance routine is free to run normally.

也可以看看:

setColorEffect

Added in API level 5
void setColorEffect (String value)

设置当前的颜色效果设置。

Parameters
value String: new color effect.

也可以看看:

setExposureCompensation

Added in API level 8
void setExposureCompensation (int value)

设置曝光补偿索引。

Parameters
value int: exposure compensation index. The valid value range is from getMinExposureCompensation() (inclusive) to getMaxExposureCompensation() (inclusive). 0 means exposure is not adjusted. Application should call getMinExposureCompensation and getMaxExposureCompensation to know if exposure compensation is supported.

setFlashMode

Added in API level 5
void setFlashMode (String value)

设置闪光灯模式。

Parameters
value String: flash mode.

也可以看看:

setFocusAreas

Added in API level 14
void setFocusAreas (List<Camera.Area> focusAreas)

设置重点领域。 有关文档,请参见getFocusAreas()

Parameters
focusAreas List: the focus areas

也可以看看:

setFocusMode

Added in API level 5
void setFocusMode (String value)

设置对焦模式。

Parameters
value String: focus mode.

也可以看看:

setGpsAltitude

Added in API level 5
void setGpsAltitude (double altitude)

设置GPS高度。 这将被存储在JPEG EXIF标头中。

Parameters
altitude double: GPS altitude in meters.

setGpsLatitude

Added in API level 5
void setGpsLatitude (double latitude)

设置GPS纬度坐标。 这将被存储在JPEG EXIF标头中。

Parameters
latitude double: GPS latitude coordinate.

setGpsLongitude

Added in API level 5
void setGpsLongitude (double longitude)

设置GPS经度坐标。 这将被存储在JPEG EXIF标头中。

Parameters
longitude double: GPS longitude coordinate.

setGpsProcessingMethod

Added in API level 8
void setGpsProcessingMethod (String processing_method)

设置GPS处理方法。 该方法将存储在JPEG EXIF标头中长达31个字节的UTF-8字符串中。

Parameters
processing_method String: The processing method to get this location.

setGpsTimestamp

Added in API level 5
void setGpsTimestamp (long timestamp)

设置GPS时间戳。 这将被存储在JPEG EXIF标头中。

Parameters
timestamp long: GPS timestamp (UTC in seconds since January 1, 1970).

setJpegQuality

Added in API level 5
void setJpegQuality (int quality)

设置拍摄图片的Jpeg质量。

Parameters
quality int: the JPEG quality of captured picture. The range is 1 to 100, with 100 being the best.

setJpegThumbnailQuality

Added in API level 5
void setJpegThumbnailQuality (int quality)

设置JPEG图片中EXIF缩略图的质量。

Parameters
quality int: the JPEG quality of the EXIF thumbnail. The range is 1 to 100, with 100 being the best.

setJpegThumbnailSize

Added in API level 5
void setJpegThumbnailSize (int width, 
                int height)

在Jpeg图片中设置EXIF缩略图的尺寸。 如果应用程序将宽度和高度都设置为0,EXIF将不包含缩略图。

应用程序需要考虑显示方向。 请参阅setPreviewSize(int, int)以供参考。

Parameters
width int: the width of the thumbnail, in pixels
height int: the height of the thumbnail, in pixels

也可以看看:

setMeteringAreas

Added in API level 14
void setMeteringAreas (List<Camera.Area> meteringAreas)

设置测光区域。 有关文档,请参见getMeteringAreas()

Parameters
meteringAreas List: the metering areas

也可以看看:

setPictureFormat

Added in API level 1
void setPictureFormat (int pixel_format)

设置图片的图片格式。

Parameters
pixel_format int: the desired picture format (ImageFormat.NV21, ImageFormat.RGB_565, or ImageFormat.JPEG)

也可以看看:

setPictureSize

Added in API level 1
void setPictureSize (int width, 
                int height)

设置图片的尺寸。

应用程序需要考虑显示方向。 请参阅setPreviewSize(int, int)以供参考。

Parameters
width int: the width for pictures, in pixels
height int: the height for pictures, in pixels

也可以看看:

setPreviewFormat

Added in API level 1
void setPreviewFormat (int pixel_format)

设置预览图片的图像格式。

如果从未调用过,则默认格式为 NV21 ,它使用NV21编码格式。

使用 getSupportedPreviewFormats()获取可用预览格式的列表。

强烈建议使用 NV21YV12 ,因为它们受所有相机设备支持。

对于YV12,接收到的图像缓冲区不必紧密排列,因为每行像素数据的末尾可能会有填充,如YV12 对于相机回调数据,可以假定Y和UV数据的步幅是尽可能最小的,以满足对准要求。 也就是说,如果预览大小是宽度x高度 ,则以下等式描述Y平面的行y的开始和U和V平面的行c的缓冲区索引:

yStride   = (int) ceil(width / 16.0) * 16;
 uvStride  = (int) ceil( (yStride / 2) / 16.0) * 16;
 ySize     = yStride * height;
 uvSize    = uvStride * height / 2;
 yRowIndex = yStride * y;
 uRowIndex = ySize + uvSize + uvStride * c;
 vRowIndex = ySize + uvStride * c;
 size      = ySize + uvSize * 2;
 

Parameters
pixel_format int: the desired preview picture format, defined by one of the ImageFormat constants. (E.g., ImageFormat.NV21 (default), or ImageFormat.YV12)

也可以看看:

setPreviewFpsRange

Added in API level 9
void setPreviewFpsRange (int min, 
                int max)

设置最小和最大预览fps。 这控制了Camera.PreviewCallback收到的预览帧的速率。 最小和最大预览fps必须是来自getSupportedPreviewFpsRange()其中一个元素。

Parameters
min int: the minimum preview fps (scaled by 1000).
max int: the maximum preview fps (scaled by 1000).
Throws
RuntimeException if fps range is invalid.

也可以看看:

setPreviewFrameRate

Added in API level 1
void setPreviewFrameRate (int fps)

此方法在API级别9中已弃用。
setPreviewFpsRange(int, int)取代

设置接收预览帧的速率。 这是目标帧速率。 实际的帧速率取决于驱动程序。

Parameters
fps int: the frame rate (frames per second)

setPreviewSize

Added in API level 1
void setPreviewSize (int width, 
                int height)

设置预览图片的尺寸。 如果预览已经开始,应用程序应该在更改预览大小之前先停止预览。 宽度和高度的侧面基于相机的方向。 也就是说,预览大小是按显示方向旋转之前的大小。 因此,应用程序需要在设置预览大小时考虑显示方向。 例如,假设相机同时支持480x320和320x480预览尺寸。 该应用程序需要3:2预览比例。 如果显示方向设置为0或180,则应将预览尺寸设置为480x320。 如果显示方向设置为90或270,则应将预览尺寸设置为320x480。 设置图片尺寸和缩略图尺寸时,还应考虑显示方向。

Parameters
width int: the width of the pictures, in pixels
height int: the height of the pictures, in pixels

也可以看看:

setRecordingHint

Added in API level 14
void setRecordingHint (boolean hint)

设置录制模式提示。 这告诉相机应用程序的目的是记录视频start() ,而不是拍摄静止图片takePicture(Camera.ShutterCallback, Camera.PictureCallback, Camera.PictureCallback, Camera.PictureCallback) 使用此提示可以使MediaRecorder.start()启动得更快,或者输出上的毛刺更少。 这应该在开始预览以获得最佳结果之前调用,但可以在预览处于活动状态时进行更改。 默认值是false。 当提示为true时,应用程序仍然可以调用takePicture(),或者当提示为false时调用MediaRecorder.start()。 但表现可能会更糟。

Parameters
hint boolean: true if the apps intend to record videos using MediaRecorder.

setRotation

Added in API level 5
void setRotation (int rotation)

设置相对于摄像机方向的顺时针旋转角度。 这会影响从JPEG Camera.PictureCallback返回的图片。 相机驱动程序可以在不旋转图片的情况下在EXIF标头中设置方向。 或者驱动程序可能会旋转图片和EXIF缩略图。 如果旋转Jpeg图片,则EXIF标题中的方向将丢失或1(第0行为顶部,第#0列为左侧)。

如果应用程序想旋转图片以匹配用户看到的方向,应用程序应该使用OrientationEventListenerCamera.CameraInfo OrientationEventListener的值与设备的自然方向有关。 CameraInfo.orientation是相机方向与自然设备方向之间的角度。 两者的总和就是后置摄像头的旋转角度。 两者的区别在于前置摄像头的旋转角度。 请注意,前置摄像头的JPEG图像不会像预览显示中那样被镜像。

例如,假设设备的自然方向是纵向。 该设备顺时针旋转270度,因此设备方向为270.假设背面照相机传感器安装在横向上,并且照相机传感器的顶部与自然方向的显示器右边缘对齐。 因此相机方向为90.旋转角度应设为0(270 + 90)。

参考代码如下。

 public void onOrientationChanged(int orientation) {
     if (orientation == ORIENTATION_UNKNOWN) return;
     android.hardware.Camera.CameraInfo info =
            new android.hardware.Camera.CameraInfo();
     android.hardware.Camera.getCameraInfo(cameraId, info);
     orientation = (orientation + 45) / 90 * 90;
     int rotation = 0;
     if (info.facing == CameraInfo.CAMERA_FACING_FRONT) {
         rotation = (info.orientation - orientation + 360) % 360;
     } else {  // back-facing camera
         rotation = (info.orientation + orientation) % 360;
     }
     mParameters.setRotation(rotation);
 }
 

Parameters
rotation int: The rotation angle in degrees relative to the orientation of the camera. Rotation can only be 0, 90, 180 or 270.
Throws
IllegalArgumentException if rotation value is invalid.

也可以看看:

setSceneMode

Added in API level 5
void setSceneMode (String value)

设置场景模式。 更改场景模式可能会覆盖其他参数(如闪光模式,对焦模式,白平衡)。 例如,假设最初的闪光模式开启,并且支持的闪光模式开启/关闭。 在夜景模式下,闪光灯模式和支持的闪光灯模式可能会更改为关闭。 设置场景模式后,应用程序应调用getParameters以了解是否更改了某些参数。

Parameters
value String: scene mode.

也可以看看:

setVideoStabilization

Added in API level 15
void setVideoStabilization (boolean toggle)

启用和禁用视频稳定。 使用isVideoStabilizationSupported()来确定调用此方法是否有效。

视频稳定功能可减少由于摄像头在预览视频流和录制的视频中的移动而产生的震动,包括从预览回调中收到的数据。 它不会减少用takePicture拍摄的图像中的运动模糊。

在预览或录制处于活动状态时,可以启用和禁用视频稳定功能,但切换它可能会导致视频流中的跳转,这可能在录制的视频中不受欢迎。

Parameters
toggle boolean: Set to true to enable video stabilization, and false to disable video stabilization.

也可以看看:

setWhiteBalance

Added in API level 5
void setWhiteBalance (String value)

设置白平衡。 改变设置将释放自动白平衡锁定。 建议不要同时更改白平衡和AWB锁定。

Parameters
value String: new white balance.

也可以看看:

setZoom

Added in API level 8
void setZoom (int value)

设置当前的缩放值。 如果照相机变焦(数值> 0),实际的照片尺寸可能会小于照片尺寸设置。 Camera.PictureCallback返回图片后,应用程序可以检查实际的图片大小。 预览尺寸在缩放中保持不变。 在使用此方法之前,应用程序应检查isZoomSupported()

Parameters
value int: zoom value. The valid range is 0 to getMaxZoom().

unflatten

Added in API level 1
void unflatten (String flattened)

采用扁平化的参数串并将每个参数添加到此参数对象。

flatten()方法正好相反。

Parameters
flattened String: a String of parameters (key-value paired) that are semi-colon delimited

Hooray!