[发明专利]一种基于DM365的网络视频传输系统及方法在审
申请号: | 201310343795.1 | 申请日: | 2013-08-08 |
公开(公告)号: | CN103442204A | 公开(公告)日: | 2013-12-11 |
发明(设计)人: | 孟利民;周凯 | 申请(专利权)人: | 浙江工业大学 |
主分类号: | H04N7/18 | 分类号: | H04N7/18;G06F9/52;H04L29/06 |
代理公司: | 杭州斯可睿专利事务所有限公司 33241 | 代理人: | 王利强 |
地址: | 310014 浙江省*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 dm365 网络 视频 传输 系统 方法 | ||
技术领域
本发明涉及视频监控领域,尤其是一种网络视频传输系统及方法。
背景技术
随着社会的快速发展和人们生活水平的不断提高,公众对安防的意识逐渐加深,社会对安防的需求也随之增长。近来,国内提出了建设“平安城市”的概念,就是使用完整的安全防范系统对城市进行覆盖,包括市内视频监控系统、数字化城市管理系统、道路交通等多个系统,利用市区级数据交换平台实现资源共享,作为视频数据的源头,视频监控系统是重中之重。而在视频监控系统中,视频数据的采集、编码、传输的技术是关键。在这种情况下,网络视频传输系统应用而生,它是一个将网络通信技术、嵌入式技术以及视频缩编码、传输、控制技术相结合的系统,它能够提升网络视频监控系统整体性能,具有较高的工程意义和市场价值。
发明内容
为了克服已有网络视频传输方式的视频清晰度较低、流畅度较差的不足,本发明提供一种清晰度较高、流畅度较好的基于DM365的网络视频传输系统及方法。
本发明解决其技术问题所采用的技术方案是:
一种基于DM365的网络视频传输系统,所述网络视频传输系统包括视频设备、服务器和客户端,所述视频设备包括用于采集一路CCD(Charge-coupled Device,电荷耦合装置)摄像头模拟视频信号并转为数字信号的视频采集模块,用于将采集视频进行H.264标准压缩编码并写入共享内存的视频编码模块,用于将共享内存中的H.264数据打包发送并实现实时视频数据的发送的视频发送模块;所述视频编码模块采用达芬奇芯片DM365,所述服务器中,记录和管理设备、用户信息,转发信令和媒体数据;所述客户端查看视频设备的信息,并进行设备查询、控制和实时监控。
进一步,所述达芬奇芯片DM365芯片具有ARM(Advanced RISC Machines,嵌入式系统)核和DSP(digital signal processor,数字信号处理)协处理器双核模式。
一种基于DM365的网络视频传输方法,摄像头捕获的模拟视频信号首先由TVP5146芯片编码成为YUV格式的视频数据,后经过VPFE(Video Processing Front End,视频处理前端)处理之后,然后再通过TMS320DM365的H.264编码器产生压缩后的H.264视频数据,之后将H.264数据以RTP(Real-time Transport Protocol,实时传输协议)格式通过Internet进行打包发送至服务器;在客户端,首先从服务器接收到RTP包中解析出H.264数据,送至解码器解码,最后将解码后的YUV数据实时播放出来。
进一步,所述视频设备包括视频采集模块、视频编码模块和频发送模块,所述视频设备的视频数据处理过程分为两个进程:视频采集压缩encode进程以及视频发送dev_app进程,其中encode进程主要包括两个线程:负责视频采集的capture线程,负责视频压缩video线程;dev_app进程主要负责:RTP数据的打包发送。
所述视频采集过程如下:在创建VPFE视频采集设备驱动实例前,先要向VPFE驱动注册TVP5146设备,TVP5146将采集的数字信号放入等待队列中;VPFE设备通过ioctl方法不断地从等待队列中读取视频数据到缓冲区;应用程序通过V4L2接口和DMAI(DaVinci Multimedia Application Interface,达芬奇多媒体应用接口)接口获取VPFE驱动中采集的视频数据。
所述视频编码过程如下:配置编码引擎文件encode.cfg,由于DaVinci软件框架是一个高度模块化的编程框架,DaVinci软件的功能实现都已封装成模块,应用程序如果需要使用某个模块,通过配置cfg文件,将用到的模块配置好,之后使用,只要调用API即可;配置cfg文件,主要是配置Codec Engine以及相应的多媒体算法,参考TI提供的编码demo的cfg文件。
视频采集和视频编码的两个线程实现如下:capture线程将采集原始帧数据写入缓存区,通过管道Fifo_put()接口将缓存区地址发送给video线程;video线程通过Fifo_get()接口收到数据后,利用CodecEngine调用H.264编码算法实例进行编码,并把编码好的一帧数据写入共享内存,等待dev_app进程来读取,若没有被读取,video线程进入阻塞状态,整个encode进程也被阻塞。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江工业大学,未经浙江工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310343795.1/2.html,转载请声明来源钻瓜专利网。