- 博客(26)
- 资源 (7)
- 收藏
- 关注
原创 宏的使用
#define DEFINE_PARSE_BUILD_LINK_CSEQ(_name, _type, _param, _fmt) \static int rtsp_msg_parse_##_name (rtsp_msg_s *msg, const char *line) \{ \rtsp_msg_hdr_s *hdrs = &msg->hdrs; \if (hdrs->_name)
2017-04-01 22:12:53 415
原创 linux工具的使用
1:判断一个服务器的状态,是否可以connect,只需要输入:nc -v -w 2 113.106.94.104 -z 1017-1019nc -v -w 连接失败后重复次数 ip -z 端口号2:获取http的详细信息curl -vosa http://www.baidu.com
2017-02-21 17:27:07 455
原创 FLV格式分析
OverviewFlash Video(简称FLV),是一种流行的网络格式。目前国内外大部分视频分享网站都是采用的这种格式.FLV(Flash Video)是Adobe公司设计开发的一种流行的流媒体格式,由于其视频文件体积轻巧、封装简单等特点,使其很适合在互联网上进行应用。此外,FLV可以使用Flash Player进行播放,而Flash Player插件已经安装在全世界绝大部
2017-02-21 17:25:32 1243
原创 MP3文件格式分析
1)标志字节标志字节一般为0,定义如下:abc00000a -- 表示是否使用Unsynchronisation(这个单词不知道是什么意思,字典里也没有找到,一般不设置)b -- 表示是否有扩展头部,一般没有(至少Winamp 没有记录),所以一般也不设置c -- 表示是否为测试标签(99.99%的标签都不是测试用的啦,所以一般也不设置)第6个字节:存放标志的字节,只定义了
2017-02-21 17:06:08 4206
原创 16bitmap位图的压缩方式及处理
在这里先对bmp file format 格式进行简单的叙述:BMP文件格式,又称为Bitmap(位图)或是DIB(Device-Independent Device,设备无关位图),是Windows系统中广泛使用的图像文件格式。由于它可以不作任何变换地保存图像像素域的数据,因此成为我们取得RAW数据的重要来源。Windows的图形用户界面(graphical user interfa
2017-02-16 21:30:54 1153
原创 librtmp协议分析---RTMP_SendPacket函数
接下来我们分析RTMP_SendPacket函数。我们先了解一下rtmp的消息格式chunk。RTMP的head组成RTMP的head在协议中的表现形式是chunk head,前面已经说到一个Message + head可以分成一个和多个chunk,为了区分这些chunk,肯定是需要一个chunk head的,具体的实现就把Message head的信息和chunk head的信息合并在
2017-02-16 21:30:21 6918 1
原创 librtmp协议分析---RTMP_ConnectStream函数
接下来我们分析RTMP_ConnectStream函数。代码如下://创建流/循环读取服务端发送过来的各种消息,比如window ack, set peer bandwidth, set chunk size, _result等//直到接收到了playint RTMP_ConnectStream(RTMP *r, int seekTime){ RTMPPacket pack
2017-02-16 21:30:00 5615 1
原创 sscanf的高级使用
最近为了使用正则表达式配合sscanf使用,处理:char buf[]="123$$asdfasd$$eeeffff$$liman$$1111111111111$$ccdddd$$hello"; 上面的字符串分割开来。需要的结果如下:sscanf(buf, "%[^$]$$%[^$]$$%[^$]$$%[^$]$$%[^$]$$%[^$]$$%[^$]", user, host, te
2017-01-14 12:02:24 378
转载 rtsp rtmp http 比较
本篇文档转载:http://www.cnblogs.com/my_life/articles/5593892.html,感谢博主热心的奉献以下内容为转载内容:http://blog.chinaunix.net/uid-26000296-id-4932817.htmlhttp://blog.chinaunix.net/uid-26000296-id-4932822.html
2016-12-16 15:11:16 24616 4
原创 popen的使用
今天看到一段写的不错的代码,整理了一下,提供学习一下:int MatchingString(char *acStr, char *acDes, int iDesLeng){ FILE *stream = popen(acStr, "r"); if (NULL == stream) { printf("failed to popen ifconf
2016-09-22 19:59:48 637
转载 C语言实现md5函数代码
转载:http://blog.csdn.net/xhhjin/article/details/8450686适合以后中用到,先转载一下,也非常感谢博主的分享。网上找到的实现md5函数代码,包括一个头文件md5.h和一个源文件md5.c,用下面的测试代码test.c测试通过,各文件依次如下:头文件md5.h#ifndef MD5_H#defi
2016-09-18 22:52:50 477
转载 [实用]送你一个短小精悍的curl命令
curl是linux下实用的工具,发送http请求,构造各种头部,用好curl命令是基础技术人员的必修课。一、我们经常会用到(以下拿头条域名来实验):仅获取响应头部:curl http://toutiao.com/ -I获取详细的信息:curl -v http://www.baidu.comalen@alen:~/GX6628/install$ curl -I www.ba
2016-08-01 14:54:12 1962
原创 采用libxml2解析xml资源
通过分析xml资源,发现它不是一个标准的xml资源,通过调用xml解析xmlXPathObjectPtr getNodeset(xmlDocPtr doc, const xmlChar *xpath){ xmlXPathContextPtr context; xmlXPathObjectPtr result; context = xmlXPathNewCont
2016-08-01 10:29:09 1437
原创 URL中嵌套用户名:密码的问题处理(base64加密的方式)
在添加一个新功能时,发现需要URL中嵌套user name 和passwd时,发现通过普通的方式,获取不到资源,常会被服务器拒绝掉,反馈403信息。通过分析这个url,发现服务器端使用了一个很简单的加密协议。分析发现,使用的是base64位加密,把user and passwd 通过base64加密成一串字符串,然后在request header 上添加上,然后再去请求。就可以获取到资源了。
2016-08-01 10:28:02 7808
转载 [HarfBuzz] HarfBuzz API 设计
说明:Harfbuzz 是一个开源的text opentype layout 引擎,它被应用于很多的开源项目中,如Pango,Filefox,Webkit,android等。这份文档是Harfbuzz 的作者Behdad Esfahbod 完成用于说明新版的harfbuzz (harfbuzz-ng) API 设计思路的。这份文档翻译自harfbuzz的邮件列表。由日期,我
2016-06-14 11:56:23 4019
原创 khmer的显示实现_1
由于工作的需要,分配添加支持柬埔寨语,痛苦的煎熬了一个月,终于把它给整出来了。主要采用开源的代码来实现的。采用了两种:harfbuzz跟freetype。首先:介绍一下harfbuzz
2016-06-12 12:09:24 2133
原创 rtmpdump源代码分析------HandShake
HandShake的流程图:1:握手以客户端发送 C0 和 C1 块开始。2:客户端必须等待接收到 S1 才能发送 C2。3:客户端必须等待接收到 S2 才能发送任何其他数据。4:服务器端必须等待接收到 C0 才能发送 S0 和 S1,也可以等待接收到 C1 再发送 S0 和 S1。服务器端必须等待接收到 C1 才能发送 S2。服务器端必须等待接收到 C2 才能发送任何其他数据。
2016-05-27 17:49:49 4108
原创 嵌入式开发中配置freetype
1:修改添加嵌入式开发板的架构类型:vim ./builds/unix/config.sub如搜索:x86添加你支持的型号类型:我这边是:csky-6622case $basic_machine in # Recognize the basic CPU types without company name. # Some are omitted here because they ha
2016-05-23 13:53:12 1510
原创 嵌入式开发中添加支持harfbuzz-ng所支持的设备
修改这个目录下,添加你所需要支持的设备型号。alen@alen:~/test/harfbuzz/test2/harfbuzz-1.2.7$ vim config.sub ^Ccase $basic_machine in # Recognize the basic CPU types without company name. # Some are omitted here bec
2016-05-23 12:08:53 1676
原创 http以及https请求的连接过程
这个过程是解析http跟https协议时请求的过程,已经获取数据的过程。#define HTTP_COMMON_TIMEOUT 15000BOOL HTTP_DoRequestFunc(char *pcUrl, char *pcRequest, BOOL (* ParseContent)(char *pcSrc, int iSrcLen, void *pcDst, voi
2016-05-22 14:28:20 1669
原创 开发中常用到的一些脚本
在Windows开发中,在batch脚本中常需要获取一个文件中的某个参数的值,我们可以这样处理:@set VERSION_FILE_PATH=../../apps/common_app/userapp/interface.c@sed -n -e 's/#define[ \t]*SW_VERSION_PLAY[ \t]*[\(]*[ \t]*\([0-9]*\)[ \t]*[\)]*.*$/\
2016-05-22 14:17:47 481
原创 工具快捷命令的方式
在linux系统下,想运行程序并且自动拷贝数据到u盘等设备中,只需要使用:while true; do var=$(cat /proc/mounts | grep "/dev/sd" | cut -d ' ' -f 2) if [ "$var" = "" ] then sleep 1s echo -e "\033[31m \033[05m Please insert the u
2016-05-22 14:02:56 435
原创 一些常用的batch命令
最新工作中,需要编写一引起脚本文件,主要是为方便大家使用,尽量做到最简单的一键操作的功能。经过各种调试后,终于完成了功能,并且初步达到了当初的设想。把最常用到的指令贴上来,方便以后需要时,能找到,也方便对有需要的人有所帮助。@set VERSION_FILE_PATH=../../app/common/interface.c@sed -n -e 's/#define[ \t]*SW_VE
2015-08-13 19:48:15 902
原创 测试局域网IP的方法
最近做了一下测试机器WIFI性能的功能,其实,原理非常的简单,我就不在这里介绍了。主要注意点如下:方便以后使用中使用。 主要就是通过tcp/ip通信。然后写了一个小脚本测试了一下: 脚本如下:@for /f "tokens=4" %%a in ('route print^|findstr 0.0.0.0.*0.0.0.0') do (set IP=%%a)@echo %IP%test_net
2015-07-09 22:19:41 601
原创 batch 常用命令的总结
注释常用的方式主要用二种: ::或则REM,其中REM该命令后的内容不被执行,但能回显。打开回显: echo关闭回显: echo off ,@停止: pause复制或者重命名:copy 比如:copy display1.c Display2.c显示当前路径: echo %cd% echo 当前的
2015-06-27 14:07:20 1463
khmer配合harfbuzz与freetype的使用
2017-01-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人