一种基于云边协议的直播视频传输方法与流程

文档序号:23849220发布日期:2021-02-05 13:44阅读:102来源:国知局
一种基于云边协议的直播视频传输方法与流程

[0001]
本申请涉及直播技术领域,特别涉及一种基于云边协议的直播视频传输方法。


背景技术:

[0002]
近年来直播显示快速增长,直播视频流量在网络流量中的占比越来越大。在当前直播系统中,主播遍布世界各地,他们通过直播平台将自己的实时视频传播给在各个地方的观众。这种直播方式使得直播比点播更有动态性,因为主播们可以根据自己的意愿开始和结束直播,并且主播们可以选择在任意地点进行直播。通过收集主要直播平台的一日的观看人数以及主播人数,我们发现一日的主播人数能达到百万,在线观看人数更是超过了千万。这些数据体现目前直播的高需求量。
[0003]
然而,直播服务的激增极大地挑战了当前的边缘网络基础设施,边缘网络(例如wi-fi,4g)的上行链路容量有限,以及直播实时视频流传输无法有效的压缩视频数据,这导致直播实时视频的带宽需求量更大,而当上行带宽不足,观看者的视频质量将会显著的降低并且很有可能造成卡顿,进而严重影响了观看者的用户体验。


技术实现要素:

[0004]
本申请要解决的技术问题在于,针对现有技术的不足,提供一种基于云边协议的直播视频传输方法。
[0005]
为了解决上述技术问题,本申请实施例第一方面提供了一种基于云边协议的直播视频传输方法,其特征在于,所述方法包括:
[0006]
接收直播端上传的视频资源,确定所述视频资源对应的流行度;
[0007]
基于所述流行度确定所述视频资源对应的边缘节点以及超分倍数,以使得所述边缘节点按照所述超分倍数对所述视频资源进行超分处理,得到超分视频资源。
[0008]
所述基于云边协议的直播视频传输方法,其中,所述接收直播端上传的视频资源,确定所述视频资源对应的流行度具体包括:
[0009]
接收直播端上传的视频资源,并获取所述视频资源对应的视频制作者的历史观看人数;
[0010]
基于获取到的历史观看人数,确定所述视频资源对应的流行度。
[0011]
所述基于云边协议的直播视频传输方法,其中,所述基于所述流行度确定所述视频资源对应的边缘节点以及超分倍数具体包括:
[0012]
获取所述视频资源对应的视频信息;
[0013]
基于所述视频信息以及流行度,确定所述视频资源对应的边缘节点以及超分倍数。
[0014]
所述基于云边协议的直播视频传输方法,其中,所述基于所述视频信息以及流行度,确定所述视频资源对应的边缘节点以及超分倍数具体包括:
[0015]
将所述视频信息以及所述流行度输入经过训练的强化学习模型,通过所述强化学
习模型确定所述视频资源对应的边缘节点以及超分倍数。
[0016]
所述基于云边协议的直播视频传输方法,其中,所述视频信息包括各边缘节点的边缘算力信息、各边缘节点的用户连接信息、历史处理信息以及所述视频资源对应的视频质量。
[0017]
所述基于云边协议的直播视频传输方法,其中,所述基于所述视频信息以及流行度,确定所述视频资源对应的边缘节点以及超分倍数具之后,所述方法包括:
[0018]
基于所述超分倍数确定所述视频资源对应的超分网络模型,并将所述超分网络模型布置于所述边缘节点,其中,所述超分网络模型配置有所述超分倍数。
[0019]
所述基于云边协议的直播视频传输方法,其中,所述超分网络模型包括通用超分网络模型或者设定超分网络模型,其中,所述设定超分网络模型为基于视频资源对应的流行度为该视频制作者训练得到。
[0020]
所述基于云边协议的直播视频传输方法,其中,所述设定超分网络模型的训练过程具体包括:
[0021]
当接收到该视频资源对应的视频制作者上传目标视频资源时,确定所述目标视频资源对应的流行度;
[0022]
当流行度大于预设流行度阈值时,获取该视频制作者对应的若干视频数据集,其中,若干视频数据集中的每个视频数据集均对应一超分倍数,且各视频数据集各自对应的超分倍数互不相同;
[0023]
对于若干视频数据集中的每个视频数据集,将该视频数据集对经过训练的通用超分模型进行训练,以得到设定超分网络模型,其中,每个视频数据集对应的通用超分模型配置各个视频数据集对应的超分倍数。
[0024]
本申请实施例第二方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上任一所述的基于云边协议的直播视频传输方法中的步骤。
[0025]
本申请实施例第三方面提供了一种云服务器,其包括:处理器、存储器及通信总线;所述存储器上存储有可被所述处理器执行的计算机可读程序;
[0026]
所述通信总线实现处理器和存储器之间的连接通信;
[0027]
所述处理器执行所述计算机可读程序时实现如上任一所述的基于云边协议的直播视频传输方法中的步骤。
[0028]
有益效果:与现有技术相比,本申请提供了一种基于云边协议的直播视频传输方法,所述方法包括接收直播端上传的视频资源,确定所述视频资源对应的流行度;基于所述流行度确定所述视频资源对应的智能边缘以及超分倍数,以使得所述智能边缘按照所述超分倍数对所述视频资源进行超分处理,得到超分视频资源。本申请在直播端上行链路带宽不足的情况下,通过收集主播端的视频资源、边缘计算信息以及用户信息,利用深度强化模型进行超分网络模型以及超分倍数,并通过超分网络模型对主播端上传的视频资源进行超分,提升了直播视频的视频质量,从而提高了用户qoe。
附图说明
[0029]
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使
用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员而言,在不符创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0030]
图1为本申请提供的基于云边协议的直播视频传输方法的流程图。
[0031]
图2为本申请提供的基于云边协议的直播视频传输方法的流程示例图。
[0032]
图3为本申请提供的基于云边协议的直播视频传输方法的框架原理图。
[0033]
图4为本申请提供的基于云边协议的直播视频传输方法中的强化学习模型的框架原理图。
[0034]
图5为本申请提供的基于云边协议的直播视频传输方法中设定超分网络模型的训练过程示意图。
[0035]
图6为本申请提供的云服务器的结构原理图。
具体实施方式
[0036]
本申请提供一种基于云边协议的直播视频传输方法,为使本申请的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本申请进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
[0037]
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
[0038]
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
[0039]
下面结合附图,通过对实施例的描述,对申请内容作进一步说明。
[0040]
图1是本实施例提供的一种基于云边协议的直播视频传输方法的流程示意图。该方法可以该方法可以应用于云服务器,所述云服务器可以以各种形式来实现。例如,服务端、pc机等。另外,该方法所实现的功能可以通过云服务器中的处理器调用程序代码来实现,当然程序代码可以保存在计算机存储介质中,可见,该云服务器至少包括处理器和存储介质。
[0041]
如图1和图2所示,本实施提供了一种基于云边协议的直播视频传输方法,所述方法包括:
[0042]
s10、接收直播端上传的视频资源,确定所述视频资源对应的流行度。
[0043]
具体地,所述视频资源为直播端上传的实时视频资源,用于同步给观看该视频资源的用户端,以使得用户端可以获取到该直播端对应的直播视频。所述流行度用于反映视
频资源对应的视频制作者的受欢迎程度,其中,流行度越大,说明该视频资源对应的视频制作者的受欢迎程度越高,反之,流行度越小,说明该视频资源对应的视频制作者的受欢迎程度越低。在本实施例的一个实现方式,所述确定所述视频资源对应的流行度是在直播端对应的上行链路资源未满足预设条件的情况下确定,其中,所述预设条件为上行链路带宽大于预设阈值。可以理解的是,当上行链路带宽小于或者等于预设阈值时,直播端上传的视频资源为低分辨率的视频资源,为了使得用户端可以获取到高分辨率的视频资源,以提高用户端的用户qoe,可以对低分辨率的视频资源进行超分处理,以得到高分辨率的视频资源。由此,在直播端对应的上行链路资源未满足预设条件的情况下,确定视频资源对应的流行度,并基于流行度对该视频资源进行超分处理,这样在提高用户端的用户qoe的同时,还可以减少视频资源传输对应边缘节点资源的损耗。
[0044]
所述视频资源可以通过云服务器接收,所述云服务器布置于直播端所处网络靠近直播端一侧,并位于直播端与边缘节点之间,与该云服务器连接的所处直播端均将视频资源上传至云服务器,通过运服务器将视频资源发送至边缘节点,以使得用户端可以通过边缘节点获取到视频资源,其中,视频制作者可以通过公共互联网实时地将直播视频的视频片段上传至云服务器。在本实施例的一个实现方式中,所述云服务器包括信息采集器,流行度预测模块,超分训练模块以及超分资源分配模块,所述流行度预测模块用于预测视频资源的流行度;所述信息采集器用于采集边缘节点的实时状态,直播视频数据以及边缘节点连接的用户端信息;超分资源分配模块用于基于流行度以及边缘节点的实时状态,直播视频数据以及边缘节点连接的用户端信为视频资源分配边缘节点以及超分倍数;超分训练模块用于基于流行度训练超分网络模型。
[0045]
在本实施例的一个实现方式中,如图3所示,所述云服务器位于直播端与若干边缘节点之间,并分别与直播端和若干边缘节点相连接。若干边缘节点中的每个边缘节点均布置于用户端所处网络边缘,并且每个边缘节点可以与多个用户端相连接,若干边缘节点中的各边缘节点之间可相互通讯。所述用户端用于向边缘节点发送直播视频资源的下载请求以基于下载请求获取到视频资源,并将获取到的视频资源播放给用户,其中,所述用户端可以为手机、高清电视、平板电脑等。
[0046]
当用户端在播放观看直播视频时,用户端会接入当前与其自身物理距离最近的边缘节点,并且用户端会边缘节点发送下载请求,所述下载请求包括用户端特征(例如,客户端ip地址)和请求的视频资源对应的直播视频信息。该用户端连接的边缘节点会接收并解析下载请求,以得到用户端特征(例如,客户端ip地址)和请求的视频资源对应的直播视频信息,并将用户端特征信息记录在自身存储中并发送给云服务器,同时边缘节点查看其是否存储有直播视频信息对应的视频资源。如果存储有视频资源,则直接将视频资源反馈给用户端;如果未存储有视频资源,则说明该边缘节点不服务于该直播视频信息对应的视频资源,该边缘节点发请求给云服务器以向云服务器拉流。
[0047]
当用户端退出观看直播视频时,用户端向其连接的边缘节点发送“结束会话”消息,该边缘节点删除用户端对应的用户端特征。此外,当一个直播端结束直播后,云服务器会向相应的边缘节点发送结束该直播任务的命令,并云服务器内的边缘资源列表会更新直播视频状态,以使得删除该直播端对应的直播信息。
[0048]
在本实施例的一个实现方式中,所述接收直播端上传的视频资源,确定所述视频
资源对应的流行度具体包括:
[0049]
接收直播端上传的视频资源,并获取所述视频资源对应的视频制作者的历史观看人数;
[0050]
基于获取到的历史观看人数,确定所述视频资源对应的流行度。
[0051]
具体地,所述历史观看人数用于反映预设时间段所述视频资源对应的视频制作者直播的历史视频资源的观看人数,其中,所述预设时间段为预先设置的,并且对于所述视频资源,所述预设时间段的起始时间为该视频资源的接收时间,所述预设时间段的终止时间为从该接收时间向前倒退预设时间段后的时间。例如,预设时间段为7天,该视频接收时间为2020年9月7日13时,那么终止时间为2020年9月1日13时。
[0052]
在本实施例的一个实现方式中,所述历史观看人数可以基于预设时间段内该所述视频资源对应的视频制作者直播的历史视频资源的峰值观看人数预测得到,其中,历史视频资源的峰值观看人数为预设时间段观看该指视频制作者直播的各视频资源的峰值观看人数。例如,预设时间段内视频制作者直播的历史视频资源,分别为历史视频资源a、历史视频资源b以及历史视频资源c,历史视频资源a在预设时间段内的峰值观看人数为5000,历史视频资源b在预设时间段内的峰值观看人数为8000,历史视频资源c在预设时间段内的峰值观看人数为9000,那么视频制作者对应的历史观看人数为基于9000。本实例基于视频制作者的历史观看人数确定流行度,这样由于同一主播(视频制作这)的不同视频具有相似的峰值流行度,从而这样通过预设时间段历史观看人数确定流行度,可以保证流行度的准确性。
[0053]
所述流行度可以为该视频资源对应的预测观看人数,当预测观看人数越高,说明视频资源对应的流行度越高,当预测观看人数越低,说明视频资源对应的流行度越低。在一个具体实现方式中,所述预设观看人数为基于历史观看人数以及预设的流行度预测模型确定得到。所述预设流行度预测模型为经过训练的网络模型,所述预设流行度网络模型的输入项可以为历史观看人数,输出项为该视频资源对应的预测观看人数。所述流行度预测模型可以包括一维卷积神经网络(cnn)以及若干隐全连接层,所述历史观看人数输入一维卷积神经网络,并通过一维卷积神经网络输入隐全连接层,通过隐全连接层输出该视频资源对应的预测观看人数,并将该预测观看人数作为该视频资源对应的流行度。
[0054]
在本实施例的一个实现方式,为了能够快速并且较为准确地输出预测观看人数,所述流行度预测模型采用离线与在线训练相结合的训练方式。所述流行度预测模型的训练过程可以为:首先利用训练样本数据对离线训练模型,并且使用训练得到的流行度预测模型确定视频资源对应的预测观看人数;其次,当流行度预测模型使用设定时间段后,获取设定时间段中记录的各视频资源对应的历史观看人数对所述流行度预测模型进行训练,以更新所述流行度预测模型,从而实现离线与在线训练相结合,使得流行度预测模型可以快速并且较为准确地输出预测观看人数。
[0055]
s20、基于所述流行度确定所述视频资源对应的边缘节点以及超分倍数,以使得所述边缘节点按照所述超分倍数对所述视频资源进行超分处理,得到超分视频资源。
[0056]
具体地,所述超分倍数用于反映视频资源对应的分辨率与超分后视频资源的分辨率的关系,其中,超分后视频资源的分辨率等于主播端上传的视频资源的分辨率与超分倍数的乘积,所述超分倍数可以为2,3以及4等。例如,超分倍数为2,主播端上传的视频资源的分辨率为180,那么超分后的视频资源的分辨率为360。所述边缘节点为云服务器为该视频
资源分配的边缘节点,通过所述边缘节点执行超分处理以得到视频资源对应的超分视频资源。
[0057]
在本实例的一个实现方式中,所述基于所述流行度确定所述视频资源对应的边缘节点以及超分倍数具体包括:
[0058]
获取所述视频资源对应的视频信息;
[0059]
基于所述视频信息以及流行度,确定所述视频资源对应的边缘节点以及超分倍数。
[0060]
具体地,所述视频信息包括各边缘节点的边缘算力信息、各边缘节点的用户连接信息、历史处理信息以及所述视频资源对应的视频质量。所述边缘算力信息为云服务器连接的边缘节点的边缘算力信息,所述边缘节点的用户连接信息为云服务器连接的边缘节点的用户端连接信息,若干边缘节点的边缘算力信息表示为(capability(e1),capability(e2),

,capability(e
m
)),若干边缘节点的用户连接信息表示为其中,m为边缘节点的数量。所述历史处理信息包括上一个视频资源的视频质量q(c
n-1
)以及处理上一个视频所用的时间所述视频资源对应的视频质量为超分处理前该视频资源对应的视频质量q(c
n
)。
[0061]
所述边缘节点以及超分倍数是通过经过训练的强化学习模型确定得到,其中,所述强化学习模型的输入项为视频信息以及所述流行度,输出项为边缘节点以及超分倍数。本实施例采用深度强化模型是因为深度强化模型无需建立简化的网络模型或者是使用简单的启发算法,可以通过在复杂的环境中综合多种输入状态学习决策,并根据得到的反馈不断更新学习的决策,从而获得比较好的效果。
[0062]
基于此,如图4所示,所述基于所述视频信息以及流行度,确定所述视频资源对应的边缘节点以及超分倍数具体包括:
[0063]
将所述视频信息以及所述流行度输入经过训练的强化学习模型,通过所述强化学习模型确定所述视频资源对应的边缘节点以及超分倍数。
[0064]
具体地,所述强化学习模型用于确定所述视频资源对应的边缘节点以及超分倍数,所述强化学习模型配置于云服务器,所述云服务器为每个直播视频流分配边缘节点,对每次新接收的视频资源分配边缘计算资源。例如,在t时刻,视频资源n接入云服务器,云服务器利用从信息采集器以及流行度预测模块中接收的视频信息以及所述流行度,并将视频信息以及所述流行度确定强化学习模型的输入状态深度强化学习的输出动作为即向边缘节点a为视频资源n分配超分倍数a的边缘计算资源。随后,边缘节点a执行超分倍数a的超分处理任务。当接收到下一个视频资源时,环境状态将转化为并且强化学习代理会受到奖励在决策过程中,强化学习模型的学习目标是最大化期望的累积折扣奖励为:
[0065]
其中
[0066]
其中,γ∈(0,1]是对未来奖励的折扣因子。
[0067]
在一个具体实现方式中,在时刻t,云服务器在收到直播端上传的视频制作者c的
第n个视频资源之后,首先从流行度预测模块获得视频制作者对应的预测观看人数,并且收集各个边缘节点e的算力使用情况(包括剩余可分配gpu资源以及下一个任务需要等待的时间)、边缘节点e连接的用户端中目前正在观看当视频制作者对应的直播视频的观看用户端数量,以及不同超分倍数所需要的超分时间和超分后视频资源的视频质量。然后,基于获取到所有信息确定强化学习模型的输入状态以通过强化学习模型输出该视频资源对应的边缘节点以及超分倍数。
[0068]
进一步,为了给流行度高的视频提供更高质量的视频,强化学习模型的输入需要包括从流行度预测模块获得频道的预测观看人数count
peak
。由于边缘节点的计算能力是不断动态变化的,边缘节点分配的任务不能超出边缘节点的承载能力:con
a
(c
n
)<capability(e)。由此,可以各边缘节点对应的边缘算力信息capability(e)=(capability(e1),capability(e2),

,capability(e
m
))的剩余算力资源作为强化学习模型输入的一部分。此外,由于若干边缘节点中的各边缘节点之间协同传输,若干边缘节点之间的传输速度虽然要比主干网快很多,但是仍需要消耗时间以及带宽资源,从而超分处理任务部署在连接观看视频资源的用户端最多的边缘节点上,其中,边缘节点e所覆盖的正在观看当视频制作者c的在线直播用户端的中数量表示为所有边缘节点的用户连接信息为
[0069]
在时刻t,边缘节点e所覆盖的在线直播用户端集合记为为首先确定用户在时刻t的用户qoe,其中,qoe的计公式可以为:
[0070][0071]
其中,表示用户端u在时刻t收到了当前观看视频制作者c的第n个视频资源。表示视频感知质量,用vmaf表示,视频资源的vmaf值在视频编码时被计算出来,并在传输视频资源时作为附加信息同时传输给用户端。|q(c
n
)-q(c
n-1
)|是该视频资源与上一视频资源感知质量的差值,表示质量切换值。是用户端u在下载当前视频资源时遭受的卡顿时间。是用户端u的播放进度与直播算上传当前视频资源的时延。α1,α2,α3三个系数用于调节质量切换、卡顿时间和延迟指标对用户qoe的影响程度。强化学习模型的目标就是使得观看当前视频制作者的用户qoe最大化:
[0072][0073]
为了保证视频的平滑度和视频传输的实时性要求,上一个视频资源的视频质量q(c
n-1
)以及处理上一个视频所用的时间由此,所述深度强化学习网络的输入状态包括:预测观看人数count
peak
,边缘算力信息capability(e)=(capability(e1),capability(e2),

,capability(e
m
)),用户连接信息上一个视频资源的视频质量q(c
n-1
)以及处理上一个视频所用的时间所述视频资源对应的视频质量为超分处理前该视频资源对应的视频质量q(c
n
),强化学习模型的输出动作为即向边缘节点a
为视频资源n分配超分倍数a的计算资源。随后边缘节点a执行超分倍数a粒度超分处理任务。当接收到下一个视频资源时,环境状态将转化为并且强化学习代理会受到奖励(即用户总的qoe)。在实际应用中,通过生成大规模的数据通过搭建离线模拟请求平台对模型进行离线训练,当离线模型的性能较为稳定后,将强化学习模型部署在云服务器中,并且定期收集在线信息进行强化学习模型更新。
[0074]
在本实施例的一个实现方式中,所述基于所述视频信息以及流行度,确定所述视频资源对应的边缘节点以及超分倍数具之后,所述方法包括:
[0075]
基于所述超分倍数确定所述视频资源对应的超分网络模型,并将所述超分网络模型布置于所述边缘节点,其中,所述超分网络模型配置有所述超分倍数。
[0076]
具体地,所述超分网络模型包括通用超分网络模型或者设定超分网络模型,其中,所述设定超分网络模型为基于视频资源对应的流行度为该视频制作者训练得到。所述通用超分处理模型适用于任一视频资源,所述设定超分处理模型适用于设定视频资源,所述设定超分网络模型为云服务器基于视设定视频资源对应的流行度为该设定视频资源训练得到。所述通用超分处理模型为了提高资源服务器接收到各数视频的质量而训练的,通用超分处理模型对应的训练集包括电影、纪录片、综艺节目、运动、电视剧五个类型中各类型中点击量最靠前的若干视频,例如,10个视频等。所述设定超分处理模型对应的视频资源基于该视频对应的流行度确定,当视频资源的流行度大于预设阈值时,基于该视频资源训练该视频资源对应的设定超分处理模型,当视频资源的流行度小于或者等于预设数值,则将通用超分处理模型作为该视频资源对应的超分处理模。
[0077]
在本实施例一个实现方式中,由于通用超分网络模型的能力有限,缺乏捕获不同类型视频资源的所有特征的能力,从而为了提高经过超分网络模型进行超分得到的视频资源的视频质量,可以对流行度高的直播视频分别训练设定超分网络模型,以提高流行度高的直播视频的超分效果。然而,训练一个超分网络模型是非常耗时的,为此在训练设定超分网络模型时可以通用超分网络模型为初始网络模型,通过在预训练好的通用超分网络模型的基础上,加入设定视频资源进行增量训练,以得到设定超分网络模型,这样一方面可以提供设定超分网络模型对应的视频资源的超分效果,有可以缩短设定超分网络模型的训练时长。
[0078]
在本实施例的一个实现方式中,所述设定超分网络模型的训练过程具体包括:
[0079]
当接收到该视频资源对应的视频制作者上传目标视频资源时,确定所述目标视频资源对应的流行度;
[0080]
当流行度大于预设流行度阈值时,获取该视频制作者对应的若干视频数据集,其中,若干视频数据集中的每个视频数据集均对应一超分倍数,且各视频数据集各自对应的超分倍数互不相同;
[0081]
对于若干视频数据集中的每个视频数据集,将该视频数据集对经过训练的通用超分模型进行训练,以得到设定超分网络模型,其中,每个视频数据集对应的通用超分模型配置有个视频数据集对应的超分倍数。
[0082]
具体地,若干视频数据集中的每个视频数据集均对应一超分倍数,且各视频数据集各自对应的超分倍数互不相同,其中,若干视频时间集中的每个视频数据集均包括若干视频资源组,若干视频资源组中的每个视频资源组均包括两个视频资源,分别记为低分辨
视频资源和高分辨率视频资源,高分辨率视频资源的分辨率等于低分辨率视频资源的分辨率与该视频资源组对应的超分倍数的乘积。例如,若干视频数据集包括视频数据集(360p,720p)、视频数据集(240p,720p)以及视频数据集(180p,720p),其中,视频数据集(360p,720p)对应的超分倍数为2,视频数据集(240p,720p)对应的超分倍数为3,视频数据集(180p,720p)对应的超分倍数为4。
[0083]
在本实施例的一个实现方式中,如图5所示,所述设定超分网络模型的训练过程是在视频资源对应的直播端开启直播确定,可以理解的是,在视频资源对应的直播端开启直播时,预设视频资源对应的流行度,并基于流行度确定是否需要训练设定网络模型,当需要训练设定超分网络模型时,会采集视频制作者对应的视频资源,以便于采集到的视频资源训练得到设定超分网络模型。此外,所述对经过训练的通用超分模型进行训练的过程可以为在对通用超分网络模型进行增量训练时,随机生成一个超分倍数,并抽取该超分倍数对应的视频数据集作为训练样本,并进行模型训练,或者是,将超分倍数由小到大排序,按照超分倍数递增的顺序训练超分模型等。
[0084]
在实际应用中,由于主播端每次上传一种分辨率的视频资源,所以在直播中很难同时收集到若干中不同超分倍数的训练集,而对于直播端上传的视频资源进行上采样或者下采样需要花费额外的时间。为此,可以分别获取各超分倍数的视频数据训练各超分倍数对应的设定超分网络模型,并且比对设定超分网络模型的模型效果,并根据模型效果在训练得到若干设定超分网络模型中选取一设定超分网络模型作为视频制作者对应的超分网络模型。在本实施例的一个具体实现方式中,所述设定超分网络模型可以为超分倍数4对应的设定超分网络模型,这样一方面可以节省视频数据集的采集时间,另一方还可以保证超分得到的视频资源的视频质量。
[0085]
在直播系统中,同一个视频可以被编码成不同的分辨率,例如,180p,240p,270p,360p等。因此对于不同超分倍数的视频数据集也存在着不同的选择,例如,对于超分倍数4的视频数据集可选择的有[180p,720p][240p,960p][270p,1080p]。此外,在接收到视频资源之后,会云服务器自身是否已经存在经过训练的设定超分网络模型,如果已经存在设定超分网络模型,对设定超分网络模型进行验证,判断设定超分网络模型是否可以为当前视频资源提供视频重构服务,如果采用该设定超分网络模型超分得到视频资源可以满足预设条件,采用该设定超分网络模型作为该视频资源对应的设定超分网络模型;若不满足预设条件,则基于该视频资源对该设定超分网络模型进行增强训练,以使得增强后的设定超分网络模型可以满足预设条件,其中,预设条件为超分得到的视频资源的视频质量达到预设阈值。当然,当未存在设定超分网络模型时,基于接收到的视频资源对通用超分网络模型进行训练,以得到视频资源对应的视频制作者对应的设定超分网络模型。
[0086]
综上所述,本实施例提供了一种基于云边协议的直播视频传输方法,所述方法包括接收直播端上传的视频资源,确定所述视频资源对应的流行度;基于所述流行度确定所述视频资源对应的智能边缘以及超分倍数,以使得所述智能边缘按照所述超分倍数对所述视频资源进行超分处理,得到超分视频资源。本申请在直播端上行链路带宽不足的情况下,通过收集主播端的视频资源、边缘计算信息以及用户信息,利用深度强化模型进行超分网络模型以及超分倍数,并通过超分网络模型对主播端上传的视频资源进行超分,提升了直播视频的视频质量,从而提高了用户qoe。
[0087]
基于上述基于云边协议的直播视频传输方法,本实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上述实施例所述的基于云边协议的直播视频传输方法中的步骤。
[0088]
基于上述基于云边协议的直播视频传输方法,本申请还提供了一种云服务器,如图6所示,其包括至少一个处理器(processor)20;显示屏21;以及存储器(memory)22,还可以包括通信接口(communications interface)23和总线24。其中,处理器20、显示屏21、存储器22和通信接口23可以通过总线24完成相互间的通信。显示屏21设置为显示初始设置模式中预设的用户引导界面。通信接口23可以传输信息。处理器20可以调用存储器22中的逻辑指令,以执行上述实施例中的方法。
[0089]
此外,上述的存储器22中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
[0090]
存储器22作为一种计算机可读存储介质,可设置为存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令或模块。处理器20通过运行存储在存储器22中的软件程序、指令或模块,从而执行功能应用以及数据处理,即实现上述实施例中的方法。
[0091]
存储器22可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据云服务器的使用所创建的数据等。此外,存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器。例如,u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。
[0092]
此外,上述存储介质以及云服务器中的多条指令处理器加载并执行的具体过程在上述方法中已经详细说明,在这里就不再一一陈述。
[0093]
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1