HarmonyOS 鸿蒙Next 拍照流/录像流的二次处理流程

发布于 1周前 作者 wuwangju 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 拍照流/录像流的二次处理流程

我们在部分业务场景下,会对相机的预览流做二次处理,如果此时需要进行拍照或录像,这就需要对拍照流/录像流也做二次处理。 我们已经对预览流做过了处理,从相关的文档上: https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V13/native-camera-recording-V13

我们没有找到实际的二次处理录像流的流程,或者说示例中没有将完整的二次处理流程展现出来。从示例代码上,我们有以下问题需要咨询一下:

1、我们在拍照/录视频时,是否需要像预览流那样,将相机流拿出来处理后,再进行照片/视频的写入流程?

2、从性能上考虑,如果1是必要的话,我们能否直接将处理后的预览流数据进行照片/视频的写入流程?

3、PhotoOutput、VideoOutput的写入流程是什么样的?是直接通过Surface模式获取Surfaceid传给相机流,让相机流给编码器输入数据进行视频编码,再通过OnNewOutputBuffer回调出来写入buffer中的吗?如果是这种的话,我们应该如何在写入数据前二次处理相机流数据呢?

4、如果可以的话,希望能提供一份相机流拍照/录像的demo和视频编码写入文件的demo


更多关于HarmonyOS 鸿蒙Next 拍照流/录像流的二次处理流程的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

更多关于HarmonyOS 鸿蒙Next 拍照流/录像流的二次处理流程的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


HarmonyOS鸿蒙Next拍照流/录像流的二次处理流程主要涉及相机应用的开发,具体步骤如下:

  1. 申请相机权限:在开发相机应用时,需要先申请相机相关权限,确保应用有权限访问相机设备。
  2. 创建相机输出流:通过CameraKit的CameraManager获取相机管理实例,选择相机设备,并创建相机输出流(CameraInput)。
  3. 设置输出流:根据需求设置拍照流或录像流。对于录像流,需要创建VideoOutput对象来处理视频帧数据。
  4. 绑定会话:创建CaptureSession,将相机输入流、输出流绑定到会话上,并设置相关参数(如分辨率、帧率等)。
  5. 实现二次处理:在视频帧数据到达时,通过VideoOutput的回调函数获取帧数据,并进行二次处理,如滤镜、编码等。
  6. 资源释放:在完成拍照或录像后,需要释放相机资源,避免资源泄漏。

如果在进行拍照流/录像流的二次处理过程中遇到问题,建议检查相机权限、输出流设置、会话绑定等步骤是否正确。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部