android media架构

https://developer.android.com/reference/android/media/MediaPlayer

android的多媒体框架如今已经演变得非常复杂的,这里面原因多种多样,后续争取逐步总结完整。
我们先用一个最基础的mediaplayer播放视频示意图看一下与架构之间的关联(实际android各种完整的媒体通路要更复杂数十倍以上),用户创建一个播放器APK或者APK需要播放一个视频,通过framework层的mediaplayer进行调用播放,mediaplayer会通过mediaserver在native服务层取找到解码器,通过软件解码 或者 硬件解码(如GPU等来实现)进行解码,然后通过surface进行显示。最后surface要送显示。这个时候需要通过linux的显示驱动 framebuffer来送到底层硬件驱动中,操作硬件把画面显示出来。

一个视频播放总体思路还是:APK触发媒体业务,通过Application Framework封装的API进行业务播放,然后Framework到本地系统库层级去指定 解码与显示 通路组合(这里选择非常多样,一部分与APK传递的参数相关,更多的还和不同媒体使用场景决策,设备类型与配置相关,后面会提到),从解码选择 的硬解码还是软解码不同 决定是否要使用底层linux硬件解码驱动,根据显示通路选择 对应 linux底层驱动进行画面显示。

————————————————
原文链接:https://blog.csdn.net/runafterhit/article/details/109020673

Android Media (Audio) Framework 多媒体系统框架 - maxiongying - 博客园

android 多媒体框架服务之StagefrightPlayer和OMXCodec实现原理学习_zds05的专栏-CSDN博客
https://developer.android.com/reference/android/media/MediaPlayer

Android MediaPlayer+Stagefright框架(音频)图解_landishu的专栏-CSDN博客


吾皇的博客_yanbixing123_CSDN博客-i.MX6-IPU子系统,i.MX6Q---IPU总结笔记,嵌入式领域博主

安卓音视频播放-总体架构 - 简书

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值