音视频同步播放器遇到的奇葩的bug

问题描述:自己写的播放器, 总是在播放开始的时候卡住(大约是20%的概率),一帧一帧的播,不好找。卡顿的时候线程暂停。

为了实现自己的音视频同步


自己的音视频同步原理:

视频同步到音频上。





后来发现是因为缓冲区不够引起的,视频帧先被解析出来了,音频帧还在ffmpeg缓冲区里面,还没有出来。

而此时视频帧已经解码了60帧,所以锁卡死了读取文件线程。此时ffmpeg不再读取文件,也就不再有音频数据解析出来。

而播出线程由于同步的关系,播放视频帧缓慢,导致了ffmpeg不再解码文件。

于是成为了一个死结。

由于播放线程只是让视频帧播放的慢一点。而没有锁死,因此播放器才没有卡死。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值