
ipnc产品设计
ghostyu
这个作者很懒,什么都没留下…
展开
-
dm368ipnc 重写架构中的swosd 实现中文osd
appro的ipnc中只实现了英文的osd叠加,就连小小的ascii码表都没有覆盖全,而且该swosd架构灰常凌乱。其实无非就是两个功能,一是叠加文字,而是叠加图片,由于考虑到兼容不同的分辨率的视频流,所以处理的分支相对校对。图片的叠加暂不实现,用途最多的是中文的叠加,实现中文osd叠加的方法也非常简单,如下:1、了解中文字库的分布,通过汉字的内码计算出该汉字在字库中的位置。2、同原创 2012-11-03 23:02:39 · 6041 阅读 · 16 评论 -
linux 编译ffmpeg 出错:error: 'UINT64_C' was not declared in this scope
涉及到标准c和c99的问题,在出问题的文件中加上下面三句话就好了我的是:common.h头文件出错/usr/local/include/libavutil/common.h添加如下,即可解决#ifndef UINT64_C#define UINT64_C(value)__CONCAT(value,ULL)#endif原创 2012-03-17 12:11:14 · 11714 阅读 · 4 评论 -
dm365 ipnc 终于出图像了
板子终于出图像了,但是失真好像比较严重,暂时还不清楚是什么问题。看来之前破解别人的板子还是有用的,在appro的开发板还没来之前就可以写程序而且可以测试!把人家的产品当做开发板,多happy的一件事啊!!看图:原创 2012-05-05 16:35:39 · 7759 阅读 · 9 评论 -
linux基础编程 链路层socket 摆脱winPcap 夸网段socket通信 可夸平台移植
在linux环境中要从链路层(MAC)直接收发数据帧,可以通过libpcap与libnet两个动态库来分别完成收与发的工作。虽然它已被广泛使用,但在要求进行跨平台移植的软件中使用就很难办到了。。这是一种更为直接地、无须安装其它库的从MAC层收发数据帧的方式,即通过定义链路层的套接字来完成。下面的代码也是我做的项目中的代码(夸网段访问网络中的嵌入式设备),去掉了敏感部分,和大家共享!但是原创 2012-07-11 20:50:43 · 5429 阅读 · 5 评论 -
TI xDAIS的深入理解 推荐阅读
现代软件开发,已从上世纪的面向过程编程发展到当前的面向框架编程。软件开发经验已证明:框架话、模块化的开发方式可以极大的提高软件开发效率,提高代码质量及代码重用率。然而,在嵌入式编程中,由于长期缺乏完善的开发框架和可用的API,开发人员依旧利用C或汇编语言和底层硬件打交道,凡是亲力亲为,这必然会增加嵌入式开发的入门门槛,降低代码的重用性,甚至增加代码易集时的复制度(不过这些缺点,对于程序员来说确是好转载 2012-08-29 14:18:48 · 10954 阅读 · 4 评论 -
ti ccs #pragma CODE_SECTION
由于在基于DSP的嵌入式系统开发中,存储资源特别是片内高速存储资源有限,在算法系统集成时Memory的管理对于提高整个系统的优化是非常重要的,这一方面影响数据的读取、搬移速度;另一方面还影响Cache的命中率,下面分程序和数据两方面分析。程序区:最大原则是将经常调度使用的算法模块放片内。为做到这点,TI的CCS中提供了#pragma CODE_SECTION,可以把需要单独控制存放的函数段从.te转载 2012-08-30 09:56:33 · 6012 阅读 · 0 评论 -
移植gdb到DM368 IPNC中 linux arm gdb
移植gdb到嵌入式的ipnc中,大多数人习惯使用printf调试,但是遇到像”segment fault“这的错误也是后就很难定位,这时候gdb的作用就体现出来了在pc使用gdb调试应用程序前,应用程序编译是需带上 gcc -g参数,就是编译带有调试信息的程序,不然使用gdb是找不到程序的symbol的在arm中使用gdb也不例外,也要加上arm_v5t_le-gcc -g参数,只不过,a原创 2012-10-17 16:44:47 · 4354 阅读 · 0 评论 -
arm mini2440 基于v4l2 ffmpeg x264的视频远程监控
网络上盛传的基于mini2440的摄像头监控一般是基于 MJPEG-Streamer。这种方法利用的是V4L2的底层驱动,然后配合mjpeg这种格式的流传输,然后通过浏览器浏览视频和控制。下面用一个更接近真实的IP-camera的方案来实现。首先先看一下网友sunkwei写的《基于v4l2的webcam应用,本地预监》http://blog.youkuaiyun.com/sunkwei/art原创 2012-03-19 23:09:03 · 29059 阅读 · 86 评论 -
WireShark帧格式解析
先看一下我使用UDP广播时,WireShark捕获的数据截图从图上能看出来我udp发送的数据是 liuyu love chenlan以下帧格式解析来自互联网帧号 时间 源地址 目的地址 高层协议 包内信息概况No. Time Source Destination Protocol I原创 2012-05-14 16:51:58 · 27285 阅读 · 1 评论 -
RTP协议分析
转载,来自http://blog.youkuaiyun.com/bripengandre/article/details/2238818整理记录版本时间内容整理人V1.02008-03-31RTP协议分析初稿彭令鹏转载 2012-06-01 09:57:36 · 2093 阅读 · 1 评论 -
gdb参数及命令详解 (已整理) core dump调试
名称 gdb - GNU 调试器提要 gdb [-help] [-nx] [-q] [-batch] [-cd=dir] [-f] [-b bps] [-tty=dev] [-s symfile] [-e prog] [-se prog] [-c core] [-x cmds] [-d dir转载 2012-10-17 21:51:41 · 24833 阅读 · 1 评论 -
原来结构体和函数是可以同名的
见识太少了。。。#include struct _func{ int s;};void _func(struct _func s){ printf("in function _func,struct _func:s.s=%d\n",s.s);}int main(){ struct _func s; s.s = 10; _func(s); return 0;}运行结构原创 2012-11-07 11:29:44 · 7303 阅读 · 1 评论 -
onvif规范 中文介绍
什么是ONVIF ?ONVIF规范描述了网络视频的模型、接口、数据类型以及数据交互的模式。并复用了一些现有的标准,如WS系列标准等。ONVIF规范的目标是实现一个网络视频框架协议,使不同厂商所生产的网络视频产品(包括摄录前端、录像设备等)完全互通。ONVIF规范描述了网络视频的模型、接口、数据类型以及数据交互的模式。并复用了一些现有的标准,如WS系列标准等。ONVIF规范的目标是实转载 2012-11-08 14:54:36 · 61116 阅读 · 14 评论 -
onvif规范的实现:server端Discovery实现,通过OnvifTestTool12.06测试
说明:网上关于ONVIF开发的文章并不多,也更找不到具体的实例来入门学习。只能靠翻阅各种Specification摸索中前进,下面是最近几天的成果。调通了服务端(或者说设备端)的Discovery,使用OnvifTestTool12.06能够搜到我的设备。【来自http://blog.youkuaiyun.com/ghostyu】1、在使用wsdl2h产生头文件前需要修改typemap.dat,修改的原创 2012-11-14 15:40:54 · 86566 阅读 · 69 评论 -
onvif规范的实现:使用gSOAP创建SOAP调用实例
预备知识ONVIF规范中设备管理和控制部分所定义的接口均以Web Services的形式提供。ONVIF规范涵盖了完全的XML及WSDL的定义。每一个支持ONVIF规范的终端设备均须提供与功能相应的Web Service。服务端与客户端的数据交互采用SOAP协议。【来自http://blog.youkuaiyun.com/ghostyu】ONVIF中的其他部分比如音视频流则通过RTP/RTSP进行 。原创 2012-11-08 17:09:00 · 46705 阅读 · 22 评论 -
onvif规范的实现:成功实现ONVIF协议RTSP-Video-Stream与OnvifDeviceManager的视频对接
有了前几篇的基础,现在可以正式开始onvif的实现工作,其中一项非常重要的部分就是视频流的对接,即能够在符合onvif标准的监控客户端软件里接收到设备端NVT发来的RTSP视频流。这里,我所用的客户端软件是Onvif Device Manager v2.2。【来自http://blog.youkuaiyun.com/ghostyu】ONVIF Profile S Specification文档描述了Dev原创 2012-11-22 09:59:50 · 146559 阅读 · 56 评论 -
视频编码中CBR编码和VBR编码
视频编码中CBR编码和VBR编码的区别 用Premiere Pro 2.0输出DVD时,系统中有个选项,即输出采用CBR编码还是VBR编码,那么,CBR编码和VBR编码的区别是什么呢?两种编码适用于什么情况呢? VBR就是可变比特率,它与恒定比特率CBR有一些区别,关于CBR或VBR编码的区别如下: 通过使用Windows Media编码器,可以用恒定比特原创 2012-03-13 10:40:31 · 7509 阅读 · 1 评论 -
移植Open SSH到DM368 IPNC中 linux arm ssh
我一直在寻找这样的一个ipnc模组:通用的38板,TI方案,并且开放了系统串口。可惜不是没有开发串口,就是非TI方案的,我觉得有这样的一个板子,可以做很多事情,一是这样的板子很便宜1080p dm368的才350左右,二是自己可以开发一些特定的程序在板子里运行。我觉得这样的需求应该是很多的,有时候 常规的ipc并不能满足需要。后来我问一家小板的厂家,没有串口你们怎么调试程序的。他们说不用串原创 2012-10-13 13:09:42 · 4214 阅读 · 0 评论 -
查看linux静态库*.a中的函数和文件 拿appro 2a算法库开刀
查看linux静态库*.a中的函数和文件,这对某些时候是非常有用的,比如我现在正在尝试替换掉appro的2a算法库,这就需要了解appro的2a结构windows下dumpbin /exports libxxx.alinux 下nm -g --defined-only libxxx.a下面是appro算法库中的文件1、Appro_2a_lib.a[roo原创 2012-08-31 16:32:07 · 17101 阅读 · 0 评论 -
camera摄像原理之二:色彩空间
对于sensor 来说,我们经常接触到的色彩空间的概念,主要是RGB , YUV这两种(实际上,这两种体系包含了许多种不同的颜色表达方式和模型,如sRGB, Adobe RGB, YUV422, YUV420 …),RGB如前所述就是按三基色加光系统的原理来描述颜色,而YUV则是按照亮度,色差的原理来描述颜色。 不比其它颜色空间的转换有一个标准的转换公式,因为YUV在很大程度上是与转载 2012-08-27 16:47:22 · 4104 阅读 · 0 评论 -
关于APPRO DM368 IPNC使用 XDS560 与 CCS 的连接问题
新板调试的时候需要通过CCS烧写ubl,我用的仿真器是seed-xds560,ccs3.3,本来以为很顺利,少个ubl而且,但是运行ccs的Setup CCStudio v3.3,怎么找也没找到DM368、365等字样的设置,然后去群里问,去论坛搜,google,baidu均无果。。。。网上有的只有dm365_xds510.ccs,但是我的仿真器是xds560啊后来才知道是可以通过DM64原创 2012-09-04 09:22:53 · 4326 阅读 · 0 评论 -
appro dm368ipnc nandwriter的ubl和u-boot烧写问题以及diagnostic for dm368的诊断程序
新板调试总是挫折不断,问题解决一个就又出来一个,连绵不绝。。。这次是使用ccs3.3通过nandwriter烧写ubl和u-boot的问题,按照appro的UsersGuide烧写步骤,一直比较顺利,直到提示烧写diagnostic dm368 file,资料里找来找去就是没有这个东西,然后我就选择了skip,调过了此步,ccs提示nand 烧写成功。但是板子重启后,ubl起来但是u-bo原创 2012-09-05 21:08:01 · 4251 阅读 · 0 评论 -
再缜密的设计,我们也很难保证完全没有bug,之所以仍未发现,只是激活这个bug的条件还没到来
appro dm368ipnc软件中的bug【一】当外部ARN_RST_IN【DM368IPNC-OV2715-Ver_2.06.01_release版本中的GIO35脚】持续为低并且开启移动侦测报警、音频以及音频输出报警,若检测到频繁的移动侦测或者其他报警时,音频报警输出程序会再次关闭已经关闭的pcm音频设备,在snd_pcm_drain()函数的内部有一个assert,assert会检测到原创 2012-09-18 16:00:47 · 2264 阅读 · 0 评论 -
ipnc快收工了
2012年2月15日来公司报道,刚来的两天,让我熟悉一下芝士6467t的开发板,从头到尾跑一下,这东西资料给的全全的,又不要移植啥,重新编译烧进去就完事了,有什么难的,难道是怀疑我这个也不会嘛。。。然后没过几天,我开始了崭新的ip-camera项目,以前虽然用过arm,但是linux下的应用编程还真没试过,但事实证明,我的学习能力是没问题的,现在ip-camera已经基本完工了,等到国庆后长期原创 2012-09-28 15:48:46 · 3878 阅读 · 1 评论 -
静态库是不安全的 appro aew 2A 静态库破解:解除与加密芯片的绑定 dm368ipnc
appro的ipnc方案中,除了美光的CMOS板开放硬件外,其他的CMOS板:ov2715,、ov9715、imx036等不但不提供原理图,而且还加了一颗6pin的硬件加密芯片,CMOS板接口的GIO90、与GIO93用来与加密通信(初步看像是韩国的neowine加密芯片),2a库每隔两分钟就会验证一次硬件:向加密芯片输入随机产生的7个字节,加密芯片运算后输出4个字节,软件判断运算结果是否正确原创 2012-10-15 23:30:43 · 5659 阅读 · 3 评论 -
监控用云台及解码器
监控用云台云台就是两个交流电机组成的安装平台,可水平和垂直的运动。但要注意区别于照相器材中的云台概念。照相器材的云台一般来说只是一个三脚架,只能通过手来调节方位;而监控系统所说云台是通过控制系统在远程可控制其转动及移动方向的。云台转动速度衡量云台档次高低重要指标。云台水平和垂直方向是由两个不同的电机驱动的,因此云台的转动速度也分为水平转速和垂直转速。由于载重的原因,垂直电机在启动和运行保持时的原创 2012-03-07 22:01:14 · 13511 阅读 · 1 评论 -
live555 Streaming Media 分析与开发
因需要,从个人的理解顺序和需求角度对live555的分析与开发整理,包含RTSP Server与RTSP Client、如何直播H.264流与JPEG流等,均进行了探讨,对live555的初学者有一定的指导意义。本人习惯使用excel归档,所以本文均为excel的截图,源文件可以再资源中下载。原创 2012-03-26 22:08:10 · 14188 阅读 · 7 评论 -
基于live555的视频直播 DM368IPNC RTSP分析
本文是 我对TI DM368IPNC RTSP直播部分的代码分析。appro IPNC视频流直播部分用的RTSP,基于live555,通过改写wis-streamer实现的,在live555官网上有wis-streamer的代码下载,appro将其修改,在framedsource中加入了GetAVData接口,这样ipnc就可以直播了。感慨:C++ 真的太好用了现在懒了,文字部分就直接原创 2012-04-21 23:34:27 · 17895 阅读 · 6 评论 -
不同网段的socket通信 以及winPcap vs2005设置
通过winPcap,可以再window上轻松捕获网卡数据包,还可以发送链路层的Packet将,可以网卡对网卡通信,这样非常有用,比如网络中有一个嵌入式设备,初始ip为192.168.0.122, 但是主机PC的ip为192.168.1.13 这样ip不在同一段中,不能直接通信,这样就可以利用winPcap在主机PC上广播数据包,找到网络这的192.168.0.122设备,将其改为DHCP或者手动设原创 2012-05-16 22:03:37 · 4609 阅读 · 1 评论 -
camera摄像原理之一:光感应
做为拍照手机的核心模块之一,camera sensor 效果的调整,涉及到众多的参数,如果对基本的光学原理及 sensor 软/硬件对图像处理的原理能有深入的理解和把握的话,对我们的工作将会起到事半功倍的效果。 人眼对色彩的识别,是基于人眼对光谱存在三种不同的感应单元,不同的感应单元对不同波段的光有不同的响应曲线的原理,通过大脑的合成得到色彩的感知。一般来说,我们可以通俗的用RG转载 2012-08-27 16:46:33 · 6312 阅读 · 0 评论 -
camera摄像原理之三:色温和自动白平衡
色温的定义:将黑体从绝对零度开始加温,温度每升高一度称为1开氏度(用字母K表示),当温度升高到一定程度时候,黑体便辐射出可见光,其光谱成份以及给人的感觉也会着温度的不断升高发生相应变化。于是,就把黑体辐射一定色光的温度定为发射相同色光光源的色温。 随着色温的升高,光源的颜色由暖色向冷色过渡,光源中的能量分布也由红光端向蓝光端偏移。值得转载 2012-08-27 16:48:47 · 5273 阅读 · 0 评论 -
camera摄像原理之四:曝光和GAMMA
从最明亮到最黑暗,假设人眼能够看到一定的范围,那么胶片(或CCD 等电子感光器件)所能表现的远比人眼看到的范围小的多,而这个有限的范围就是感光宽容度。 人眼的感光宽容度比胶片要高很多,而胶片的感光宽容度要比数码相机的ccd高出很多!对于sensor来说,又是如何来判断曝光是否正确呢?很标准的做法就是在YUV空间计算当前图像的Y值的均值。调节各种曝光参数设定(自动或手动),使得该均转载 2012-08-27 16:49:50 · 11474 阅读 · 0 评论 -
TI IPNC Image Tuning Tool 下载 2A算法必备
appro提供的资料里,有一些版本是带这个工具的,但后来的版本这个软件貌似被删掉了,因此分享,以节约大家的寻找时间领导想要有2A算法的技术积累,但是只有一个人的力量,这事就没那么简单了。。。既然放话了,就得去做文件名:ImageTunningTool-2.0-Setup.exe下载地址http://www.kuaipan.cn/file/id_48923272389原创 2012-08-29 12:10:23 · 4932 阅读 · 4 评论 -
用C结构体来实现面向对象编程,ti xDAIS标准算法就这么搞的
用C结构体来实现面向对象编程,ti xDAIS标准算法就这么搞的。测试代码如下:#include #include #include typedef struct Alg_Obj{ struct Alg_Fxn* fxns;}Alg_Obj;typedef Alg_Obj *Alg_Handle;typedef struct Alg_Fxn{ void (*pr原创 2012-08-29 17:10:10 · 4391 阅读 · 4 评论 -
onvif规范的实现:onvif开发常用调试方法 和常见的segmentation fault错误
在前几篇中,虽然已经实现了rtsp视频流的对接,但是还要做的工作还非常多,onvif本来就是一个覆盖面非常广的一个协议,每一个功能都要填充大量的函数。而且稍不注意就会出现segmentation fault错误。下面把我之前开发调试时的经验写下来,希望能够帮助有这方面需求的人。【来自http://blog.youkuaiyun.com/ghostyu】1、打开onvif调试开关,以便让onvif打印一些可原创 2012-12-25 13:30:47 · 19579 阅读 · 2 评论