一种视频处理方法、装置及设备、存储介质与流程

文档序号:21103419发布日期:2020-06-16 21:02阅读:174来源:国知局
一种视频处理方法、装置及设备、存储介质与流程

本申请实施例涉及视频处理技术领域,涉及但不限于一种视频处理方法、装置及设备、存储介质。



背景技术:

在相关技术中,转码系统通过外部接口接收客户端发送的视频,并将视频存储在数据库中,转码系统实时扫描数据库,在查找到有未处理的视频时,就对未处理的视频进行转码。但是,相关技术中的转码系统并不能适应用户的需求。



技术实现要素:

有鉴于此,本申请实施例提供一种视频处理方法、装置及设备、存储介质。

本申请实施例的技术方案是这样实现的:

本申请实施例提供了一种视频处理方法,所述方法包括:通过转码系统中的外部接口获取待处理视频;

根据基于用户需求设置的视频配置信息,对所述待处理视频进行预处理,得到预处理视频;

根据所述预处理视频的属性信息,确定所述预处理视频的优先级;

根据所述预处理视频的优先级,对所述预处理视频分配系统资源,以对所述预处理视频进行处理。

本申请实施例提供了一种视频处理装置,所述装置包括:获取模块、预处理模块、第一确定模块和分配模块;其中,

所述获取模块,用于通过转码系统中的外部接口获取待处理视频;

所述预处理模块,用于根据基于用户需求设置的视频配置信息,对所述待处理视频进行预处理,得到预处理视频;

所述第一确定模块,用于根据所述预处理视频的属性信息,确定所述预处理视频的优先级;

所述分配模块,用于根据所述预处理视频的优先级,对所述预处理视频分配系统资源,以对所述预处理视频进行处理。

本申请实施例还提供了一种视频处理设备,包括处理器和用于存储能够在处理器上运行的计算机程序的存储器;其中,所述处理器用于运行所述计算机程序时,处理应用于终端设备的上述方案中所述视频处理的方法的步骤。

本申请实施例还提供了一种存储介质,其上存储有计算机程序,该计算机程序被处理器处理时实现应用于终端设备的上述方案中所述视频处理方法的步骤。

本申请实施例所提供的视频处理方法、装置、设备及存储介质,通过转码系统中的外部接口获取待处理视频;根据基于用户需求设置的视频配置信息,对所述待处理视频进行预处理,得到预处理视频;根据所述预处理视频的属性信息,确定所述预处理视频的优先级;根据所述预处理视频的优先级,对所述预处理视频分配系统资源,以对所述预处理视频进行处理;如此,能够满足用户需求,根据确定的优先级对视频动态分配系统资源,并进行视频转码。

附图说明

图1为本申请实施例的视频处理方法的实现流程示意图;

图2为本申请实施例的相关技术中的转码系统的实现流程示意图;

图3为本申请实施例的转码系统的结构示意图;

图4为本申请实施例的视频预处理的实现流程示意图;

图5为本申请实施例的视频调度的实现流程示意图;

图6为本申请实施例的视频处理装置的组成结构示意图;

图7为本申请实施例的视频处理设备的组成结构示意图。

具体实施方式

下面结合附图及具体实施例对本申请作进一步详细的说明。

图1为本申请实施例中的视频处理方法的实现流程示意图,如图1所示,该方法包括以下步骤:

步骤101:通过转码系统中的外部接口获取待处理视频;

这里,转码系统用于对视频进行处理,在实际应用中,转码系统包括外部接口,客户端通过外部接口向转码系统发送待处理视频,转码系统通过外部接口接收客户端发送的待处理视频,并将待处理视频保存在存储系统中。

步骤102:根据基于用户需求设置的视频配置信息,对所述待处理视频进行预处理,得到预处理视频;

这里,视频配置信息可以包括:目标格式、目标码率、目标关键帧信息等与视频相关的配置信息。

视频配置信息由用户需求确定,基于用户需求可以设置待处理视频的视频配置信息,以使转码系统根据用户需求对待处理视频进行处理。比如:用户需求为将动画视频(flashvideo,flv)格式的视频转换成目标格式为音频视频交错格式(audiovideointerleaved,avi)的视频,则视频配置信息的目标格式为avi格式。

