CN116781917A - 基于算力网络的视频转码方法、装置、设备及存储介质 - Google Patents

基于算力网络的视频转码方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN116781917A
CN116781917A CN202211157805.8A CN202211157805A CN116781917A CN 116781917 A CN116781917 A CN 116781917A CN 202211157805 A CN202211157805 A CN 202211157805A CN 116781917 A CN116781917 A CN 116781917A
Authority
CN
China
Prior art keywords
node
video
transcoding
transcoded
determining
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211157805.8A
Other languages
English (en)
Inventor
王艳辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Mobile Communications Group Co Ltd
China Mobile Suzhou Software Technology Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Suzhou Software Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Mobile Communications Group Co Ltd, China Mobile Suzhou Software Technology Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN202211157805.8A priority Critical patent/CN116781917A/zh
Priority to PCT/CN2023/111561 priority patent/WO2024060860A1/zh
Publication of CN116781917A publication Critical patent/CN116781917A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明实施例提供一种基于算力网络的视频转码方法、装置、设备及存储介质,其中,所述方法包括:确定待转码视频对应的算力资源;在满足所述算力资源的至少一个节点中,基于所述至少一个节点中的每个节点对应的优先值确定目标节点;利用所述目标节点对所述待转码视频进行转码,得到转码后的视频。相对于基于云计算的转码方式,采用本发明实施例的技术方案,基于算力网络的转码方式,在所述算力网络的云层、边缘层或终端层中满足所述算力资源的至少一个节点中确定目标节点,利用所述目标节点对所述待转码视频进行转码能够降低延时,利用所述目标节点对所述待转码视频进行转码还能够最大限度地利用资源,提升资源的利用率。

Description

