CN116366862A - 一种基于Redis消息的视频文件压缩方法及*** - Google Patents
一种基于Redis消息的视频文件压缩方法及*** Download PDFInfo
- Publication number
- CN116366862A CN116366862A CN202310394448.5A CN202310394448A CN116366862A CN 116366862 A CN116366862 A CN 116366862A CN 202310394448 A CN202310394448 A CN 202310394448A CN 116366862 A CN116366862 A CN 116366862A
- Authority
- CN
- China
- Prior art keywords
- task
- file
- acquiring
- running
- redis
- 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
Links
- 230000006835 compression Effects 0.000 title claims abstract description 34
- 238000007906 compression Methods 0.000 title claims abstract description 34
- 238000000034 method Methods 0.000 title claims abstract description 23
- 230000003993 interaction Effects 0.000 claims abstract description 10
- 238000004080 punching Methods 0.000 claims description 15
- 238000007726 management method Methods 0.000 claims description 10
- 239000012634 fragment Substances 0.000 claims description 9
- 238000005538 encapsulation Methods 0.000 claims description 5
- 238000004806 packaging method and process Methods 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 abstract description 7
- 238000012544 monitoring process Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 1
- 230000035755 proliferation Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/40—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/156—Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种基于Redis消息的视频文件压缩方法,包括以下步骤:任务管理模块定时轮巡获取***当前运行的任务数;判断是否满载,如果还未满载,通过Redis消息交互模块获取任务队列,判断队列是否为空,如果队列不为空,则获取其任务的key值,同时获取任务对应info域信息,调用添加转码任务的接口,添加转码任务,返回至获取***当前运行的任务数;如果满载或任务队列为空,则获取当前运行任务的状态,并通过Redis交互模块上报任务状态;判断任务运行状态,若运行中,则结束,若未运行,则删除任务信息,并结束。本发明提供的一种基于Redis消息的视频文件压缩方法及***具备节省存储空间,节省后续的传输带宽等优点。
Description
技术领域
本发明涉及视频监控领域,尤其涉及一种基于Redis消息的视频文件压缩方法及***。
背景技术
随着智慧城市的快速发展,移动互联设备的快速激增,安防视频监控产生了大量的音视频数据,视频监控从基本需求看到,到看清,再到看得好,大家对视频图像清晰度的要求在不断增加。随着视频图像清晰度的不断增加,视频图像的存储需求也在不断发生变化。网络视频的传输受带宽限制容易导致视频传输耗时较多,从而限制了视频解析服务器对视频的处理速度。
发明内容
本发明提供了一种基于Redis消息的视频文件压缩方法及***,解决网络视频的传输受带宽限制容易导致视频传输耗时较多,从而限制了视频解析服务器对视频的处理速度的问题,具备在不增加直播盒子用户成本的前提下,实现内网盒子外网推流的目的等优点。
根据本申请实施例提供的一种基于Redis消息的视频文件压缩方法,包括以下步骤:
包括任务管理方法,包括以下步骤:
任务管理模块定时轮巡获取***当前运行的任务数;
判断是否满载,如果还未满载,通过Redis消息交互模块获取任务队列,判断队列是否为空,如果队列不为空,则获取其任务的key值,同时获取任务对应info域信息,调用添加转码任务的接口,添加转码任务,返回至获取***当前运行的任务数;
如果满载或任务队列为空,则获取当前运行任务的状态,并通过Redis交互模块上报任务状态;
判断任务运行状态,若运行中,则结束,若未运行,则删除任务信息,并结束。
优选地,还包括任务运行方法,包括如下步骤:
添加任务时会启动新的线程并设置任务状态为运行中标志,打开待转码文件;
判断是否打卡成功,若打开成功,则获取其编码、分辨率、码率信息,根据其信息启动解码器以及编码器,启动成功后,读取文件的数据进行解码以及编码,将编码后的数据回调到视频封装模块,判断文件是否结束,若文件读取结束或者打开失败后,通过文件推送模块以表单的形式将文件以及信息上传到指定的接收服务中,若文件读取未结束,则返回至读取文件的数据进行解码以及编码。
优选地,还包括文件推送方法,包括如下步骤:
文件推送模块根据输入文件路径,判断文件路径是否有效,如果无效,设置filesize为0,并设置errcode以及错误描述信息;如果有效,则进行分片读取其数据,并记录其偏移地址,以及该分片的md5值,如果是最后一个分片时,则设置整个文件的md5值,设置结束后,通过表单的形式进行上传。
本发明提供一种基于Redis消息的视频文件压缩***,应用于上述的一种基于Redis消息的视频文件压缩方法,包括:
文件推送模块,任务管理模块,编解码模块,视频封装模块以及文件推送模块,所述一种基于Redis消息的视频文件压缩***获取待转码的任务消息,所述任务管理模块用于启动视频压缩的线程,线程中获取待转码文件的编码格式、帧率、码率信息,编解码模块用于设置码率、编码格式参数,将编码后的数据回调给视频封装模块;待转码文件读取结束后,向编解码模块发送流结束标志,编码数据全部回调结束后,通过文件推送模块往指定的接收服务地址上传文件。
本申请实施例提供的技术方案可以包括以下有益效果:
本发明提出一种基于Redis消息的视频文件压缩方法及***;该***通过连接Redis服务端,对任务队列进行定时检测,当检测到队列中有任务数据时,获取其视频文件压缩任务信息,根据任务信息进行转码,转码结束后,上传到任务指定的文件接收服务器。通过该***对视频文件进行压缩,从而节省存储空间,也节省后续的传输带宽;同时可以动态加载该***的硬件来满足视频文件压缩任务的响应速度。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明任务管理流程的流程示意图;
图2为本发明文件推送方法的流程示意图;
图3为本发明一种基于Redis消息的视频文件压缩***的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1,本发明提供一种基于Redis消息的视频文件压缩方法,包括以下步骤:
任务管理模块定时轮巡获取***当前运行的任务数;
判断是否满载,如果还未满载,通过Redis消息交互模块获取任务队列,判断队列是否为空,如果队列不为空,则获取其任务的key值,同时获取任务对应info域信息,调用添加转码任务的接口,添加转码任务,返回至获取***当前运行的任务数;
如果满载或任务队列为空,则获取当前运行任务的状态,并通过Redis交互模块上报任务状态;
判断任务运行状态,若运行中,则结束,若未运行,则删除任务信息,并结束。
即:任务管理模块定时轮巡获取***当前运行的任务数,如果还未满载,通过Redis消息交互模块获取任务队列,如果队列不为空,则获取其任务的key值,同时获取任务对应info域信息,调用添加转码任务的接口;如果满载或任务队列为空,则获取当前运行任务的状态,并通过Redis交互模块上报任务状态。
请参阅图2,还包括任务运行方法,包括如下步骤:添加任务时会启动新的线程并设置任务状态为运行中标志,打开待转码文件;判断是否打卡成功,若打开成功,则获取其编码、分辨率、码率信息,根据其信息启动解码器以及编码器,启动成功后,读取文件的数据进行解码以及编码,将编码后的数据回调到视频封装模块,判断文件是否结束,若文件读取结束或者打开失败后,通过文件推送模块以表单的形式将文件以及信息上传到指定的接收服务中,若文件读取未结束,则返回至读取文件的数据进行解码以及编码。
即:任务管理模块接收到添加转码任务时会启动转码线程,打开待转码文件,如果打开成功,则获取其文件的编码、帧率以及码率等信息,根据其获取的信息初始化编解码模块,同时设置视频输出封装的参数,当文件读取结束后,调用文件推送模块,向指定的文件接收服务进行上传其相关文件以及信息。
请继续参阅图2,还包括文件推送方法,包括如下步骤:文件推送模块根据输入文件路径,判断文件路径是否有效,如果无效,设置filesize为0,并设置errcode以及错误描述信息;如果有效,则进行分片读取其数据,并记录其偏移地址,以及该分片的md5值,如果是最后一个分片时,则设置整个文件的md5值,设置结束后,通过表单的形式进行上传。
请参阅图3,本发明还提供一种基于Redis消息的视频文件压缩***,包括文件推送模块,任务管理模块,编解码模块,视频封装模块以及文件推送模块,所述一种基于Redis消息的视频文件压缩***获取待转码的任务消息,所述任务管理模块用于启动视频压缩的线程,线程中获取待转码文件的编码格式、帧率、码率信息,编解码模块用于设置码率、编码格式参数,将编码后的数据回调给视频封装模块;待转码文件读取结束后,向编解码模块发送流结束标志,编码数据全部回调结束后,通过文件推送模块往指定的接收服务地址上传文件。
本申请实施例提供的技术方案可以包括以下有益效果:
本发明提出一种基于Redis消息的视频文件压缩方法及***;该***通过连接Redis服务端,对任务队列进行定时检测,当检测到队列中有任务数据时,获取其视频文件压缩任务信息,根据任务信息进行转码,转码结束后,上传到任务指定的文件接收服务器。通过该***对视频文件进行压缩,从而节省存储空间,也节省后续的传输带宽;同时可以动态加载该***的硬件来满足视频文件压缩任务的响应速度。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (4)
1.一种基于Redis消息的视频文件压缩方法,其特征在于,包括任务管理方法,包括以下步骤:
任务管理模块定时轮巡获取***当前运行的任务数;
判断是否满载,如果还未满载,通过Redis消息交互模块获取任务队列,判断队列是否为空,如果队列不为空,则获取其任务的key值,同时获取任务对应info域信息,调用添加转码任务的接口,添加转码任务,返回至获取***当前运行的任务数;
如果满载或任务队列为空,则获取当前运行任务的状态,并通过Redis交互模块上报任务状态;
判断任务运行状态,若运行中,则结束,若未运行,则删除任务信息,并结束。
2.根据权利要求1所述的一种基于Redis消息的视频文件压缩方法,其特征在于,还包括任务运行方法,包括如下步骤:
添加任务时会启动新的线程并设置任务状态为运行中标志,打开待转码文件;
判断是否打卡成功,若打开成功,则获取其编码、分辨率、码率信息,根据其信息启动解码器以及编码器,启动成功后,读取文件的数据进行解码以及编码,将编码后的数据回调到视频封装模块,判断文件是否结束,若文件读取结束或者打开失败后,通过文件推送模块以表单的形式将文件以及信息上传到指定的接收服务中,若文件读取未结束,则返回至读取文件的数据进行解码以及编码。
3.根据权利要求2所述的一种基于Redis消息的视频文件压缩方法,其特征在于,还包括文件推送方法,包括如下步骤:
文件推送模块根据输入文件路径,判断文件路径是否有效,如果无效,设置filesize为0,并设置errcode以及错误描述信息;如果有效,则进行分片读取其数据,并记录其偏移地址,以及该分片的md5值,如果是最后一个分片时,则设置整个文件的md5值,设置结束后,通过表单的形式进行上传。
4.一种基于Redis消息的视频文件压缩***,应用于权利要求1-3中任一项所述的一种基于Redis消息的视频文件压缩方法,其特征在于,包括:
文件推送模块,任务管理模块,编解码模块,视频封装模块以及文件推送模块,所述一种基于Redis消息的视频文件压缩***获取待转码的任务消息,所述任务管理模块用于启动视频压缩的线程,线程中获取待转码文件的编码格式、帧率、码率信息,编解码模块用于设置码率、编码格式参数,将编码后的数据回调给视频封装模块;待转码文件读取结束后,向编解码模块发送流结束标志,编码数据全部回调结束后,通过文件推送模块往指定的接收服务地址上传文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310394448.5A CN116366862A (zh) | 2023-04-07 | 2023-04-07 | 一种基于Redis消息的视频文件压缩方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310394448.5A CN116366862A (zh) | 2023-04-07 | 2023-04-07 | 一种基于Redis消息的视频文件压缩方法及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116366862A true CN116366862A (zh) | 2023-06-30 |
Family
ID=86933000
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310394448.5A Pending CN116366862A (zh) | 2023-04-07 | 2023-04-07 | 一种基于Redis消息的视频文件压缩方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116366862A (zh) |
-
2023
- 2023-04-07 CN CN202310394448.5A patent/CN116366862A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8874531B2 (en) | Methods and systems for encoding/decoding files and transmissions thereof | |
WO2018103568A1 (zh) | 云桌面内容编码与解码方法及装置、*** | |
CN112235597B (zh) | 流媒体直播音视频同步保护方法、装置、计算机设备 | |
KR20110106271A (ko) | 근사 최적 퀄리티를 갖는 낮은 복잡성의 이미지 트랜스코딩을 위한 방법 및 시스템 | |
CN111093094A (zh) | 视频转码方法、装置、***及电子设备及可读存储介质 | |
CN112165653B (zh) | 一种视频播放方法、装置及设备 | |
US20210103813A1 (en) | High-Level Syntax for Priority Signaling in Neural Network Compression | |
CN110730364B (zh) | 一种云手机数据传输方法、装置及存储介质 | |
US8681860B2 (en) | Moving picture compression apparatus and method of controlling operation of same | |
WO2024078066A1 (zh) | 视频解码方法、视频编码方法、装置、存储介质及设备 | |
US20180091811A1 (en) | Region-Based Processing of Predicted Pixels | |
CN112672154A (zh) | 直播视频播放方法、装置、服务器和计算机可读存储介质 | |
CN116366862A (zh) | 一种基于Redis消息的视频文件压缩方法及*** | |
CN111954016A (zh) | 一种直播视频流高效精准录制方案 | |
CN101296166B (zh) | 基于索引的多媒体数据的测量方法 | |
US7016543B2 (en) | Method for providing a terminal with coded still image signals, communications system, network element and module | |
CN111314350A (zh) | 图像存储***、存储方法、调用***和调用方法 | |
CN103974087B (zh) | 视频图像文件压缩***、客户端及方法 | |
CN112055174B (zh) | 一种视频传输方法、装置及计算机可读存储介质 | |
CN101841704B (zh) | 视频码流压缩及解压缩的方法和装置 | |
CN113709517A (zh) | 一种基于弱终端的在线视频流处理*** | |
CN108933945B (zh) | 一种gif图片的压缩方法、装置及存储介质 | |
CN112672164A (zh) | 视频压缩***及方法、视频解压缩***及方法 | |
CN112491924B (zh) | 跨平台人脸识别登录方法、***及存储介质 | |
CN109246434B (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 |