本技术实施例涉及图像处理,尤其涉及一种视频帧编码码流的确定方法和装置。
背景技术:
1、视频帧在传输过程中,网络带宽会随时出现波动,为了提升视频帧的服务质量会动态的对当前网络带宽进行预测调整。
2、相关技术中,在网络状况不好的情况下,会根据预测的网络带宽降低视频编码器的编码码流,以提高视频流畅度,在网络状况恢复后,会根据预测的网络带宽提升视频编码器的编码码流,以提高视频的清晰度。
3、然而,上述实现方式,编码码流调整过于频繁,导致网络拥堵,从而影响视频帧的输出效果。
技术实现思路
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、在所述第三预测带宽的类别为至少两个时,从至少两个所述第三预测带宽中确定第四预测带宽,所述第四预测带宽为至少两个所述第三预测带宽中的最小预测带宽;
49、确定所述第四预测带宽为所述视频帧的所述编码码流。
50、第三方面,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,处理器执行计算机程序时实现如以上任意一个实施例中视频帧编码码流的确定方法的步骤。
51、第四方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如以上任意一个实施例中视频帧编码码流的确定方法的步骤。
52、本技术实施例中提供的视频帧编码码流的确定方法,能够通过确定出的视频帧的带宽样本,其中,带宽样本中包括至少两个网络带宽,至少两个网络带宽中包括初始带宽或历史预测带宽,初始带宽用于描述带宽值无效;并基于至少两个网络带宽,确定视频帧的编码码流,以基于编码码流传输视频帧。如此,通过多个网络带宽确定视频帧的编码码流,编码码流的设置与网络状况无关,无需在不同网络状况下频繁设置编码码流,降低编码码流的设置频率,避免网络拥堵,进而提升视频帧的输出效果。
53、上述说明仅是本技术实施例技术方案的概述,为了能够更清楚了解本技术实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本技术实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。