Android音视频开发 五.Camera API 采集视频数据

使用 Camera API 采集视频数据并保存到文件,分别使用 SurfaceView、TextureView 来预览 Camera 数据,取到 NV21 的数据回调。
注: 需要权限:

一、预览 Camera 数据
做过Android开发的人一般都知道,有两种方法能够做到这一点:SurfaceView、TextureView。

下面是使用SurfaceView预览数据的方式:

Android音视频开发 五.Camera API 采集视频数据_第1张图片

下面是使用TextureView预览数据的方式:


Android音视频开发 五.Camera API 采集视频数据_第2张图片

二、取到 NV21 的数据回调
Android 中Google支持的 Camera Preview Callback的YUV常用格式有两种:一个是NV21,一个是YV12。Android一般默认使用YCbCr_420_SP的格式(NV21)。

我们可以配置数据回调的格式:
Camera.Parameters parameters = camera.getParameters();
parameters.setPreviewFormat(ImageFormat.NV21);
camera.setParameters(parameters);

通过setPreviewCallback方法监听预览的回调:

这里面的Bytes的数据就是NV21格式的数据。

你可能感兴趣的:(Android音视频开发 五.Camera API 采集视频数据)