毕业于邯郸学院电子信息工程
毕业后就职于北京裕兴软件有限公司软件研发部门,参与公司linux机顶盒产品的应用开发,负责客户UI底层JS接口的设计,包括组播、DVB、HLS/DASH的点播直播、时移播放、录制回放以及网络、音视频设置,整合了chrome、youtube、netflix、amazon、disney等多个第三方应用,期间绩效良好,被评为优秀员工。
工作严谨细致,项目开发经验丰富,学习能力强,对技术有源发的兴趣,持续学习 C/C++、Golang、Python 等前沿技术。
机顶盒自动更新升级检测系统
● 项目概况
基于公司发放给客户的机顶盒产品种类多,软件版本管理难度大,特此设计一套统一管理升级平台,以便于全球远程控制每台机顶盒的升级功能。
● 项目分工
基于项目背景,为了使系统能有更好的易用性、扩展性、独立性,系统采用模块化开发。
前端开发(嵌入PHP的HTML5):配置升级服务器管理界面
服务器后台开发(PHP):用户管理模块、Upgrade模块、数据库操作
机顶盒应用开发(C):升级更新检测请求的发送、实现自动升级功能
● 项目内容
本人负责的是机顶盒应用C语言开发,当网页调用升级检测接口后,会启动一个线程向服务器后台发送携带机顶盒版本信息和串号的http/https GET请求,服务器的Upgrade模块接收后,查询数据库,以XML的 response body体格式返回给机顶盒,解析body体,得到盒子型号、服务器上最新的版本号和版本的升级地址,并和自身的型号和版本号进行比对,如果版本号不同,则访问升级地址去下载升级文件升级,如果相同,则无需升级。
机顶盒chrome浏览器集成
● 项目概况
基于webkit引擎的浏览器渲染速度慢,画面打开速度受限,现采用当下主流的chrome浏览器替代webkit,之前的webkit以线程形式存在,现在的chrome以独立的进程存在,所以在原代码的基础上需要添加很多改动。
● 人员分工
浏览器组:负责chrome浏览器的调试和编译
集成组: 负责将chrome浏览器与机顶盒的主应用整合
● 项目内容
chrome浏览器以独立进程存在,其与主应用的通信方式采用POSIX消息队列的方式,网页进行JS接口调用时把接口名称和参数以字串的形式传递给主应用,主应用进行接口处理,将结果在返回给浏览器,同时主应用产生的事件通过管道回传给浏览器。按键处理放在浏览器中进行
机顶盒与终端管理系统的通信设计
● 终端管理服务器通过TR069协议对家庭网络中的机顶盒进行远程集中管理,主要包括受管理的用户设备和管理服务器两类逻辑设备,实现了机顶盒在服务器上的注册认证、版本管理、业务配置管理、业务性能监测以及机顶盒自身的故障诊断功能。首先此设计是基于一个开源的XACS服务器的,即终端管理系统,机顶盒开机时会通过 HTTP Digest Authentication 发起与终端管理系统的认证连接,通过远程调用终端管理系统的Inform方法进行机顶盒的信息认证并将信息保存在服务器上,终端管理系统可以通过这些信息对机顶盒进行版本管理,还可以通过其他的RPC方法实现业务与配置管理、状态性能监控以及故障诊断。
● 负责根据TR069的相关技术文档,编写符合TR069协议以及供RPC远程调用的SOAP协议的代码,并将代码整合到机顶盒中,实现XACS服务器对机顶盒的管理。
机顶盒Miracast投屏开发
● Miracast是手机实时地把屏幕投射到电视上的技术,源端的任何屏幕操作都会被传输到接收端,如果源端播放媒体文件,源端负责先对媒体文件解码,然后再编码成H.264格式传送到接收端。整个Miracast的过程包括无线链路的建立、呼叫建立、媒体接收、解码、呈现。该项目只支持安卓手机使用,用的博通的bcm43236或bcm43570无线模块,手机与无线模块采用P2P协议建立连接,可以进行视频和音频的传输,然后解码,通过HDMI输出到电视上,并采用HDCP2.2的key进行HDCP视频保护。因为很多手机都有自己的实现,同一个品牌,不同的手机型号,也会遇到兼容性问题,所以说兼容性是一个长期性的工作。
● 编译miracast的源码,挂载到机顶盒上进行测试;查看并修改源码,提高对多种Andriod手机的兼容性;封装供客户调用的JS接口。
可兼职时间
可兼职地点
0条评论 雇主评价