自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

转载 GPS 0183协议GGA、GLL、GSA、GSV、RMC、VTG解释

GPS 0183协议GGA、GLL、GSA、GSV、RMC、VTG解释:$GPGGA例:$GPGGA,092204.999,4250.5589,S,14718.5084,E,1,04,24.4,19.7,M,,,,0000*1F字段0:$GPGGA,语句ID,表明该语句为Global Positioning System Fix Data(GGA)GPS

2011-12-26 10:09:10 2433

转载 H.264视频压缩标准拓展视频监控的潜力

1.简介    H.264是最新的视频压缩标准,它也称为MPEG-4Part10或AVC(高级视频编码)。据预测,在未来几年内H.264将成为行业首选的视频标准    H.264是一个需要许可证才能使用的开放标准,可支持最当今市场上最高效的视频压缩技术。在不影响图像质量的情况下,与采用M-JPEG和MPEG-4Part2标准相比,H.264编码器可使数字视频文件的大小分别减少80%

2011-12-16 17:17:46 1821

转载 自适应编码实现

经过一段时间实验,关于自适应编码得到些成果,但还有很多问题,现把我的做法贴出来,欢迎高手指教!原理: 网络传输的反馈信息是通过RTCP包中的RR(接受者报告)包得到。通过RR包中的累积丢包数等反馈信息可以计算出当前的传输丢包率。当丢包率低于预先设定的最小值时,增加编码输出速率。当丢包率大于设定的最大值时,降低编码输出速率。当网络拥塞时,发送速率乘性减小,降低对所需带宽的要求。同时设置最小发

2011-12-16 15:54:49 2780

转载 JRTPLIB 获得RR包

