CN114327872A - 多媒体异步处理方法及装置 - Google Patents

多媒体异步处理方法及装置 Download PDF

Info

Publication number
CN114327872A
CN114327872A CN202111535954.9A CN202111535954A CN114327872A CN 114327872 A CN114327872 A CN 114327872A CN 202111535954 A CN202111535954 A CN 202111535954A CN 114327872 A CN114327872 A CN 114327872A
Authority
CN
China
Prior art keywords
task
thread
processing
subtask
video
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.)
Granted
Application number
CN202111535954.9A
Other languages
English (en)
Other versions
CN114327872B (zh
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.)
Tezign Shanghai Information Technology Co Ltd
Original Assignee
Tezign Shanghai Information 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 Tezign Shanghai Information Technology Co Ltd filed Critical Tezign Shanghai Information Technology Co Ltd
Priority to CN202111535954.9A priority Critical patent/CN114327872B/zh
Publication of CN114327872A publication Critical patent/CN114327872A/zh
Application granted granted Critical
Publication of CN114327872B publication Critical patent/CN114327872B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种多媒体异步处理方法及装置,其特征在于,包括任务调度单元、数据库单元和产物管理单元;所述多媒体异步处理系统包括以下步骤:(1)将多媒体文件导入所述任务调度单元,所述任务调度单元将所述多媒体文件拆分为一个或一个以上的Task任务和两个以上的Subtask任务;(2)所述任务调度单元将所述Task任务和所述Subtask任务导入数据库单元,所述数据库单元处理所述Task任务和所述Subtask任务并生成产物;(3)将所述产物导入所述产物管理单元中,所述产物管理单元根据所述生成产物的类型生成管理目录;其中,所述数据库单元中包含Task处理模块和Subtask处理模块,所述subtask处理模块依赖所述Task处理模块产生的数据处理所述Subtask任务。

Description

多媒体异步处理方法及装置
技术领域
本发明涉及数据处理领域,具体而言,涉及一种多媒体异步处理方法及装置。
背景技术
在现有多媒体文件数据处理领域中,对离线多媒体文件的处理过程往往依从业务逻辑展开,在处理过程中,各个环节前后紧密相关,按照业务逻辑所规定的顺序依次执行,各个环节产生的结果不能重复代用,当某个环节需要某个结果时,这个结果需要由相应的其他环节即时计算出来,这种方式占用了硬件的计算资源进而导致处理多媒体文件性能和效率低。因此,本发明提供了一种多媒体异步处理系统、装置,能够实现中间产物的复用,支持多任务并发处理,能够监控各任务的执行情况易于控制和调度任务,能够节省计算资源。
发明内容
本发明的主要目的在于提供一种多媒体异步处理系统,已解决现有多媒体文件数据处理过程中各个环节结果不能复用和处理多媒体文件性能和效率较低的问题。
为实现上述目的,根据本发明的一个方面,提供了一种多媒体异步处理方法,其包括任务调度单元、数据库单元和产物管理单元;所述多媒体异步处理系统包括以下步骤:(1)将多媒体文件导入所述任务调度单元,所述任务调度单元将所述多媒体文件拆分为一个或一个以上的Task任务和两个以上的Subtask任务;(2)所述任务调度单元将所述Task任务和所述Subtask任务导入数据库单元,所述数据库单元处理所述Task任务和所述Subtask任务并生成产物;(3)将所述产物导入所述产物管理单元中,所述产物管理单元根据所述生成产物的类型生成管理目录;其中,所述数据库单元中包含Task处理模块和Subtask处理模块,所述subtask处理模块依赖所述Task处理模块产生的数据处理所述Subtask任务。
进一步地,所述任务调度单元创建一个调度线程池,所述调度线程池包括多个调度线程,其中,每个所述调度线程对应生成一个Task任务或一个Subtask任务,所述任务调度单元通过所述调度线程将所述线程对应的Task任务或Subtask任务导入所述数据库单元中。
进一步地,所述数据库单元中的Task处理模块或Subtask处理模块为每一个来自所述任务调度单元的所述task任务或所述Subtask任务创建一个处理线程,其中,所述处理线程处理所述Task任务或所述Subtask任务并生成产物。
进一步地,所述处理线程包括Task处理线程和Subtask处理线程,所述task处理线程为独立线程,所述Subtask处理线程依附所述Task处理线程和其他所述Subtask处理线程,其中,所述Task处理线程由所述task处理模块根据来自所述任务调度单元的所述Task任务创建,所述Subtask处理线程由所述Subtask处理模块根据来自所述任务调度单元的所述Subtask任务创建。
进一步地,Task任务和Subtask任务的状态和所述数据库单元处理所述Task任务和所述Subtask任务生成的产物均存储在数据库单元中。
进一步地,所述Task处理模块包括视频OCR模块,所述Task处理模块根据所述Task任务激活所述视频OCR模块创建一个抽帧处理线程,所述抽帧处理线程可将所述多媒体文件先进行抽帧处理,再将抽取出的帧进行压帧处理并生成一个复用帧包,所述Task处理模块或所述Subtask处理模块能够重复使用所述复用帧包。
进一步地,所述Subtask处理模块处理每一个来自所述任务调度单元的所述Subtask任务创建的处理线程,所述处理线程包括音频提取线程、逐帧打标线程、视频人脸识别线程、视频包框检测线程、视频关键词提取线程、视频语音识别线程、视频雪碧图生成线程和视频拆条线程,其中,上述这些线程有如下从前至后的执行顺序:抽帧处理线程,视频人脸识别线程;抽帧处理线程,逐帧打标线程;抽帧处理线程,视频雪碧图生成线程;音频提取线程,视频语音识别线程,视频关键词提取线程;视频包框检测线程和视频拆条线程为独立线程。
进一步地,任一所述处理线程的处理结果返回至复用帧包中作备份,所述处理结果可由所述处理线程重复调用。
进一步地,所述Task处理模块在接收到所述Task任务后创建一个状态监控线程,所述状态监控线程可监控由所述Task处理模块或所述Subtask处理模块创建的所述处理线程的状态,所述处理线程的状态包括运行态、完成态和异常态。
根据本发明的一个方面,提供了一种多媒体异步处理装置,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使至少一个处理器能够执行权利要求1-9任一项所述的多媒体异步处理方法。
本发明能够实现异步并行处理多个线程,每个线程能够将自己的处理结果存入复用帧包共其他线程调用,避免了即时计算占用计算资源,进而提升了整个系统的性能和效率。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,使得本申请的其它特征、目的和优点变得更明显。本申请的示意性实施例附图及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本发明的系统结构方框图;
图2为一具体实施例中OCRTask处理线程中各Subtask处理线程之间依从关系图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
名词解释:Video_File视频文件;frame_extract全帧抽取程序模块;frame_compre帧压缩程序模块;face_tage视频人脸识别程序模块;auto_tagging逐帧打标程序模块;sprite雪碧图生成模块;vidio_ocr视频OCR程序模块;audio_extract音频提取程序模块;rtasr视频语音识别程序模块;key_word视频关键词提取程序模块;video_splite视频拆条程序模块;frame_box_detection视频包框检测程序模块。
一种多媒体异步处理方法,包括任务调度单元、数据库单元和产物管理单元;
所述多媒体异步处理系统处理离线视频文件包括以下步骤:S100、将多媒体文件导入所述任务调度单元,所述任务调度单元将所述多媒体文件拆分为一个或一个以上的Task任务和两个以上的Subtask任务;S200、所述任务调度单元将所述Task任务和所述Subtask任务导入数据库单元,所述数据库单元处理所述Task任务和所述Subtask任务并生成产物;S300、将所述产物导入所述产物管理单元中,所述产物管理单元根据所述生成产物的类型生成管理目录。
在本发明的一个实施例中,一个离线视频文件通过FastAPI进入任务调度单元(Scheduler)中,Scheduler根据VideoFile创建一个调度线程池(Scheduler Pond),此SchedulerPond包括一OCRTask任务和音频提取Subtask任务、逐帧打标Subtask任务、视频人脸识别Subtask任务、视频包框检测Subtask任务、视频关键词提取Subtask任务、视频语音识别Subtask任务、视频雪碧图生成Subtask任务及视频拆条Subtask任务,上述各任务为控制信号,各控制信号之间为彼此独立,即Scheduler可独立将SchedulerPond中的任一OCRTask任务或Subtask任务导入数据库单元中。
如图2所示,数据库单元在接收到来自Scheduler的OCRTask任务后,数据库单元中的Task处理模块由OCRTask任务触发,创建一OCRTask处理线程,此OCRTask处理线程依照以下步骤处理:
S210、对上述VideoFile执行frame_extract处理,得到抽取出的帧集并传入产物管理单元中;
S220、对上述帧集进行fram_compre处理,生成一复用帧包并传入产物管理单元中;
S221、对S220步骤中复用帧包内的视频帧进行face_tag处理,生成人脸识别结果,并将此结果存入复用帧包并传入产物管理单元中;
S222、对S220步骤中复用帧包内的视频帧进行auto_tagging处理,将打标好的视频帧作为一个集合存入复用帧包并传入产物管理单元中;
S230、对S210步骤中抽取的帧集中的每一帧进行sprite处理,生成的雪碧图打包存入复用帧包并传入产物管理单元中;
S240、对S210步骤中抽取的帧集进行video_ocr处理,生成的结果存入复用帧并传入产物管理单元中;
S250、对VideoFile进行audio_extract处理,提取视频中的音频部分,保存为mp3格式并传入产物管理单元中;
S251、对S250中音频的部分进行rtasr,将语音识别结果存入复用帧包并传入产物管理单元中;
S252、对S251中视频中的进行keyword处理,将提取出的视频关键词存入复用帧包并传入产物管理单元中;
S260、对VideoFile执行video_split处理,将视频拆条的结果存入复用帧包并传入产物管理单元中;
S270、对VideoFile执行frame_box_detection处理,将检测结果存入复用帧包并传入产物管理单元中。
数据库单元采用上述步骤处理能够实现多线程并行处理,复用帧包内的数据可供各个线程调用,能够在线程处理过程中减少对计算资源的占用,提升多媒体异步处理系统的效率。
在产物管理单元中,产物管理单元使用Python中的TaskFileHandler类对来自数据库单元的各产物进行统一管理,在前端界面上生成直观的目录结构。这种目录结构能够实现监控各任务的执行情况,易于控制和调度任务,或者产物管理单元由硬核构成。
值得注意的是Scheduler根据VideoFile创建一个调度线程池还包括一状态监控线程,状态监控线程可监控上述处理线程的状态,处理线程的状态包括运行态、完成态和异常态,处理线程将处理状态存入产物管理单元内,产物管理单元通过TaskFileHandler类将各线程状态显示在终端上。
本公开还提供了一种多媒体异步处理装置,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使至少一个处理器能够执行权利要求1-9任一项所述的多媒体异步处理方法。
值得强调的是,本文中以上描述的系统和技术的各种实施方式可以在数字电子系统,集成电路系统,场可编程门阵列,专用集成电路,专用标准产品,芯片片上系统,负载可编程逻辑设备,计算机硬件,固件,软件,和/或它们的组合中实现。这些各种实施方式可以包括:实施一个或多个计算机程序中,该一个或多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统,至少一个输入装置,和至少一个输出装置接受数据和指令,并且将数据和指令传输至该存储系统,该至少一个输入装置、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行,部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
本发明能够实现异步并行处理多个线程,每个线程能够将自己的处理结果存入复用帧包共其他线程调用,避免了即时计算占用计算资源,进而提升了整个系统的性能和效率。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以以不同的次序执行,只要能够实现本高能公开公开地技术方案所期望地结果,本文在此不进行限制。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种多媒体异步处理方法,所述多媒体异步处理方法的运行基于任务调度单元、数据库单元和产物管理单元;
所述方法包括以下步骤:
1)将多媒体文件导入所述任务调度单元,所述任务调度单元将所述多媒体文件拆分为一个或一个以上的Task任务和两个以上的Subtask任务;
2)所述任务调度单元将所述Task任务和所述Subtask任务导入数据库单元,所述数据库单元处理所述Task任务和所述Subtask任务并生成产物
3)将所述产物导入所述产物管理单元中,所述产物管理单元根据所述生成产物的类型生成管理目录;
其中,所述数据库单元中包含Task处理模块和Subtask处理模块,所述subtask处理模块依赖所述Task处理模块产生的数据处理所述Subtask任务。
2.根据权利要求1所述的方法,步骤1)其特征在于,所述任务调度单元创建一个调度线程池,所述调度线程池包括多个调度线程,其中,每个所述调度线程对应生成一个Task任务或一个Subtask任务,所述任务调度单元通过所述调度线程将所述线程对应的Task任务或Subtask任务导入所述数据库单元中。
3.根据权利要求1所述的方法,步骤2)其特征在于,所述数据库单元中的Task处理模块或Subtask处理模块为每一个来自所述任务调度单元的所述task任务或所述Subtask任务创建一个处理线程,其中,所述处理线程处理所述Task任务或所述Subtask任务并生成产物。
4.根据权利要求3的所述的方法,其特征在于,所述处理线程包括Task处理线程和Subtask处理线程,所述task处理线程为独立线程,所述Subtask处理线程依附所述Task处理线程和其他所述Subtask处理线程,其中,所述Task处理线程由所述task处理模块根据来自所述任务调度单元的所述Task任务创建,所述Subtask处理线程由所述Subtask处理模块根据来自所述任务调度单元的所述Subtask任务创建。
5.根据权利要求4所述的方法,其特征在于,Task处理线程和Subtask处理线程的状态和所述数据库单元处理所述Task任务和所述Subtask任务生成的产物均存储在数据库单元中。
6.根据权利要求1或3所述的方法,其特征在于,所述Task处理模块包括视频OCR模块,所述Task处理模块根据所述Task任务激活所述视频OCR模块创建一个抽帧处理线程,所述抽帧处理线程可将所述多媒体文件先进行抽帧处理,再将抽取出的帧进行压帧处理并生成一个复用帧包,所述Task处理模块或所述Subtask处理模块能够重复使用所述复用帧包。
7.根据权利要求6所述的方法,其特征在于,所述Subtask处理模块处理每一个来自所述任务调度单元的所述Subtask任务创建的所述处理线程,所述处理线程包括音频提取线程、逐帧打标线程、视频人脸识别线程、视频包框检测线程、视频关键词提取线程、视频语音识别线程、视频雪碧图生成线程和视频拆条线程,其中,上述这些线程有如下从前至后的执行顺序:抽帧处理线程,视频人脸识别线程;抽帧处理线程,逐帧打标线程;抽帧处理线程,视频雪碧图生成线程;音频提取线程,视频语音识别线程,视频关键词提取线程;视频包框检测线程和视频拆条线程为独立线程。
8.根据权利要求7所述的方法,其特征在于,任一所述处理线程的处理结果返回至复用帧包中作备份,所述处理结果可由所述处理线程重复调用。
9.根据权利要求6所述的方法,其特征在于,所述Task处理模块在接收到所述Task任务后创建一个状态监控线程,所述状态监控线程可监控由所述Task处理模块或所述Subtask处理模块创建的所述处理线程的状态,所述处理线程的状态包括运行态、完成态和异常态。
10.一种多媒体异步处理装置,其特征在于,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使至少一个处理器能够执行权利要求1-9任一项所述的多媒体异步处理方法。
CN202111535954.9A 2021-12-14 2021-12-14 多媒体异步处理方法及装置 Active CN114327872B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111535954.9A CN114327872B (zh) 2021-12-14 2021-12-14 多媒体异步处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111535954.9A CN114327872B (zh) 2021-12-14 2021-12-14 多媒体异步处理方法及装置

