CN113573080B - 直播的录制方法、装置、电子设备及存储介质 - Google Patents

直播的录制方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN113573080B
CN113573080B CN202110720160.3A CN202110720160A CN113573080B CN 113573080 B CN113573080 B CN 113573080B CN 202110720160 A CN202110720160 A CN 202110720160A CN 113573080 B CN113573080 B CN 113573080B
Authority
CN
China
Prior art keywords
recording
task
information
meta
parameters
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.)
Active
Application number
CN202110720160.3A
Other languages
English (en)
Other versions
CN113573080A (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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202110720160.3A priority Critical patent/CN113573080B/zh
Publication of CN113573080A publication Critical patent/CN113573080A/zh
Application granted granted Critical
Publication of CN113573080B publication Critical patent/CN113573080B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4334Recording operations

Abstract

本公开提供了一种直播的录制方法、装置、电子设备及存储介质,涉及计算机技术领域,具体涉及计算机视觉、信息流、语音技术和深度学习等人工智能技术领域。具体实现方案为:接收录制请求,其中,录制请求包括录制参数;根据录制参数生成录制任务元信息;根据录制任务元信息建立录制任务并进行录制,其中,录制任务元信息存储在数据库之中,且录制任务元信息具有数据消费状态机信息。由此,能够实现直播内容的录制,且能够支持大量用户同时进行录制。

Description

直播的录制方法、装置、电子设备及存储介质
技术领域
本公开涉及计算机技术领域,具体涉及计算机视觉、信息流、语音技术和深度学习等人工智能技术领域,尤其涉及一种直播的录制方法、装置、电子设备及存储介质。
背景技术
随着短视频行业的迅速发展,越来越多的直播平台以及直播方式相继出现,由此会产生越来越多的直播内容,使得对于直播内容的审核变得逐渐重要。
在当前的直播生态中,通常对直播流的理解更多是应用与审核场景。所以在相关的文章中,更多的在讲如何将直播流进行拆解,以及相关的理解模型从而实现直播的审核。
相关技术中,针对于直播或者流媒体的录制是贴合业务(比如:直播审核)场景下介绍的,他们的侧重点在于审核的实现。
发明内容
本公开提供了一种直播的录制方法、装置、设备及存储介质。
根据本公开的一方面,提供了一种直播的录制方法,包括:
接收录制请求,其中,所述录制请求包括录制参数;
根据所述录制参数生成录制任务元信息;
根据所述录制任务元信息建立录制任务并进行录制,其中,所述录制任务元信息存储在数据库之中,且所述录制任务元信息具有数据消费状态机信息。
根据本公开的另一方面,提供了一种直播的录制装置,包括:
接收模块,用于接收录制请求,其中,所述录制请求包括录制参数;
生成模块,用于根据所述录制参数生成录制任务元信息;
录制模块,用于根据所述录制任务元信息建立录制任务并进行录制,其中,所述录制任务元信息存储在数据库之中,且所述录制任务元信息具有数据消费状态机信息。
根据本公开的另一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述一方面或另一方面实施例所述的直播的录制方法。
根据本公开另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其上存储有计算机程序,所述计算机指令用于使所述计算机执行上述一方面或另一方面实施例所述的直播的录制方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述一方面或另一方面实施例所述的直播的录制方法。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1为本公开实施例提供的一种直播的录制方法的交互示意图;
图2为本公开实施例提供的一种直播的录制方法的流程示意图;
图3为本公开实施例提供的另一种直播的录制方法的流程示意图;
图4为本公开实施例提供的一种直播的录制装置的结构示意图;以及
图5为本公开实施例的直播的录制方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
下面参考附图描述本公开实施例的直播的录制方法、装置、电子设备及存储介质。
人工智能是研究使用计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术领域也有软件层面的技术。人工智能硬件技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理等技术;人工智能软件技术包括计算机视觉技术、语音识别技术、自然语言处理技术以及深度学习、大数据处理技术、知识图谱技术等几大方向。
计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取‘信息’的人工智能系统。这里所指的信息指Shannon定义的,可以用来帮助做一个“决定”的信息。因为感知可以看作是从感官信号中提取信息,所以计算机视觉也可以看作是研究如何使人工系统从图像或多维数据中“感知”的科学。
信息流有广义和狭义两种。广义指在空间和时间上向同一方向运动过程中的一组信息,它们有共同的信息源和信息的接收者,即由一个信息源向另一个单位传递的全部信息的集合。狭义指信息的传递运动,这种传递运动是在现代信息技术研究、发展、应用的条件中,信息按照一定要求通过一定渠道进行的。
语音技术(Speech Technology)的关键技术有自动语音识别技术(ASR)和语音合成技术(TTS)以及声纹识别技术。让计算机能听、能看、能说、能感觉,是未来人机交互的发展方向,其中语音成为未来最被看好的人机交互方式之一。
深度学习是机器学习领域中一个新的研究方向。深度学习是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。深度学习是一个复杂的机器学习算法,在语音和图像识别方面取得的效果,远远超过先前相关技术。
本公开实施例提供的直播的录制方法,可以由电子设备来执行,该电子设备可为PC(Personal Computer,个人计算机)电脑、平板电脑或服务器等,其中,PC电脑和平板电脑可安装Linux系统,此处不做任何限定。
在本公开实施例中,电子设备中可以设置有处理组件、存储组件和驱动组件。可选的,该驱动组件和处理组件可以集成设置,该存储组件可以存储操作系统、应用程序或其他程序模块,该处理组件通过执行存储组件中存储的应用程序来实现本公开实施例提供的直播的录制方法。
图1为本公开实施例提供的一种直播的录制方法的交互示意图,如图1所示,可包括如下部分:
①、DataTransform(数据转换模块):可以是录制任务的一个请求方,能够自定义以及支持标准接口的模块,能够实现不同的直播资源进行不同的录制任务,并支持白名单功能,白名单资源进行过滤和屏蔽(即,可对直播录制资源进行相应的过滤和屏蔽),还能够进行信号的接听,实现录制任务的启动和停止等操作。
②、Manager(管理模块):录制任务的统一入口模块,可负责录制任务的分配,参数的转换和配置,并进行任务的元信息(例如,录制任务元信息)存储和任务下发到消息中间件。
③、消息中间件:一个Msg Queue(消息队列),支持消费数据的一致性,能够避免一份数据进行多次消费,是个持久化存储的消息中间件(即,能持久化存储数据)。
④、DB(数据库模块):元信息和任务信息存储模块(即,数据库模块),能够同时记录每个录制任务心跳的TTL(Time To Live,生存时间值),并用于保活模块的scan(遍历)。
⑤、Exector(执行单元模块):主要的录制模块,相对来说计算量比较大。进行机器内部的task(任务)的状态管理、状态更新(心跳)、task(任务)录制、存储bos(对象存储)(例如,存储视频、图片、音频的存储地址),以及回调功能,例如,录制任务的状态管理、状态更新(心跳检测)、录制任务的执行、bos(视频、图片、音频的存储地址)的存储以及任务元信息的回调处理。
⑥、Alive(保活模块):保活模块,可以是个单点实例。可进行任务(录制任务)的scan,检测录制任务心跳的TTL。进行任务的重新拉起保活(例如,重启录制任务)。
图2为本公开实施例提供的一种直播的录制方法的流程示意图。
本公开实施例的直播的录制方法,还可由本公开实施例提供的直播的录制装置执行,该装置可配置于电子设备中,以实现接收录制请求,其中,录制请求包括录制参数,并根据录制参数生成录制任务元信息,以及根据录制任务元信息建立录制任务并进行录制,从而能够实现直播内容的录制,且能够支持大量用户同时进行录制。
作为一种可能的情况,本公开实施例的直播的录制方法还可以在服务器端执行,服务器可以为云服务器,可以在云端执行该直播的录制方法。
如图2所示,该直播的录制方法,可包括:
步骤201,接收录制请求,其中,录制请求包括录制参数。
需要说明的是,该实施例中所描述的录制参数可包括直播录制资源属性、录制视频参数、录制音频参数、录制图片参数、直播流播放地址(即,视频流媒体链接)以及其他的业务信息参数中的多种。其中,该直播录制资源属性可包括直播内容的来源属性(例如,直播频道)、录制目的(例如,录制视频或录制音频)等,录制视频参数可为mp4、flv等视频类型,录制音频参数可为mp3、aac等音频类型,录制图片参数可为jpeg、jpg等图片类型。
在本公开实施例中,用户可在客户端(例如,电子设备中安装的直播APP(Application,应用程序))根据自身的录制需求进行相关的操作,以生成录制请求,其中,该客户端可采用标准client(客户机)和/或自定义client创建(生成)录制请求。其中,该录制需求可包括录制视频的时间长度、图片抽帧策略(关键帧、1s1帧)以及音频的时间长度等。
具体地,用户可根据自身的需求操作客户端生成录制请求,并将该录制请求发送至相关的服务器,该服务器在接收到该录制请求之后,可根据该录制请求做出相应的操作(响应)。
步骤202,根据录制参数生成录制任务元信息。
具体地,服务器在接收到上述的录制请求后,可对该录制请求进行解析,以获取该录制请求中的录制参数,并进行录制参数的解析和拼接,以转换成Exector可认识的录制任务元信息。
在本公开实施例中,服务器可基于预设的参数处理算法进行录制参数的解析和拼接,以转换成Exector可认识的录制任务元信息,其中,预设的参数处理算法可根据实际情况进行标定。
作为一种可能的情况,服务器还可通过参数处理模型进行录制参数的解析和拼接,以转换成Exector可认识的录制任务元信息。应说明的是,该实施例中所描述的参数处理模型可以是提前训练好的,并将其预存在服务器的存储空间中,以方便调取应用。
其中,该参数处理模型的训练与生成均可由相关的训练服务器执行,该训练服务器可以是云端服务器,也可以是一台电脑的主机,该训练服务器与可执行本公开该实施例提供的直播的录制方法的服务器之间,建立有通信连接,该通信连接可以是无线网络连接和有线网络连接的至少一种。该训练服务器可将训练完成的参数处理模型发送给该服务器,以便该服务器在需要时调用,从而大大减少该服务器的计算压力。
作为另一种可能的情况,服务器还可使用参数处理工具(例如,插件),进行录制参数的解析和拼接,以转换成Exector可认识的录制任务元信息。
步骤203,根据录制任务元信息建立录制任务并进行录制,其中,录制任务元信息存储在数据库之中,且录制任务元信息具有数据消费状态机信息。
需要说明的是,该实施例中所描述的数据库可为上述图1中的DB(数据库模块)中的数据库。其中,可通过消息中间件将录制任务元信息传输至该数据库进行持久化存储,例如,采用Redis(Remote Dictionary Server,远程字典服务)存储。另外,该实施例中所描述的数据消费状态机信息,可为消息中间件为了保证消费数据的一致性,避免一份数据进行了多次消费而生成的状态信息(例如,数据消息管理状态),其目的是为了保证消费的唯一性和持久性。
具体地,服务器在得到录制任务元信息之后,可将录制任务元信息发送至消息中间件,并通过该消息中间件将录制任务元信息传输至该数据库进行持久化存储。其中,消息中间件需要保证消费的唯一性(有且只能消费一次数据)和持久性(不丢)。
进一步地,服务器在得到录制任务元信息之后,可根据录制任务元信息建立录制任务并进行录制。其中,参见图1,Exector模块可自己创建合理的线程数量。当Exector模块的manager感知到有空闲的slot(线程)时会去消息中间件消费数据进行任务消费。感知录制参数后进行直播内容的录制(例如,通过多媒体处理工具进行录制),从而实现任务的录制。然后可将录制完成的视频进行持久化存储,以避免本地磁盘溢出。
其中,在录制直播内容的过程中,相关的子进程可执行录制任务,进行直播内容的录制,同时可有单独的线程进行bos存储和后置任务的处理(例如,回调信息的处理)。
在本公开实施例中,首先接收录制请求,其中,录制请求包括录制参数,并根据录制参数生成录制任务元信息,以及根据录制任务元信息建立录制任务并进行录制。由此,能够实现直播内容的录制,且能够支持大量用户同时进行录制。
为了清楚说明上一实施例,在本公开的一个实施例中,录制请求还可包括用户口令卡KEY(键值),且录制任务与用户KEY对应。
在本公开实施例中,用户在客户端创建(生产)录制请求时,可将用户口令卡KEY放入该录制请求中。
需要说明的是,该实施例中所描述的用户口令卡KEY,可为一种唯一编码,即该用户口令卡KEY具有唯一性。
具体地,服务器在接收到用户发送的录制请求之后,可对该录制请求进行解析,以获取该录制请求中的录制参数和用户口令卡KEY,并可以该用户口令卡KEY作为录制存储的唯一编码,即将上述的录制任务与用户KEY对应绑定。另外,服务器还可将该用户口令卡KEY发送至消息中间件,并通过该消息中间件将该用户口令卡KEY传输至该数据库进行持久化存储。
作为一种可能的情况,服务器也可以自己生成用户口令卡KEY,并将其与用户(即,录制请求)进行映射。
由此,可通过用户口令卡KEY识别对应的录制任务,即,可通过用户口令卡KEY识别已录制完成的直播视频,避免录制完成的多个直播视频发生错乱,使得用户无法获取自己录制的直播视频。由此,能够确保用户准确的得到自己录制的直播视频,提高用户的使用体验。
进一步地,在本公开的一个实施例中,根据录制任务元信息建立录制任务并进行录制,可包括根据录制任务元信息创建多个线程,并通过多个线程调用对应的录制资源进行录制任务。
需要说明的是,该实施例中所描述的根据录制任务元信息创建的线程的数量,可以是预先设置好的,其中,线程的数量可由压力测试确定,即该线程的数量是由相关人员对本公开实施例提供的直播的录制方法进行大量的压力测试得出的。
具体地,服务器在得到录制任务元信息之后,可通过Exector模块创建合理的线程数量(即,多个线程),并可通过对应数量的线程调用对应的录制资源进行录制任务。由此,能够更加合理地利用服务器资源,降低录制的成本。
当Exector模块的manager感知到有空闲的slot(线程)时会去消息中间件消费数据进行任务消费,且在感知录制参数后进行直播内容的录制(例如,通过多媒体处理工具进行录制),从而实现任务的录制。应说明的是,该实施例中所描述的消息中间件消费数据可从相关的数据库中获取,此处不做任何限定。
为了清楚说明上一实施例,在本公开的一个实施例中,该直播的录制方法,还可包括当检测到录制资源有空闲时,则从数据库之中调取对应的录制任务元信息。
具体地,服务器在通过Exector模块创建合理的线程数量之后,还可通过Exector模块的manager感知是否有空闲的slot(线程),即录制资源,当通过Exector模块的manager感知到有空闲的slot(线程)时会去消息中间件消费数据进行任务消费,且在感知录制参数后进行直播内容的录制(例如,通过多媒体处理工具进行录制),从而实现任务的录制,即在空闲的录制资源上进行录制任务。应说明的是,该实施例中所描述的消息中间件消费数据,和录制参数可从存储在数据库中的录制任务元信息中获取,此处不做任何限定。由此,能够充分利用录制资源,减少资源的使用,并且可提高录制效率。
对于分布式系统而言,不可必避免会出现某个进程/线程异常、实施故障或重启等情况,导致录制任务中断。在本公开的一个实施例中,该直播的录制方法,还可包括对录制任务进行心跳检测,当检测到录制任务故障时,则对录制任务进行重启。
具体地,服务器可通过心跳检测实时监测录制任务的状态,当检测到录制任务故障时,可对录制任务进行及时保活,重启录制任务,继续进行录制,从而能够实现在直播录制的过程中发生故障时及时重启,确保直播录制的正常进行。
举例而言,服务器可通过实时监测PID(Process Identification,进程识别号)的状态,来感知录制任务的状态,当检测到录制任务的子进程异常时,说明录制任务故障,则可重启录制任务,继续进行录制。
进一步地,在本公开的一个实施例中,如图3所示,该直播的录制方法,还可包括:
步骤301,对录制资源进行心跳检测。
在本公开实施例中,参见图1,Exector有个单独的心跳模块可用来对录制任务进行心跳检测,以上报和更新录制任务的状态和更新TTL。
步骤302,当检测到录制资源故障时,则对录制资源进行重启,或者将录制资源上的录制任务进行迁移。
具体地,服务器可通过心跳检测对录制资源的状态进行实时监测,当检测到录制资源故障时,可对录制资源进行及时保活,或可将录制资源上的录制任务进行迁移,迁移到其他状态正常的录制资源上,继续进行录制,从而能够实现在直播录制的过程中发生故障时及时重启,进一步确保直播录制的正常进行。
举例而言,服务器可通过Exector模块实时监测数据库DB中任务的状态和TTL周期,当TTL超时或者任务状态异常时,可说明录制资源故障,则重启录制资源,或将录制资源上的录制任务迁移到其他处于正常状态且空闲的录制资源上,继续进行录制。
图4为本公开实施例提供的一种直播的录制装置的结构示意图。
本公开实施例的直播的录制装置,可配置于电子设备中,以实现接收录制请求,其中,录制请求包括录制参数,并根据录制参数生成录制任务元信息,而后根据录制任务元信息建立录制任务并进行录制,从能够实现直播内容的录制,且能够支持大量用户同时进行录制。
如图4所示,该直播的录制装置400,可包括:接收模块410、生成模块420和录制模块430。
其中,接收模块410用于接收录制请求,其中,录制请求包括录制参数。
需要说明的是,该实施例中所描述的录制参数可包括直播录制资源属性、录制视频参数、录制音频参数、录制图片参数、直播流播放地址(即,视频流媒体链接)以及其他的业务信息参数中的多种。其中,该直播录制资源属性可包括直播内容的来源属性(例如,直播频道)、录制目的(例如,录制视频或录制音频)等,录制视频参数可为mp4、flv等,录制音频参数可为mp3、aac等,录制图片参数可为jpeg、jpg等。
在本公开实施例中,用户可在客户端(例如,电子设备中安装的直播APP(Application,应用程序))根据自身的录制需求进行相关的操作,以生成录制请求,其中,该客户端可采用标准client和/或自定义client创建(生成)录制请求。其中,该录制需求可包括录制视频的时间长度、图片抽帧策略(关键帧、1s1帧)以及音频的时间长度等。
具体地,用户可根据自身的需求操作客户端生成录制请求,并将该录制请求发送至相关服务器的接收模块410,接收模块410在接收到该录制请求之后,可根据该录制请求做出相应的操作(响应)。
生成模块420,用于根据录制参数生成录制任务元信息。
具体地,接收模块410在接收到上述的录制请求后,生成模块420可对该录制请求进行解析,以获取该录制请求中的录制参数,并进行录制参数的解析和拼接,以转换成Exector可认识的录制任务元信息。
在本公开实施例中,生成模块420可基于预设的参数处理算法进行录制参数的解析和拼接,以转换成Exector可认识的录制任务元信息,其中,预设的参数处理算法可根据实际情况进行标定。
作为一种可能的情况,生成模块420还可通过参数处理模型进行录制参数的解析和拼接,以转换成Exector可认识的录制任务元信息。应说明的是,该实施例中所描述的参数处理模型可以是提前训练好的,并将其预存在服务器的存储空间中,以方便调取应用。
其中,该参数处理模型的训练与生成均可由相关的训练服务器执行,该训练服务器可以是云端服务器,也可以是一台电脑的主机,该训练服务器与可配置本公开实施例提供的直播的录制装置的服务器之间,建立有通信连接,该通信连接可以是无线网络连接和有线网络连接的至少一种。该训练服务器可将训练完成的参数处理模型发送给该服务器,以便该服务器在需要时调用,从而大大减少该服务器的计算压力。
作为另一种可能的情况,生成模块420还可使用参数处理工具(例如,插件),进行录制参数的解析和拼接,以转换成Exector可认识的录制任务元信息。
录制模块430,用于根据录制任务元信息建立录制任务并进行录制,其中,录制任务元信息存储在数据库之中,且录制任务元信息具有数据消费状态机信息。
需要说明的是,该实施例中所描述的数据库可为上述图1中的DB(数据库模块)中的数据库。其中,可通过消息中间件将录制任务元信息传输至该数据库进行持久化存储,例如,采用Redis存储。
具体地,在生成模块420生成录制任务元信息之后,录制模块430可将录制任务元信息发送至消息中间件,并通过该消息中间件将录制任务元信息传输至该数据库进行持久化存储。其中,消息中间件需要保证消费的唯一性(有且只能消费一次数据)和持久性(不丢)。
进一步地,在生成模块420生成录制任务元信息之后,录制模块430可根据录制任务元信息建立录制任务并进行录制。其中,参见图1,Exector模块可自己创建合理的线程数量。当Exector模块的manager感知到有空闲的slot(线程)时会去消息中间件消费数据进行任务消费。感知录制参数后进行直播内容的录制(例如,通过多媒体处理工具进行录制),从而实现任务的录制。然后可将录制完成的视频进行持久化存储,以避免本地磁盘溢出。
其中,在录制直播内容的过程中,相关的子进程可执行录制任务,进行直播内容的录制,同时可有单独的线程进行bos存储和后置任务的处理(例如,回调信息的处理)。
在本公开实施例中,通过接收模块接收录制请求,其中,录制请求包括录制参数,并通过生成模块根据录制参数生成录制任务元信息,以及通过录制模块根据录制任务元信息建立录制任务并进行录制,从而能够实现直播内容的录制,且能够支持大量用户同时进行录制。
在本公开的一个实施例中,录制请求还包括用户口令卡KEY,且录制任务与所述用户KEY对应。
在本公开的一个实施例中,录制模块430,具体用于:根据录制任务元信息创建多个线程;通过多个线程调用对应的录制资源进行录制任务。
在本公开的一个实施例中,录制模块430,还可用于:当检测到录制资源有空闲时,则从数据库之中调取对应的录制任务元信息。
在本公开的一个实施例中,如图4所示,直播的录制装置400还可包括:检测模块440和重启模块450。
其中,检测模块440用于对录制任务进行心跳检测。
重启模块450,用于当检测到录制任务故障时,则对录制任务进行重启。
在本公开的一个实施例中,录制模块430,还用于:
对录制资源进行心跳检测;当检测到录制资源故障时,则对录制资源进行重启,或者将录制资源上的录制任务进行迁移。
需要说明的是,前述对直播的录制方法实施例的解释说明也适用于该实施例的直播的录制装置,此处不再赘述。
本公开实施例的直播的录制装置,通过接收模块接收录制请求,其中,录制请求包括录制参数,并通过生成模块根据录制参数生成录制任务元信息,以及通过录制模块根据录制任务元信息建立录制任务并进行录制,从而能够实现直播内容的录制,且能够支持大量用户同时进行录制。
本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图5示出了可以用来实施本公开的实施例的示例电子设备500的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图5所示,设备500包括计算单元501,其可以根据存储在只读存储器(ROM)502中的计算机程序或者从存储单元508加载到随机访问存储器(RAM)503中的计算机程序,来执行各种适当的动作和处理。在RAM 503中,还可存储设备500操作所需的各种程序和数据。计算单元501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
设备500中的多个部件连接至I/O接口505,包括:输入单元506,例如键盘、鼠标等;输出单元507,例如各种类型的显示器、扬声器等;存储单元508,例如磁盘、光盘等;以及通信单元509,例如网卡、调制解调器、无线通信收发机等。通信单元509允许设备500通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元501可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元501的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元501执行上文所描述的各个方法和处理,例如直播的录制方法。例如,在一些实施例中,直播的录制方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元508。在一些实施例中,计算机程序的部分或者全部可以经由ROM 502和/或通信单元509而被载入和/或安装到设备500上。当计算机程序加载到RAM 503并由计算单元501执行时,可以执行上文描述的直播的录制方法的一个或多个步骤。备选地,在其他实施例中,计算单元501可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行直播的录制方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、互联网和区块链网络。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

Claims (10)

1.一种直播的录制方法,包括:
接收录制请求,其中,所述录制请求包括录制参数;
对所述录制请求进行解析,以获取所述录制请求中的录制参数,并进行所述录制参数的解析和拼接,以转换成Exector可认识的录制任务元信息;
根据所述录制任务元信息建立录制任务并进行录制,其中,所述录制任务元信息通过消息中间件存储在数据库之中,且所述录制任务元信息具有数据消费状态机信息;
其中,所述根据所述录制任务元信息建立录制任务并进行录制,包括:
根据所述录制任务元信息创建多个线程;
通过所述多个线程调用对应的录制资源进行录制任务;
所述方法,还包括:
当检测到录制资源有空闲时,则从所述数据库之中调取对应的录制任务元信息。
2.如权利要求1所述的方法,还包括:
对所述录制任务进行心跳检测;
当检测到所述录制任务故障时,则对所述录制任务进行重启。
3.如权利要求1所述的方法,还包括:
对所述录制资源进行心跳检测;
当检测到所述录制资源故障时,则对所述录制资源进行重启,或者将所述录制资源上的录制任务进行迁移。
4.如权利要求1所述的方法,其中,所述录制请求还包括用户口令卡KEY,且所述录制任务与所述用户KEY对应。
5.一种直播的录制装置,包括:
接收模块,用于接收录制请求,其中,所述录制请求包括录制参数;
生成模块,用于对所述录制请求进行解析,以获取所述录制请求中的录制参数,并进行所述录制参数的解析和拼接,以转换成Exector可认识的录制任务元信息;
录制模块,用于根据所述录制任务元信息建立录制任务并进行录制,其中,所述录制任务元信息通过消息中间件存储在数据库之中,且所述录制任务元信息具有数据消费状态机信息;
其中,所述录制模块,具体用于:
根据所述录制任务元信息创建多个线程;
通过所述多个线程调用对应的录制资源进行录制任务;
其中,所述录制模块,还用于:
当检测到录制资源有空闲时,则从所述数据库之中调取对应的录制任务元信息。
6.如权利要求5所述的装置,还包括:
检测模块,用于对所述录制任务进行心跳检测;
重启模块,用于当检测到所述录制任务故障时,则对所述录制任务进行重启。
7.如权利要求5所述的装置,其中,所述录制模块,还用于:
对所述录制资源进行心跳检测;
当检测到所述录制资源故障时,则对所述录制资源进行重启,或者将所述录制资源上的录制任务进行迁移。
8.如权利要求5所述的装置,其中,所述录制请求还包括用户口令卡KEY,且所述录制任务与所述用户KEY对应。
9.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-4中任一项所述的直播的录制方法。
10.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-4中任一项所述的直播的录制方法。
CN202110720160.3A 2021-06-28 2021-06-28 直播的录制方法、装置、电子设备及存储介质 Active CN113573080B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110720160.3A CN113573080B (zh) 2021-06-28 2021-06-28 直播的录制方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110720160.3A CN113573080B (zh) 2021-06-28 2021-06-28 直播的录制方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN113573080A CN113573080A (zh) 2021-10-29
CN113573080B true CN113573080B (zh) 2023-09-29

Family

ID=78162986

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110720160.3A Active CN113573080B (zh) 2021-06-28 2021-06-28 直播的录制方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN113573080B (zh)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101631229A (zh) * 2009-08-14 2010-01-20 华为技术有限公司 网络个人录制处理方法和设备及系统
CN101656861A (zh) * 2009-09-14 2010-02-24 中兴通讯股份有限公司 一种录制节目的方法和多媒体系统
CN102056014A (zh) * 2009-10-28 2011-05-11 青岛海信传媒网络技术有限公司 流媒体录制方法和系统
CN104469418A (zh) * 2013-09-22 2015-03-25 中兴通讯股份有限公司 Iptv节目录制方法、装置及系统
CN105450551A (zh) * 2015-12-07 2016-03-30 贵阳朗玛信息技术股份有限公司 一种下载直播流的方法及下载服务器
CN109347930A (zh) * 2018-09-27 2019-02-15 视联动力信息技术股份有限公司 一种任务处理方法和装置
CN109379548A (zh) * 2018-09-26 2019-02-22 Oppo广东移动通信有限公司 多媒体录制方法、装置、终端及存储介质
CN109618180A (zh) * 2019-01-30 2019-04-12 网宿科技股份有限公司 一种直播数据处理方法、系统及服务器
CN109874027A (zh) * 2019-03-11 2019-06-11 宸瑞普惠(广州)科技有限公司 一种低延时手术示教直播方法及其系统
CN109936751A (zh) * 2017-12-15 2019-06-25 中兴通讯股份有限公司 视频录制方法、装置、设备、计算机可读存储介质和系统
CN110602545A (zh) * 2019-09-26 2019-12-20 杭州米络星科技(集团)有限公司 一种网络直播的分布式录制执行方法
CN112039969A (zh) * 2020-08-26 2020-12-04 浪潮云信息技术股份公司 基于Redis分布式锁开发的AWS S3 URL上传方法
CN112732567A (zh) * 2020-12-31 2021-04-30 平安银行股份有限公司 基于ip的mock数据测试方法、装置、电子设备及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170171585A1 (en) * 2015-12-15 2017-06-15 Le Holdings (Beijing) Co., Ltd. Method and Electronic Device for Recording Live Streaming Media

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101631229A (zh) * 2009-08-14 2010-01-20 华为技术有限公司 网络个人录制处理方法和设备及系统
CN101656861A (zh) * 2009-09-14 2010-02-24 中兴通讯股份有限公司 一种录制节目的方法和多媒体系统
CN102056014A (zh) * 2009-10-28 2011-05-11 青岛海信传媒网络技术有限公司 流媒体录制方法和系统
CN104469418A (zh) * 2013-09-22 2015-03-25 中兴通讯股份有限公司 Iptv节目录制方法、装置及系统
CN105450551A (zh) * 2015-12-07 2016-03-30 贵阳朗玛信息技术股份有限公司 一种下载直播流的方法及下载服务器
CN109936751A (zh) * 2017-12-15 2019-06-25 中兴通讯股份有限公司 视频录制方法、装置、设备、计算机可读存储介质和系统
CN109379548A (zh) * 2018-09-26 2019-02-22 Oppo广东移动通信有限公司 多媒体录制方法、装置、终端及存储介质
CN109347930A (zh) * 2018-09-27 2019-02-15 视联动力信息技术股份有限公司 一种任务处理方法和装置
CN109618180A (zh) * 2019-01-30 2019-04-12 网宿科技股份有限公司 一种直播数据处理方法、系统及服务器
CN109874027A (zh) * 2019-03-11 2019-06-11 宸瑞普惠(广州)科技有限公司 一种低延时手术示教直播方法及其系统
CN110602545A (zh) * 2019-09-26 2019-12-20 杭州米络星科技(集团)有限公司 一种网络直播的分布式录制执行方法
CN112039969A (zh) * 2020-08-26 2020-12-04 浪潮云信息技术股份公司 基于Redis分布式锁开发的AWS S3 URL上传方法
CN112732567A (zh) * 2020-12-31 2021-04-30 平安银行股份有限公司 基于ip的mock数据测试方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN113573080A (zh) 2021-10-29

Similar Documents

Publication Publication Date Title
US10950254B2 (en) Producing comprehensible subtitles and captions for an effective group viewing experience
US8825533B2 (en) Intelligent dialogue amongst competitive user applications
CN113159091B (zh) 数据处理方法、装置、电子设备及存储介质
CN105260273B (zh) 一种智能电子设备的测试方法和装置
US11126938B2 (en) Targeted data element detection for crowd sourced projects with machine learning
CN113242358A (zh) 音频数据处理方法、装置、系统、电子设备及存储介质
CN112783614A (zh) 对象处理方法、装置、设备、存储介质以及程序产品
CN113365146A (zh) 用于处理视频的方法、装置、设备、介质和产品
CN105096210A (zh) 一种基于多进程架构的变电站在线监控方法
CN113573080B (zh) 直播的录制方法、装置、电子设备及存储介质
CN112382294A (zh) 语音识别方法、装置、电子设备和存储介质
CN116894078A (zh) 一种信息交互方法、装置、电子设备及介质
CN116824455A (zh) 事件检测方法、装置、设备和存储介质
CN114880498B (zh) 事件信息展示方法及装置、设备和介质
CN114554110B (zh) 视频生成方法、装置、电子设备和存储介质
CN114363704B (zh) 视频播放方法、装置、设备以及存储介质
CN113378025B (zh) 数据处理方法、装置、电子设备及存储介质
CN115550141A (zh) 事件处理方法、装置、电子设备及可读存储介质
CN114185782A (zh) 一种虚拟对象的交互测试方法、装置及电子设备
CN113852835A (zh) 直播音频处理方法、装置、电子设备以及存储介质
CN114501112B (zh) 用于生成视频笔记的方法、装置、设备、介质和产品
CN113704063B (zh) 一种云手机的性能监控方法、装置、设备及存储介质
CN113836291B (zh) 数据处理方法、装置、设备和存储介质
US11978458B2 (en) Electronic apparatus and method for recognizing speech thereof
CN115767179A (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