终于可以不做网页了,经历了半年的折磨,网站的一期结束了,可以腾出时间准备下论文了。      可以传输视频还不够,我想根据网络状态实现自适应编码传输,但是不知道怎样获得反馈数据。上网查了查,发现有两种方法。      第一种是重载OnRTCPCompoundPacke(RTCPCompoundPacket *pack, const RTPTime &receivetime, const R

2011-12-16 15:49:31 1559

转载 一种自适应RTP分包方法研究

1.引言  近年来,随着多媒体系统和网络通讯技术的发展,基于Internet 的多媒体业务在飞速的发展,如电视电话会议、远程视频监控等。这些数据在网络上传输往往要经过压缩。而且网络上的视频音频业务大多是通过RTP/RTCP 实现的。基于UDP 的RTP 传输协议没有TCP那样的保障机制,而且视频数据的实时性要求出现数据误码或丢包也不允许数据的重传。这要求我们必须针对网络的状况调整我们的传输策略

2011-12-16 11:03:22 2477 1

转载 视频监控存储空间大小与传输带宽计算方法

在视频监控系统中,对存储空间容量的大小需求是与画面质量的高低、及视频线路等都有很大关系。下面对视频存储空间大小与传输带宽的之间的计算方法做以先容。比特率是指每秒传送的比特(bit)数。单位为bps(BitPerSecond),比特率越高,传送的数据越大。比特率表示经过编码(压缩)后的音、视频数据每秒钟需要用多少个比特来表示,而比特就是二进制里面最小的单位,要么是0,要么是1。比特率与音、视

2011-12-15 17:31:19 7170

转载 tcp有限状态机分析

这幅图是TCP的状态机,看了2个小时,分析总结如下:(1)CLOSED 状态时初始状态。(2)LISTEN:被动打开,服务器端的 状态变为LISTEN(监听)。被动打开的概念:连接的一端的应用程序通知操作系统,希望建立一个传入的连接。这时候操作系统为连接的这一端建立一个连 接。与之对应的是主动连接:应用程序通过主动打开请求来告诉操作系统建立一个连接。(3)SYNRECVD:

2011-11-30 17:17:56 917

转载 linux内核IOCTL网络控制框架实现分析

linux内核IOCTL网络控制框架实现分析       作者:松哥email:[email protected][email protected]: 15210449                                                  (转载请注明出处)

2011-11-30 15:17:06 661

转载 DS1339

DS1339    接口:I2C总线    数据:seconds,minutes,hours,day,date,month,year    格式:12 or 24-hour format(AM/PM),时间和日期采用BCD格式     寄存器地址B7B6B5B4B3B2B1

2011-11-30 09:39:50 4007 2

转载 S3C2440驱动篇—Linux平台设备驱动

在设备驱动程序中经常会见到和platform相关的字段,分布在驱动程序的多个角落,这也是2.6内核中比较重要的一种机制,把它原理弄懂,对以后分析驱动程序很有帮助:在linux2.6设备模型中,关心总线,设备,驱动这三个实体,总线将设备和驱动绑定,在系统每注册一个设备的时候,会寻找与之匹配的驱动。相反,在系统每注册一个驱动的时候,寻找与之匹配的设备,匹配是由总线来完成的。       一个现

2011-11-30 09:20:11 504

转载 Linux启动过程中硬件模块的加载

文章来源不详。阅读Linux内核启动代码的直接动力是我想编写RTL8019AS的网卡驱动程序(2.4.18内核只支持了CS8900A)。既然要写驱动,我就想知道它是怎么样被加载的,好奇心驱使我先去搞定这个问题。拿到2.4.18的软件包,一万多个文件,我不知怎么下手。所幸手头有这么三件工具助我入门:1,一块移植好linux的开发板,通过它可以看到linux启动过程打印的消息。2, g

2011-11-29 17:30:39 574

转载 Hi3515 UART2和UART3驱动加载

这里主要想讲下海思Hi3515的UART2和UART3是如何被加载到内核中的,因为正在做一个项目需要使用四个串口,但海思提供的linux源码中只加载了两个串口的驱动,找了一圈,发现源码中没有现成的UART2和UART3的代码可以使用,只能自己动手改啦啊。。。首先关于linux硬件模块的加载可以参考下面这篇博文:http://hi.baidu.com/jackyu/blog/item/a89

2011-11-29 17:26:47 677

转载 close_wait状态和time_wait状态

不久前,我的Socket Client程序遇到了一个非常尴尬的错误。它本来应该在一个socket长连接上持续不断地向服务器发送数据,如果socket连接断开,那么程序会自动不断地重试建立连接。有一天发现程序在不断尝试建立连接,但是总是失败。用netstat查看,这个程序竟然有上千个socket连接处于CLOSE_WAIT状态,以至于达到了上限,所以无法建立新的socket连接了。为

2011-11-28 09:47:04 880

转载 Linux设备驱动子系统第二弹 - SD卡

1. 总论2. 主控制器3. 协议层4. 块设备1. 总论 1.1 概念MMC - MultiMedia CardSD    - Secure Digital Card1.2 分类按存储大小,普通SD卡(2GB,按体积大小,普通SD卡,mini-SD卡,micro-SD卡(TF卡)1.3 速度默认模式: 12.5MB/s高速模式: 25MB/

2011-11-25 14:11:45 3859

转载 makefile自动目标变量

$@ 代表规则中的目标文件名。如果目标是一个文档(Linux中,一般称.a文件为文档),那么它代表这个文档的文件名。在多目标的模式规则中,它代表的是哪个触发规则被执行的目标文件名。 $% 规则的目标文件是一个静态库文件时,代表静态库的一个成员名。例如,规则的目标是“foo.a(bar.o)”,那么,“$%”的值就为“bar.o”,“$@”的值为“foo.a”。如果目标不是函数库文件,其

2011-11-25 09:43:46 1157

转载 Linux驱动的platform机制

最近研究了一下Linux驱动的platform机制。从Linux2.6起,引入了一套新的驱动管理和注册机制:Platform_device和Platform_driver。Linux中大部分的设备驱动,都可以使用这套机制,设备用platform_device表示,驱动用platform_driver进行注册。 Linux platform driver机制和传统的device_driv

2011-11-24 17:29:30 451

转载 内核调试案例(oops错误)

结合自己的实践和网上的文章,介绍手工调试内核bug的通用方法。1.步骤1).Collect oops output, System.map, /proc/ksyms, vmlinux, /proc/modules 2).Use ksymoops to interpret oops   Instructions is /usr/src/linux/Documentation/oops

2011-11-24 17:21:13 522

转载 platform_device和platform_driver

