Ijkplayer、ExoPlayer、VLC播放器综合比较,350道Android面试真题分享

本文对比了VLC的模块化设计,强调其跨平台、功能全面和代码解耦的优点,以及Android播放器IjkPlayer(基于FFmpeg)的轻量级和ExoPlayer(Google维护)的高性能。同时,作者分享了关于Android移动开发的学习资源,包括体系化的学习资料和交流平台。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

VLC的整体框架是设计成一套module的管理机制,将功能分类并抽象成modules。 VLC main: player的main。初始化libVLC 并加载用户界面。 libVLCcore:libvlc的核心,抽象出了一个libvlc_instance_t 对象,提供modules的装载/卸载机制。 modules: modules提供具体的功能,比如上面的access,demux,decode就是以一个模块的形式存在。 External libraries:外部开源库。

下面将VLC中各modules串起来的流程:

优点:
1.跨平台,兼容性好;
2.功能全面,支持rtsp、rtmp、ftp、http、https等协议;
3.代码完全解耦,modules相互独立,不影响,引入新modules方便;
4.维护团队强大,更新频繁;
缺点:
1.Android平台编译出的包较大,有16M左右;

IjkPlayer

IjkPlayer 是BiliBili公司维护的一个开源工程,是基于ffmpeg开发的一个播放器软件,目前支持Android和iOS两种平台,ffmpeg是音视频领域的大山,基本上做音视频开发的根本绕不过去,所以ijkplayer采用ffmpeg作为音视频播放器的基础也是可以理解的; ffmpeg中提供了ffplay

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值