将h264格式转换为mp4格式的方法、装置及介质与流程

文档序号:27677124发布日期:2021-11-30 12:43阅读:655来源:国知局
将h264格式转换为mp4格式的方法、装置及介质与流程

本发明涉及计算机技术领域,具体涉及一种将h264格式转换为mp4格式的方法、装置及介质。

背景技术

目前,监控终端设备已被广泛应用于智能零售等多个领域。采用视频监控卡录制的视频流一般为h264格式。但是,目前主流的播放器并不支持h264格式的视频文件,从而导致无法正常播放所录制的视频流。



技术实现要素:

针对现有技术中的技术缺陷,本发明实施例的目的在于提供一种将h264格式转换为mp4格式的方法、装置及介质。

为实现上述目的,第一方面,本发明实施例提供了一种将h264格式转换为mp4格式的方法,包括:

接收来自于web端的需转码的h264视频文件;

将需转码的h264视频文件放入阻塞队列中,每一需转码的h264视频文件为一待处理任务,所述阻塞队列中包括多个待处理任务;

从线程池中获取线程,采用所述线程从所述阻塞队列中获取一所述待处理任务;

开启一java线程,采用所述java线程执行所述待处理任务,得到转码后的mp4视频文件。

作为本申请一种优选的实施方式,接收来自于web端的需转码的h264文件之前,所述方法还包括:

接收来自于web端的转码请求。

作为本申请一种具体的实施方式,采用所述java线程执行所述待处理任务具体为:

采用所述java线程执行Ffmpeg命令,进行转码。

作为本申请一种优选的实施方式,得到转码后的mp4视频文件之后,所述方法还包括:

将所述mp4视频文件输出至指定目录,以使用播放器对所述mp4视频文件进行播放;

将转码成功信息返回至所述web端。

第二方面,本发明实施例提供了一种将h264格式转换为mp4格式的装置,包括:

接收单元,用于接收来自于web端的需转码的h264视频文件;

存储单元,用于将需转码的h264视频文件放入阻塞队列中,每一需转码的h264视频文件为一待处理任务,所述阻塞队列中包括多个待处理任务;

获取单元,用于从线程池中获取线程,采用所述线程从所述阻塞队列中获取一所述待处理任务;

转码单元,用于开启一java线程,采用所述java线程执行所述待处理任务,得到转码后的mp4视频文件。

作为本申请的一种优选实施方式,所述装置还包括推送单元,用于:

将所述mp4视频文件输出至指定目录,以使用播放器对所述mp4视频文件进行播放;

将转码成功信息返回至所述web端。

第三方面,本发明实施例还提供了一种将h264格式转换为mp4格式的电子设备,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器通过总线相互连接,所述存储器用于存储计算机程序,所述计算机程序包括程序指令。其中,所述处理器被配置用于调用所述程序指令,执行上述第一方面的方法。

第四方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序/指令。该计算机程序/指令被处理器执行时实现如上述第一方面所述方法的步骤。

第五方面,本发明实施例提供了一种计算机程序产品,其上存储有计算机程序/指令。该计算机程序/指令被处理器执行时实现如上述第一方面所述方法的步骤。

实施本发明实施例,可以将来自于wen端的h264视频文件转换为mp4格式的视频文件,使其能够在主流播放器上进行播放,且实现成本较低。

附图说明

为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。

图1是本发明实施例的原理图;

图2是本发明实施例提供的将h264格式转换为mp4格式的方法流程图;

图3是本发明实施例提供的将h264格式转换为mp4格式的装置的结构图;

图4是本发明实施例提供的将h264格式转换为mp4格式的电子设备的结构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参考图1及图2,本发明实施例提供的将h264格式转换为mp4格式的方法主要包括:

S101,接收来自于web端的转码请求。

具体地,当有h264格式的视频文件需要转码时,web端向系统发起转码请求。

S102,接收来自于web端的需转码的h264视频文件。

具体地,系统同意签署转码请求后,web端将需转码的h264视频文件传送给系统。

S103,将需转码的h264视频文件放入阻塞队列中,等待处理。

具体地,系统接收到需转码的h264视频文件后,将其存放至内存的阻塞队列中。其中,每一需转码的h264视频文件为一待处理任务,该阻塞队列中包括多个待处理任务。

S104,从线程池中获取线程,采用该线程从阻塞队列中获取一待处理任务。

S105,开启一java线程,采用该java线程执行待处理任务,得到转码后的mp4视频文件。

S106,将所述mp4视频文件输出至指定目录,以使用播放器对所述mp4视频文件进行播放。

具体地,开启一个java进程,执行ffmpeg-i待转码文件-vcodec copy-f mp4转码成功文件输出目录,使用播放器播放转码成功的mp4视频文件。

S107,将转码成功信息返回至所述web端。

具体地,系统通知web端转码已成功。

从以上描述可以得出,本发明实施例所提供的方法,可以将来自于wen端的h264视频文件转换为mp4格式的视频文件,使其能够在主流播放器上进行播放。且,该方法是基于开源Ffmpeg框架进行开发,低成本实现了对h264转码为主流播放器支持的mp4格式。

基于相同的发明构思,本发明实施例提供了一种将h264格式转换为mp4格式的装置。如图3所示,该装置包括:

接收单元10,用于接收来自于web端的需转码的h264视频文件;

存储单元11,用于将需转码的h264视频文件放入阻塞队列中,每一需转码的h264视频文件为一待处理任务,所述阻塞队列中包括多个待处理任务;

获取单元12,用于从线程池中获取线程,采用所述线程从所述阻塞队列中获取一所述待处理任务;

转码单元13,用于开启一java线程,采用所述java线程执行所述待处理任务,得到转码后的mp4视频文件。

进一步地,该装置还包括推送单元,用于:

将所述mp4视频文件输出至指定目录,以使用播放器对所述mp4视频文件进行播放;

将转码成功信息返回至所述web端。

再请参考图4,本发明实施例提供了一种将h264格式转换为mp4格式的电子设备,可以包括:一个或多个处理器101、一个或多个输入设备102、一个或多个输出设备103和存储器104,上述处理器101、输入设备102、输出设备103和存储器104通过总线105相互连接。存储器104用于存储计算机程序,所述计算机程序包括程序指令,所述处理器101被配置用于调用所述程序指令执行上述将h264格式转换为mp4格式的方法实施例部分的方法。

应当理解,在本发明实施例中,所称处理器101可以是中央处理单元(Central Processing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

输入设备102可以包括键盘等,输出设备103可以包括显示器(LCD等)、扬声器等。

该存储器104可以包括只读存储器和随机存取存储器,并向处理器101提供指令和数据。存储器104的一部分还可以包括非易失性随机存取存储器。例如,存储器104还可以存储设备类型的信息。

具体实现中,本发明实施例中所描述的处理器101、输入设备102、输出设备103可执行本发明实施例提供的将h264格式转换为mp4格式的方法的实施例中所描述的实现方式,在此不再赘述。

需要说明的是,关于装置及电子设备更为具体的工作流程,请参考前述方法实施例部分,在此不再赘述。

进一步地,对应于将h264格式转换为mp4格式的电方法,本发明实施例还提供了一种可读存储介质,其上存储有计算机程序/指令,该计算机程序/指令被处理器执行时实现:上述方法实施例部分的方法。

进一步地,本发明实施例提供了一种计算机程序产品,其上存储有计算机程序/指令。该计算机程序/指令被处理器执行时实现:上述方法实施例部分的方法。

该计算机程序产品应当理解为主要通过计算机程序实现其解决方案的软件产品。

所述计算机可读存储介质可以是前述实施例所述的客户机的内部存储单元,例如系统的硬盘或内存。所述计算机可读存储介质也可以是所述系统的外部存储设备,例如所述系统上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述计算机可读存储介质还可以既包括所述系统的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述系统所需的其他程序和数据。所述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

在本申请所提供的几个实施例中,应该理解到,所揭露的单元和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有1条留言
  • 访客 来自[中国] 2021年11月30日 17:24
    1111111111
    0
1