欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2017108516708
申请人: 武汉斗鱼网络科技有限公司
专利类型:发明专利
专利状态:已下证
专利领域: 电通信技术
更新日期:2023-08-21
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种直播间内直播流播放方法,其特征在于,包括:

利用解码线程对直播流数据缓存队列中已缓存且未解码的直播流数据进行解码;其中,所述直播流数据包含视频流数据和音频流数据,所述直播流数据缓存队列对应包含视频流数据缓存队列和音频流数据缓存队列;所述解码线程对应包含视频解码线程和音频解码线程;

将所述解码线程解码后得到的数据存储到直播数据输出列表中;

将所述直播数据输出列表中的数据进行播放;

其中,在所述解码线程对所述直播流数据缓存队列中已缓存且未解码的直播流数据进行解码的过程中:判断所述视频流数据缓存队列和所述音频流数据缓存队列中已缓存且未解码的所述视频流数据和所述音频流数据的第一时间长度是否大于第一时间长度阈值;

若所述已缓存且未解码的所述视频流数据和所述音频流数据的第一时间长度小于或等于所述第一时间长度阈值,则拉流线程拉取新的直播流数据,并将拉取到的新的直播流数据缓存到所述直播流数据缓存队列中;

若所述已缓存且未解码的所述视频流数据或所述音频流数据的第一时间长度大于所述第一时间长度阈值,则所述拉流线程停止拉取新的直播流数据,直至所述第一时间长度小于或等于所述第一时间长度阈值。

2.如权利要求1所述的方法,其特征在于,在所述利用解码线程对直播流数据缓存队列中已缓存且未解码的直播流数据进行解码之前,所述方法还包括:基于与所述直播流对应的指定路径,打开所述直播流;

调用线程创建函数,创建所述拉流线程;

获取所述直播流的数据流通道;

基于所述数据流通道,调用所述线程创建函数建立所述解码线程。

3.如权利要求2所述的方法,其特征在于,在所述调用所述线程创建函数建立所述解码线程之后,所述方法还包括:判断所述第一时间长度是否小于第二时间长度阈值;

若所述第一时间长度小于所述第二时间长度阈值,则所述解码线程不动作;

若所述第一时间长度大于或等于所述第二时间长度阈值,则所述解码线程执行对直播流数据缓存队列中已缓存且未解码的直播流数据进行解码的步骤。

4.如权利要求1所述的方法,其特征在于,还包括:

判断所述直播流数据输出列表中的数据是否大于预设数量;

若所述直播流数据输出列表中的数据大于预设数量,则所述解码线程停止解码。

5.一种直播间内直播流播放装置,其特征在于,包括:

解码模块,用于利用解码线程对直播流数据缓存队列中已缓存且未解码的直播流数据进行解码;其中,所述直播流数据包含视频流数据和音频流数据,所述直播流数据缓存队列对应包含视频流数据缓存队列和音频流数据缓存队列;所述解码线程对应包含视频解码线程和音频解码线程;

存储模块,用于将所述解码线程解码后得到的数据存储到直播数据输出列表中;

播放模块,用于将所述直播数据输出列表中的数据进行播放;

其中,在所述解码线程对所述直播流数据缓存队列中已缓存且未解码的直播流数据进行解码的过程中:判断所述视频流数据缓存队列和所述音频流数据缓存队列中已缓存且未解码的所述视频流数据和所述音频流数据的第一时间长度是否大于第一时间长度阈值;

若所述已缓存且未解码的所述视频流数据和所述音频流数据的第一时间长度小于或等于所述第一时间长度阈值,则拉流线程拉取新的直播流数据,并将拉取到的新的直播流数据缓存到所述直播流数据缓存队列中;

若所述已缓存且未解码的所述视频流数据或所述音频流数据的第一时间长度大于所述第一时间长度阈值,则所述拉流线程停止拉取新的直播流数据,直至所述第一时间长度小于或等于所述第一时间长度阈值。

6.如权利要求5所述的装置,其特征在于,所述装置还包括:打开模块,用于基于与所述直播流对应的指定路径,打开所述直播流;

创建模块,用于调用线程创建函数,创建所述拉流线程;

获取模块,用于获取所述直播流的数据流通道;

调用基于所述数据流通道,调用所述线程创建函数建立所述解码线程。

7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现以下步骤:利用解码线程对直播流数据缓存队列中已缓存且未解码的直播流数据进行解码;其中,所述直播流数据包含视频流数据和音频流数据,所述直播流数据缓存队列对应包含视频流数据缓存队列和音频流数据缓存队列;所述解码线程对应包含视频解码线程和音频解码线程;

将所述解码线程解码后得到的数据存储到直播数据输出列表中;

将所述直播数据输出列表中的数据进行播放;

其中,在所述解码线程对所述直播流数据缓存队列中已缓存且未解码的直播流数据进行解码的过程中:判断所述视频流数据缓存队列和所述音频流数据缓存队列中已缓存且未解码的所述视频流数据和所述音频流数据的第一时间长度是否大于第一时间长度阈值;

若所述已缓存且未解码的所述视频流数据和所述音频流数据的第一时间长度小于或等于所述第一时间长度阈值,则拉流线程拉取新的直播流数据,并将拉取到的新的直播流数据缓存到所述直播流数据缓存队列中;

若所述已缓存且未解码的所述视频流数据或所述音频流数据的第一时间长度大于所述第一时间长度阈值,则所述拉流线程停止拉取新的直播流数据,直至所述第一时间长度小于或等于所述第一时间长度阈值。

8.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现以下步骤:利用解码线程对直播流数据缓存队列中已缓存且未解码的直播流数据进行解码;其中,所述直播流数据包含视频流数据和音频流数据,所述直播流数据缓存队列对应包含视频流数据缓存队列和音频流数据缓存队列;所述解码线程对应包含视频解码线程和音频解码线程;

将所述解码线程解码后得到的数据存储到直播数据输出列表中;

将所述直播数据输出列表中的数据进行播放;

其中,在所述解码线程对所述直播流数据缓存队列中已缓存且未解码的直播流数据进行解码的过程中:判断所述视频流数据缓存队列和所述音频流数据缓存队列中已缓存且未解码的所述视频流数据和所述音频流数据的第一时间长度是否大于第一时间长度阈值;

若所述已缓存且未解码的所述视频流数据和所述音频流数据的第一时间长度小于或等于所述第一时间长度阈值,则拉流线程拉取新的直播流数据,并将拉取到的新的直播流数据缓存到所述直播流数据缓存队列中;

若所述已缓存且未解码的所述视频流数据或所述音频流数据的第一时间长度大于所述第一时间长度阈值,则所述拉流线程停止拉取新的直播流数据,直至所述第一时间长度小于或等于所述第一时间长度阈值。