根据待处理视频的视频配置信息,对待处理视频进行预处理,可以包括:对视频的格式、码率进行处理,或者对待处理视频添加关键帧信息等,从而得到预处理视频。

步骤103:根据所述预处理视频的属性信息,确定所述预处理视频的优先级;

这里,预处理视频的属性信息可以包括:视频价值、时间紧迫度等与预处理视频相关的属性。

得到预处理视频后,确定预处理视频的属性信息,根据预处理视频的属性信息,确定预处理视频的优先级。

比如:根据预处理视频的视频价值、时间紧迫度,可以确定预处理视频的优先级为紧急或非紧急。

步骤104:根据所述预处理视频的优先级,对所述预处理视频分配系统资源,以对所述预处理视频进行处理。

根据预处理视频确定的优先级,对预处理视频分配系统资源,利用分配的系统资源,对预处理视频进行处理。

比如:预处理视频确定的优先级为紧急时,对预处理视频分配较多的系统资源,利用上述系统资源对预处理视频进行处理,可以保证优先级为紧急的预处理视频能及时处理。

在利用系统资源,对预处理视频进行处理时,可以先确定预处理视频的处理类型;根据处理类型,对预处理视频进行处理。这里,处理类型可以为:转码处理类型或打码处理类型。

比如:确定预处理视频的处理类型为转码处理类型或打码处理类型时,根据处理类型,对预处理视频进行转码处理或打码处理。

在本申请实施例中,通过转码系统中的外部接口获取待处理视频;根据基于用户需求设置的视频配置信息,对所述待处理视频进行预处理,得到预处理视频;根据所述预处理视频的属性信息,确定所述预处理视频的优先级;根据所述预处理视频的优先级,对所述预处理视频分配系统资源,以对所述预处理视频进行处理;如此,能够满足用户需求,根据确定的优先级对视频动态分配系统资源,并进行视频转码。

本申请实施例提供一种视频处理方法,该方法包括以下步骤:

步骤201:根据所述视频配置信息,确定所述待处理视频的类型;

这里,视频配置信息还可以包括:源格式、源码率等与视频相关的配置信息。

根据视频配置信息中的源格式、源码率等可以确定待处理视频的类型,比如:与用户需求对应的视频配置信息为将flv格式的待处理视频转换成avi格式的视频,则待处理视频的源格式为flv格式,说明待处理视频的类型为flv格式的视频。

步骤202:通过转码系统中的外部接口获取待处理视频;

这样,在通过转码系统中的外部接口获取待处理视频时,可以根据视频配置信息,确定待处理视频的类型,通过转码系统中的外部接口获取对应类型的待处理视频,而不是获取所有的待处理视频。这样,能够只获取需要处理的视频,提高处理效率。

步骤203:根据基于用户需求设置的视频配置信息,对所述待处理视频进行预处理,得到预处理视频;

这里,视频配置信息可以包括:目标格式、目标码率、目标关键帧信息等与视频相关的配置信息。

视频配置信息由用户需求确定,基于用户需求可以设置待处理视频的视频配置信息,以使转码系统根据用户需求对待处理视频进行处理。

在一实施例中,视频配置信息包括:目标格式、目标码率或目标关键帧信息。当视频配置信息为目标格式时,将待处理视频的格式调整为目标格式,从而得到预处理视频;当视频配置信息为目标码率时,将待处理视频的格式调整为目标码率,从而得到预处理视频;当视频配置信息为目标关键帧信息时,根据目标关键帧信息对待处理视频添加关键帧,从而得到预处理视频。

比如:视频配置信息的目标格式为avi格式,则将待处理视频的格式调整为avi格式,得到预处理视频;视频配置信息的码率格式为600比特每秒,则将待处理视频的码率调整为600比特每秒,得到预处理视频。

步骤204:根据所述预处理视频的属性信息,确定所述预处理视频的优先级;

步骤205:根据所述预处理视频的优先级,对所述预处理视频分配系统资源,以对所述预处理视频进行处理。

在本申请实施例中,能够根据视频配置信息,获取待处理视频,提高了处理效率;且能够根据用户需求,对待处理视频的格式、码率、关键帧信息进行预处理,适应用户需求。

本申请实施例提供一种视频处理方法,该方法包括以下步骤:

步骤301:通过转码系统中的外部接口获取待处理视频;

步骤302:根据基于用户需求设置的视频配置信息,对所述待处理视频进行预处理,得到预处理视频;

步骤303:根据所述预处理视频的属性信息,确定所述预处理视频的优先级;

这里,预处理视频的属性信息可以包括:视频价值、时间紧迫度等与预处理视频相关的属性。

得到预处理视频后,确定预处理视频的属性信息,根据预处理视频的属性信息,确定预处理视频的优先级。

在一实施例中,属性信息包括:视频价值和时间紧迫度,配置预处理视频的视频价值、时间紧迫度、视频价值对应的权值和时间紧迫度对应的权值;根据视频价值、时间紧迫度、视频价值对应的权值和时间紧迫度对应的权值,确定预处理视频的优先级得分,根据优先级得分,确定预处理视频的优先级。

比如:配置的预处理视频的视频价值为1,时间紧迫度为2,视频价值对应的权值为0.6,时间紧迫度对应的权值为0.4,对上述参数进行加权求和,确定预处理视频的优先级为1.4,根据优先级得分1.4,确定预处理视频的优先级。

在一实施例中,所述属性信息还包括:剩余价值密度,配置预处理视频的剩余价值密度和剩余价值密度对应的权值,则在确定预处理视频的优先级得分时,包括:根据视频价值、时间紧迫度、剩余价值密度、视频价值对应的权值、时间紧迫度对应的权值和剩余价值密度对应的权值,确定预处理视频的优先级得分。

比如:配置的预处理视频的视频价值为3,时间紧迫度为2,剩余价值密度为1,视频价值对应的权值为0.3,时间紧迫度对应的权值为0.4,剩余价值密度对应的权值为0.3,对上述参数进行加权求和,确定预处理视频的优先级为2,根据优先级得分2,确定预处理视频的优先级。

在一实施例中,预处理视频的优先级包括:紧急或非紧急,在根据优先级得分,确定预处理视频的优先级时,如果优先级得分大于或等于预设分值时,可以确定预处理视频的优先级为紧急;如果优先级得分小于预设分值时,可以确定预处理视频的优先级为非紧急。

比如:优先级得分为1.4,预设分值为1.5,优先级得分小于预设分值,则预处理视频的优先级为非紧急;优先级得分为2,预设分值为1.5,优先级得分大于预设分值,则预处理视频的优先级为紧急。

需要说明的是,时间紧迫度、剩余价值密度可以是变化的,在发生变化时,可以对时间紧迫度、剩余价值密度进行重新配置。

步骤304:根据所述预处理视频的优先级,对所述预处理视频分配系统资源,以对所述预处理视频进行处理。

在一实施例中,当预处理视频的优先级为紧急时,可以将全部系统资源分配给预处理视频,以保证优先级为紧急的预处理视频优先进行处理;如果所述预处理视频的优先级为非紧急时,不分配系统资源给所述预处理视频,以等待优先级为紧急的预处理视频处理完成。

在本申请实施例中,能够根据属性信息,确定预处理视频的优先级,从而动态分配对应的系统资源以处理预处理视频。

本申请实施例提供一种视频处理方法,该方法包括以下步骤:

步骤401:通过转码系统中的外部接口获取待处理视频;

步骤402:根据基于用户需求设置的视频配置信息,对所述待处理视频进行预处理,得到预处理视频;

步骤403:根据所述预处理视频的属性信息,确定所述预处理视频的优先级;

步骤404:根据系统资源占用信息,对确定的所述预处理视频的优先级进行调整,使得所述预处理视频的优先级变高或变低;

这里,系统资源可以包括中央处理器(centralprocessingunit,cpu)或内存,系统资源占用信息用于表征处理视频时对系统资源的占用百分比,在系统资源为cpu时,系统资源占用信息用于表征cpu使用率;在系统资源为内存时,系统资源占用信息用于表征内存使用率。

在确定预处理视频的优先级后,确定系统资源的占用百分比,若预处理视频占用的系统资源超过了阈值,则可将预处理视频的优先级变低,以使预处理视频的优先级对应的系统资源在阈值范围内;若预处理视频占用的系统资源没有超过阈值,则可将预处理视频的优先级变高,使预处理视频的优先级对应的系统资源不超过阈值范围。

这里,在对预处理视频的优先级进行调整时,可以使用nice命令来对预处理视频的优先级进行调整。

步骤405:根据变高或变低的优先级,对所述预处理视频分配系统资源,使得分配的系统资源变大或变小。

对预处理视频的优先级进行调整,使得预处理视频的优先级变高或变低。当预处理视频的优先级变高时,对预处理视频分配较大的系统资源;当预处理视频的优先级变低时,对预处理视频分配较小的系统资源。

在本申请实施例中,对预处理视频的优先级进行调整,通过调整后的优先级对预处理视频分配系统资源,能够动态为预处理视频分配系统资源。

本申请实施例提供一种视频处理方法,该方法包括以下步骤:

步骤501:通过转码系统中的外部接口获取待处理视频;

步骤502:根据基于用户需求设置的视频配置信息,对所述待处理视频进行预处理,得到预处理视频;

步骤503:根据所述预处理视频的属性信息,确定所述预处理视频的优先级;

步骤504:根据所述预处理视频的优先级,确定所述预处理视频对应的系统资源阈值;

根据预处理视频的优先级,在预处理视频优先级与系统资源阈值的对应关系中,确定预处理视频对应的系统资源阈值,比如:预处理视频的优先级为1,根据预处理视频优先级与系统资源阈值的对应关系,可以确定预处理视频对应的系统资源阈值60。

在根据预处理视频的优先级,确定所述预处理视频对应的系统资源阈值之前,需要设置预处理视频优先级与系统资源阈值的对应关系。比如:预处理视频优先级为1时,对应的系统资源阈值为60;预处理视频优先级为2时,对应的系统资源阈值为40。

这里,在设置系统资源阈值时,可以使用cpulimit命令对系统资源阈值进行设置。

步骤505:根据所述系统资源阈值,对所述预处理视频分配系统资源,以使所述预处理视频对应的系统资源不超过所述系统资源阈值。

根据系统资源阈值,将等于或小于系统资源阈值的系统资源分配给预处理视频,以使预处理视频对应的系统资源不超过所述系统资源阈值。

在本申请实施例中,能够根据系统资源阈值为预处理资源分配系统资源,使得预处理视频对应的系统资源不超过所述系统资源阈值。

本申请实施例以数字化学习的视频为例,对本申请实施例提供的视频处理方法进行说明。

数字化学习是指在教育领域建立互联网平台,学生通过网络进行学习的一种全新学习模式,又称为网络化学习或数字化学习e-learning。以数字化学习为核心的信息技术与课程的整合,不同于传统的学习方式,把传统教学方式的优势和数字化环境下教学的优势结合起来,使二者优势互补是社会发展的趋势,也是教育学习的重大变革。

数字化教学的加入有助于改变现行课堂教学的缺憾,丰富学习资源,创设宽松、融洽的学习氛围,活跃课堂气氛,启发学生思维,使学生在积极参与、充分交流中体验到学习和成功的愉悦,从而切实提高学校教学的有效性。随着数字化教学深入发展以及使用用户的增多,需要对应的学习视频也呈指数级增长。

因为学习视频提供者环境不同,拍摄设施不同等原因导致原始视频格式、清晰度、码率、大小等的不同,因此,需要对原始的学习视频进行视频转码。相关技术中的视频转码系统一般使用flv的元数据注入器(yamdi,yetanothermetadatainjectorforflv)和快速动态图像(ffmpeg,fastforwardmpeg)两种工具。

yamdi为flv文件增加了很多元数据metadata信息,比如创建者、是否有关键帧、是否有视频、是否有音频、视频高度和宽度等等。

ffmpeg是一个自由软件,可以运行多种格式的音频和视频的录影、转换和流功能等,包含:音视频解码器库libavcodec和音视频格式转换库libavformat。libavcodec是一个用于多个项目中音频和视频的解码器库,libavformat是一个音频与视频格式转换库。

在相关技术中,转码系统的流程如图2所示。相关技术中的转码系统分为两部分:外部模块21和内部模块22。两部分通过存储系统(数据库)作为桥梁连接。客户端通过外部模块发送视频,等视频转换完成后回传给客户端。转码系统在实时扫描数据库,发现有未处理视频即取出视频进行视频转码。视频转码一般分为两大部分:转换编码和文件添加metadata。

转换编码主要有以下三种情况:码率转换、分辨率转换编码和语法转码。其中码率转换和分辨率转换多用于同类码流语法内转码。其中:

1)码率转换:主要应用于电视广播和网络传输中,其目的是:数字广播中特定级之间的兼容性;及网络传输中在保证有效传输的情况下,尽可能地节省带宽。

2)分辨率转换编码:分为时间分辨率转码和空间分辨率转码。主要针对用户解码器的一些限制,比如:实时处理能力、解码端处理能力及用户端显示器分辨率等。

3)语法转码:主要是由于输入和转码后的码流所遵循的压缩标准不同。

相关技术中的转码机制比较完善,但是不能满足用户负载的动态要求,主要体现在:

1)不同的场景,不同的用户对于视频转换响应速度要求不一致。如用户自己导入,这部分资源应该相应速度高,以便于用户及时能看到和纠正自己导入资源的问题。管理员批量导入,这部分资源对于实时性要求没有那么高,可以在系统闲时处理。2)不同的视频对于转码后的要求不一致,有的视频需要转换成不同清晰度,不同码率的各种视频,另外一种则不需要。

本申请实施例解决在相关技术的转码机制下,动态满足用户需求,根据优先级、系统资源和转码产品的不一致等,动态分布系统资源和优先级,进行资源转码智能化运行。

视频转码模块化动态处理模型如图3所示,分为外部模块30和内部模块31,其中:

外部模块30,用于提供给客户端使用,客户端不用关心内部实现逻辑,通过外部模块传送相应视频,然后转码系统进行视频转码,推送转码后的视频给客户端。

内部模块31,分为不同子模块,包括:视频预处理模块311、系统资源分配模块312、优先级计算模块313、视频存放分配模块314、视频任务调度模块315、处理分配模块316、转码模块317和打码模块318等。其中:

1)视频预处理模块311,用于进行视频基本信息的处理,并进行保存,为下一步处理做准备。资源预处理模块的处理流程如图4所示,包括:

步骤41:将视频输入到队列中,并对其进行缓冲;

步骤42:对输入的视频进行格式、码率、关键帧等处理;

步骤43:再通过队列将视频输出。

2)系统资源分配模块312,用于使用nice命令调整视频的优先级,使用cpulimit命令可以暂停视频,以控制视频所占用处理能力不超过特定限制。其中:

nice命令可以修改视频的优先级,这样就可以让视频运行得不那么频繁。这个功能在运行cpu密集型的后台进程或批处理作业时尤为有用。nice值的取值范围是[-20,19],-20表示最高优先级,而19表示最低优先级。linux进程的默认nice值为0。使用nice命令,不带任何参数时,可以将进程的nice值设置为10。这样调度器就会将此视频视为较低优先级的视频,从而减少cpu资源的分配。

cpulimit命令的工作原理是为视频预设一个cpu占用率门限,并实时监控进程是否超出此门限,若超出则让该视频暂停运行一段时间。cpulimit使用信号停止sigstop和信号继续sigcont这两个信号来控制进程。它不会修改视频的nice值,而是通过监控视频的cpu占用率来做出动态调整。cpulimit的优势是可以控制视频的cpu使用率的上限值,但与nice命令相比也有缺点,那就是即使cpu是空闲的,视频也不能完全使用整个cpu资源。

3)优先级计算模块313,用于根据视频价值、处理紧迫性(时间紧迫度)或剩余价值密度,计算预处理视频的优先级。

系统各种功能总是通过处理相关的任务来完成。然而,由于系统各个功能在整个系统中重要性的不同,系统处理各个任务的重要程度也存在着明显的差异。显然,视频价值是视频本身的固有属性,与视频的时间特征无关;此外,视频的价值也不是在视频处理完成的那个瞬间产生,而是随着视频的处理而逐渐积累的过程。

对于实时视频系统各种视频,其处理紧迫性的处理方式也是不同的:仅考虑能满足截止期视频的紧迫性,对于无法满足截止期的视频则直接进夭折处理;处理视频的紧迫性等于其最近一次开始处理时的紧迫性,并在其处理期间保持不变;活动视频与等待视频的紧迫性随其等待时间的增加而逐渐增大;休眠视频的处理周期尚未到达,不考虑其紧迫性。

假设当实时视频系统开始运行时,所有视频同时放行,这时,基本优先级最高的视频首先获得系统处理权。然后,随着系统时间的推移,系统中各个视频的优先级动态变化。

对于处理视频,其处理紧迫性保持,但其剩余价值密度随着已处理时间的增加而不断增加,这在一定程度上保护了处理视频不被其它任务抢占;

对于等待视频与活动视频,其剩余价值密度保持不变,但随着其等待时间的增加,其处理紧迫性不断增加,这给它们提供了抢占系统处理权的机会。

此外,通过调节参数的取值,还可以调节视频剩余价值密度及处理紧迫性对视频动态优先级的影响力。剩余价值密度大的视频将优先获得系统的处理权,故能提高系统累积价值收益。

此外,处理视频的剩余价值密度随已处理时间增加而增大,能够减少处理视频被抢占而夭折的概率,进而减少了视频抢占的次数,提高视频的成功处理率。若剩余价值密度较大时,处理紧迫性高的视频将优先获得系统的处理权,可以增加剩余价值密度较大的视频参与系统处理的机会。但是,等待视频或活动视频的紧迫性随等待时间增加而增高,使视频抢占的概率大大增加,可能会造成部分价值密度大的视频夭折而降低系统累积价值收益。

4)视频存放分配模块314,用于对不同种类的视频进行存放,比如:存储h.264的视频;

5)视频调度模块315,用于统一分配调用不同的模块。

当视频请求到达后,根据视频的属性将视频分为非紧急视频和紧急视频。其中:

非紧急视频带有可量化的优先级标记,进入视频队列后依据优先级进行排队,在视频队列中的视频优先级会随着在视频中的时间的增长而提高。这样可以防止饿死的问题出现,即某个优先级低的视频由于一直排在优先级高的视频后面儿一直无法得到转码服务。

紧急视频具有非常高的优先级,可以绕过一般的视频队列,直接请求计算资源以完成转码。在可用计算资源不足的情况下,可以通过调度将其他正在进行的非紧急视频任务暂停,腾出足够的计算资源服务于该紧急视频任务,保证紧急视频任务在较低的时间内完成,视频调度模块的处理流程如图5所示,该流程包括:

步骤51:视频预处理模块311对视频进行预处理后,优先级计算模块313对视频的优先级进行计算,得到紧急任务和非紧急任务;

步骤52:对于非紧急任务,优先级计算模块313将非紧急任务缓存在任务队列319中,对于紧急任务,通过系统资源分配模块315对紧急任务分配资源;

步骤53:视频调度模块315对紧急任务和非紧急任务进行调度,系统资源分配模块315对紧急任务分配资源使得视频转码模块317对紧急任务进行转码处理;

步骤54:系统资源分配模块315对紧急任务分配资源使得视频打码模块318对紧急任务进行打码处理,当紧急任务处理完毕后,在调度系统资源对非紧急任务进行处理。

6)处理分配模块316,用于对视频进行处理的分配,使其使用转码模块或打码模块进行处理。

7)转码模块317,用于对视频进行转码处理。

8)打码模块318,用于对视频进行打码处理。

视频转码模块化动态处理模型对视频进行转码的过程如下:

步骤61:视频接收模块接收客户端发送的视频,将视频存放在存储系统中;

步骤62:根据用户需求对视频预处理模块进行配置,将配置信息发送给视频存放分配模块,视频存放分配模块通过视频任务调度在存储系统中查找与配置信息相应的视频,并返回到视频存放分配模块中;

步骤63:视频预处理模块对返回的视频进行处理;

步骤64:视频调度模块调用优先级计算模块对视频的优先级进行计算;

步骤65:根据计算获得的优先级,系统资源分配模块对视频分配系统资源;

步骤66:处理分配模块确定视频使用转码模块,或是打码模块进行处理;

步骤67:使用分配的系统资源对视频进行转码或打码处理,处理完成后,将视频返回存储系统,并发送给客户端。

随着网络和多媒体应用的发展,异质网络间信息的交换日益增多;在现阶段的数字视频通信领域,多种图像标准并存,这些图像标准除语法格式不同外,在压缩效率、码率、压缩格式上都不同,它们分别针对特定的应用场合,所处网络环境、相应的解码器性能或显示器显示能力都有区别,视频转码系统的重要性就日益突显。本申请实施例的技术效果主要包括以下内容:

通过系统的视频动态给视频分配资源:通过分析系统现在cpu、内存等的占用情况,动态添加视频,并分配视频优先级。

通过视频属性动态分配转码优先级:不同视频优先级不同,通过视频本身优先级属性进行视频队列优先级动态调整。

本申请实施例实现的面向移动网络的视频转码系统,通过高效的转码算法,提供纯软件的实时降码率和降分辨率,转码质量损失少、实时性高、成本低、可扩展性和灵活性强。针对转码的实时性要求,特别提出了延时保证的自适应策略,解决了计算复杂性和转码质量均衡的关键技术问题,并据此实现了高效率的转码。

模块化架构,方便扩展:根据转码规模和转码视频多少可以动态添加资源如主机等,进行系统扩展。

对业务进行模块化拆分后,使各业务模块间解耦,因此,各个都是独立的模块,它们之间是没有依赖关系。每个模块负责的功能不同,业务逻辑不同,模块间业务解耦。模块功能比较单一,可在多个项目中使用。每个模块实际上也是一个完整的项目,可以进行单独编译、调试。

本申请实施例提供一种资源处理装置,图6为本申请实施例的资源处理装置的组成结构示意图,如图6所示,资源处理装置60包括:获取模块601、预处理模块602、第一确定模块603和分配模块604;其中,

获取模块601,用于通过转码系统中的外部接口获取待处理视频;

预处理模块602,用于根据基于用户需求设置的视频配置信息,对所述待处理视频进行预处理,得到预处理视频;

第一确定模块603,用于根据所述预处理视频的属性信息,确定所述预处理视频的优先级;

分配模块604,用于根据所述预处理视频的优先级,对所述预处理视频分配系统资源,以对所述预处理视频进行处理。

在其他实施例中,所述装置60还包括:第二确定模块,用于根据所述视频配置信息,确定所述待处理视频的类型;

相应地,获取模块601,用于根据所述待处理视频的类型,通过转码系统中的外部接口获取待处理视频。

在其他实施例中,所述视频配置信息包括:目标格式、目标码率或目标关键帧信息,所述预处理模块包括:格式预处理单元、码率预处理单元或关键帧预处理单元;其中:

格式预处理单元,用于将所述待处理视频的格式调整为所述目标格式,得到预处理视频;

或者,码率预处理单元,用于将所述待处理视频的码率调整为所述目标码率,得到预处理视频;

或者,关键帧预处理单元,用于根据所述目标关键帧信息对所述待处理视频添加关键帧,得到预处理视频。

在其他实施例中,所述属性信息包括:视频价值和时间紧迫度,所述装置还包括:第一配置模块,用于配置所述预处理视频的视频价值、时间紧迫度、所述视频价值对应的权值和所述时间紧迫度对应的权值;

相应地,所述第一确定模块包括:第一确定单元和第二确定单元;其中:

第一确定单元,用于根据所述视频价值、所述时间紧迫度、所述视频价值对应的权值和所述时间紧迫度对应的权值,确定所述预处理视频的优先级得分;

第二确定单元,用于根据所述优先级得分,确定所述预处理视频的优先级。

在其他实施例中,所述属性信息还包括:剩余价值密度,所述装置60还包括:第二配置模块,用于配置所述预处理视频的剩余价值密度和所述剩余价值密度对应的权值;

相应地,第一确定单元,用于根据所述视频价值、所述时间紧迫度、所述剩余价值密度、所述视频价值对应的权值、所述时间紧迫度对应的权值和所述剩余价值密度对应的权值,确定所述预处理视频的优先级得分;

第二确定单元,用于根据所述优先级得分,确定所述预处理视频的优先级。

在其他实施例中,所述预处理视频的优先级包括:紧急或非紧急;所述第二确定单元包括:第一确定子单元和第二确定子单元;其中:第一确定子单元,用于如果所述优先级得分大于或等于预设分值时,确定所述预处理视频的优先级为紧急;第二确定子单元,用于如果所述优先级得分小于预设分值时,确定所述预处理视频的优先级为非紧急;

