Camera2 Library没有在android中拍摄的照片上给出默认捕获声音

时间:2017-06-08 13:49:08

标签: android camera android-camera2 image-capture

大家好! 我在新的Camera2库中搜索过捕获声音,但我找不到它。我需要在拍摄图像时播放捕捉声音。和旧的hardware.camera一样,我们可以用来播放声音的shutterCallBack。如果有人知道该怎么做,请提前致谢!

1 个答案:

答案 0 :(得分:2)

在Camera2中,api仍然存在一种可用于播放快门声的回调方法

https://developer.android.com/reference/android/hardware/camera2/CameraCaptureSession.CaptureCallback.html

  

CameraCaptureSession.CaptureCallback.onCaptureStarted

在API级别21中添加 void onCaptureStarted(CameraCaptureSession session,                 CaptureRequest请求,                 很长的时间戳,                 long frameNumber) 当相机设备开始捕获请求的输出图像时,在图像曝光开始时,或者当相机设备开始处理输入图像以进行重新处理请求时,将调用此方法。

对于常规捕获请求,在帧的捕获开始时调用此回调,因此这是播放快门声音或触发UI捕获指示符的最合适时间。

提供了用于此捕获的请求,以及开始曝光的实际时间戳。对于重新处理请求,此时间戳将是输入图像的曝光开始,其与用于创建再处理请求的TotalCaptureResult的结果时间戳字段匹配。此时间戳匹配将包含在结果时间戳字段中的时间戳,以及发送到每个输出Surface的缓冲区中的时间戳。可以通过,例如,Image.getTimestamp()或getTimestamp()访问这些缓冲时间戳。包含的帧编号等于将包含在getFrameNumber()中的帧编号。

有关播放快门声相机快门或视频录制开始/停止声音的最简单方法,请参阅MediaActionSound类。

此方法的默认实现不执行任何操作。