- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于H.264可复用视频播放框架设计
基于H.264可复用视频播放框架设计
摘 要通过分层框架设计,基于H.264视频流从播放展现、播放控制、视频解码、视频流解析的分层结构,实现可复用的视频播放框架,为各种车载视频监控产品提供一致的H.264视频播放效果和体验。
【关键词】可复用 视频 H.264 框架 YUV
1 引言
近几年,随着3G/4G移动通信技术的普及,加之国家对道路运输车辆监管力度的不断加大,车载视频监控技术得以快速普及。而目前市面上车载视频监控产品种类繁多,虽然主要都是基于H.264编码,但是视频参数、封装格式五花八门,厂商提供的视频播放软件功能和效果也良莠不齐,导致运营商在各种视频播放软件中来回切换,影响用户体验和管理效率。因此,有必要设计一套可复用的视频播放框架,通过支持简单的二次开发屏蔽产品差异,提供一致的用户视频播放体验。
1.1 H.264
H.264是由ITU-T视频编码专家组(VCEG)和ISO/IEC动态图像专家组(MPEG)联合组成的联合视频组(JVT,Joint Video Team)提出的高度压缩数字视频编解码器标准,是目前主流的视频压缩标准。
1.2 YUV
YUV是被欧洲电视系统所采用的一种颜色编码方法(属于PAL),主要用于优化彩色视频信号的传输。与RGB视频信号传输相比,它最大的优点在于只需占用极少的频宽。
2 框架设计
对H.264压缩标准而言,摒弃不同容器、不同传输方式的封装差异,视频的播放实际就是H.264流的解析和播放。因此,完全可以设计一套基于H.264的通用视频播放框架,实现H.264视频流从数据流解析到播放展现整个流程。基于这套框架,各厂商只需针对不同的车载监控产品开发对应的解析模块完成H.264流的提取,便可完成不同车载视频监控产品的无缝接入,提供完全一致的播放效果和体验。
整个框架设计上主要分为:展现层、播放控制层、视频解码层、视频流解析层四部分。其中,视频流解析层提供了供二次开发的解析模块适配接口,以及一系列厂商开发的用于对接不同车载终端产品的解析模块。
2.1 展现层
展现层是整个播放框架的用户UI层,主要处理的对象是从播放控制层获取到的下一帧YUV图像。其功能主要有:YUV图像播放、播放控制UI界面和附加辅助功能及菜单。
(1)YUV图像播放包含一个播放窗口和一个定时刷新线程。播放窗口用于展现视频画面。定时刷新线程按照基于帧率计算的时间周期(1000毫秒/帧率)间隔,定时获取下一个YUV视频图像并在播放窗口中进行渲染播放。目前可选的视频画面渲染框架有很多,如SDL、D3D、DirectShow等,都是较为成熟的多媒体框架。
(2)播放控制UI界面主要包括:播放、暂停、快放、慢放播放进度等操作界面。其中,除慢放以外的按钮功能都是通过调用播放控制层提供的接口。慢放功能则通过调整YUV图像播放线程的定时刷新周期来实现,具体参数调整为当前周期乘以慢放倍速。
(3)附加辅助功能及菜单主要包括:截图、旋转、放大、缩小、拉伸等,都是基于YUV图像的二次处理加工。
需要强调的是,视频的播放控制并不是由展现层实现,而是由下一层的播放控制层实现,展现层永远只专注于获取下一个YUV图像帧进行播放和二次处理,而不关心具体下一个YUV图像帧如何得到。
另外,定时刷新线程的刷新周期当不能被1000毫秒整除时,需要进行周期的校正,否则随着时间的延迟,会导致时间误差逐渐增大。校正方式为通过1000毫秒对帧率取余得到余数M,对1000毫秒内的前M个周期增加1毫秒,保证误差在每个1000毫秒内都能得到校正。
综上所述,展现层设计成只处理YUV图像帧,与具体H.264流无关,这保证了其与下层播放控制层之间的低耦合性。
2.2 播放控制层
播放控制层是整个播放框架的视频播放控制逻辑实现,主要处理与视频播放控制相关的功能。他主要提供以下功能:
(1)为展现层提供视频播放参数。视频播放参数是由下一层的视频解码层提供,主要参数包括:视频帧率、分辨率等。主要用于控制YUV图像帧渲染和定时刷新。
(2)为展现层提供下一个YUV图像帧数据。播放控制层永远缓存着展现层需要的下一个YUV图像帧,该YUV图像帧主要根据当前播放控制状态,计算帧偏移后的索引号,通过向下一层视频解码层获取对应索引编号的YUV图像帧。
为了更清楚的描述播放控制层的内部实现机制,假设播放控制层主要有以下几个核心参数:
(1)当前帧索引号Index,记录当前保存的YUV图像帧索引编号,初始值为0;
(2)当前播放速度Speed,记录当前视频播放的速度状态,支持0/1/2/4/8/16/32多种播放倍速,初始值为1表示正常速度播
您可能关注的文档
最近下载
- 2014职工履历表样表.doc VIP
- 招投标知识培训通用实用PPT解析课件.pptx
- 赣科技版信息科技七年级上册 第2课《网络硬件》第1课时《网络传输介质的分类》课件.pptx
- 山东省德州市2025年中考英语试题(含答案) .pdf VIP
- 小学2022年版科学课程标准解读与讲座分享课件.pptx VIP
- 第三单元 口语交际:长大以后做什么-写作指导+范文赏析+病文升格-2022-2023学年二年级语文下册同步写话素材积累(部编).docx VIP
- 便桥施工方案.docx VIP
- 2025年中职高考中职英语二轮专题 主谓一致课件(共80张PPT).pptx VIP
- 酒店保洁服务接管计划方案.docx VIP
- 《办公软件应用(Office 2016)》课件 项目8--任务1 使用图表分析员工考评成绩.pptx
原创力文档


文档评论(0)