相应地,分配模块包括:第一分配单元和第二分配单元;其中:第一分配单元,用于如果所述预处理视频的优先级为紧急时,将全部系统资源分配给预处理视频,以保证优先级为紧急的预处理视频优先进行处理;第二分配单元,用于如果所述预处理视频的优先级为非紧急时,不分配系统资源给所述预处理视频,以等待优先级为紧急的预处理视频处理完成。

在其他实施例中,分配模块包括:调整单元和第三分配单元;其中,

调整单元,用于根据系统资源占用信息,对确定的所述预处理视频的优先级进行调整,使得所述预处理视频的优先级变高或变低;

第三分配单元,用于根据变高或变低的优先级,对所述预处理视频分配系统资源,使得分配的系统资源变大或变小。

在其他实施例中,分配模块包括:第三确定单元和第四分配单元;其中,

第三确定单元,用于根据所述预处理视频的优先级,确定所述预处理视频对应的系统资源阈值;

第四分配单元,用于根据所述系统资源阈值,对所述预处理视频分配系统资源,以使所述预处理视频对应的系统资源不超过所述系统资源阈值。

需要说明的是,上述实施例提供的视频处理装置在进行视频处理时,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的视频处理装置与视频处理方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

图7为本申请实施例的视频处理设备的组成结构示意图,如图7所示,所述装置包括处理器702和用于存储能够在处理器702上运行的计算机程序的存储器701;其中,所述处理器702用于运行所述计算机程序时,以实现上述实施例中提供的视频处理方法中的步骤。

这里需要指出的是:以上终端实施例项的描述,与上述方法描述是类似的,具有同方法实施例相同的有益效果,因此不做赘述。对于本申请终端实施例中未披露的技术细节,本领域的技术人员请参照本申请方法实施例的描述而理解,为节约篇幅,这里不再赘述。

在示例性实施例中,本申请实施例还提供了一种存储介质,具体为计算机可读存储介质,例如包括存储计算机程序的存储器701,上述计算机程序可由处理器702处理,以完成前述方法所述步骤。计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、flashmemory、磁表面存储器、光盘、或cd-rom等存储器。

本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器处理时实现上述实施例中提供的视频处理方法中的步骤。

这里需要指出的是:以上计算机介质实施例项的描述,与上述方法描述是类似的,具有同方法实施例相同的有益效果,因此不做赘述。对于本申请终端实施例中未披露的技术细节,本领域的技术人员请参照本申请方法实施例的描述而理解,为节约篇幅,这里不再赘述。

上述本申请实施例揭示的方法可以应用于所述处理器中,或者由所述处理器实现。所述处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过所述处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的所述处理器可以是通用处理器、dsp,或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。所述处理器可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器,所述处理器读取存储器中的信息,结合其硬件完成前述方法的步骤。

可以理解,本申请实施例的存储器(存储器)可以是易失性存储器或者非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,readonlymemory)、可编程只读存储器(prom,programmableread-onlymemory)、可擦除可编程只读存储器(eprom,erasableprogrammableread-onlymemory)、电可擦除可编程只读存储器(eeprom,electricallyerasableprogrammableread-onlymemory)、磁性随机存取存储器(fram,ferromagneticrandomaccessmemory)、快闪存储器(flashmemory)、磁表面存储器、光盘、或只读光盘(cd-rom,compactdiscread-onlymemory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(ram,randomaccessmemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(sram,staticrandomaccessmemory)、同步静态随机存取存储器(ssram,synchronousstaticrandomaccessmemory)、动态随机存取存储器(dram,dynamicrandomaccessmemory)、同步动态随机存取存储器(sdram,synchronousdynamicrandomaccessmemory)、双倍数据速率同步动态随机存取存储器(ddrsdram,doubledataratesynchronousdynamicrandomaccessmemory)、增强型同步动态随机存取存储器(esdram,enhancedsynchronousdynamicrandomaccessmemory)、同步连接动态随机存取存储器(sldram,synclinkdynamicrandomaccessmemory)、直接内存总线随机存取存储器(drram,directrambusrandomaccessmemory)。本申请实施例描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。

以上所述,仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1