基于算力网络的视频转码方法、装置、设备及存储介质
技术领域
本发明涉及移动通信技术领域,具体涉及一种基于算力网络的视频转码方法、装置、设备及存储介质。
背景技术
目前相关技术中,主流的视频转码系统是基于云计算的集中式转码系统。相关技术中的技术方案有如下问题:一方面在线转码的效率低:由于在线转码部署在云中心,所有需要转码的视频都需要传到云中心计算在线转码,然后给推到客户侧。云层的计算中心一般距离用户较远,会有比较大的延迟。视频直播对时延的要求时很高的,因此会导致时延高,用户体验不佳。另一方面离线转码的资源利用率低:离线转码对计算资源的要求很高,但相关技术中的方式,计算资源的利用仅限于离线转码集群,无法做到资源的充分利用。针对该问题,目前尚无有效解决方案。
发明内容
有鉴于此,本发明的主要目的在于提供一种基于算力网络的视频转码方法、装置、设备及存储介质。
为达到上述目的,本发明的技术方案是这样实现的:
本发明实施例提供一种基于算力网络的视频转码方法,所述方法包括:
确定待转码视频对应的算力资源;
在满足所述算力资源的至少一个节点中,基于所述至少一个节点中的每个节点对应的优先值确定目标节点;
利用所述目标节点对所述待转码视频进行转码,得到转码后的视频。
在上述方案中,所述转码包括在线转码,所述方法还包括:
在所述算力网络中确定至少一个第一节点;其中,所述第一节点表征在所述算力网络的边缘层中满足所述算力资源的任一节点;
基于所述至少一个第一节点中的每个节点对应的第一优先值确定第一目标节点;
利用所述第一目标节点对所述待转码视频进行在线转码,得到在线转码后的第一视频。
在上述方案中,所述基于所述至少一个第一节点中的每个节点对应的第一优先值确定第一目标节点,包括:
获取与所述至少一个第一节点中的每个节点对应的第一参数;所述第一参数表征所述第一节点与所述待转码视频的流畅度相关的属性参数;
基于预设模型确定与所述第一参数对应的第二参数;所述第二参数表征所述第一参数对所述待转码视频的流畅度的影响参数;
基于所述第一参数和所述第二参数,确定所述至少一个第一节点中的每个节点对应的第一优先值;
将最小的所述第一优先值对应的第一节点作为所述第一目标节点。
在上述方案中,所述方法还包括:
基于与所述至少一个第一节点中的每个节点相关的第一样本参数和第二样本参数,构建训练样本集合;
以所述训练样本集合包括的第一样本参数为输入,以所述训练样本集合包括的第二样本参数为输出,对第一模型进行训练,得到预设模型。
在上述方案中,在所述基于所述至少一个第一节点中的每个节点对应的第一优先值确定第一目标节点之后,所述方法还包括:
确定所述第一目标节点的第一当前优先值;
确定所述至少一个第一节点中每个节点对应的第二当前优先值;
确定所述第二当前优先值中最小的第二当前优先值;
在所述第一当前优先值和所述最小的第二当前优先值满足预设条件的情况下,将所述最小的第二当前优先值对应的第一节点更新为所述第一目标节点。
在上述方案中,所述利用所述第一目标节点对所述待转码视频进行在线转码,得到在线转码后的第一视频之后,所述方法还包括:
在所述第一目标节点距离用户最近的情况下,通过所述第一目标节点对所述第一视频进行播放。
在上述方案中,所述转码包括离线转码,所述方法还包括:
在所述算力网络中确定至少一个第二节点;其中,所述第二节点表征在所述算力网络的终端层、边缘层或云层中满足所述算力资源的任一节点;
基于所述至少一个第二节点中的每个节点对应的第二优先值确定第二目标节点;
利用所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频。
在上述方案中,所述基于所述至少一个第二节点中的每个节点对应的第二优先值确定第二目标节点,包括:
获取与所述至少一个第二节点中的每个节点对应的第三参数;所述第三参数表征第二节点与所述待转码视频的流畅度相关的属性参数;
确定与所述第三参数对应的第四参数;所述第四参数表征所述第三参数对所述待转码视频的流畅度的影响参数;
基于所述第三参数和所述第四参数,确定所述至少一个第二节点中的每个节点对应的第二优先值;
将最大的所述第二优先值对应的第二节点作为所述第二目标节点。
在上述方案中,所述利用所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频,包括:
在所述第二目标节点在所述算力网络的云层或边缘层中的情况下,确定对所述待转码视频进行离线转码的第一调度方式;
基于所述第一调度方式,通过所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频。
在上述方案中,所述利用所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频,包括:
在所述第二目标节点在所述算力网络的终端层中的情况下,确定对所述待转码视频进行离线转码的第二调度方式;
基于所述第二调度方式,通过所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频。
在上述方案中,所述方法还包括:
获取所述算力网络的终端层进行调度的第一算力;
获取对所述待转码视频进行转码的第二算力;
基于所述第一算力和所述第二算力,确定所述终端层的收益参数。
本发明实施例提供一种基于算力网络的视频转码装置,所述装置包括:
第一确定模块,用于确定待转码视频对应的算力资源;
第二确定模块,用于在满足所述算力资源的至少一个节点中,基于所述至少一个节点中的每个节点对应的优先值确定目标节点;
转码模块,用于利用所述目标节点对所述待转码视频进行转码,得到转码后的视频。
本发明实施例提供一种基于算力网络的视频转码设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现上述任一项所述的方法。
本发明实施例提供一种存储介质,所述存储介质存储有可执行指令,当所述可执行指令被处理器执行时,实现上述任一项所述的方法。
本发明实施例提供一种基于算力网络的视频转码方法、装置、设备及存储介质,其中,所述方法包括:确定待转码视频对应的算力资源;在满足所述算力资源的至少一个节点中,基于所述至少一个节点中的每个节点对应的优先值确定目标节点;利用所述目标节点对所述待转码视频进行转码,得到转码后的视频。相对于基于云计算的转码方式,采用本发明实施例的技术方案,基于算力网络的转码方式,在所述算力网络的云层、边缘层或终端层中满足所述算力资源的至少一个节点中确定目标节点,利用所述目标节点对所述待转码视频进行转码能够克服云层的计算中心一般距离用户较远的问题,不仅实现了降低视频播放的延时,还实现了最大限度地利用资源,提升资源的利用率。
附图说明
图1为本发明实施例基于算力网络的视频转码方法相关技术中转码系统架构示意图;
图2为本发明实施例基于算力网络的视频转码方法实现流程示意图;
图3为本发明实施例基于算力网络的视频转码方法转码系统架构示意图;
图4为本发明实施例基于算力网络的视频转码方法在线转码实现流程示意图;
图5为本发明实施例基于算力网络的视频转码方法离线转码实现流程示意图;
图6为本发明实施例基于算力网络的视频转码装置的组成结构示意图;
图7为本发明实施例基于算力网络的视频转码设备的一种硬件实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对发明的具体技术方案做进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
图1为本发明实施例基于算力网络的视频转码方法相关技术中转码系统架构示意图,如图1所示,相关技术中一种典型的转码系统的技术架构包括:源端、管理节点、云存储、离线转码模块和在线转码模块。其中,源端包括各种类型的终端,包括个人计算机(Personal Computer,PC)、手机、摄像头等。源端负责采集视频数据,上传到云平台。管理节点负责管理系统的数据,处理业务逻辑,提供应用程序(Application ProgrammingInterface,API)接口等。云存储一般使用对象存储。对象存储一般使用中心存储的方式。用户先将视频文件手动选择传入自己对象存储。然后选择文件进行转码。转码时,转码集群先从云存储中心下载视频文件,转码完成后,再存回对象存储。离线转码是指将一个视频文件转换成另一个或多个不同码率的视频文件,以适应不同的网络带宽、不同的终端处理能力和不同的用户需求。在线转码是指将直播流转换成多种多个不同分辨率或码率的直播流,从而可以分发到不同的直播平台。
在相关技术中的转码方式中,在视频转码完成以后,继续将视频放在云存储中心。同上传一样,用户下载和播放时同样面临距离视频服务地址远,播放和下载效率低下的问题。
针对以上相关技术的不足,本发明实施例提供一种基于算力网络的视频转码方法、装置、设备及存储介质,所述算力网络系统包括云层、边缘层、终端层三级。终端层负责采集视频,将采集到的视频实时推送到边缘侧。通过在边缘层进行在线转码,通过边边协同,将实时视频通过最近的边缘节点推送到客户端(播放端),保证传输的实时性。针对实时性的要求不高的离线转码,可以统一协调云层、边缘层、终端层三级算力,选择最合适的节点进行转码。将转码的结果回传给云层存储中心进行存储,在播放时,将云层存储中心的视频作为源站,各边缘节点作为加速节点,提升视频的播放流畅度。整个系统中,终端层既消耗算力又贡献算力,系统管理模块提供基于算力的计费方式。
本发明实施例提出一种基于算力网络的视频转码方法,该方法所实现的功能可以通过基于算力网络的视频转码设备中的处理器调用程序代码来实现,当然程序代码可以保存在计算机存储介质中,可见,该计算设备至少包括处理器和存储介质。
图2为本发明实施例基于算力网络的视频转码方法实现流程示意图,如图2所示,所述方法包括:
步骤201:确定待转码视频对应的算力资源;
步骤202:在满足所述算力资源的至少一个节点中,基于所述至少一个节点中的每个节点对应的优先值确定目标节点;
步骤203:利用所述目标节点对所述待转码视频进行转码,得到转码后的视频。
在步骤201中,所述基于算力网络的视频转码方法的应用场景可以根据实际情况确定,在此不做限定。作为一种示例,所述基于算力网络的视频转码方法可以应用于一种面向视频转码的算力网络服务系统,所述算力网络服务系统是一种面向算力网络的视频转码系统。
所述待转码视频可以根据实际情况确定,在此不做限定。作为一种示例,所述待转码视频可以是需要进行在线转码的直播流,也可以是需要进行离线转码的视频文件。
所述待转码视频对应的算力资源的确定过程可以根据实际情况确定,在此不做限定。作为一种示例,可以根据转码模板和所述待转码视频的参数,确定所述待转码视频对应的算力资源。其中,所述待转码视频的参数可以根据实际情况确定,在此不做限定。作为一种示例,所述待转码视频的参数可以是视频格式、分辨率、码率等参数中任意一种或多种。所述转码模板可以根据实际情况确定,在此不做限定。作为一种示例,所述转码模板可以是所述待转码视频关联的模板。
在步骤202中,所述至少一个节点可以根据实际情况确定,在此不做限定。作为一种示例,所述至少一个节点可以是所述算力网络的云层、边缘层或终端层中满足所述算力资源的节点。所述至少一个节点的个数可以根据实际情况确定,在此不做限定。
所述优先值可以根据实际情况确定,在此不做限定。作为一种示例,所述优先值可以是表征所述至少一个节点中的每个节点与所述待转码视频的流畅度关系的数据。所述在满足所述算力资源的至少一个节点中,基于所述至少一个节点中的每个节点对应的优先值确定目标节点可以为,在满足所述算力资源的至少一个节点中,基于所述至少一个节点中的每个节点对应的优先值确定所述待转码视频的最优流畅度;将所述最优流畅度对应的节点作为所述目标节点。
在步骤203中,所述目标节点可以根据实际情况确定,在此不做限定。作为一种示例,所述目标节点可以是基于所述算力网络的云层、边缘层或终端层中所述至少一个节点中的每个节点对应的优先值确定的节点。
所述转码可以根据实际情况确定,在此不做限定。作为一种示例,所述转码可以包括在线转码和离线转码。所述转码后的视频可以根据实际情况确定,在此不做限定。作为一种示例,所述转码后的视频可以是直播流和视频文件。具体地,所述利用所述目标节点对所述待转码视频进行转码,得到转码后的视频可以为,利用所述目标节点对所述直播流进行转换,得到多种多个不同分辨率或码率的直播流;还可以为,利用所述目标节点对所述一个视频文件进行转换,得到另一个或多个不同码率的视频文件。
本发明实施例提供一种基于算力网络的视频转码方法,所述方法包括:确定待转码视频对应的算力资源;在满足所述算力资源的至少一个节点中,基于所述至少一个节点中的每个节点对应的优先值确定目标节点;利用所述目标节点对所述待转码视频进行转码,得到转码后的视频。相对于基于云计算的转码方式,采用本发明实施例的技术方案,基于算力网络的转码方式,在所述算力网络的云层、边缘层或终端层中满足所述算力资源的至少一个节点中确定目标节点,利用所述目标节点对所述待转码视频进行转码能够克服云层的计算中心一般距离用户较远的问题,不仅实现了降低视频播放的延时,还实现了最大限度地利用资源,提升资源的利用率。
在本发明的一种可选实施例中,所述转码包括在线转码,所述方法还包括:
在所述算力网络中确定至少一个第一节点;其中,所述第一节点表征在所述算力网络的边缘层中满足所述算力资源的任一节点;
基于所述至少一个第一节点中的每个节点对应的第一优先值确定第一目标节点;
利用所述第一目标节点对所述待转码视频进行在线转码,得到在线转码后的第一视频。
本实施例中,所述在所述算力网络中确定至少一个第一节点可以根据实际情况确定,在此不做限定。作为一种示例,所述至少一个第一节点可以是在所述算力网络的边缘层中确定满足所述算力资源的至少一个第一节点,可以在所述算力网络的边缘层中确定满足所述算力资源的边缘节点,将所述满足所述算力资源的边缘节点作为所述算力网络的边缘层中至少一个第一节点。与相关技术中以云计算为中心的在线转码流程不同,本实施例基于算力网络的在线转码主要依赖终端层和边缘层的边缘节点。
所述第一优先值可以根据实际情况确定,在此不做限定。作为一种示例,所述第一优先值可以是表征所述算力网络的边缘层的至少一个第一节点中的每个节点与所述待转码视频的流畅度关系的数据。所述基于所述至少一个第一节点中的每个节点对应的第一优先值确定第一目标节点可以为,基于所述至少一个第一节点中的每个节点对应的第一优先值确定所述待转码视频的第一最优流畅度;将所述第一最优流畅度对应的第一节点作为所述第一目标节点。
所述第一视频可以根据实际情况确定,在此不做限定。作为一种示例,在对所述待转码视频进行在线转码的情况下,所述第一视频可以是将所述待转码视频转换成多种多个不同分辨率或码率的直播流。
所述利用所述第一目标节点对所述待转码视频进行在线转码,得到在线转码后的第一视频可以为,利用所述算力网络的边缘层中第一目标节点对所述待转码视频进行在线转码,得到在线转码后的第一视频。
在本发明的一种可选实施例中,所述基于所述至少一个第一节点中的每个节点对应的第一优先值确定第一目标节点,包括:
获取与所述至少一个第一节点中的每个节点对应的第一参数;所述第一参数表征所述第一节点与所述待转码视频的流畅度相关的属性参数;
基于预设模型确定与所述第一参数对应的第二参数;所述第二参数表征所述第一参数对所述待转码视频的流畅度的影响参数;
基于所述第一参数和所述第二参数,确定所述至少一个第一节点中的每个节点对应的第一优先值;
将最小的所述第一优先值对应的第一节点作为所述第一目标节点。
本实施例中,所述第一参数可以根据实际情况确定,在此不做限定。作为一种示例,所述第一参数可以是所述算力网络的终端层与所述算力网络的边缘层中各个边缘节点之间的距离、所述算力网络的边缘层中各个边缘节点的性能以及所述算力网络的边缘层中各个边缘节点的负载中任意一个或多个参数。
所述预设模型可以根据实际情况确定,在此不做限定。作为一种示例,所述预设模型可以表征在所述待转码视频的流畅度与所述第二参数的对应关系。所述基于预设模型确定与所述第一参数对应的第二参数可以为,基于所述预设模型确定与第二最优流畅度对应的第二参数;将所述第二最优流畅度对应的第二参数作为所述第一参数对应的第二参数。
所述第二参数可以根据实际情况确定,在此不做限定。作为一种示例,所述第二参数可以是所述算力网络的终端层与所述算力网络的边缘层中各个边缘节点之间的距离的影响参数、所述算力网络的边缘层中各个边缘节点的性能的影响参数以及所述算力网络的边缘层中各个边缘节点的负载的影响参数中任意一个或多个影响参数。
所述基于所述第一参数和所述第二参数,确定所述至少一个第一节点中的每个节点对应的第一优先值可以为,基于所述第一参数和所述第二参数的乘积进行加和,得到所述至少一个第一节点中的每个节点对应的第一优先值。
在一些实施例中,所述基于所述至少一个第一节点中的每个节点对应的第一优先值确定第一目标节点可以为,基于所述至少一个第一节点中的每个节点对应的第一优先值确定所述待转码视频的流畅度;将最小的所述第一优先值对应的所述待转码视频的流畅度作为所述第一最优流畅度;将所述第一最优流畅度对应的第一节点作为所述第一目标节点。
在本发明的一种可选实施例中,所述方法还包括:
基于与所述至少一个第一节点中的每个节点相关的第一样本参数和第二样本参数,构建训练样本集合;
以所述训练样本集合包括的第一样本参数为输入,以所述训练样本集合包括的第二样本参数为输出,对第一模型进行训练,得到预设模型。
本实施例中,所述第一样本参数可以根据实际情况确定,在此不做限定。作为一种示例,所述第一样本参数可以是所述算力网络的终端层与所述算力网络的边缘层中各个边缘节点之间的距离、所述算力网络的边缘层中各个边缘节点的性能、所述算力网络的边缘层中各个边缘节点的负载以及用户的体验值中任意一个或多个参数。其中,所述用户的体验值可以是与所述待转码视频的流畅度呈正相关的参数。
所述第二样本参数可以根据实际情况确定,在此不做限定。作为一种示例,所述第二样本参数可以是所述算力网络的终端层与所述算力网络的边缘层中各个边缘节点之间的距离的影响参数、所述算力网络的边缘层中各个边缘节点的性能的影响参数以及所述算力网络的边缘层中各个边缘节点的负载的影响参数中任意一个或多个影响参数。
在一些实施例中,所述基于预设模型确定与所述第一参数对应的第二参数可以为,基于所述预设模型的第一样本参数中用户的体验值确定第二最优流畅度;基于所述预设模型的第一样本参数中所述算力网络的终端层与所述算力网络的边缘层中各个边缘节点之间的距离、所述算力网络的边缘层中各个边缘节点的性能以及所述算力网络的边缘层中各个边缘节点的负载中任意一个或多个参数,确定与所述第二最优流畅度对应的第二参数;将所述第二最优流畅度对应的第二参数作为所述第一参数对应的第二参数。
在本发明的一种可选实施例中,在所述基于所述至少一个第一节点中的每个节点对应的第一优先值确定第一目标节点之后,所述方法还包括:
确定所述第一目标节点的第一当前优先值;
确定所述至少一个第一节点中每个节点对应的第二当前优先值;
确定所述第二当前优先值中最小的第二当前优先值;
在所述第一当前优先值和所述最小的第二当前优先值满足预设条件的情况下,将所述最小的第二当前优先值对应的第一节点更新为所述第一目标节点。
本实施例中,考虑到所述算力网络的终端层可能处在不断的移动当中,计算得到的第一优先值也在不断变化。则需要确定所述第一目标节点的第一当前优先值,还需要实时确定所述至少一个第一节点中每个节点对应的第二当前优先值,重新确定最小的所述第二当前优先值对应的第一节点。
在一些实施例中,所述方法还包括:确定所述第一当前优先值与所述最小的第二当前优先值对应的切换参数;其中,所述切换参数表征切换节点对性能的提升比例参数。
所述预设条件可以根据实际情况确定,在此不做限定。作为一种示例,所述预设条件可以是判断所述切换参数是否大于预设阈值。所述预设阈值可以根据实际情况确定,在此不做限定。
所述在所述第一当前优先值和所述最小的第二当前优先值满足预设条件的情况下,将所述最小的第二当前优先值对应的第一节点更新为所述第一目标节点可以为,在所述第一当前优先值和所述最小的第二当前优先值对应的所述切换参数大于预设阈值的情况下,将所述最小的第二当前优先值对应的第一节点更新为所述第一目标节点。
在本发明的一种可选实施例中,所述利用所述第一目标节点对所述待转码视频进行在线转码,得到在线转码后的第一视频之后,所述方法还包括:
在所述第一目标节点距离用户最近的情况下,通过所述第一目标节点对所述第一视频进行播放。
本实施例中,通过距离用户最近的第一目标节点对所述第一视频进行播放,能够减少终端层与播放端的距离,起到了降低延时的作用。
在一些实施例中,如果所述第一目标节点距离用户较远,在所述第一目标节点不是距离用户最近的节点情况下,确定距离用户最近的所述算力网络的边缘层中的第三目标节点;将所述第一视频推送至所述第三目标节点;通过所述第三目标节点对所述第一视频进行播放。
在本发明的一种可选实施例中,所述转码包括离线转码,所述方法还包括:
在所述算力网络中确定至少一个第二节点;其中,所述第二节点表征在所述算力网络的终端层、边缘层或云层中满足所述算力资源的任一节点;
基于所述至少一个第二节点中的每个节点对应的第二优先值确定第二目标节点;
利用所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频。
本实施例中,所述在所述算力网络中确定至少一个第二节点可以根据实际情况确定,在此不做限定。作为一种示例,可以在所述算力网络的终端层、边缘层或云层中确定满足所述算力资源的节点。
所述第二优先值可以根据实际情况确定,在此不做限定。作为一种示例,所述第二优先值可以是表征所述算力网络的终端层、边缘层或云层中至少一个节点中的每个节点与所述待转码视频的流畅度关系的数据。所述基于所述至少一个第二节点中的每个节点对应的第二优先值确定第二目标节点可以为,基于所述至少一个第二节点中的每个节点对应的第二优先值确定所述待转码视频的第三最优流畅度;将所述第三最优流畅度对应的第二节点作为所述第二目标节点。
所述第二视频可以根据实际情况确定,在此不做限定。作为一种示例,在对所述待转码视频进行离线转码的情况下,所述第二视频可以是将所述待转码视频转换成另一个或多个不同码率的视频文件。
所述利用所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频可以为,利用所述算力网络的终端层、边缘层或云层中第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频。
在本发明的一种可选实施例中,所述基于所述至少一个第二节点中的每个节点对应的第二优先值确定第二目标节点,包括:
获取与所述至少一个第二节点中的每个节点对应的第三参数;所述第三参数表征第二节点与所述待转码视频的流畅度相关的属性参数;
确定与所述第三参数对应的第四参数;所述第四参数表征所述第三参数对所述待转码视频的流畅度的影响参数;
基于所述第三参数和所述第四参数,确定所述至少一个第二节点中的每个节点对应的第二优先值;
将最大的所述第二优先值对应的第二节点作为所述第二目标节点。
本实施例中,所述第三参数可以根据实际情况确定,在此不做限定。作为一种示例,所述第三参数可以是所述算力网络的所述算力网络的终端层、边缘层或云层中各个节点的性能、所述算力网络的终端层、边缘层或云层中各个节点的负载以及所述算力网络的终端层、边缘层或云层中各个节点的运输成本中任意一个或多个参数。
所述第四参数可以根据实际情况确定,在此不做限定。作为一种示例,所述第四参数可以是所述算力网络的终端层、边缘层或云层中各个节点的性能的影响参数、所述算力网络的终端层、边缘层或云层中各个节点的负载的影响参数以及所述算力网络的终端层、边缘层或云层中各个节点的运输成本的影响参数中任意一个或多个影响参数。
所述基于所述第三参数和所述第四参数,确定所述至少一个第二节点中的每个节点对应的第二优先值可以为,基于所述第三参数和所述第四参数的乘积进行加和,得到所述至少一个第二节点中的每个节点对应的第二优先值。
在一些实施例中,所述基于所述至少一个第二节点中的每个节点对应的第二优先值确定第二目标节点可以为,基于所述至少一个第二节点中的每个节点对应的第二优先值确定所述待转码视频的流畅度;将最大的所述第二优先值对应的所述待转码视频的流畅度作为第三最优流畅度;将所述第三最优流畅度对应的第二节点作为所述第二目标节点。
在本发明的一种可选实施例中,所述利用所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频,包括:
在所述第二目标节点在所述算力网络的云层或边缘层中的情况下,确定对所述待转码视频进行离线转码的第一调度方式;
基于所述第一调度方式,通过所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频。
本实施例中,所述第一调度方式可以根据实际情况确定,在此不做限定。作为一种示例,所述第一调度方式可以是使用k8s(Kubernetes)做集群的计算调度。
所述基于所述第一调度方式,通过所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频可以为,基于所述云层或边缘层的k8s创建子调度单位(pod);通过所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频。
在本发明的一种可选实施例中,所述利用所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频,包括:
在所述第二目标节点在所述算力网络的终端层中的情况下,确定对所述待转码视频进行离线转码的第二调度方式;
基于所述第二调度方式,通过所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频。
本实施例中,所述第二调度方式可以根据实际情况确定,在此不做限定。作为一种示例,所述第二调度方式可以是使用轻量级k3s做计算调度。
所述基于所述第二调度方式,通过所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频可以为,基于所述终端层的k3s创建子调度单位;通过所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频。
在本发明的一种可选实施例中,所述方法还包括:
获取所述算力网络的终端层进行调度的第一算力;
获取对所述待转码视频进行转码的第二算力;
基于所述第一算力和所述第二算力,确定所述终端层的收益参数。
本实施例中,所述第一算力可以根据实际情况确定,在此不做限定。作为一种示例,所述第一算力可以是所述算力网络的终端层被所述算力网络进行调度贡献的算力。
所述第二算力可以根据实际情况确定,在此不做限定。作为一种示例,所述第二算力可以是所述算力网络的终端层采集的待转码视频被所述算力网络进行转码消耗的算力。
所述基于所述第一算力和所述第二算力,确定所述终端层的收益参数可以为,基于所述第一算力和所述第二算力进行求差,得到所述终端层的收益参数。
为了方便理解本发明实施例,以下以基于算力网络的视频转码方法应用于一种面向视频转码的算力网络服务系统为例进行说明。
图3为本发明实施例基于算力网络的视频转码方法转码系统架构示意图,如图3所示,整个算力网络服务系统分为三个层级,分别是终端层、边缘层和云层。其中,终端层可以是源端;边缘层可以是边缘计算层;云层可以是云计算中心层。由这三个层级的计算、存储、网络资源构成了统一管理、统一调度,同时又保证分工明确的统一算力网络,最高效的完成视频在线转码和离线转码的流程。
流程一:在线转码流程。
与以云计算为中心的在线转码流程不同。基于算力网络的在线转码主要依赖终端层和边缘层的边缘节点。图4为本发明实施例基于算力网络的视频转码方法在线转码实现流程示意图,如图4所示为视频接入和播放的流程。
在线转码包括推流和播放两个阶段。终端层选择最合适的边缘层的边缘节点进行推流或上传,待转码视频在边缘节点进行在线转码后,转码成适合各种设备播放的视频格式。
影响直播用户体验的有两个核心指标。第一:延迟,也就是从播放源到播放端的时间延迟。第二:卡顿,是指视频播放过程中出现画面滞帧,让人们明显感觉到“卡”,单位时间内的播放卡顿次数统计称之为卡顿率。
而影响以上两个核心指标的参数主要有三个。第一:终端层与边缘层的各个边缘节点的距离。一般来说,距离越长,延迟越大,产生卡顿的可能性越高。第二:边缘层的边缘节点的性能。一般来说,边缘节点的性能越好,延迟越小,产生卡顿的可能性越低。第三:边缘层的边缘节点的负载,一般来说,边缘节点的负载越高,延迟越小,产生卡顿的可能性越低。
第一阶段:推流阶段或上传阶段,在推流或上传阶段前,依次从边缘层的各个边缘节点获取这三个参数。
通常来讲,距离越远,传输成本越高,延迟和流畅度也越差。节点性能越高,转码能力越强,延迟和流畅度越强。而节点的负载越高,转码能力越弱,延迟和流畅度越弱。
第一步:计算用户的体验值E1,用户的体验值E1的计算方法如式(1)所示,
E1=α*delay+β*lag (1)
式(1)中,E1表示用户的体验值;delay表示延迟;lag表示卡帧率;α、β分别表示延迟和卡帧率的参数,可以用户根据实际情况确定。其中,用户的体验值E1与第二最优流畅度存在对应关系,第二最优流畅度可以是用户的播放体验级别,用户的体验值E1越大,表示用户的播放体验级别越差。
第二步:计算边缘节点的第一优先值E2,边缘节点的第一优先值E2的计算方法如式(2)所示,
E2=δ*d+ε*l+φ/p (2)
式(2)中,E2表示边缘节点的第一优先值;d表示源端与边缘层中边缘节点的距离;p表示边缘节点的性能;l表示边缘节点的负载;δ、ε、φ分别表示d、l和p对第一优先值的影响参数。其中,边缘节点的第一优先值E2与第一最优流畅度存在对应关系,第一最优流畅度可以是边缘节点的优先级别,边缘节点的第一优先值E2越大,表示边缘节点的优先级别越低。
第三步:对E2中的影响参数进行调优。
边缘节点的第一优先值E2越大时,用户的体验值E1也越大。因为边缘节点的优先级别差时,如果选择该边缘节点,用户的播放体验级别也是差的。
设定边缘节点的第一优先值E2和用户的体验值E1之间满足某种线性关系如式(3)所示,
E1=λE2 (3)
代入得到通过大量数据进行利用现有的测试方法进行学习调优,得到这些参数δ、ε、φ值。其中,大量数据可以是包含E1、d、l、p的训练数据;现有的测试方法可以是模型训练方法。
那么源端在选择边缘节点前,可以先得到d、p、l的值继而得到边缘节点的第一优先值E2值,边缘节点的第一优先值E2越大,那么用户的播放体验级别越差。
第四步:判断源端位置,对待连接的边缘节点进行切换处理。
考虑到源端可能处在不断的移动当中,计算得到的边缘节点的第一优先值E2值也在不断变化。如果源端计算到当前的最优边缘节点已经不是之前所选择的边缘节点时,需要进行切换。由于切换需要有比较大的代价。因此需要当满足一定条件时才能切换。最终选择节点时遵循以下规则。
1)计算当前接入边缘节点的第一优先值,当前接入边缘节点的第一优先值计算方法如式(4)所示,
E2o=δ*doo*lo+φ/po (4)
2)计算所有边缘节点中最小的第一优先值,所有边缘节点中最小的第一优先值计算方法如式(5)所示,
E2m=Min(δ*d+ε*l+φ/p) (5)
3)确定最终选择的边缘节点,当终端层首次接入时,选择E2m对应的边缘节点,否则,计算切换参数θ,切换参数θ的计算方法如式(6)所示,
θ=(E2o-E2m)/E2o (6)
式(6)中,θ表示切换节点对性能的提升比例。设定阈值,当θ大于阈值时,选择E2m对应的边缘节点,否则继续使用E2o对应的边缘节点。阈值可以用户根据实际情况确定。
第二阶段:播放阶段,如果播放端距离上述用于转码的边缘节点距离最近,那么直接播放用于转码的边缘节点的视频。其中,播放端包括用户及转码机器。如果播放端距离此用于转码的边缘节点较远,通过边边协同,以用于转码的边缘节点为源站,推流至距离用户最近的边缘节点,然后播放距离播放端最近的边缘节点的视频。通过这种方式,可以最大限度地拉近源端与播放端的距离,最大程度地降低延时。在边缘节点完整转码的在线视频,会通过边边协同缓存到各个边缘节点播放,用户通过内容分发网络(Content DeliveryNetwork,CDN)播放时,会选择距离最近的边缘节点接入,最大限度地降低时延。
流程二:离线转码流程。
离线转码针对历史视频的录制的历史视频,通过离线转码的方式转码成不同的格式,方便不同的客户端(播放端)播放。离线转码对实时性的要求不高,但是对计算的要求很高,因此需要最大限度的利用云层、边缘层乃至终端层的计算资源。云层和边缘层相对集群规模较大,计算能力较强,可以使用k8s做集群的计算调度。各类终端层的计算能力有限,因此采用轻量级的K3s做计算调度。k3s是rancher开源的一个Kubernetes发行版,k3s相对k8s做了很多裁剪和优化,二进制程序不足50MB,占用资源更少,只需要512MB内存即可运行。因为k3s的以上优点,k3s可以应用在网页浏览器(Edge)、物联网(Internet of Things,IoT)、组织识别系统(Corporate Identity System,CIS)、处理器(Advanced RISC Machines,ARM)等场景中,可以对各类终端层的算力做统一协调与管控。
因此在算力网络内,形成了两级Kubernetes+一级k3s协同调度的格局,即云层和边缘层k8s做集群的计算调度,终端层采用轻量级的k3s做计算调度。混合使用Kubernetes和k3s,既可以在云层和边缘层更灵活地调度资源,又可以将终端层的算力纳入整个网络,最大化的利用整个网络内的资源。
图5为本发明实施例基于算力网络的视频转码方法离线转码实现流程示意图,如图5所示为离线转码的整个流程图。
终端层采集视频以后,对于录制的历史视频,通过边缘层的边缘节点,上传至云层的对象存储。每个视频会关联对应的转码模板,其中,转码模板由终端层指定。算力网络服务系统根据转码模板和视频的参数,计算出所需要的算力资源,然后创建离线转码任务。
进行任务选择时考虑如下因素:
第一:云层、边缘层、终端层三级网络中每个节点是否能满足算力要求。
第二:在满足算力要求的节点中,考虑云层、边缘层、终端层三级网络中每个节点的性能。设定三级网络中每个节点的性能的数值为p′,其影响因素为γ(可以用户根据实际情况确定)。
第三:在满足算力要求的节点中,考虑云层、边缘层、终端层三级网络中每个节点的负载。设定三级网络中每个节点的负载的数值为l′,其影响因素为η(可以用户根据实际情况确定)。
第四:在满足算力要求的节点中,考虑终端层到云层、边缘层、终端层三级网络中每个节点传输成本。设定三级网络中每个节点传输成本的数值为d′,设定其影响因素为λ(可以用户根据实际情况确定)。
最终,三级网络中各个节点的第二优先值V=γp′+ηl′+λ/d′。
其中,三级网络中各个节点的第二优先值V值与第三最优流畅度存在对应关系,第三一最优流畅度可以是三级网络中各个节点的优先级别,三级网络中各个节点的第二优先值V越大,表示三级网络中各个节点的优先级别越高。在符合条件的节点中选择V最大的节点作为最优节点。
计算出最优节点后,触发算力网络中对应的节点进行调度。如果最优节点在云层,则由云层的k8s创建pod。如果最优节点在边缘层,则由对应边缘层的k8s创建pod。如果最优节点在终端层,则由终端层的K3S创建pod。任务执行完成,将对应的pod销毁。
在播放端的用户需要播放历史视频时,将云层存储的视频作为源站,通过边缘层各个边缘节点缓存和传输优化进行加速,提升各个播放端的用户的播放的体验。
流程三:转码算力的管理与交易流程。
与通常转码系统按照视频的大小与转码格式等计算方式不同。面向算力网络服务系统支持按照算力的计费方式。每个终端层,既可以提供算力又会消耗算力。终端层注册到算力网络中,代表其成为算力网络的一个服务网格。终端层自身提供算力,又消耗算力。终端层所采集的视频需要在线转码、离线转码存入对象存储,代表终端层消耗算力。同时,终端层作为K3s的一个网格,可以被整个的算力网络调度,代表终端层可以贡献算力。算力网络服务系统有算力的管理模块,终端层每一次被调度,都可以作为算力的贡献,将贡献值计入。同时,终端层所采集的视频,消耗的在线转码算力与离线转码算力也会被记录。每个终端的最终收益(支出)计算方法如式(7)所示,
∑α1ct+β1mt-∑α2ct+β2mt-∑α3ct+β3mt (7)
式(7)中:c代表消耗cpu的核数;m代表消耗的内存(单位g);t代表使用的时间;α1、β1代表终端贡献的算力的参数;α2、β2代表消耗其所采集的视频在线转码过程中消耗的算力的参数;α3、β3代表消耗其所采集的视频离线转码过程中消耗的算力的参数。
本发明实施例提供一种基于算力网络实现在线视频转码和离线视频转码的整体设计方案。针对实时性要求高的在线转码,在上传阶段,引入最优边缘节点的计算公式,通过利用现有的测试方法进行学习调优,选择最优的边缘节点,在边缘层的边缘节点完成在线转码。播放阶段,通过边边协同,推送到离客户最近的边缘节点实现实时播放。针对实时性要求不高但对算力要求很高的离线转码,协调云层、边缘层、终端层三级资源,通过k8s+k3s进行调度,通过标签的方式指定pod,选择最优的节点进行调度。基于算力的管理与付费方式,终端层既是算力的贡献者也是算力的消耗者。
本发明实施例相对于基于云计算的在线转码方式,基于算力网络的转码方式,能够降低延时,提升播放的流畅度。相对于基于云计算的离线转码方式,基于算力网络的离线转码方式,能够最大限度地利用资源,提升资源的利用率。基于算力的管理与计费方式,可以从技术上最大程度地降低转码成本,提升任务的执行效率,可以实现对视频转码服务提供方和购买方的双赢。
本发明实施例通过云层、边缘层、终端层构成的三级算力网络。针对在线转码,通过直接在边缘转码和边边协同,可以提高上传与下载的效率。针对离线转码,可以最大限度地调度整个系统内的算力资源。引入基于算力的计费,接入的终端层既是算力的消耗者又是算力的贡献者,可以实现算力提供方和购买方的双赢。
本发明实施例提供一种基于算力网络的视频转码装置,图6为本发明实施例基于算力网络的视频转码装置的组成结构示意图,如图6所示,所述装置600包括:
第一确定模块601,用于确定待转码视频对应的算力资源;
第二确定模块602,用于在满足所述算力资源的至少一个节点中,基于所述至少一个节点中的每个节点对应的优先值确定目标节点;
转码模块603,用于利用所述目标节点对所述待转码视频进行转码,得到转码后的视频。
在其他的实施例中,所述转码包括在线转码,所述第二确定模块602还包括:第一确定单元和第二确定单元;其中,
所述第一确定单元,用于在所述算力网络中确定至少一个第一节点;其中,所述第一节点表征在所述算力网络的边缘层中满足所述算力资源的任一节点;
所述第二确定单元,用于基于所述至少一个第一节点中的每个节点对应的第一优先值确定第一目标节点;
所述转码模块603,还用于利用所述第一目标节点对所述待转码视频进行在线转码,得到在线转码后的第一视频。
在其他的实施例中,所述第二确定单元,还用于获取与所述至少一个第一节点中的每个节点对应的第一参数;所述第一参数表征所述第一节点与所述待转码视频的流畅度相关的属性参数;基于预设模型确定与所述第一参数对应的第二参数;所述第二参数表征所述第一参数对所述待转码视频的流畅度的影响参数;基于所述第一参数和所述第二参数,确定所述至少一个第一节点中的每个节点对应的第一优先值;将最小的所述第一优先值对应的第一节点作为所述第一目标节点。
在其他的实施例中,所述装置600还包括:构建模块和训练模块;其中,
所述构建模块,用于基于与所述至少一个第一节点中的每个节点相关的第一样本参数和第二样本参数,构建训练样本集合;
所述训练模块,用于以所述训练样本集合包括的第一样本参数为输入,以所述训练样本集合包括的第二样本参数为输出,对第一模型进行训练,得到所述预设模型。
在其他的实施例中,所述第二确定单元,还用于在所述基于所述至少一个第一节点中的每个节点对应的第一优先值确定第一目标节点之后,确定所述第一目标节点的第一当前优先值;确定所述至少一个第一节点中每个节点对应的第二当前优先值;确定所述第二当前优先值中最小的第二当前优先值;在所述第一当前优先值和所述最小的第二当前优先值满足预设条件的情况下,将所述最小的第二当前优先值对应的第一节点更新为所述第一目标节点。
在其他的实施例中,所述转码模块603,还用于利用所述第一目标节点对所述待转码视频进行在线转码,得到在线转码后的第一视频之后,在所述第一目标节点距离用户最近的情况下,通过所述第一目标节点对所述第一视频进行播放。
在其他的实施例中,所述转码包括离线转码,所述第二确定模块602还包括:第三确定单元和第四确定单元;其中,
所述第三确定单元,用于在所述算力网络中确定至少一个第二节点;其中,所述第二节点表征在所述算力网络的终端层、边缘层或云层中满足所述算力资源的任一节点;
所述第四确定单元,用于基于所述至少一个第二节点中的每个节点对应的第二优先值确定第二目标节点;
所述转码模块603,还用于利用所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频。
在其他的实施例中,所述第四确定单元,还用于获取与所述至少一个第二节点中的每个节点对应的第三参数;所述第三参数表征第二节点与所述待转码视频的流畅度相关的属性参数;确定与所述第三参数对应的第四参数;所述第四参数表征所述第三参数对所述待转码视频的流畅度的影响参数;基于所述第三参数和所述第四参数,确定所述至少一个第二节点中的每个节点对应的第二优先值;将最大的所述第二优先值对应的第二节点作为所述第二目标节点。
在其他的实施例中,所述转码模块603,还用于在所述第二目标节点在所述算力网络的云层或边缘层中的情况下,确定对所述待转码视频进行离线转码的第一调度方式;基于所述第一调度方式,通过所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频。
在其他的实施例中,所述转码模块603,还用于在所述第二目标节点在所述算力网络的终端层中的情况下,确定对所述待转码视频进行离线转码的第二调度方式;基于所述第二调度方式,通过所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频。
在其他的实施例中,所述装置600还包括:第一获取模块、第二获取模块和第三确定模块;其中,
所述第一获取模块,用于获取所述算力网络的终端层进行调度的第一算力;
所述第二获取模块,用于获取对所述待转码视频进行转码的第二算力;
所述第三确定模块,用于基于所述第一算力和所述第二算力,确定所述终端层的收益参数。
以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本发明装置实施例中未披露的技术细节,请参照本发明方法实施例的描述而理解。
需要说明的是,本发明实施例中,如果以软件功能模块的形式实现上述的基于算力网络的视频转码方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术实施例本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台基于算力网络的视频转码设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本发明实施例不限制于任何特定的硬件和软件结合。
对应地,本发明实施例提供一种基于算力网络的视频转码设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现上述任一项所述的方法。
对应地,本发明实施例提供一种存储介质,所述存储介质存储有可执行指令,当所述可执行指令被处理器执行时,实现上述任一项所述的方法。
这里需要指出的是:以上存储介质和设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本发明存储介质和设备实施例中未披露的技术细节,请参照本发明方法实施例的描述而理解。
需要说明的是,图7为本发明实施例基于算力网络的视频转码设备的一种硬件实体结构示意图,如图7所示,该视频转码设备700的硬件实体包括:处理器701和存储器703,可选地,所述视频转码设备700还可以包括通信接口702。
可以理解,存储器703可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,ferromagnetic random access memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random AccessMemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRAM,SynchronousDynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random Access Memory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本发明实施例描述的存储器703旨在包括但不限于这些和任意其它适合类型的存储器。
上述本发明实施例揭示的方法可以应用于处理器701中,或者由处理器701实现。处理器701可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器701中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器701可以是通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器701可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器703,处理器701读取存储器703中的信息,结合其硬件完成前述方法的步骤。
在示例性实施例中,视频转码设备可以被一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,ProgrammableLogic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)、现场可编程门阵列(FPGA,Field-Programmable Gate Array)、通用处理器、控制器、微控制器(MCU,Micro Controller Unit)、微处理器(Microprocessor)、或其他电子元件实现,用于执行前述方法。
在本发明所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其他的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个观测量,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其他形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例的目的。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明实施例上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术实施例本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台视频转码设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例中记载的基于算力网络的视频转码方法、装置、监测器和存储介质只以本发明所述实施例为例,但不仅限于此,只要涉及到该基于算力网络的视频转码方法、装置、监测器和存储介质均在本发明的保护范围。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
以上所述,仅为本发明的实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (14)

