SuperMediaPlayer::SeekInCache(int64_t pos) 的实现
- seek的pos就是pts值。
- 缓冲是list,那么插入的包是按照到达的顺序插入到list的,也就是无排序的。
- 包的pts 正常应该单调连续,
- 即使不单调连续,缓存也不在意。
- seek的操作主要是先比较pos与mCurrentPos ,
- pos 比 mCurrentPos 小,那么向后,向后就是从cache里查找pts
- 向前也是在cache里查找。
媒体包队列是一个list : 链表
std::list<mediaPacket> mQueue;
mPlayedAudioPts 初始化为INT64_MIN
int64_t mPlayedAudioPts{
INT64_MIN
文章来源地址https://www.toymoban.com/news/detail-682014.html
文章来源:https://www.toymoban.com/news/detail-682014.html
到了这里,关于【CicadaPlayer】seek :SeekInCache(int64_t pos)的实现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!