CN115842918A - 一种可变码率的视频流实时转码发送装置与方法 - Google Patents
一种可变码率的视频流实时转码发送装置与方法 Download PDFInfo
- Publication number
- CN115842918A CN115842918A CN202211335818.XA CN202211335818A CN115842918A CN 115842918 A CN115842918 A CN 115842918A CN 202211335818 A CN202211335818 A CN 202211335818A CN 115842918 A CN115842918 A CN 115842918A
- Authority
- CN
- China
- Prior art keywords
- video stream
- video
- transcoding
- module
- original
- 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
- 238000000034 method Methods 0.000 title claims abstract description 18
- 230000005540 biological transmission Effects 0.000 claims abstract description 18
- 230000006835 compression Effects 0.000 claims abstract description 10
- 238000007906 compression Methods 0.000 claims abstract description 10
- 238000004891 communication Methods 0.000 claims description 2
- 238000004590 computer program Methods 0.000 claims 1
- 238000012544 monitoring process Methods 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种可变码率的视频流实时转码发送装置与方法,该装置包括接口模块、解析模块、预测模块和转码模块。所述接口模块接收源视频流和输出转码后的视频。所述解析模块获取原视频的参数,计算视频容量。预测模块用于预测网络上行宽带,并计算未来一段时间内网络允许传输的最大容量。转码模块比较网络带宽参数与原视频流的码率,按照既定策略进行视频压缩,在保证视频帧率不变的前提下降低视频容量。所述转码方法利用上述装置,对原视频流进行解析、转码和传输,使压缩后的视频大小符合当前网络带宽条件,保证视频流畅传输。本发明可以用于视频的实时转码发送,且不改变原上传端的硬件结构,不消耗额外存储资源。
Description
技术领域
本发明属于视频流传输技术领域,涉及针对网络条件的视频流传输,具体涉及一种可变码率的视频流实时转码发送装置与方法。
背景技术
随着视频采集设备的更新迭代,获取的视频分辨率、码率越来越高,画质也越来越清晰。然而高分辨率同时也使得视频流的体积越来越大,视频流的传输效率与质量又与网络环境息息相关,在一些极端网络环境下,时好时坏的网络状况导致一些高分辨率、高码率的视频在实时传输过程中出现卡顿、延迟、跳帧等情况,严重影响接收端的视频质量与观看体验。因此在发送端根据实时网络状况对视频流进行一定程度的压缩、编码,是极其重要的。
现有技术的一种方式是在获取完整的视频流后,以不同码率或分辨率对原始视频分别进行多次压缩获得多条大小不同的视频流,并以时间为轴进行对齐,然后实时检测当前网络状态,根据不同网络情况选择切换不同码率或分辨率的视频流进行发送,以保证传输过程的通畅。这种方式需要提前对原始视频流进行多次压缩转码,传输一条视频流会在发送端本地产生多条视频流,成倍占用系统资源,不利于成本控制。
在一项公开发明(CN 106993199 A)中提到了一种实时视频转码的方法,通过将待发送的完整视频流按照图像帧进行切片,然后根据当前网络状况分批对切片后的图像帧进行转码、传输,避免了本地资源的额外消耗,但是这两种方式都需要在发送前对视频流进行压缩转码或划片的预处理操作,因此必须获取完整视频流之后才能进行传输,也就无法满足一些实时性要求较强的应用场景,例如监控视频的传输。
对于H.264/H.265等主流编码格式,可以通过对原始视频流进行丢帧处理以降低视频流大小,具体是在发送端根据网络状况对原始视频流中的帧数据以一定规律进行选择性丢弃,以此保证传输网速不佳时视频的不间断传输。由于丢弃了部分帧,就无法保证视频画面的流畅性和完整性,接收端接收到的视频存在明显的内容缺失,产生明显的跳帧、卡顿现象,不仅会影响观看体验,特别在视频监控这一应用场景下,可能会导致关键画面丢失、错过重要证据等严重后果。
综上所述,面对不断动态变化的网络带宽环境,如何不增加发送端额外资源消耗的情况下自适应实现视频流的实时传输,且并保证接收端的视频流畅与内容完整是一个巨大的挑战。
发明内容
针对现有技术的不足,本发明提出了一种可变码率的视频流实时转码发送装置与方法,根据本地发送网络的带宽情况,自适应调整待发送视频的目标码率、分辨率,保证内容实时、完整、流畅得传输到接收端。
一种可变码率的视频流实时转码发送装置,包括接口模块、解析模块、预测模块和转码模块。
所述接口模块包括输入接口与输出接口,其中输入接口负责接收待转码的原视频流。所述输出接口负责输出转码后的视频流。
所述解析模块用于对输入接口接收的原视频流进行解析,获取原视频流的时长t、分辨率R、视频码率K、压缩率P和帧率F,计算原视频流的容量Mn,Mn=f(t,P,R,F,K)。
所述预测模块用于预测网络上行带宽,采用基于本地缓冲区buffer情况决策从当前时间点Tn开始至下一时间点Tn+1的码率,获得下一时间点Tn+1后的网络带宽参数kn,计算在Tn~Tn+1时刻网络允许传输的视频容量Mn’=f((Tn+1-Tn),P,R,F,kn)。
所述转码模块根据预测模块得到的网络带宽参数kn,对原视频流进行转码处理。当kn≥K时,直接通过输出接口发送原视频流;当kn<K,调整原视频的分辨率、视频码率为R’、K’,然后由输出接口发送调整后的视频流,调整后的视频容量Mn”=f(t,P,R’,F,K’),Mn”≤Mn’。
作为优选,所述转码模块从以下格式表中选择一种码率K’小于网络带宽参数kn的视频格式对原视频流进行压缩:
帧率F | 分辨率R | 码率K | 规格 |
30 | 2048*1536 | 7Mb/s | 3MP |
30 | 1920*1080 | 5Mb/s | 1080P |
30 | 1280*960 | 3.5Mb/s | 960P |
30 | 1280*720 | 3Mb/s | 720P |
30 | 720*576 | 2Mb/s | Full-D1 |
30 | 704*576 | 1.5Mb/s | D1 |
30 | 702*288 | 1Mb/s | Half-D1 |
30 | 528*384 | 0.7Mb/s | DCIF |
30 | 325*288 | 512Kb/s | CIF |
作为优选,所述格式表以参数表形式保存在转码模块中。
作为优选,还包括格式定义模块,用于在视频转码开始前,根据接收端的需求,对转码模块中存储的格式表进行自定义。
一种可变码率的视频流实时转码发送方法,具体包括以下步骤:
步骤1、搭建转码装置,包括接口模块、解析模块、预测模块和转码模块。其中接口模块与视频上传端、视频接收端通信连接。
步骤2、在Tn时刻之前,通过接口模块接收待发送的原视频流,利用解析模块获取视频参数,包括时长t、分辨率R、视频码率K、压缩率P和帧率F,并计算原视频流的容量Mn,Mn=f(t,P,R,F,K)。
步骤3、利用预测模块预测网络上行带宽,采用基于本地缓冲区buffer情况决策从当前时间点Tn开始至下一时间点Tn+1的码率,获得下一时间点Tn+1后的网络带宽参数kn,并计算在Tn~Tn+1时间段内网络允许传输的最大视频容量Mn’=f((Tn+1-Tn),P,R,F,kn)。
步骤4、将解析模块获取的原视频流码率K与预测模块预测的网络带宽参数kn进行比较,当kn>K时,直接发送原视频流。当kn<K时,转码模块对原视频流的码率和分辨率进行压缩,使压缩后的视频容量Mn”≤Mn’,Mn”=f(t,P,R’,F,K’),R’、K’分别表示压缩后的分辨率、视频码率。
步骤5、依次重复步骤2~4,直至完成所有视频流的发送。
作为优选,设置最小带宽阈值kmin,当预测模块预测的网络带宽参数kn<kmin时,停止视频转码压缩发送。
本发明具有以下有益效果:
本申请可以实现对实时视频流的转码转发,不需要本地存储,不消耗额外资源,不改变上传端原有的硬件结构,还可以保证视频隐私。在转码过程中,不改变视频压缩前后的帧率,减少卡顿、跳帧现象,保证观看体验,特别是在安防领域,接收端可以获得完整的画面内容,避免错失重要证据。所述格式表以参数表形式保存,可以直接读取,减少计算所需时间,具有一定的容错性。
附图说明
图1为实施例中一种可变码率的视频流实时转码发送装置示意图。
图2为实施例中一种可变码率的视频流实时转码发送方法流程图。
图3为实施例中根据网络带宽参数变化的输出视频流容量示意图。
具体实施方式
本实施例针对安防领域监控摄像头捕捉的视频流转码发送,结合附图对本发明作进一步的解释说明;如图1所示,搭建转码装置,包括接口模块、解析模块、预测模块、格式定义模块和转码模块。所述接口模块包括输入接口与输出接口,其中输入接口负责接收待转码的原视频流,接收速度与网口下行速度有关。所述输出接口负责输出转码后的视频流,输出速度与网口上行速度相关。输入接口与输出接口在硬件设备中可以是同一个网络接口,通过时分复用的方式实现不同的逻辑功能。
如图2所示,假设在Tn时刻之前,通过接口模块接收到一条监控摄像头捕捉的原视频流,利用解析模块获取视频参数,得到该视频的时长t、分辨率R为1920*1080,帧率F为30,码率K为5Mb/s,计算得到原视频流的容量Mn,Mn=f(t,P,R,F,K)。预测模块获得下一时间点Tn+1后的网络上行带宽为4Mbps,即网络带宽参数kn=4Mb/s,因此在Tn~Tn+1时间段内网络允许传输的最大视频容量Mn’=f((Tn+1-Tn),P,R,F,kn)。
由于原视频流的码率K=5Mb/s,大于网络带宽参数kn=4Mb/s,因此转码模块需要对原视频流进行压缩,减小视频容量,以保证视频的流畅、不间断传输。在安防视频监控领域,对于视频分辨率有一定要求,视频分辨率与码率之间并非是线性关系,即在码率下降时,视频分辨率不是平滑下降的,而是呈阶梯性变化。为了保证接收端的观看体验,通过格式定义模块提前定义多种不同视频规格,以参数表形式保存在转码模块中,转码模块在进行视频压缩前,调用格式表中定义的视频分辨率与码率,本实施例定义的格式表如表1所示:
帧率F | 分辨率R | 码率K | 规格 |
30 | 2048*1536 | 7Mb/s | 3MP |
30 | 1920*1080 | 5Mb/s | 1080P |
30 | 1280*960 | 3.5Mb/s | 960P |
30 | 1280*720 | 3Mb/s | 720P |
30 | 720*576 | 2Mb/s | Full-D1 |
30 | 704*576 | 1.5Mb/s | D1 |
30 | 702*288 | 1Mb/s | Half-D1 |
30 | 528*384 | 0.7Mb/s | DCIF |
30 | 325*288 | 512Kb/s | CIF |
表1
根据格式表可知,码率最接近网络带宽参数kn的视频格式是960P,因此转码模块将原视频流的分辨率调整为1280*960、码率调整为3.5Mb/s,帧率保持30不变。调整后的视频容量Mn”小于在Tn~Tn+1时间段内网络允许传输的最大视频容量Mn’,因此压缩后的视频流可以通过输出接口顺利传输。
为了保证视频质量,当网络带宽参数kn<512Kb/s时,认为当前网络条件过于恶劣,不适合进行视频传输任务,转码模块和接口模块停止对视频流的压缩和传输工作,直至网络带宽参数kn≥512Kb/s。
重复上述过程,预测模块在每一个当前时间节点预测下一时段内网络的上行速度,并把得到的网络参数传递给转码模块,由转码模块对接口模块获得的原视频流进行参数调整,获得不同容量大小的视频流,以满足当前网络带宽状况,最后由接口模块传输压缩后的视频流,如图3所示。
Claims (8)
1.一种可变码率的视频流实时转码发送装置,其特征在于:包括接口模块、解析模块、预测模块和转码模块;
所述接口模块包括输入接口与输出接口,其中输入接口负责接收待转码的原视频流;所述输出接口负责输出转码后的视频流;
所述解析模块用于对输入接口接收的原视频流进行解析,获取原视频流的时长t、分辨率R、视频码率K、压缩率P和帧率F,计算原视频流的容量Mn,Mn=f(t,P,R,F,K);
所述预测模块用于预测网络上行带宽,采用基于本地缓冲区buffer情况决策从当前时间点Tn开始至下一时间点Tn+1的码率,获得下一时间点Tn+1后的网络带宽参数kn,计算在Tn~Tn+1时刻网络允许传输的视频容量Mn’=f((Tn+1-Tn),P,R,F,kn);
所述转码模块根据预测模块得到的网络带宽参数kn,对原视频流进行转码处理;当kn≥K时,直接通过输出接口发送原视频流;当kn<K,调整原视频的分辨率、视频码率为R’、K’,然后由输出接口发送调整后的视频流,调整后的视频容量Mn”=f(t,P,R’,F,K’),Mn”≤Mn’。
2.如权利要求1所述一种可变码率的视频流实时转码发送装置,其特征在于:所述转码模块从以下格式表中选择一种码率K’小于网络带宽参数kn的视频格式对原视频流进行压缩:
。
3.如权利要求2所述一种可变码率的视频流实时转码发送装置,其特征在于:所述格式表以参数表形式保存在转码模块中。
4.如权利要求1所述一种可变码率的视频流实时转码发送装置,其特征在于:还包括格式定义模块,用于在视频转码开始前,根据接收端的需求自定义格式表,然后存储在转码模块中。
5.一种可变码率的视频流实时转码发送方法,其特征在于:具体包括以下步骤:
步骤1、搭建如权利要求1~4任一所述的转码装置,其中接口模块与视频上传端、视频接收端通信连接;
步骤2、在Tn时刻之前,通过接口模块接收待发送的原视频流,利用解析模块获取视频参数,包括时长t、分辨率R、视频码率K、压缩率P和帧率F,并计算原视频流的容量Mn,Mn=f(t,P,R,F,K);
步骤3、利用预测模块预测网络上行带宽,采用基于本地缓冲区buffer情况决策从当前时间点Tn开始至下一时间点Tn+1的码率,获得下一时间点Tn+1后的网络带宽参数kn,并计算在Tn~Tn+1时间段内网络允许传输的最大视频容量Mn’=f((Tn+1-Tn),P,R,F,kn);
步骤4、将解析模块获取的原视频流码率K与预测模块预测的网络带宽参数kn进行比较,当kn>K时,直接发送原视频流;当kn<K时,转码模块对原视频流的码率和分辨率进行压缩,使压缩后的视频容量Mn”≤Mn’,Mn”=f(t,P,R’,F,K’),R’、K’分别表示压缩后的分辨率、视频码率;
步骤5、依次重复步骤2~4,直至完成所有视频流的发送。
6.如权利要求5所述一种可变码率的视频流实时转码发送方法,其特征在于:设置最小带宽阈值kmin,当预测模块预测的网络带宽参数kn<kmin时,停止视频转码压缩发送。
7.如权利要求6所述一种可变码率的视频流实时转码发送方法,其特征在于:设置最小带宽阈值kmin=512Kb/s。
8.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求5~7任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211335818.XA CN115842918A (zh) | 2022-10-28 | 2022-10-28 | 一种可变码率的视频流实时转码发送装置与方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211335818.XA CN115842918A (zh) | 2022-10-28 | 2022-10-28 | 一种可变码率的视频流实时转码发送装置与方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115842918A true CN115842918A (zh) | 2023-03-24 |
Family
ID=85576675
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211335818.XA Pending CN115842918A (zh) | 2022-10-28 | 2022-10-28 | 一种可变码率的视频流实时转码发送装置与方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115842918A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1668109A (zh) * | 2004-03-10 | 2005-09-14 | 浙江大学 | 具有多种转换功能的自适应视频转码网关 |
CN101409843A (zh) * | 2008-12-05 | 2009-04-15 | 中国电信股份有限公司 | 应用于移动视频监控的智能转码方法和设备 |
KR20120105970A (ko) * | 2011-03-17 | 2012-09-26 | 에스케이플래닛 주식회사 | 비디오 트랜스코딩 방법 및 시스템 |
CN104980819A (zh) * | 2015-06-26 | 2015-10-14 | 安徽四创电子股份有限公司 | 一种视频传输方法及装置 |
CN105263066A (zh) * | 2014-06-13 | 2016-01-20 | 珠海全志科技股份有限公司 | 移动设备视频流传输控制方法及系统 |
CN110769296A (zh) * | 2019-10-30 | 2020-02-07 | 杭州叙简科技股份有限公司 | 一种传输时基于本地缓存的视频码率自适应调节方式 |
CN113055698A (zh) * | 2021-03-09 | 2021-06-29 | 百果园技术(新加坡)有限公司 | 视频参数调节方法、装置、设备及介质 |
-
2022
- 2022-10-28 CN CN202211335818.XA patent/CN115842918A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1668109A (zh) * | 2004-03-10 | 2005-09-14 | 浙江大学 | 具有多种转换功能的自适应视频转码网关 |
CN101409843A (zh) * | 2008-12-05 | 2009-04-15 | 中国电信股份有限公司 | 应用于移动视频监控的智能转码方法和设备 |
KR20120105970A (ko) * | 2011-03-17 | 2012-09-26 | 에스케이플래닛 주식회사 | 비디오 트랜스코딩 방법 및 시스템 |
CN105263066A (zh) * | 2014-06-13 | 2016-01-20 | 珠海全志科技股份有限公司 | 移动设备视频流传输控制方法及系统 |
CN104980819A (zh) * | 2015-06-26 | 2015-10-14 | 安徽四创电子股份有限公司 | 一种视频传输方法及装置 |
CN110769296A (zh) * | 2019-10-30 | 2020-02-07 | 杭州叙简科技股份有限公司 | 一种传输时基于本地缓存的视频码率自适应调节方式 |
CN113055698A (zh) * | 2021-03-09 | 2021-06-29 | 百果园技术(新加坡)有限公司 | 视频参数调节方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11503307B2 (en) | System and method for automatic encoder adjustment based on transport data | |
US11190570B2 (en) | Video encoding using starve mode | |
US8527649B2 (en) | Multi-stream bit rate adaptation | |
WO2014058713A1 (en) | Proactive video frame dropping | |
EP1575294B1 (en) | Method and apparatus for improving the average image refresh rate in a compressed video bitstream | |
AU2021200428B2 (en) | System and method for automatic encoder adjustment based on transport data | |
US10097746B2 (en) | Method and system for dynamically adjusting a camera setting for a video stream | |
CN108476176A (zh) | 在视频电话中的实时传输协议拥塞控制技术 | |
CN114339445A (zh) | 实时视频流自适应协调系统及方法 | |
CN113630576A (zh) | 自适应视频流式传输系统和方法 | |
KR20050115226A (ko) | 송신 제어 장치 및 방법, 기록 매체, 및 프로그램 | |
CN115842918A (zh) | 一种可变码率的视频流实时转码发送装置与方法 | |
US11290680B1 (en) | High-fidelity freeze-frame for precision video communication applications | |
KR20130122117A (ko) | 실시간 동영상 전송 방법 및 장치 | |
Khilenko et al. | Improving the Quality of Automated Vehicle Control Systems Using Video Compression Technologies for Networks with Unstable Bandwidth | |
KR101291559B1 (ko) | 실시간 다중 영상압축 장치 및 방법 | |
US10097609B1 (en) | Method and system for dynamically adjusting a data rate of a video stream | |
KR102537446B1 (ko) | 영상 전송을 위한 단말의 동작 방법 및 이를 수행하는 단말 | |
Maksimović et al. | The impact of successive B frames on TV signal using different compression techniques and video resolution | |
CN118354133A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20230324 |