1.一种基于算力网络的视频转码方法,其特征在于,所述方法包括:
确定待转码视频对应的算力资源;
在满足所述算力资源的至少一个节点中,基于所述至少一个节点中的每个节点对应的优先值确定目标节点;
利用所述目标节点对所述待转码视频进行转码,得到转码后的视频。
2.根据权利要求1所述的方法,其特征在于,所述转码包括在线转码,所述方法还包括:
在所述算力网络中确定至少一个第一节点;其中,所述第一节点表征在所述算力网络的边缘层中满足所述算力资源的任一节点;
基于所述至少一个第一节点中的每个节点对应的第一优先值确定第一目标节点;
利用所述第一目标节点对所述待转码视频进行在线转码,得到在线转码后的第一视频。
3.根据权利要求2所述的方法,其特征在于,所述基于所述至少一个第一节点中的每个节点对应的第一优先值确定第一目标节点,包括:
获取与所述至少一个第一节点中的每个节点对应的第一参数;所述第一参数表征所述第一节点与所述待转码视频的流畅度相关的属性参数;
基于预设模型确定与所述第一参数对应的第二参数;所述第二参数表征所述第一参数对所述待转码视频的流畅度的影响参数;
基于所述第一参数和所述第二参数,确定所述至少一个第一节点中的每个节点对应的第一优先值;
将最小的所述第一优先值对应的第一节点作为所述第一目标节点。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
基于与所述至少一个第一节点中的每个节点相关的第一样本参数和第二样本参数,构建训练样本集合;
以所述训练样本集合包括的第一样本参数为输入,以所述训练样本集合包括的第二样本参数为输出,对第一模型进行训练,得到预设模型。
5.根据权利要求2所述的方法,其特征在于,在所述基于所述至少一个第一节点中的每个节点对应的第一优先值确定第一目标节点之后,所述方法还包括:
确定所述第一目标节点的第一当前优先值;
确定所述至少一个第一节点中每个节点对应的第二当前优先值;
确定所述第二当前优先值中最小的第二当前优先值;
在所述第一当前优先值和所述最小的第二当前优先值满足预设条件的情况下,将所述最小的第二当前优先值对应的第一节点更新为所述第一目标节点。
6.根据权利要求2所述的方法,其特征在于,所述利用所述第一目标节点对所述待转码视频进行在线转码,得到在线转码后的第一视频之后,所述方法还包括:
在所述第一目标节点距离用户最近的情况下,通过所述第一目标节点对所述第一视频进行播放。
7.根据权利要求1所述的方法,其特征在于,所述转码包括离线转码,所述方法还包括:
在所述算力网络中确定至少一个第二节点;其中,所述第二节点表征在所述算力网络的终端层、边缘层或云层中满足所述算力资源的任一节点;
基于所述至少一个第二节点中的每个节点对应的第二优先值确定第二目标节点;
利用所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频。
8.根据权利要求7所述的方法,其特征在于,所述基于所述至少一个第二节点中的每个节点对应的第二优先值确定第二目标节点,包括:
获取与所述至少一个第二节点中的每个节点对应的第三参数;所述第三参数表征第二节点与所述待转码视频的流畅度相关的属性参数;
确定与所述第三参数对应的第四参数;所述第四参数表征所述第三参数对所述待转码视频的流畅度的影响参数;
基于所述第三参数和所述第四参数,确定所述至少一个第二节点中的每个节点对应的第二优先值;
将最大的所述第二优先值对应的第二节点作为所述第二目标节点。
9.根据权利要求7所述的方法,其特征在于,所述利用所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频,包括:
在所述第二目标节点在所述算力网络的云层或边缘层中的情况下,确定对所述待转码视频进行离线转码的第一调度方式;
基于所述第一调度方式,通过所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频。
10.根据权利要求7所述的方法,其特征在于,所述利用所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频,包括:
在所述第二目标节点在所述算力网络的终端层中的情况下,确定对所述待转码视频进行离线转码的第二调度方式;
基于所述第二调度方式,通过所述第二目标节点对所述待转码视频进行离线转码,得到离线转码后的第二视频。
11.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述算力网络的终端层进行调度的第一算力;
获取对所述待转码视频进行转码的第二算力;
基于所述第一算力和所述第二算力,确定所述终端层的收益参数。
12.一种基于算力网络的视频转码装置,其特征在于,所述装置包括:
第一确定模块,用于确定待转码视频对应的算力资源;
第二确定模块,用于在满足所述算力资源的至少一个节点中,基于所述至少一个节点中的每个节点对应的优先值确定目标节点;
转码模块,用于利用所述目标节点对所述待转码视频进行转码,得到转码后的视频。
13.一种基于算力网络的视频转码设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时,实现权利要求1至11任一项所述的方法。
14.一种存储介质,其特征在于,所述存储介质存储有可执行指令,当所述可执行指令被处理器执行时,实现权利要求1至11任一项所述的方法。
CN202211157805.8A 2022-09-22 2022-09-22 基于算力网络的视频转码方法、装置、设备及存储介质 Pending CN116781917A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202211157805.8A CN116781917A (zh) 2022-09-22 2022-09-22 基于算力网络的视频转码方法、装置、设备及存储介质
PCT/CN2023/111561 WO2024060860A1 (zh) 2022-09-22 2023-08-07 基于算力网络的视频转码方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211157805.8A CN116781917A (zh) 2022-09-22 2022-09-22 基于算力网络的视频转码方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN116781917A true CN116781917A (zh) 2023-09-19

