ffplay中的FrameQueue的自我理解

本文介绍了在研究ffplay时对FrameQueue结构的理解,详细解析了其作为循环队列的内部实现,包括初始化、帧的获取与释放等关键操作。通过对frame_queue_init、frame_queue_peek、frame_queue_push及frame_queue_next等函数的分析,展示了FrameQueue如何管理视频帧的存储和调度。
摘要由CSDN通过智能技术生成
最近在研究ffplay, 以下是本人今天在研究FrameQueue的时候整理的笔记,如有错误还请有心人指出来~
//这个队列是一个循环队列,windex是指其中的首元素,rindex是指其中的尾部元素.
typedef  struct  FrameQueue  {
                  Frame  queue[ FRAME_QUEUE_SIZE  ];
                  int  rindex; //表示循环队列的结尾处
                  int  windex; //表示循环队列的开始处
                  int  size;
                  int  max_size;
                  int  keep_last;
                  int  rindex_shown;//一开始为0,之后一直为1
                  SDL_mutex  *mutex;
                  SDL_cond  *cond;
                  PacketQueue  *pktq;
}  FrameQueue
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值