camera video数据流

camera video数据流    在Android系统中,实现一个具有录像功能的应用程序只需要调用MediaRecorder的相应接口即可。下面简单分析下从MediaRecorder往下的结构:支撑MediaRecorder的framework结构APP调用的应用层MediaRecorder接口最终对应的实质接口位于StagefrightRecorder.cpp中,
摘要由CSDN通过智能技术生成

camera video数据流

    在Android系统中,实现一个具有录像功能的应用程序只需要调用MediaRecorder的相应接口即可。下面简单分析下从MediaRecorder往下的结构:


支撑MediaRecorder的framework结构

APP调用的应用层MediaRecorder接口最终对应的实质接口位于StagefrightRecorder.cpp中,在这里面会统一管理录像需要的视频数据、音频数据、编码器等;这里只关注视频数据的情况,StagefrightRecorder通过CameraSource来获取视频数据,这个CameraSource往下的结构见下图:

 CameraSource往下的软件结构

可以看到CameraSource最终还是通过Camera框架中的客户端接口来实现对camera的控制。对于camera录像的回显和编码,CameraSource中注册的数据回调接口会传递到HAL层,这样HAL层调用回调后StagefrightRecord即可通过CameraSource得到图像帧来编码;另外,开始录像时调用setPreviewDisplay接口传递的一个surface到HAL层后,HAL层会直接去写surface对应的buffer来回显。

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值