随笔分类 - 实验楼
实验楼里的项目
摘要:变量的定义 makefile中的变量,与C语言中的宏类似,它为一个文本字符串(变量的值,其类型只能是字符串类型)提供了一个名字(变量名)。 变量的基本格式: 变量名 赋值符 变量值 变量名指的就是该变量的名字,是不包括“:”、“#”、“=”、前置空白和尾空白的任何字符串。需要注意的是,尽管在GNU
阅读全文
摘要:makefile工具箱 complicated项目的构建 文件结构如下: 文件内容如下: 项目依赖关系: gcc编译出可执行文件的过程包含了两个过程,编译和链接。 makefile如下: 运行结果:
阅读全文
摘要:Makefile基本概念示例 新建一个Code文件夹来测试一个简单的makefile 目录结构如下: 源码如下: makefile依赖: 一般在编写makefile之前都需要先分析清楚整个工程各个模块的依赖关系,及相应的生成命令。我们的project_simple工程最终生产的是一个叫simple的
阅读全文
摘要:make和makefile makefile文件帮助我们记录了整个项目工程的所有需要编译的文件列表,这样我们在编译时仅需要输入简单的make命令就能编译出我们期望的结果。 makefile文件反映了整个项目中各个模块的依赖关系,这样我们改动了某些源文件以后,仅需简单的输入make命令,make工具就
阅读全文
摘要:创建播放窗口 转化yuv SDL_ SetVideoMode设置具有指定width,height和bitsperpixel的视频模式。从SDL1.2.10开始。如果width和height都为0,他将使用当前视频模式(或桌面模式,如果没有设置模式)的宽度和高度。 现在我们在屏幕上创建一个 YUV 的
阅读全文
摘要:YUV YUV是一种颜色编码方法。 YUV 是编译 true-color 颜色空间(color space)的种类,Y'UV, YUV, YCbCr,YPbPr 等专有名词都可以称为YUV,彼此有重叠。“Y”表示明亮度(Luminance、Luma),“U”和“V”则是色度、浓度(Chrominan
阅读全文
摘要:SDL介绍 SDL(Simple DirectMedia Layer)是一套开放源代码的跨平台多媒体开发库,使用C语言写成。SDL提供了数种控制图像、声音、输出入的函数,让开发者只要用相同或是相似的代码就可以开发出跨多个平台(Linux、Windows、Mac OS X等)的应用软件。目前 SDL
阅读全文
摘要:接下来是解析影片的帧 makefile如下: 运行结果: 完成后有很多ppm文件,可以将ppm转为jpg: 编写一个脚本转化,内容如下: 运行脚本: sh 1.sh 可以在当前文件夹下找到jpgs文件夹下找到所有转化的jpg图片。
阅读全文
摘要:我们将对帧数据做一些处理,比如将每一帧的 图像转为jpg或者bmp或者ppm等格式保存下来。 举例:在ffmpeg-2.8.8文件夹下编写test.c程序 注册ffmpeg库 这会将所有可用的文件格式和编解码器注册到我们的库中,以便在打开具有相应格式/编解码器的文件时自动使用。 注意,我们只需要 a
阅读全文
摘要:ffmpeg 工具是一个高效快速的命令行工具,进行视音频不同格式之间的转换。 ffmpeg命令行 ffmpeg可以读取任意数量的输入“文件”(可以是常规文件,管道,网络流,抓取设备等)读取,由 -i 选项指定,并写入任意数量的输出“文件” (由纯输出文件名指定,在命令行中发现的不能被解释为选项的任何
阅读全文
摘要:该项目相关知识点已经放到“网络嗅探器”标签中 下面是相关头文件 输出颜色定义 暂停或退出的信号处理 数据包 分解打印 主函数 makefile
阅读全文
摘要:一、 简介 ICMP(INTERNET CONTROL MESSAGE PROTOCOL)网络控制消息协议。 协议号为1 ICMP报文在IP报文内部 一、 ICMP类型: ICMP报文主要有两个功能:查询报文和差错报文 二、 ICMP报文头: 一、 ICMP报文的各种状态: 目的不可达报文(Dest
阅读全文
摘要:udphdr结构包含在/usr/src/linux/include/linux/udp.h udphdr->source 16位源端口 udphdr->dest 16位目的端口 udphdr->len 表示此次发送的数据报的长度,16位 udphdr->check 校验和
阅读全文
摘要:包含在/usr/src/linux/include/linux/tcp.h tcphdr->source 16位源端口 tcphdr->dest 16位目的端口 tcphdr->seq 表示此次发送的数据在整个报文段中的起始字节数。序号是32位bit的无符号数。为了安全起见,它的初始值是一个随机生成
阅读全文
摘要:iphdr->version 版本(4位),目前的协议版本号位4,也称之为IPv4 iphdr->ihl 首部长度(4位),首部长度是指IP层头部占32bit字的数目,也就是IP层头部包含多少个4字节(32b),包括任何选项,由于它是一个4bit(最大表示15)字段,因此首部最长位60个字节.普通I
阅读全文
摘要:socket() 函数原型: 参数说明: SOCK_STREAM类型: 提供有序的、可靠的、双向的和基于连接的字节流,使用带外数据传输机制,为Internet地址族使用TCP。 该种类型的套接口为全双向的字节流,对于流类套接口,在接收或发送数前必须处于已连接的状态。 用connect()调用建立与另
阅读全文
摘要:原型: 参数: maxfd:描述需要监视最大文件描述符+1 rdset:监视的可读文件描述符的集合 wrset:监视的可写文件描述符的集合 exset:监视的异常文件描述符的集合 struct timeval:描述一段时间长度,如果在这个时间内,需要监视的描述符没有事件发生,返回0 返回值: 超时返
阅读全文
摘要:标准套接字分为: l 流式套接字(SOCK_STREAM):面向连接的套接字,应用于TCP应用程序。 l 数据包套接字(SOCK_DGRAM):无连接的套接字,应用于UDP应用程序。 原始套接字:是一种对原始网络报文进行处理的套接字,主要用途有: l 发送自定义的IP数据包 l 发送ICMP数据包
阅读全文
摘要:图像隐写算法LSB—Least Significant Bits,又称最不显著位。LSB算法就是将秘密信息嵌入到载体图像像素值得最低有效位,改变这一位置对载体图像的品质影响最小。 原理如下: 以实验用的24位真彩图为例,每个像素用3Byte表示,每Byte分别表示R、G、B三色的亮度,亮度取值范围位
阅读全文
摘要:BMP文件格式,又称为Bitmap(位图),或是DIB(Device-Independent Device,设备无关图),是windows系统中广泛使用的图片文件格式,由于它可以不作任何变换地址保存图像像素域的数据,因为称为我们取得RAW数据的重要来源。Windows的图像用户界面也在他的内建图像子
阅读全文