Publications (2)

Publication Number Publication Date
CN114327872A true CN114327872A (zh) 2022-04-12
CN114327872B CN114327872B (zh) 2024-05-31

Family

ID=81053348

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111535954.9A Active CN114327872B (zh) 2021-12-14 2021-12-14 多媒体异步处理方法及装置

Country Status (1)

Country Link
CN (1) CN114327872B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110727520A (zh) * 2019-10-23 2020-01-24 四川长虹电器股份有限公司 一种优化Android帧动画的实现方法
US20200409841A1 (en) * 2019-06-26 2020-12-31 International Business Machines Corporation Multi-threaded pause-less replicating garbage collection
CN112445615A (zh) * 2020-11-12 2021-03-05 广州海鹚网络科技有限公司 一种线程的调度系统、计算机设备和存储介质
CN113010280A (zh) * 2021-02-19 2021-06-22 北京字节跳动网络技术有限公司 分布式任务的处理方法、系统、装置、设备和介质
CN113238843A (zh) * 2021-05-13 2021-08-10 北京京东振世信息技术有限公司 一种任务执行方法、装置、设备及存储介质
CN113379748A (zh) * 2020-03-09 2021-09-10 北京京东乾石科技有限公司 一种点云全景分割方法和装置
CN113448706A (zh) * 2021-06-29 2021-09-28 中国工商银行股份有限公司 批量任务处理方法、装置及系统
CN113467959A (zh) * 2021-09-06 2021-10-01 西安芯瞳半导体技术有限公司 应用于gpu的确定任务复杂度的方法、装置及介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200409841A1 (en) * 2019-06-26 2020-12-31 International Business Machines Corporation Multi-threaded pause-less replicating garbage collection
CN110727520A (zh) * 2019-10-23 2020-01-24 四川长虹电器股份有限公司 一种优化Android帧动画的实现方法
CN113379748A (zh) * 2020-03-09 2021-09-10 北京京东乾石科技有限公司 一种点云全景分割方法和装置
CN112445615A (zh) * 2020-11-12 2021-03-05 广州海鹚网络科技有限公司 一种线程的调度系统、计算机设备和存储介质
CN113010280A (zh) * 2021-02-19 2021-06-22 北京字节跳动网络技术有限公司 分布式任务的处理方法、系统、装置、设备和介质
CN113238843A (zh) * 2021-05-13 2021-08-10 北京京东振世信息技术有限公司 一种任务执行方法、装置、设备及存储介质
CN113448706A (zh) * 2021-06-29 2021-09-28 中国工商银行股份有限公司 批量任务处理方法、装置及系统
CN113467959A (zh) * 2021-09-06 2021-10-01 西安芯瞳半导体技术有限公司 应用于gpu的确定任务复杂度的方法、装置及介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CHUN-JEN TSAI: ""An Efficient Application Processor Architecture for Multicore Software Video Decoding"", 《IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY》, vol. 25, no. 2, 28 February 2015 (2015-02-28), pages 325 - 338 *
邓刚: ""基于众核处理器的实时H.264视频编转码系统的设计与实现"", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 2015, 15 June 2015 (2015-06-15), pages 136 - 106 *
雷欧雷欧: ""子任务"", Retrieved from the Internet <URL:《https://p-c8wi.tower.im/p/t25u》> *