首先介绍一下注册一个驱动的步骤:1、定义一个platform_driver结构2、初始化这个结构,指定其probe、remove等函数,并初始化其中的driver变量3、实现其probe、remove等函数看platform_driver结构,定义于include/linux/platform_device.h文件中:struct platform_driver {

2011-11-24 17:03:56 512

转载 串行通信协议

串行通信协议:计算机与外设或计算机之间的通信通常有两种方式:并行通信和串行通信。并行通信指数据的各位同时传送。并行方式传输数据速度快,但占用的通信线多,传输数据的可靠性随距离的增加而下降,只适用于近距离的数据传送。串行通信是指在单根数据线上将数据一位一位地依次传送。发送过程中,每发送完一个数据,再发送第二个,依此类推。接受数据时,每次从单根数据线上一位一位地依次接受,再把它们拼成一个完整的数据。在

2011-11-24 10:53:03 3857

转载 Linux硬件驱动:USB设备驱动开发篇

USB骨架程序(usb-skeleton),是USB驱动程序的基础,通过对它源码的学习和理解,可以使我们迅速地了解USB驱动架构,迅速地开发我们自己的USB硬件的驱动。  前言  在上篇《Linux下的硬件驱动--USB设备(上)(驱动配制部分)》中,我们知道了在Linux下如何去使用一些最常见的USB设备。但对于做系统设计的程序员来说,这是远远不够的,我们还需要具有驱动程序的阅读、修改和

2011-11-24 10:31:26 1185

转载 关于Linux下串口通信的一点心得

这几天,由于长春门检系统项目的需要,涉及到了读卡器信息的串口读取,所以在Linux下串口信息的读取有了一点心得体会。1.         打开串口       与其他的关于设备编程的方法一样,在Linux下,操作、控制串口也是通过操作起设备文件进行的。在Linux下,串口的设备文件是/dev/ttyS0或/dev/ttyS1等。因此要读写串口,我们首先要打开串口:       char

2011-11-24 10:20:09 506

转载 串口通信基本接线方法

目前较为常用的串口有9针串口(DB9)和25针串口(DB25),通信距离较近时(  1.DB9和DB25的常用信号脚说明  9针串口(DB9) 25针串口(DB25)  针号 功能说明 缩写 针号 功能说明 缩写  1 数据载波检测 DCD 8 数据载波检测 DCD  2 接收数据 RXD 3 接收数据 RXD  3 发送数据 TXD 2 发送数据 TXD  4

2011-11-24 10:02:44 1556

转载 串口通信原理和简介

串口通信定义  串口是计算机上一种非常通用设备通信的协议。大多数计算机包含两个基于RS232的串口。串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有RS-232口。同时,串口通信协议也可以用于获取远程采集设备的数据。  串口通信原理  串口通信的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线

2011-11-24 09:58:51 688

转载 面向H.264码率控制的研究和设计

目前常见的视频编码压缩技术中,原始的视频数据码流经过编码压缩之后,虽然得到了较高的压缩比,但是产生的数据流的码率是变化的。不断变化的码流不适合在 恒定码率信道中传输。为了解决这个问题,通常采用的做法是,在变码率数据进入信道以前,先将其输入一个缓冲器,然后再从缓冲器里以固定码率R输出到传输信 道。而在信道的另一端,固定码率的码流先输进解码缓冲器,然后解码器以变码率从解码缓冲器中读取数据。

2011-11-24 09:58:01 1406

原创 Hi3515的3g视频传输码率控制初探(二)

接上。。今天终于把Hi3515的3g视频传输给弄好了,虽然视频质量比较差也有点卡,总算是有点突破。因为采用的是硬编码,只要把s32MaxQP和s32MinQP两个属性参数调到合适的值,Hi3515就可以调整码率,就能3g传输视频了。码率预测、带宽分配、量化参数选择和缓存器控制是联合码率控制系统中最重要的几个模块,它们之间并不是独立、割裂的,而是相互影响、相互制约的。因此,要从使整个

2011-11-23 17:58:35 1238

转载 模块化联合码率控制技术

摘 要: 提出将整个联合码率控制算法分为几个控制模块,调整模块算法不影响整体控制策略,从而算法更通用。对系统的几个主要模块:码率预测、带宽分配、量化参数选择和缓存器控制的算法进行了讨论。最后给出了联合码率控制系统性能评价方法。 关键词: 联合码率控制 模块化 码率预测 带宽分配 量化参数选择 随着视频及其伴音压缩编码标准MPEG-1、MPEG-2的制订,以其为    摘 要: 提出将整个联

2011-11-23 17:51:33 784

转载 AVC/H264编码教程

AVC/H264编码教程原作:DeathTheSheep翻译:Tenlix编码次数(应当选择何种编码模式)如果你想要得到一个确定的文件体积,我推荐采用二次编码的模式。例如,你希望你生成的文件体积为精确的170.00MB,那么你就需要采用二次或三次编码。严格地说,一次编码针对的是那些严重缺乏时间或者并不期望得到高质量输出的人。二次编码能够满足大部分人的需要,它可以

2011-11-23 10:55:24 1187

转载 GPS NMEA-0183协议详解

NMEA协议是为了在不同的GPS(全球定位系统)导航设备中建立统一的BTCM(海事无线电技术委员会)标准,由美国国家海洋电子协会(NMEA-The National Marine Electronics Associa-tion)制定的一套通讯协议。GPS接收机根据NMEA-0183协议的标准规范,将位置、速度等信息通过串口传送到PC机、PDA等设备。NMEA-0183协议是GPS

2011-11-21 09:09:36 728

转载 Installing GPSD

Topics in this article:Using the Global Positioning System Daemon (GPSD) with KismetConfiguring KismetStarting KismetWarDriving Using KismetIntroduction Now that you have install

2011-11-18 10:11:21 2459

转载 FFMpeg框架代码阅读

简介FFmpeg是一个集录制、转换、音/视频编码解码功能为一体的完整的开源解决方案。FFmpeg的开发是基于Linux操作系统,但是可以在大多数操作系统中编译和使用。FFmpeg支持MPEG、DivX、MPEG4、AC3、DV、FLV等40多种编码,AVI、MPEG、OGG、Matroska、ASF等90多种解码.TCPMP, VLC, MPlayer等开源播放器都用到了FFmpeg。

2011-11-14 10:02:45 561

原创 Hi3515的3g视频传输码率控制初探(一)

这段时间一直在搞视频传输这一块,加了视频缓冲之后,局域网传输比较流畅且延时小,但是应用到3g视频网络就看不到视频,查了很多资料才摸清一点门道来。初步的思路是根据网络的带宽(输出目标码率)来和缓冲区当前使用率调整量化参数的大小。研究了一下Hi3515的码率控制的api,s32Ret = HI_MPI_VENC_SetH264eRcPara(VeChn, &stH264rcAttr);

2011-11-10 14:08:54 1407

转载 BOA的移植

Boa是一种非常小巧的Web服务器,其可执行代码只有大约60KB左右。作为一种单任务Web服务器,Boa只能依次完成用户的请求,而不会fork出新的进程来处理并发连接请求。但Boa支持CGI,能够为CGI程序fork出一个进程来执行。Boa的设计目标是速度和安全。  下面给大家介绍一下Boa服务器移植的具体操作步骤,希望能够有帮助。  环境  主机:ubuntu8.10

2011-11-10 13:54:00 459

转载 嵌入式Linux上通过boa服务器实现cgi/html的web上网

嵌入式Linux上通过boa服务器实现cgi/html的web上网简介:第一步 Boa程序的移植1.下载Boa源码2、生成Makefile文件3、修改Makefile文件4、编译第二步 Boa的配置第三步boa的执行1.将根文系统ramdisk在电脑主机上mount –o loop ramdisk 目标目录进行展开2.测试操作

2011-11-10 13:52:38 1064

转载 揭开PC-Lint9的神秘面纱

前言    今天,又定位了一个令人懊恼的C++内存使用异常问题,最终结果,竟然是减少接口类的方法后,为了避免编译错误,顺手添加的强制类型转换导致的。    对于这样的问题,我们碰到很多很多次了。没有这样的问题,我们就不会有那么多的攻关,那么多的熬夜,进度也许不再那么捉摸不透......    我们有很多的抱怨,用的C/C++语言太底层,使用高级语言C#/JAVA等就不会有头痛的内存问题

2011-11-10 13:48:27 1461

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除