1.一种流媒体播放质量的预测方法,其特征在于,包括以下步骤:
步骤1,使用网络监听技术收集和本机系统相关的网络数据包,通过IP地址、端口过滤技术保留流媒体播放相关的数据包;
步骤2,根据相应协议重新构建协议栈,获取该协议栈中传输的媒体数据和网络性能数据,并记录主机的性能数据;
步骤3,解码媒体数据,结合系统时间综合判断当前播放质量,结合上一阶段的网络和主机性能数据训练机器学习模型;
步骤4,使用机器学习模型,通过当前网络和主机性能数据,预测下一阶段时间的流媒体播放质量。
2.根据权利要求1所述的流媒体播放质量的预测方法,其特征在于,步骤1中所述通过IP地址、端口过滤技术保留流媒体播放相关的数据包,具体为:
使用电子节目指南服务器、调度服务器和内容分发网络服务器的IP地址和端口对网络数据包进行过滤,仅保留流媒体播放相关的数据包。
3.根据权利要求1所述的流媒体播放质量的预测方法,其特征在于,步骤2所述根据相应协议重新构建协议栈,获取该协议栈中传输的媒体数据和网络性能数据,并记录主机的性能数据,具体如下:
A)针对传输层是TCP协议的,使用对帧技术,获取TCP中传输的流数据,同时记录时延、乱序率、丢包率、低窗口率;
B)针对应用层是HTTP协议的,对包头进行重新构建,获取请求信息和响应信息,同时记录各阶段时延;
C)针对应用层是HLS协议的,记录媒体码率;
D)针对传输层是UDP组播协议的,记录组播控制信息和媒体数据,同时记录网络时延、抖动;
E)记录播放流媒体时的CPU使用率、内存占用率和IO性能。
4.根据权利要求1所述的流媒体播放质量的预测方法,其特征在于,步骤3中所述的解码媒体数据,结合系统时间综合判断当前播放质量,包括以下步骤:
步骤3.1.1,根据已下载的媒体片段,快速解码获取片段时长;
步骤3.1.2,通过媒体片段下载时间和媒体时长求出目前还可以播放的时长;
步骤3.1.3,通过积累的可播放时长和系统流逝的时间,判断当前流媒体播放质量,并根据缓存时长进行播放质量评级。
5.根据权利要求1所述的流媒体播放质量的预测方法,其特征在于,步骤3中所述的结合上一阶段的网络和主机性能数据训练机器学习模型,步骤如下:
步骤3.2.1,选择网络性能数据中能够体现网络状态的参数,加上反映主机工作状态的性能数据参数,进行预处理和数据融合,最后得到特征向量;
步骤3.2.2,将当前状态10秒前的由步骤3.2.1中得出的特征向量作为输入,将当前流媒体播放质量评级作为输出,训练具有分类功能的机器学习模型。
6.根据权利要求5所述的流媒体播放质量的预测方法,其特征在于,步骤4中所述的使用机器学习模型,通过当前网络和主机性能数据,预测下一阶段时间的流媒体播放质量,具体为:
将当前状态的由步骤3.2.1得出的特征向量作为输入,机器学习模型的输出作为10秒后流媒体播放质量的预测。