Family

ID=88008734

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211157805.8A Pending CN116781917A (zh) 2022-09-22 2022-09-22 基于算力网络的视频转码方法、装置、设备及存储介质

Country Status (2)

Country Link
CN (1) CN116781917A (zh)
WO (1) WO2024060860A1 (zh)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016161171A1 (en) * 2015-03-31 2016-10-06 Avigilon Corporation Security device capability discovery and device selection
US11711268B2 (en) * 2019-04-30 2023-07-25 Intel Corporation Methods and apparatus to execute a workload in an edge environment
CN110727512B (zh) * 2019-09-30 2020-06-26 星环信息科技(上海)有限公司 集群资源调度方法、装置、设备及储存介质
CN112672227B (zh) * 2019-10-15 2022-11-18 中国电信股份有限公司 基于边缘节点的业务处理方法、装置、节点以及存储介质
US11159609B2 (en) * 2020-03-27 2021-10-26 Intel Corporation Method, system and product to implement deterministic on-boarding and scheduling of virtualized workloads for edge computing

Also Published As

Publication number Publication date
WO2024060860A1 (zh) 2024-03-28

Similar Documents

Publication Publication Date Title
US10872064B2 (en) Utilizing version vectors across server and client changes to determine device usage by type, app, and time of day
CN104243998B (zh) 一种数据处理方法、装置及相关服务器
CN110413673B (zh) 数据库数据统一采集与分发方法及系统
CN101842812A (zh) 用于数字图像转码中的参数质量感知选择的系统和方法
CN113157418A (zh) 服务器资源分配方法和装置、存储介质及电子设备
CN111093094A (zh) 视频转码方法、装置、系统及电子设备及可读存储介质
CN111277869A (zh) 视频播放方法、装置、设备和存储介质
CN112422977A (zh) 音视频转码任务的分配方法和分配装置
CN108512817B (zh) 多视频转码调度方法及装置
CN114040257B (zh) 一种自适应视频流传输播放方法、装置、设备及存储介质
CN108108230A (zh) 基于docker的云平台发布系统
CN106375319A (zh) 一种音视频转码调度的方法、装置、设备及系统
US11405627B2 (en) Video encoding with content adaptive resource allocation
WO2024082770A1 (zh) 视频转码方法、装置、设备、存储介质及视频点播系统
CN109347967A (zh) 一种获取音视频数据的方法及装置
CN112416568A (zh) 音视频转码任务的时长预估方法和时长预估装置
CN116781917A (zh) 基于算力网络的视频转码方法、装置、设备及存储介质
US8774599B2 (en) Method for transcoding and playing back video files based on grid technology in devices having limited computing power
Gao et al. Dhp: A joint video download and dynamic bitrate adaptation algorithm for short video streaming
US10674166B2 (en) Method and system for scalable video streaming
CN112953944A (zh) 基于MapReduce的影音转码方法
CN115022677B (zh) 视频播放方法、装置、设备及介质
Otero et al. A cost‐efficient QoS‐aware analytical model of future software content delivery networks
Gu et al. Wireless cooperative caching system
US20230113372A1 (en) Systems and methods for managing collaboration between network devices over a communications nework

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination