CN109005414A - 视频传输方法、装置、设备以及系统 - Google Patents

视频传输方法、装置、设备以及系统 Download PDF

Info

Publication number
CN109005414A
CN109005414A CN201811089697.9A CN201811089697A CN109005414A CN 109005414 A CN109005414 A CN 109005414A CN 201811089697 A CN201811089697 A CN 201811089697A CN 109005414 A CN109005414 A CN 109005414A
Authority
CN
China
Prior art keywords
frame
video
frame per
per
video frame
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
CN201811089697.9A
Other languages
English (en)
Other versions
CN109005414B (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.)
Tupu Technology (guangzhou) Co Ltd
Original Assignee
Tupu Technology (guangzhou) 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 Tupu Technology (guangzhou) Co Ltd filed Critical Tupu Technology (guangzhou) Co Ltd
Priority to CN201811089697.9A priority Critical patent/CN109005414B/zh
Publication of CN109005414A publication Critical patent/CN109005414A/zh
Application granted granted Critical
Publication of CN109005414B publication Critical patent/CN109005414B/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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • 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/21805Source of audio or video content, e.g. local disk arrays enabling multiple viewpoints, e.g. using a plurality of cameras
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明提供一种视频传输方法、装置、设备以及系统,用于解决现有的降低图像输出帧率的方式耗费计算资源过多,耗时过长的问题。所述视频传输方法包括:接收第一摄像头以第一帧率传输的视频帧;根据接收到的视频帧中的P帧的大小,确定向服务器发送视频帧的第二帧率;其中,第二帧率的大小与P帧的大小成正相关关系;对接收到的视频帧进行解码,并基于第二帧率确定解码后的视频帧中需要发送至服务器的视频帧;对需要发送的视频帧进行编码,并将编码后的视频帧发送至服务器。

Description

视频传输方法、装置、设备以及系统
技术领域
本发明涉及视频处理技术领域,具体而言,涉及一种视频传输方法、装置、设备以及系统。
背景技术
在视频处理技术领域,由于有时摄像头采集到的画面可能会静止不变,而帧率依旧保持不变,后续人工智能系统再处理视频时会浪费大量精力在静止的背景图像。假如人工智能系统部署在云端服务器,高帧率还会占用较大的带宽。实际应用中,给人工智能系统分析的视频流采用的可变帧率编码系统,一般都是基于图像处理来控制帧率,通过图像识别算法比较前后两张图像是否相同,来判断是否需要输出该图像。采用这样的方式会占用较大的带宽、耗费较多时间,并且当需要在低成本的计算平台接入多路视频流时,采用该方式将会出现计算资源不够的问题。
发明内容
本发明实施例提供一种视频传输方法、装置、设备以及系统,以解决现有的降低图像输出帧率的方式耗费计算资源过多,耗时过长的问题。
为了实现上述目的,本发明实施例所提供的技术方案如下所示:
第一方面,本发明实施例提供一种视频传输方法,包括:接收第一摄像头以第一帧率传输的视频帧;根据接收到的所述视频帧中的P帧的大小,确定向服务器发送视频帧的第二帧率;其中,所述第二帧率的大小与所述P帧的大小成正相关关系;对所述接收到的所述视频帧进行解码,并基于所述第二帧率确定解码后的所述视频帧中需要发送至所述服务器的所述视频帧;对所述需要发送的所述视频帧进行编码,并将编码后的所述视频帧发送至所述服务器。
在本发明的可选实施例中,所述根据接收到的所述视频帧中的P帧的大小,确定向服务器发送所述视频帧的第二帧率,包括:
根据公式
计算得到比较值X;其中,S为所述P帧的大小,FPS_MAX为预设最高帧率,FPS_MIN为预设最低帧率,S_avg_t为当前时刻之前的预设时间段内所述P帧的平均大小;若所述比较值X大于所述预设最高帧率FPS_MAX,则确定所述第二帧率为所述预设最高帧率FPS_MAX;若所述比较值X小于所述预设最低帧率FPS_MIN,则确定所述第二帧率为所述预设最低帧率FPS_MIN;若所述比较值X小于所述预设最高帧率FPS_MAX且大于所述预设最低帧率FPS_MIN,则确定所述第二帧率为所述比较值X。
在本发明的可选实施例中,所述基于所述第二帧率确定解码后的所述视频帧中需要发送至所述服务器的所述视频帧,包括:将每个P帧对应的所述第二帧率累加至累加器;比较所述累加器的数值与所述第一帧率,若所述数值大于或等于所述第一帧率,则确定当前接收的所述视频帧为所述需要发送至所述服务器的所述视频帧;将所述累加器的数值减去所述第一帧率。
在本发明的可选实施例中,所述视频传输方法还包括:接收第二摄像头以第三帧率传输的所述视频帧;根据接收到的所述视频帧中的P帧的大小,确定向服务器发送所述视频帧的第四帧率;其中,所述第四帧率的大小与所述P帧的大小成正相关关系;对所述接收到的所述视频帧进行解码,并基于所述第四帧率确定解码后的所述视频帧中需要发送至所述服务器的所述视频帧;对需要发送的所述视频帧进行编码,并将编码后的所述视频帧发送至所述服务器。
在本发明的可选实施例中,所述接收第一摄像头以第一帧率传输的视频帧,包括:基于RTSP传输协议接收所述第一摄像头以所述第一帧率传输的所述视频帧。
在本发明的可选实施例中,所述将编码后的所述视频帧发送至所述服务器,包括:基于RTMP传输协议将所述编码后的所述视频帧发送至所述服务器。
第二方面,本发明实施例提供一种视频传输装置,包括:接收模块,用于接收第一摄像头以第一帧率传输的视频帧;处理模块,用于根据接收到的所述视频帧中的P帧的大小,确定向服务器发送视频帧的第二帧率;其中,所述第二帧率的大小与所述P帧的大小成正相关关系;判断模块,用于对所述接收到的所述视频帧进行解码,并基于所述第二帧率确定解码后的所述视频帧中需要发送至所述服务器的所述视频帧;发送模块,用于对需要发送的所述视频帧进行编码,并将编码后的所述视频帧发送至所述服务器。
在本发明的可选实施例中,所述处理模块用于:根据公式
计算得到比较值X;其中,S为所述P帧的大小,FPS_MAX为预设最高帧率,FPS_MIN为预设最低帧率,S_avg_t为当前时刻之前的预设时间段内内所述P帧的平均大小;若所述比较值X大于所述预设最高帧率FPS_MAX,则确定所述第二帧率为所述预设最高帧率FPS_MAX;若所述比较值X小于所述预设最低帧率FPS_MIN,则确定所述第二帧率为所述预设最低帧率FPS_MIN;若所述比较值X小于所述预设最高帧率FPS_MAX且大于所述预设最低帧率FPS_MIN,则确定所述第二帧率为所述比较值X。
在本发明的可选实施例中,所述判断模块用于:将每个P帧对应的所述第二帧率累加至累加器;比较所述累加器的数值与所述第一帧率,若所述数值大于或等于所述第一帧率,则确定当前接收的所述视频帧为所述需要发送至所述服务器的所述视频帧;将所述累加器的数值减去所述第一帧率。
第三方面,本发明实施例提供一种视频传输设备,包括:处理器以及与所述处理器连接的存储器以及通信单元;其中,所述存储器用于存储计算机指令;所述通信单元用于与外部设备进行通信;所述处理器用于执行所述计算机指令,以在执行所述计算机指令时执行权利要求1-5任一项所述的方法。
第四方面,本发明实施例提供一种视频传输系统,包括:权利要求9所述的视频传输设备;至少一个摄像头,每个摄像头用于采集所述视频,并对采集到的所述视频进行编码得到视频帧,将所述视频帧发送至所述视频传输设备;以及服务器,用于接收所述视频传输设备发送的所述视频帧。
本发明实施例提供的一种视频传输方法、装置、设备以及系统,所述视频传输方法包括:接收第一摄像头以第一帧率传输的视频帧;根据接收到的所述视频帧中的P帧的大小,确定向服务器发送所述视频帧的第二帧率;其中,所述第二帧率的大小与所述P帧的大小成正相关关系;对所述接收到的所述视频帧进行解码,并基于所述第二帧率确定解码后的所述视频帧中需要发送至所述服务器的所述视频帧;对所述需要发送的所述视频帧进行编码,并将编码后的所述视频帧发送至所述服务器。该方法使用可变帧率的方式,由于P帧的大小和前后视频帧的差异正相关,因此根据采集的画面变化剧烈程度来调整降帧比,当画面静止时降低视频流的帧率,当画面有变化时,比如有人走过等,则提高帧率,从而降低降帧耗时以及对计算资源的要求,提升有效图片的比率。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举本发明实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍。应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提供的视频传输系统的示意图;
图2为本发明第一实施例提供的视频传输方法的流程示意图;
图3为本发明第二实施例提供的视频传输方法的流程示意图;
图4为本发明第三实施例提供的视频传输方法的流程示意图;
图5为本发明第四实施例提供的视频传输方法的流程示意图;
图6为本发明实施例提供的视频传输装置的示意图。
图标:
10-视频传输系统;100-第一摄像头;200-第二摄像头;300-视频传输设备;400-服务器;500-视频传输装置;510-接收模块;520-处理模块;530-判断模块;540-发送模块。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本发明的描述中,需要说明的是,术语“中”、“上”、“下”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
此外,术语“水平”、“竖直”等术语并不表示要求部件绝对水平或悬垂,而是可以稍微倾斜。如“水平”仅仅是指其方向相对“竖直”而言更加水平,并不是表示该结构一定要完全水平,而是可以稍微倾斜。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“设置”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接。可以是机械连接,也可以是电性连接。可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
下面结合附图,对本发明的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
请参照图1,图1为本发明实施例提供的视频传输系统的示意图,该视频传输系统10包括至少一个摄像头、视频传输设备300以及服务器400,其中,摄像头用于采集视频,并对采集到的视频进行编码得到视频帧,并将视频帧发送至视频传输设备300;服务器400用于接收视频传输设备300发送的视频帧;视频传输设备300用于执行视频传输方法,实现动态调整向服务器400传输视频帧的帧率。需要说明的是,摄像头可以有多个,如图1所示的第一摄像头100、第二摄像头200等。
第一实施例
下面详细介绍基于图1所示系统的视频传输方法,请参照图2,图2为本发明第一实施例提供的视频传输方法的流程示意图,该方法包括如下步骤:
步骤S100:视频传输设备接收第一摄像头以第一帧率传输的视频帧。
第一摄像头实时采集视频画面,并将采集到的视频画面进行视频编码得到对应的视频帧。具体的,视频编码就是通过特定的压缩技术,将某个视频格式的文件转换成另一种视频格式文件。在摄像头针对视频画面,即连续的动态图像进行编码时,一般将连续的若干幅图像分成P、B、I三种类型。其中,P帧是由在它前面的P帧或者I帧预测而来,它比较与它前面的P帧或者I帧之间的相同信息或数据。编码完成后,第一摄像头以第一帧率将编码得到的视频帧传输给视频传输设备。
其中,步骤S100中视频传输设备接收第一摄像头以第一帧率传输的视频帧可以基于实时流传输协议(Real Time Streaming Protocol,RTSP)。
RTSP是TCP/IP协议体系中的一个应用层协议,该协议定义了一对多应用程序如何有效地通过IP(Internet Protocol,网络之间互连的协议)网络传送多媒体数据。需要说明的是,本发明实施例中第一摄像头以第一帧率传输视频帧的方式不限于RTSP传输协议,还可以是RTMP传输协议等。
步骤S200:视频传输设备根据接收到的所述视频帧中的P帧的大小,确定向服务器发送所述视频帧的第二帧率。
视频传输设备在接收到第一摄像头传输的包含P帧的视频帧后,根据该视频帧的P帧的大小来确定一个第二帧率。其中,该第二帧率的大小与该视频帧的P帧的大小成正相关关系。需要说明的是,本发明实施例对该正相关关系不作具体的限定,线性正相关、指数正相关等正相关关系都可以作为该第二帧率的大小与该视频帧的P帧的大小的对应关系。例如,第二帧率的大小为视频帧的P帧的大小的N倍,即第二帧率的大小与视频帧的P帧的大小线性正相关;或者,第二帧率的大小为二的视频帧的P帧的大小次方,即第二帧率的大小与视频帧的P帧的大小指数正相关。
步骤S300:视频传输设备对所述接收到的所述视频帧进行解码,并基于所述第二帧率确定解码后的所述视频帧中需要发送至所述服务器的所述视频帧。
视频传输设备在接收到第一摄像头传输的视频帧后,需要对接收到的视频帧进行实时解码,并将解码后的视频帧暂存在视频传输设备中。与此同时,视频传输设备还应该基于步骤S200中得到的第二帧率确定上述解码后的视频帧哪些是需要发送至服务器的视频帧。需要说明的是,本发明实施例对视频传输设备确定需要发送的视频帧的方式不作具体的限定。例如,可以是设置一个阈值,当第二帧率大于该阈值时,视频传设备每两帧传输一帧,当第二帧率小于该阈值时,视频传输设备每四帧传输一帧;或者,可以是设置一个累加器,将第二帧率累加至累加器,每当该累加数值大于第一帧率时,视频传输设备传输一帧。
具体的,当第一摄像头采集的视频画面长时间没有剧烈变化时,第二帧率变化较小,视频传输设备判断不需要发送这些变化不大的视频帧,而一旦第一摄像头采集的视频画面出现剧烈变化时,例如视频画面中有人走过等,第二帧率变化较大,视频传输设备判断需要发送这些变化较大的视频帧。
步骤S400:视频传输设备对所述需要发送的所述视频帧进行编码,并将编码后的所述视频帧发送至所述服务器。
在步骤S300中确定了需要发送至服务器的视频帧后,视频传输设备还需要对这些需要发送至服务器的视频帧进行重新编码,并将重新编码后的视频帧传输给服务器,以便服务器根据接收到的视频帧进行后续的操作,比如:人工智能分析、放映等。
其中,在步骤S400中视频传输设备将编码后的所述视频帧发送至所述服务器可以基于实时消息传输协议(Real Time Messaging Protocol,RTMP)。
RTMP是一个协议族,包括RTMP基本协议及多种变种。RTMP是一种设计用来进行实时数据通信的网络协议,主要用来在视频播放平台和支持RTMP协议的流媒体或者交互服务器之间进行音视频和数据通信。需要说明的是,本发明实施例中将编码后的所述视频帧发送至所述服务器的方式不限于RTMP传输协议,还可以是RTSP传输协议等。
在本实施例中,提供了一种视频传输方法,包括视频传输设备根据第一摄像头采集到的视频帧中的P帧的大小,确定一个第二帧率,并基于该第二帧率确定解需要发送至服务器的视频帧。该方法使用可变帧率的方式,根据前向预测编码的原理,P帧的大小和前后视频帧的差异正相关,P帧越大时表明视频画面变化越剧烈,P帧越小时表明视频画面几乎静止不变,而第二帧率又和P帧的大小正相关,因此第二帧率与视频画面的变化剧烈程度相一致,即视频画面变化越剧烈时,应该以较高的帧率输出,视频画面几乎静止不变时,应该以较低的帧率输出。在这个过程中,只需要通过运算量较小的计算第二帧率的大小的方式,即可以确定需要发送的视频帧,从而降低降帧耗时以及对计算资源的要求,提升有效图片的比率。
第二实施例
请参照图3,图3为本发明第二实施例提供的视频传输方法的流程示意图,基于第一实施例,步骤S200可以细分为如下步骤:
步骤S210:视频传输设备根据公式
计算得到比较值X。
视频传输设备在接收到第一摄像头传输的包含P帧的视频帧后,根据上述公式计算得到一个比较值X。具体的,上述公式中,S为视频帧中P帧的大小,FPS_MAX为人工预设的一个最高帧率,FPS_MIN为人工预设的一个最低帧率,S_avg_t为当前时刻之前的预设时间段内P帧的平均大小。需要说明的是,FPS_MAX可以是人工设置的一个较大帧率,也可以等于第一帧率的大小。S_avg_t可以是当前时刻的前一天的相同时刻,一个小时内P帧的平均大小,也可以是当前时刻之前的任意时间内的P帧的平均大小。在上述公式中,视频帧中P帧的大小S与比较值X成正相关关系。
步骤S220:视频传输设备若所述比较值X大于所述预设最高帧率FPS_MAX,则确定所述第二帧率为所述预设最高帧率FPS_MAX。
在步骤S210中根据公式计算得到一个比较值X之后,将该比较值X与预设最高帧率FPS_MAX和预设最低帧率FPS_MIN作比较。当该比较值X大于该预设最高帧率FPS_MAX时,则第二帧率的大小即等于预设最高帧率FPS_MAX的大小,此时表示第一摄像头采集到的视频画面发生了剧烈变化,后续传输视频帧的频率加快。
步骤S230:视频传输设备若所述比较值X小于所述预设最低帧率FPS_MIN,则确定所述第二帧率为所述预设最低帧率FPS_MIN。
当该比较值X小于所述预设最低帧率FPS_MIN时,则第二帧率的大小即等于预设最低帧率FPS_MIN的大小,此时表示第一摄像头采集到的视频画面基本没变化,后续传输视频帧的频率降低。
步骤S240:视频传输设备若所述比较值X小于所述预设最高帧率FPS_MAX且大于所述预设最低帧率FPS_MIN,则确定所述第二帧率为所述比较值X。
当该比较值X小于预设最高帧率FPS_MAX且大于预设最低帧率FPS_MIN时,则第二帧率的大小即为比较值X的大小,此时表示第一摄像头采集到的视频画面有小部分的变化,后续传输视频帧的频率适中。
在本实施例中,提供了一种视频传输方法,其中,视频传输设备根据接收到的视频帧中的P帧的大小确定第二帧率的步骤,包括根据一个公式计算得到比较值X,通过所述比较值X确定第二帧率。该法根据一个明确的公式计算出一个比较值X的大小,通过比较值X确定视频帧的第二帧率,达到了使用可变帧率的方式,根据采集的画面变化剧烈程度来调整帧率的大小的目的。当画面静止时降低视频流的帧率,此时视频传输设备不传输该视频流至服务器;当画面有变化时,比如有人走过等,则提高帧率,此时视频传输设备传输该视频流至服务器。在这个过程中,只需要通过运算量较小的计算第二帧率的大小的方式,即可以确定需要发送的视频帧,从而降低降帧耗时以及对计算资源的要求,提升有效图片的比率。
第三实施例
请参照图4,图4为本发明第三实施例提供的视频传输方法的流程示意图,基于第一实施例,步骤S300可以细分为如下步骤:
步骤S310:视频传输设备将每个P帧对应的所述第二帧率累加至累加器。
步骤S320:视频传输设备比较所述累加器的数值与所述第一帧率,若所述数值大于或等于所述第一帧率,则确定当前接收的所述视频帧为所述需要发送至所述服务器的所述视频帧。
当步骤S310中每个P帧对应的第二帧率有明显的增大时,表明第一摄像头采集到的视频图像有剧烈的变化,此时,累加器的数值猛然增大至大于或者等于第一帧率,则该第二帧率对应的视频帧为需要向服务器发送的视频帧。当连续的几个第二帧率都比较大时,表明第一摄像头采集到的视频图像一直有较大的变化,此时,视频帧的传输频率变快;当连续几个第二帧率都较小时,表明第一摄像头采集到的视频图像没有较大的变化,此时,视频帧的传输频率降低。
步骤S330:视频传输设备将所述累加器的数值减去所述第一帧率。
当累加器的数值大于或者等于第一帧率后,此时视频传输设备已经将对应的视频帧传输给了服务器,为了判断后续的视频帧是否需要传输,需要将累加器的数值减去第一帧率,重新开始累加的过程。
其中,步骤S310至步骤S330可以是通过计算机程序实现。例如采用如下程序:
fps_count+=push_fps;
fps_count-=recv_fps;
encode_write(frame);
}
其中,fps_count为累加器的数值,push_fps为第二帧率的大小,recv_fps为第一帧率的大小。当累加器的数值fps_count大于或者等于第一帧率的大小recv_fps时,视频传输设备对当前的额视频帧进行重新编码。
在本实施例中,提供了一种视频传输方法,其中,视频传输设备基于第二帧率确定解码后的视频帧中需要发送至服务器的视频帧的步骤,包括将每个P帧对应的所述第二帧率累加至累加器,通过比较累加器的数值与第一帧率,确定需要发送至服务器的视频帧。该法根据一个明确的计算机程序,基于所述第二帧率确定解码后的所述视频帧中需要发送至所述服务器的所述视频帧,达到了使用可变帧率的方式,根据采集的画面变化剧烈程度来调整帧率的大小的目的。当画面静止时降低视频流的帧率,此时视频传输装置不传输该视频流至服务器;当画面有变化时,比如有人走过等,则提高帧率,此时视频传输装置传输该视频流至服务器。在这个过程中,只需要通过运算量较小的计算第二帧率的大小的方式,即可以确定需要发送的视频帧,从而降低降帧耗时以及对计算资源的要求,提升有效图片的比率。
第四实施例
请参照图5,图5为本发明第四实施例提供的视频传输方法的流程示意图,基于第一实施例,该方法还包括如下步骤:
步骤S500:视频传输设备接收第二摄像头以第三帧率传输的所述视频帧。
步骤S600:视频传输设备根据接收到的所述视频帧中的P帧的大小,确定向服务器发送所述视频帧的第四帧率。
步骤S700:视频传输设备对所述接收到的所述视频帧进行解码,并基于所述第四帧率确定解码后的所述视频帧中需要发送至所述服务器的所述视频帧。
步骤S800:视频传输设备对需要发送的所述视频帧进行编码,并将编码后的所述视频帧发送至所述服务器。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,第四实施例中步骤S500至步骤S800的过程与第一实施例中步骤S100至步骤S400的过程相似,在此不再过多赘述。
需要说明的是,虽然本发明实施例只说明了存在两个摄像头的情况,但是所属领域的技术人员可以很容易想到,还可以增加摄像头的数量,增加的摄像头向服务器传输视频帧时仍然采用上述视频传输方法,且所有摄像头执行上述视频传输方法没有先后顺序。
在本实施例中,提供了一种视频传输方法,该方法使用多个摄像头,均采用视频传输方法,包括多个摄像头将视频帧传输给视频传输设备后,视频传输设备根据视频帧中的P帧的大小,确定一个第二帧率,并基于该第二帧率确定解需要发送至服务器的视频帧。该法使得即使在多个摄像头同时工作时,同时将采集到的视频帧发送给视频传输设备,经过视频传输设备的处理,动态的降低帧率,在这个过程中,只需要通过运算量较小的计算第二帧率的大小的方式,即可以确定需要发送的视频帧,使得传输给服务器的视频帧均为有效视频帧,并且能够降低对运算资源的消耗。
本发明实施例还提供了一种视频传输装置500,请参照图6,图6为本发明实施例提供的视频传输装置的示意图,该视频传输装置500包括接收模块510、处理模块520、判断模块530以及发送模块540。接收模块510用于接收第一摄像头100以第一帧率传输的视频帧;处理模块520用于根据接收到的所述视频帧中的P帧的大小,确定向服务器400发送视频帧的第二帧率;其中,所述第二帧率的大小与所述P帧的大小成正相关关系;判断模块530用于对所述接收到的所述视频帧进行解码,并基于所述第二帧率确定解码后的所述视频帧中需要发送至所述服务器400的所述视频帧;发送模块540用于对需要发送的所述视频帧进行编码,并将编码后的所述视频帧发送至所述服务器540。
本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行第一实施例至第四实施例中的任一可选的实现方式中任一所述的方法。
综上所述,本发明提供一种视频传输方法、装置、设备以及系统,方法包括视频传输设备根据第一摄像头采集到的视频帧中的P帧的大小,确定一个第二帧率,并基于该第二帧率确定解需要发送至服务器的视频帧。该方法使用可变帧率的方式,根据采集的画面变化剧烈程度来调整帧率的大小,当画面静止时降低视频流的帧率,此时视频传输设备不传输该视频流至服务器;当画面有变化时,比如有人走过等,则提高帧率,此时视频传输设备传输该视频流至服务器。在这个过程中,只需要通过运算量较小的计算第二帧率的大小的方式,即可以确定需要发送的视频帧,从而降低降帧耗时以及对计算资源的要求,提升有效图片的比率。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (10)

