播放器的基本架构

    不考虑网络下载模块,从播放链路来说,一般包含最基本的五个模块,每个模块是一个单独的线程;以及四个帧数据队列;

如果有其他需求,可以在这个基本框架上再扩展,比如在解码后,渲染前加入一些滤镜处理模块等;


    5个模块线程:
    1. 解复用模块: 负责媒体文件的解复用,从文件读出视频帧和音频帧数据,分别放入两个队列;
    2. 视频解码模块: 负责视频帧解码,从视频帧队列读入帧,并将解码后帧数据放入解码后视频帧队列;
    3. 音频解码模块: 负责音频帧解码,从音频帧队列读入帧,并将解码后帧数据放入解码后视频帧队列;
    4. 视频渲染模块: 从解码后视频帧队列读入数据,负责视频帧的渲染;
    5. 音频渲染模块: 从解码后音频帧队列读入数据,负责音频帧的渲染;

    4个队列:
    1. 解码前视频帧队列A1;
    2. 解码前音频帧队列A2;
    3. 解码后视频帧队列B1;
    4. 解码后音频帧队列B2;
 

稍后把框架图补上;

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值