Also Published As

Publication number Publication date
CN114327872B (zh) 2024-05-31

Similar Documents

Publication Publication Date Title
CN106802826B (zh) 一种基于线程池的业务处理方法及装置
CN110162344B (zh) 一种隔离限流的方法、装置、计算机设备及可读存储介质
CN109597810B (zh) 一种任务切分方法、装置、介质及电子设备
CN112650575A (zh) 资源调度方法、装置和云端服务系统
CN116579300A (zh) 多源异构数据的自动化转换方法和装置
CN115955557A (zh) 卡顿分析方法及其装置
CN108845794B (zh) 一种流式运算系统、方法、可读介质和存储控制器
CN113742174B (zh) 云手机应用监控方法、装置、电子设备和存储介质
CN112965809A (zh) 深度学习任务处理系统和方法
CN112766470B (zh) 特征数据处理方法、指令序列生成方法、装置及设备
CN118113766A (zh) 批量数据处理方法、装置、设备及介质
CN117707737A (zh) 一种任务调度优化方法、装置、设备及其存储介质
CN113778650A (zh) 任务调度方法、装置、电子设备及存储介质
CN114327872A (zh) 多媒体异步处理方法及装置
CN117271122A (zh) 基于cpu和gpu分离的任务处理方法、装置、设备及存储介质
CN116126719A (zh) 接口测试方法、装置、电子设备及存储介质
CN115185576A (zh) 一种基于流程类应用系统的流程定制方法及系统
CN114595047A (zh) 一种批量任务处理方法和装置
CN116263717A (zh) 基于事件的订单业务处理方法及装置
CN113419957A (zh) 基于规则的大数据离线批处理性能容量扫描方法及装置
CN113141407A (zh) 一种页面资源加载方法、装置和电子设备
CN112286514A (zh) 一种配置任务流程的方法、装置和电子设备
CN114817006B (zh) 一种堆栈信息写入方法、装置、设备及介质
US6795879B2 (en) Apparatus and method for wait state analysis in a digital signal processing system
CN108551580A (zh) 一种电子设备中视频文件转码方法及电子设备

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
GR01 Patent grant
GR01 Patent grant