1.一种视频传输方法,其特征在于,包括:
接收第一摄像头以第一帧率传输的视频帧;
根据接收到的所述视频帧中的P帧的大小,确定向服务器发送视频帧的第二帧率;其中,所述第二帧率的大小与所述P帧的大小成正相关关系;
对所述接收到的所述视频帧进行解码,并基于所述第二帧率确定解码后的所述视频帧中需要发送至所述服务器的所述视频帧;
对所述需要发送的所述视频帧进行编码,并将编码后的所述视频帧发送至所述服务器。
2.根据权利要求1所述的视频传输方法,其特征在于,所述根据接收到的所述视频帧中的P帧的大小,确定向服务器发送所述视频帧的第二帧率,包括:
根据公式
计算得到比较值X;其中,S为所述P帧的大小,FPS_MAX为预设最高帧率,FPS_MIN为预设最低帧率,S_avg_t为当前时刻之前的预设时间段内所述P帧的平均大小;
若所述比较值X大于所述预设最高帧率FPS_MAX,则确定所述第二帧率为所述预设最高帧率FPS_MAX;
若所述比较值X小于所述预设最低帧率FPS_MIN,则确定所述第二帧率为所述预设最低帧率FPS_MIN;
若所述比较值X小于所述预设最高帧率FPS_MAX且大于所述预设最低帧率FPS_MIN,则确定所述第二帧率为所述比较值X。
3.根据权利要求1所述的视频传输方法,其特征在于,所述基于所述第二帧率确定解码后的所述视频帧中需要发送至所述服务器的所述视频帧,包括:
将每个P帧对应的所述第二帧率累加至累加器;
比较所述累加器的数值与所述第一帧率,若所述数值大于或等于所述第一帧率,则确定当前接收的所述视频帧为所述需要发送至所述服务器的所述视频帧;
将所述累加器的数值减去所述第一帧率。
4.根据权利要求1至3任一项所述的视频传输方法,其特征在于,还包括:
接收第二摄像头以第三帧率传输的所述视频帧;
根据接收到的所述视频帧中的P帧的大小,确定向服务器发送所述视频帧的第四帧率;其中,所述第四帧率的大小与所述P帧的大小成正相关关系;
对所述接收到的所述视频帧进行解码,并基于所述第四帧率确定解码后的所述视频帧中需要发送至所述服务器的所述视频帧;
对需要发送的所述视频帧进行编码,并将编码后的所述视频帧发送至所述服务器。
5.根据权利要求1至3任一项所述的视频传输方法,其特征在于,所述接收第一摄像头以第一帧率传输的视频帧,包括:
基于RTSP传输协议接收所述第一摄像头以所述第一帧率传输的所述视频帧;和/或
所述将编码后的所述视频帧发送至所述服务器,包括:
基于RTMP传输协议将所述编码后的所述视频帧发送至所述服务器。
6.一种视频传输装置,其特征在于,包括:
接收模块,用于接收第一摄像头以第一帧率传输的视频帧;
处理模块,用于根据接收到的所述视频帧中的P帧的大小,确定向服务器发送视频帧的第二帧率;其中,所述第二帧率的大小与所述P帧的大小成正相关关系;
判断模块,用于对所述接收到的所述视频帧进行解码,并基于所述第二帧率确定解码后的所述视频帧中需要发送至所述服务器的所述视频帧;
发送模块,用于对需要发送的所述视频帧进行编码,并将编码后的所述视频帧发送至所述服务器。
7.根据权利要求6所述的视频传输装置,其特征在于,所述处理模块用于:
根据公式
计算得到比较值X;其中,S为所述P帧的大小,FPS_MAX为预设最高帧率,FPS_MIN为预设最低帧率,S_avg_t为当前时刻之前的预设时间段内内所述P帧的平均大小;
若所述比较值X大于所述预设最高帧率FPS_MAX,则确定所述第二帧率为所述预设最高帧率FPS_MAX;
若所述比较值X小于所述预设最低帧率FPS_MIN,则确定所述第二帧率为所述预设最低帧率FPS_MIN;
若所述比较值X小于所述预设最高帧率FPS_MAX且大于所述预设最低帧率FPS_MIN,则确定所述第二帧率为所述比较值X。
8.根据权利要求6所述的视频传输装置,其特征在于,所述判断模块用于:
将每个P帧对应的所述第二帧率累加至累加器;
比较所述累加器的数值与所述第一帧率,若所述数值大于或等于所述第一帧率,则确定当前接收的所述视频帧为所述需要发送至所述服务器的所述视频帧;
将所述累加器的数值减去所述第一帧率。
9.一种视频传输设备,其特征在于,包括:处理器以及与所述处理器连接的存储器以及通信单元;
其中,所述存储器用于存储计算机指令;
所述通信单元用于与外部设备进行通信;
所述处理器用于执行所述计算机指令,以在执行所述计算机指令时执行权利要求1-5任一项所述的方法。
10.一种视频传输系统,其特征在于,包括:
权利要求9所述的视频传输设备;
至少一个摄像头,每个摄像头用于采集所述视频,并对采集到的所述视频进行编码得到视频帧,将所述视频帧发送至所述视频传输设备;
以及服务器,用于接收所述视频传输设备发送的所述视频帧。
CN201811089697.9A 2018-09-18 2018-09-18 视频传输方法、装置、设备以及系统 Active CN109005414B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811089697.9A CN109005414B (zh) 2018-09-18 2018-09-18 视频传输方法、装置、设备以及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811089697.9A CN109005414B (zh) 2018-09-18 2018-09-18 视频传输方法、装置、设备以及系统

Publications (2)

Publication Number Publication Date
CN109005414A true CN109005414A (zh) 2018-12-14
CN109005414B CN109005414B (zh) 2019-08-23

Family

ID=64592276

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811089697.9A Active CN109005414B (zh) 2018-09-18 2018-09-18 视频传输方法、装置、设备以及系统

Country Status (1)

Country Link
CN (1) CN109005414B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112672149A (zh) * 2020-12-15 2021-04-16 广州博冠信息科技有限公司 一种视频处理方法、装置、存储介质及服务器
CN114390314A (zh) * 2021-12-30 2022-04-22 咪咕文化科技有限公司 可变帧率音视频处理方法、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101488967A (zh) * 2009-01-14 2009-07-22 深圳市同洲电子股份有限公司 一种视频传输方法、嵌入式监控终端及监控平台服务器
CN101686178A (zh) * 2008-09-28 2010-03-31 华为技术有限公司 提高多媒体通话质量方法和系统、媒体控制和处理设备
CN102497445A (zh) * 2011-12-23 2012-06-13 广东威创视讯科技股份有限公司 数据传输方法和装置
US20120236927A1 (en) * 2011-03-17 2012-09-20 Canon Kabushiki Kaisha Transmission apparatus, transmission method, and recording medium
CN104639978A (zh) * 2015-02-13 2015-05-20 上海小蚁科技有限公司 多媒体处理方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101686178A (zh) * 2008-09-28 2010-03-31 华为技术有限公司 提高多媒体通话质量方法和系统、媒体控制和处理设备
CN101488967A (zh) * 2009-01-14 2009-07-22 深圳市同洲电子股份有限公司 一种视频传输方法、嵌入式监控终端及监控平台服务器
US20120236927A1 (en) * 2011-03-17 2012-09-20 Canon Kabushiki Kaisha Transmission apparatus, transmission method, and recording medium
CN102497445A (zh) * 2011-12-23 2012-06-13 广东威创视讯科技股份有限公司 数据传输方法和装置
CN104639978A (zh) * 2015-02-13 2015-05-20 上海小蚁科技有限公司 多媒体处理方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112672149A (zh) * 2020-12-15 2021-04-16 广州博冠信息科技有限公司 一种视频处理方法、装置、存储介质及服务器
CN114390314A (zh) * 2021-12-30 2022-04-22 咪咕文化科技有限公司 可变帧率音视频处理方法、设备及存储介质

