CN104159079A - 一种图像实时解码显示方法 - Google Patents
一种图像实时解码显示方法 Download PDFInfo
- Publication number
- CN104159079A CN104159079A CN201410395683.5A CN201410395683A CN104159079A CN 104159079 A CN104159079 A CN 104159079A CN 201410395683 A CN201410395683 A CN 201410395683A CN 104159079 A CN104159079 A CN 104159079A
- Authority
- CN
- China
- Prior art keywords
- image
- frame
- decoding
- data
- different
- 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
Links
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种图像实时解码显示方法,包括采用开源的FFMpeg视频解码库设计一种不同分辨率的H.264压缩数据的自适应解码方法,适应航天工程中来源于不同通道不同分辨率的H.264图像压缩数据使用一个解码方法在同一显示区域中自动切换显示;针对实际探月工程中不同通道的H.264图像压缩数据下传帧频不同,同一通道的H.264图像压缩数据在不同测试要求下的下传帧频不同,根据图像刷新频率要求建立帧频与定时器定时周期的对应关系,采用多个高精度定时器实现不同帧频下的自动切换工作,实现不同帧频下图像解码显示的频率不同,提高了图像显示的实时性。
Description
技术领域
本发明涉及图像处理技术领域,特别涉及一种应用于航天工程的图像实时解码显示方法。
背景技术
H.264视频压缩技术是一套复杂的标准,到目前为止能够开源的解码算法库只有少数几个,其中FFMpeg是为数不多的几个开源工具中的一个,并以其解码库具有较低的计算复杂度得到广泛应用。H.264图像压缩技术具备很高的数据压缩比率,在同等图像质量的条件下,H.264的压缩比是MPEG-2的2倍以上,是MPEG-4的1.5~2倍。与此同时,H.264在具有高压缩比的同时还拥有高质量流畅的图像,因此探月工程的图像设备的图像压缩数据技术采用了H.264图像压缩技术。由此图像解码显示设备需要采用相应的H.264解压缩技术。
在现有技术中,探月工程的图像解码显示是通过专业的图像解码卡解码某一固定通道固定分辨率的H.264图像压缩数据,无法满足实际工程中多路通道多种分辨率的图像解码显示需求;同时,在实际工程中经常需要临时切换图像数据帧下传的帧频,而图像解码卡只能按照预先设定的播放频率进行播放,无法动态调整播放频率,这样就无法实时有效地解码显示图像,对图像设备的测试工作带来很多不便。。
发明内容
本发明针对现有技术存在的上述不足,提供了一种。
本发明通过以下技术方案实现:
一种图像实时解码显示方法,包括步骤:
S1、根据图像压缩帧的IDR帧格式判断当前帧是否为IDR帧,若是则执行S2,若否则执行S9;
S2、判断当前IDR帧是不是首次获得,若是则执行S5,否则执行S3;
S3、获取当前IDR帧的分辨率,并判断是否等于宽度*高度,若不等则执行S4,相等则执行S7;
S4、调用FFMpeg的av_free释放先前解码占用系统资源;
S5、FFMpeg的初始化;
S6、根据IDR帧获取压缩数据的分辨率宽度*高度;
S7、调用avpicture_get_size函数获得当前图像的存储大小buffsize,并为图片缓存分配buffsize空间;
S8、调用avpicture_fill函数,在AVFrame*中为图像位面赋予缓冲区;
S9、调用avcodec_decode_video完成视频压缩数据的解码,得到AVFrame压缩数据的原始图片信息;
S10、调用sws_getContext、sws_scale函数将原始图片转换为RGB格式数据;
S11、调用绘图函数绘制解码后的RGB数据。
较佳的,在步骤S1前还包括启动定时周期为1秒的多媒体定时器定时计算1秒内接收的图像压缩数据,即帧频,根据实际测试中帧频与图像刷新频率的关系,得到当前图像的刷新频率,切换到相应定时周期的多媒体定时器,启动定时对已有的图像压缩数据帧进行解码显示,具体包括步骤:
S21、设置初始帧计数count=0;
S22、每接收到一帧图像数据count=count+1;
S23、定时一秒到达时获取当前count作为当前图像数据下传帧频,即一秒传输的图像数据帧个数;
S24、根据帧频与定时周期的对应关系,确定当前负责解码播放的图像数据的定时周期TimeSpan;
S25、若当前工作的定时器周期为TimeSpan进入下一步,否则停止当前定时器,启动定时周期为TimeSpan的定时器;
S26、将count置为0,等待下次定时到来,进入步骤S23。
本发明取得了如下有益效果:
1.本发明首次为航天工程图像设备提供了一个多通道多分辨率的H.264图像压缩数据的解码显示方法,无须采用硬件解码卡,简化了图像设备的测试流程,提高了测试的全面性;
2.本发明首次为航天工程图像设备的可变帧频的图像压缩数据的实时解码显示提供了一个可行简易的方法,增强图像显示的实时性,便于测试人员更好地测试图像设备的真实工作情况。
附图说明
图1所示的是本发明的解码流程图;
图2所示的是本发明的多定时器自动切换流程图;
图3所示的是本发明一实施例的图像设备测试环境示意图。
具体实施方式
以下将结合本发明的附图,对本发明实施例中的技术方案进行清楚、完整的描述和讨论,显然,这里所描述的仅仅是本发明的一部分实例,并不是全部的实例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明的保护范围。
为了便于对本发明实施例的理解,下面将结合附图以具体实施例为例作进一步的解释说明,且各个实施例不构成对本发明实施例的限定。
如图1所示,本发明提供的一种图像实时解码显示方法,包括步骤:
S1、根据图像压缩帧的IDR帧格式判断当前帧是否为IDR帧,若是则执行S2,若否则执行S9;
S2、判断当前IDR帧是不是首次获得,若是则执行S5,否则执行S3;
S3、获取当前IDR帧的分辨率,并判断是否等于宽度*高度,若不等则执行S4,相等则执行S7;
S4、调用FFMpeg的av_free释放先前解码占用系统资源;
S5、FFMpeg的初始化;
S6、根据IDR帧获取压缩数据的分辨率宽度*高度;
S7、调用avpicture_get_size函数获得当前图像的存储大小buffsize,并为图片缓存分配buffsize空间;
S8、调用avpicture_fill函数,在AVFrame*中为图像位面赋予缓冲区;
S9、调用avcodec_decode_video完成视频压缩数据的解码,得到AVFrame压缩数据的原始图片信息;
S10、调用sws_getContext、sws_scale函数将原始图片转换为RGB格式数据;
S11、调用绘图函数绘制解码后的RGB数据。
如图2所示,本发明还通过多定时器的自适应切换工作实现图像数据的实时解码显示。
在步骤S1前还包括启动定时周期为1秒的多媒体定时器定时计算1秒内接收的图像压缩数据,即帧频,根据实际测试中帧频与图像刷新频率的关系,得到当前图像的刷新频率,切换到相应定时周期的多媒体定时器,启动定时对已有的图像压缩数据帧进行解码显示,具体包括步骤:
S21、设置初始帧计数count=0;
S22、每接收到一帧图像数据count=count+1;
S23、定时一秒到达时获取当前count作为当前图像数据下传帧频,即一秒传输的图像数据帧个数;
S24、根据帧频与定时周期的对应关系,确定当前负责解码播放的图像数据的定时周期TimeSpan;
S25、若当前工作的定时器周期为TimeSpan进入下一步,否则停止当前定时器,启动定时周期为TimeSpan的定时器;
S26、将count置为0,等待下次定时到来,进入步骤S23。
以下给出一具体测试实例:
对某图像设备的图像解码显示,该图像设备的基本信息如表1所示,图3为图像解码显示的测试环境。
表1
如图3所示,双谱段监视相机某段时间内会有一路通道数据下传到数据传输设备,最终到达到图像解码显示终端计算机中。计算机中负责解码显示的软件是采用上述发明中提及的方法,使用FFMpeg开发的H.264视频解码显示软件,并采用多个多媒体定时器按照表2所示的帧频与定时周期的关系自动切换定时器。其中表2是根据实际测试要求建立帧率与定时周期的关系。根据实际情况,在某个通道数据正常下传的时候帧频如表1所示。而当不同通道的数据切换的开始阶段,存在数据传输不稳定的情况,按照40ms/帧的播放频率播放图像。
帧频 | 定时周期 |
22-28 | 40ms |
7-12 | 100ms |
4-7 | 167ms |
其他情况 | 40ms |
表2
为验证使用FFMpeg解码显示的图像画面和专业的播放器播放的画面质量是否存在差异,实验中将实时显示的图像画面进行保存,经测试,本发明与采用专业的播放器VLC不存在平滑度、毛刺方面的差异。由此证明采用该方法可以实现图像画面真实的效果。
为验证视频数据是否实时显示,记录下不同时间段中数据通道号、定时器定时周期以及未解码帧个数情况。如表3所示,在不同通道数据处理过程中定时器的定时周期与表2一致;随着时间的推移,未解码的数据并没有累积,在所统计的数据中,图像延时的时间都未到达1秒,因此该方法实现了将H.264视频解码显示的延时降低到毫秒级,实现了图像数据的实时解码显示。
表3
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (2)
1.一种图像实时解码显示方法,其特征在于,包括步骤:
S1、根据图像压缩帧的IDR帧格式判断当前帧是否为IDR帧,若是则执行S2,若否则执行S9;
S2、判断当前IDR帧是不是首次获得,若是则执行S5,否则执行S3;
S3、获取当前IDR帧的分辨率,并判断是否等于宽度*高度,若不等则执行S4,相等则执行S7;
S4、调用FFMpeg的av_free释放先前解码占用系统资源;
S5、FFMpeg的初始化;
S6、根据IDR帧获取压缩数据的分辨率宽度*高度;
S7、调用avpicture_get_size函数获得当前图像的存储大小buffsize,并为图片缓存分配buffsize空间;
S8、调用avpicture_fill函数,在AVFrame*中为图像位面赋予缓冲区;
S9、调用avcodec_decode_video完成视频压缩数据的解码,得到AVFrame压缩数据的原始图片信息;
S10、调用sws_getContext、sws_scale函数将原始图片转换为RGB格式数据;
S11、调用绘图函数绘制解码后的RGB数据。
2.根据权利要求1所述的图像实时解码显示方法,其特征在于,在步骤S1前还包括启动定时周期为1秒的多媒体定时器定时计算1秒内接收的图像压缩数据,即帧频,根据实际测试中帧频与图像刷新频率的关系,得到当前图像的刷新频率,切换到相应定时周期的多媒体定时器,启动定时对已有的图像压缩数据帧进行解码显示,具体包括步骤:
S21、设置初始帧计数count=0;
S22、每接收到一帧图像数据count=count+1;
S23、定时一秒到达时获取当前count作为当前图像数据下传帧频,即一秒传输的图像数据帧个数;
S24、根据帧频与定时周期的对应关系,确定当前负责解码播放的图像数据的定时周期TimeSpan;
S25、若当前工作的定时器周期为TimeSpan进入下一步,否则停止当前定时器,启动定时周期为TimeSpan的定时器;
S26、将count置为0,等待下次定时到来,进入步骤S23。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410395683.5A CN104159079B (zh) | 2014-08-13 | 2014-08-13 | 一种图像实时解码显示方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410395683.5A CN104159079B (zh) | 2014-08-13 | 2014-08-13 | 一种图像实时解码显示方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104159079A true CN104159079A (zh) | 2014-11-19 |
CN104159079B CN104159079B (zh) | 2018-01-30 |
Family
ID=51884472
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410395683.5A Active CN104159079B (zh) | 2014-08-13 | 2014-08-13 | 一种图像实时解码显示方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104159079B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104835464A (zh) * | 2015-05-11 | 2015-08-12 | 深圳市华星光电技术有限公司 | 显示屏动态帧频驱动电路及驱动方法 |
CN104980798A (zh) * | 2015-07-14 | 2015-10-14 | 天脉聚源(北京)教育科技有限公司 | 一种远端视频显示方法及装置 |
CN106993220A (zh) * | 2017-04-18 | 2017-07-28 | 北京元心科技有限公司 | 调整多媒体解码信息缓冲区的方法和装置 |
CN107092454A (zh) * | 2017-03-06 | 2017-08-25 | 北京航空航天大学 | 一种基于vc的光纤光栅波长数据实时绘图显示的方法 |
WO2022037498A1 (zh) * | 2020-08-20 | 2022-02-24 | 于江鸿 | 数据处理的方法和系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020047459A (ko) * | 2000-12-13 | 2002-06-22 | 구자홍 | 다해상도 기반 영상신호 부호화 및 복호화 방법과 장치 |
EP1775957A1 (en) * | 2005-10-14 | 2007-04-18 | Inria Institut National de Recherche en Informatique et en Automatique | Improved multi-resolution image processing |
CN102185835A (zh) * | 2011-04-14 | 2011-09-14 | 广东威创视讯科技股份有限公司 | 一种实时网络信号播放方法及装置 |
CN102883157A (zh) * | 2011-07-12 | 2013-01-16 | 浙江大学 | 视频编码方法和视频编码器 |
CN103561282A (zh) * | 2013-10-29 | 2014-02-05 | 联想中望系统服务有限公司 | 流媒体文件的数据传输方法和装置 |
CN103856806A (zh) * | 2012-11-28 | 2014-06-11 | 腾讯科技(北京)有限公司 | 视频流切换方法、装置及系统 |
CN103905836A (zh) * | 2012-12-27 | 2014-07-02 | 辉达公司 | 通过帧率控制实现网络自适应时延降低 |
-
2014
- 2014-08-13 CN CN201410395683.5A patent/CN104159079B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020047459A (ko) * | 2000-12-13 | 2002-06-22 | 구자홍 | 다해상도 기반 영상신호 부호화 및 복호화 방법과 장치 |
EP1775957A1 (en) * | 2005-10-14 | 2007-04-18 | Inria Institut National de Recherche en Informatique et en Automatique | Improved multi-resolution image processing |
CN102185835A (zh) * | 2011-04-14 | 2011-09-14 | 广东威创视讯科技股份有限公司 | 一种实时网络信号播放方法及装置 |
CN102883157A (zh) * | 2011-07-12 | 2013-01-16 | 浙江大学 | 视频编码方法和视频编码器 |
CN103856806A (zh) * | 2012-11-28 | 2014-06-11 | 腾讯科技(北京)有限公司 | 视频流切换方法、装置及系统 |
CN103905836A (zh) * | 2012-12-27 | 2014-07-02 | 辉达公司 | 通过帧率控制实现网络自适应时延降低 |
CN103561282A (zh) * | 2013-10-29 | 2014-02-05 | 联想中望系统服务有限公司 | 流媒体文件的数据传输方法和装置 |
Non-Patent Citations (1)
Title |
---|
王彤: "基于FFmpeg的H.264解码器实现", 《中国优秀硕士学位论文-信息科技辑》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104835464A (zh) * | 2015-05-11 | 2015-08-12 | 深圳市华星光电技术有限公司 | 显示屏动态帧频驱动电路及驱动方法 |
CN104980798A (zh) * | 2015-07-14 | 2015-10-14 | 天脉聚源(北京)教育科技有限公司 | 一种远端视频显示方法及装置 |
CN104980798B (zh) * | 2015-07-14 | 2018-04-10 | 天脉聚源(北京)教育科技有限公司 | 一种远端视频显示方法及装置 |
CN107092454A (zh) * | 2017-03-06 | 2017-08-25 | 北京航空航天大学 | 一种基于vc的光纤光栅波长数据实时绘图显示的方法 |
CN106993220A (zh) * | 2017-04-18 | 2017-07-28 | 北京元心科技有限公司 | 调整多媒体解码信息缓冲区的方法和装置 |
CN106993220B (zh) * | 2017-04-18 | 2020-05-01 | 北京元心科技有限公司 | 调整多媒体解码信息缓冲区的方法和装置 |
WO2022037498A1 (zh) * | 2020-08-20 | 2022-02-24 | 于江鸿 | 数据处理的方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104159079B (zh) | 2018-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104159079A (zh) | 一种图像实时解码显示方法 | |
US11240543B2 (en) | Synchronizing playback of segmented video content across multiple video playback devices | |
CN103310820B (zh) | 一种对多媒体播放器进行优化的方法 | |
CN101072339B (zh) | 一种控制播放帧率同步的方法及系统 | |
US8773469B2 (en) | Video multiviewer system with serial digital interface and related methods | |
US20110229106A1 (en) | System for playback of ultra high resolution video using multiple displays | |
CA2661760C (en) | Video multiviewer system with switcher and distributed scaling and related methods | |
CN107197369B (zh) | 一种多子流协同的视频流媒体并行解码方法 | |
US11290724B2 (en) | Inter prediction method and apparatus, and terminal device | |
CN103986960A (zh) | 一种单视频画面分割多路由远传精确同步拼接显示的方法 | |
CA2661768C (en) | Video multiviewer system with distributed scaling and related methods | |
CN108366283A (zh) | 多设备间的媒体同步播放方法 | |
CN103248941A (zh) | 一种多通道视频源同步显示的方法及装置 | |
CN103297707B (zh) | 一种超高清视频播放系统 | |
CN101118776A (zh) | 实现音、视频数据同步的方法、系统及装置 | |
US20120033727A1 (en) | Efficient video codec implementation | |
US10929954B2 (en) | Methods and apparatus for inline chromatic aberration correction | |
CN104506903A (zh) | 一种音视频输出处理装置、方法和头戴式显示设备 | |
CN203397541U (zh) | 交互式教学视频系统 | |
CN204334848U (zh) | 一种音视频输出处理装置和头戴式显示设备 | |
CN203397537U (zh) | 教学视频系统 | |
KR20160144061A (ko) | 초고선명 텔레비전용 보급형 메인보드 | |
CN104093059B (zh) | 一种一屏双显显示装置及其方法 | |
CN116094636A (zh) | 一种多设备自适应广播方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |