串流数据传输方法、装置、设备及存储介质与流程
本技术涉及数据传输,尤其涉及串流数据传输方法、装置、设备及存储介质。
背景技术:
1、随着智能设备的功能的不断完善,人们经常使用移动终端与智能设备进行交互,在交互过程中离不开串流数据的传输,但是智能设备本地处理能力有限,而串流数据的同步、解码等操作需要依赖高性能处理器,如果直接在本地处理,会导致智能设备的功耗较高、续航缩短,为此,提出借助移动终端进行同步、解码等操作,而目前传输串流数据至移动终端所依赖的是单通路,这样的数据传输易受网络波动影响,另外,固定码率无法适应动态网络环境,造成带宽浪费、数据传输不稳定。基于此,上述方式传输串流数据的稳定性和实时性较差。
2、上述内容仅用于辅助理解本技术的技术方案,并不代表承认上述内容是现有技术。
技术实现思路
1、本技术的主要目的在于提供一种串流数据传输方法、装置、设备及存储介质,旨在解决现有技术传输串流数据的稳定性和实时性较差的技术问题。
2、为实现上述目的,本技术提出一种串流数据传输方法,所述方法包括:
3、在接收到目标终端发送的串流数据传输指令时,根据所述串流数据传输指令确定向所述目标终端传输数据的多通路;
4、分别确定待传输的第一串流数据和第二串流数据的传输优先级;
5、根据当前延迟数据和当前丢包数据确定数据传输参数;
6、基于所述多通路,根据所述数据传输参数和所述传输优先级将所述第一串流数据和所述第二串流数据协同传输至所述目标终端。
7、在一实施例中,所述分别确定待传输的第一串流数据和第二串流数据的传输优先级的步骤,包括:
8、根据串流数据传输指令触发各个串流数据采集单元启动;
9、控制启动的各个串流数据采集单元分别采集各个初始串流数据,其中,所述初始串流数据包括第一初始串流数据和第二初始串流数据;
10、分别对所述第一初始串流数据和所述第二初始串流数据进行预处理,得到待传输的第一串流数据和第二串流数据;
11、根据所述待传输的第一串流数据和第二串流数据的数据类型确定优先级设置策略;
12、根据所述优先级设置策略分别确定所述待传输的第一串流数据和第二串流数据的传输优先级。
13、在一实施例中,所述分别对所述第一初始串流数据和所述第二初始串流数据进行预处理,得到待传输的第一串流数据和第二串流数据的步骤,包括:
14、在所述第一初始串流数据的数据类型为音频流类型时,对所述第一初始串流数据进行数字化转换;其中,第一初始串流数据和第二初始串流数据的数据类型不同;
15、对数字化转换后的第一初始串流数据进行压缩编码,并基于私有协议对压缩编码后的第一初始串流数据进行打包,得到待传输的第一串流数据;
16、在所述第二初始串流数据的数据类型为视频流类型时,对所述第二初始串流数据进行格式转换;
17、对格式转换后的第二初始串流数据进行高效编码,并基于所述私有协议对高效编码后的第二初始串流数据进行打包,得到待传输的第二串流数据。
18、在一实施例中,所述根据当前延迟数据和当前丢包数据确定数据传输参数的步骤,包括:
19、根据传输阶段的数据包发送数据和当前丢包数据计算当前丢包率;
20、根据所述当前丢包率和当前延迟数据确定当前动态码率;
21、获取产生触发信号的时间间隔,并根据所述当前动态码率和所述时间间隔确定数据传输量;
22、根据所述当前延迟数据动态调整时间窗口,并根据调整后的时间窗口和所述数据传输量确定数据传输速度;
23、根据所述数据传输量和所述数据传输速度得到数据传输参数。
24、在一实施例中,所述基于所述多通路,根据所述数据传输参数和所述传输优先级将所述第一串流数据和所述第二串流数据协同传输至所述目标终端的步骤之后,还包括:
25、控制所述目标终端并行接收所述第一串流数据和所述第二串流数据;
26、对所述第一串流数据和所述第二串流数据分离,并对分离后的第一串流数据和第二串流数据进行解码;
27、根据时间戳对解码后的第一串流数据和第二串流数据进行同步。
28、
29、在一实施例中,所述根据时间戳对解码后的第一串流数据和第二串流数据进行同步的步骤之后,还包括:
30、获取所述目标终端并行接收所述第一串流数据和所述第二串流数据的接收数据;
31、根据所述接收数据计算串流数据接收质量分值,并将所述串流数据接收质量分值与预设分值进行比较;
32、根据质量分值比较结果生成质量调整控制指令;
33、控制智能设备根据所述质量调整控制指令对待传输的串流数据进行质量调整。
34、在一实施例中,所述控制所述目标终端并行接收所述第一串流数据和所述第二串流数据的步骤,包括:
35、在控制所述目标终端并行接收所述第一串流数据和所述第二串流数据的过程中,实时检测所述目标终端与智能设备之间的多通路的连接状态;
36、若存在至少一个通路的连接状态为断开状态,则根据所述多通路从预设通路集合中选取目标通路;
37、基于所述目标通路重新建立目标终端与智能设备之间的连接;
38、控制智能设备从数据缓存区域中读取与处于断开状态的通路对应的剩余串流数据;
39、在所述通路用于传输所述第一串流数据时,控制所述目标终端继续并行接收所述第二串流数据和所述剩余串流数据;
40、在所述通路用于传输所述第二串流数据时,控制所述目标终端继续并行接收所述第一串流数据和所述剩余串流数据。
41、此外,为实现上述目的,本技术还提出一种串流数据传输装置,所述串流数据传输装置包括:
42、接收模块,用于在接收到目标终端发送的串流数据传输指令时,根据所述串流数据传输指令确定向所述目标终端传输数据的多通路;
43、确定模块,用于分别确定待传输的第一串流数据和第二串流数据的传输优先级;
44、所述确定模块,还用于根据当前延迟数据和当前丢包数据确定数据传输参数;
45、传输模块,用于基于所述多通路,根据所述数据传输参数和所述传输优先级将所述第一串流数据和所述第二串流数据协同传输至所述目标终端。
46、此外,为实现上述目的,本技术还提出一种串流数据传输设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序配置为实现如上文所述的串流数据传输方法的步骤。
47、此外,为实现上述目的,本技术还提出一种存储介质,所述存储介质为计算机可读存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上文所述的串流数据传输方法的步骤。
48、本技术提出的一个或多个技术方案,至少具有以下技术效果:通过在接收到目标终端发送的串流数据传输指令时,根据所述串流数据传输指令确定向所述目标终端传输数据的多通路;分别确定待传输的第一串流数据和第二串流数据的传输优先级;根据当前延迟数据和当前丢包数据确定数据传输参数;基于所述多通路,根据所述数据传输参数和所述传输优先级将所述第一串流数据和所述第二串流数据协同传输至所述目标终端。通过上述方式,在接收到目标终端发送的串流数据传输指令时,确定向目标终端传输数据的多通路,并进一步确定传输优先级以及数据传输参数,使得不同数据类型的串流数据可以通过多通路传输,降低传输功耗、减少网络波动对数据传输的影响,通过数据传输参数可以提高带宽利用率,从而能够有效提高传输串流数据的稳定性和实时性,以及显著提高智能设备的能效。