Also Published As

Publication number Publication date
CN109005414B (zh) 2019-08-23

Similar Documents

Publication Publication Date Title
CN110572622B (zh) 视频解码方法及装置
CN103650509B (zh) 基于照相机和背景运动的参考帧缓冲区的自适应配置
AU2008200926B2 (en) On-camera summarisation of object relationships
CN113542795B (zh) 视频处理方法、装置、电子设备及计算机可读存储介质
JP2006115470A (ja) 映像評価装置、フレームレート決定装置、映像処理装置、映像評価方法、および映像評価プログラム
CN104137146A (zh) 用于利用前景对象分割的噪声过滤的视频编码的方法和系统
CN103037214A (zh) 视频压缩方法
CN103650504A (zh) 基于图像捕获参数对视频编码的控制
GB2465486A (en) Data stream encoding where encoding technique selected according to available power
JPWO2014061181A1 (ja) カメラシステム
CN109005414B (zh) 视频传输方法、装置、设备以及系统
CN101840435A (zh) 一种实现视频预览和检索的方法及移动终端
CN110460871A (zh) 直播视频的生成方法、装置、系统及设备
CN107018406B (zh) 视频信息处理方法及装置
KR20150086720A (ko) 카메라 프로파일 설정 방법 및 영상 수신 장치
TW201306601A (zh) 基於圖框相似性及視覺品質及興趣之圖框編碼選擇
CN109688407A (zh) 编码单元的参考块选择方法、装置、电子设备及存储介质
CN109429064A (zh) 一种处理视频数据的方法和装置
CN110418134B (zh) 基于视频质量的视频编码方法、装置及电子设备
CN114554211A (zh) 内容自适应视频编码方法、装置、设备和存储介质
CN113452996B (zh) 一种视频编码、解码方法及装置
JP2010268525A (ja) 映像評価装置、フレームレート決定装置、映像処理装置、映像評価方法、および映像評価プログラム
US20130007206A1 (en) Transmission apparatus, control method for transmission apparatus, and storage medium
CN106791714B (zh) 网络摄像头与服务端设备的匹配方法和设备
CN111836081B (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
EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20181214

Assignee: Science City (Guangzhou) Finance Leasing Co.,Ltd.

Assignor: TUPU TECHNOLOGY (GUANGZHOU) Co.,Ltd.

Contract record no.: X2020980004839

Denomination of invention: Video transmission method, device, equipment and system

Granted publication date: 20190823

License type: Exclusive License

Record date: 20200810

PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Video transmission method, device, equipment and system

Effective date of registration: 20200813

Granted publication date: 20190823

Pledgee: Science City (Guangzhou) Finance Leasing Co.,Ltd.

Pledgor: TUPU TECHNOLOGY (GUANGZHOU) Co.,Ltd.

Registration number: Y2020980004940

PE01 Entry into force of the registration of the contract for pledge of patent right
EC01 Cancellation of recordation of patent licensing contract

Assignee: Science City (Guangzhou) Finance Leasing Co.,Ltd.

Assignor: TUPU TECHNOLOGY (GUANGZHOU) Co.,Ltd.

Contract record no.: X2020980004839

Date of cancellation: 20220909

EC01 Cancellation of recordation of patent licensing contract
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20220909

Granted publication date: 20190823

Pledgee: Science City (Guangzhou) Finance Leasing Co.,Ltd.

Pledgor: TUPU TECHNOLOGY (GUANGZHOU) Co.,Ltd.

Registration number: Y2020980004940

PC01 Cancellation of the registration of the contract for pledge of patent right