C
文章平均质量分 91
mengzhengjie
这个作者很懒,什么都没留下…
展开
-
用TCP穿透NAT(TCP打洞)的实现
https://www.cnblogs.com/lidabo/p/7567989.html1. TCP穿透原理: 我们假设在两个不同的局域网后面分别有2台客户机A和 B,AB所在的局域网都分别通过一个路由器接入互联网。互联网上有一台服务器S。 现在AB是无法直接和对方发送信息的,AB都不知道对方在互联网上真正的IP和端口, AB所在的局域网的路由器只允许内部向外主动发送的信息通过。对于B直接发送给A的路由器的消息,路由会认为其“不被信任”而直接丢弃。 要实现 AB直接的通讯...转载 2021-07-15 14:43:26 · 3845 阅读 · 1 评论 -
内网穿透 TCP打洞 C语言实现
https://blog.csdn.net/soralaro/article/details/86696349内网穿透 TCP打洞 C语言实现时间2017-03-29标签socketc语言打洞穿透栏目系统网络原文http://blog.csdn.net/wuzuyu365/article/details/68068133上篇文章中做了UDP打洞,这篇当然就会是TCP打洞了,两个处于不同内网的两台机器如何通过TCP/IP协议进行链接通讯呢?这其实跟UDP打洞...转载 2021-03-31 09:41:27 · 782 阅读 · 0 评论 -
recv函数返回值总结
https://blog.csdn.net/HQ354974212/article/details/76077635函数原型:int recv( SOCKET s, char *buf, int len, int flags)功能:不论是客户还是服务器应用程序都用recv函数从TCP连接的另一端接收数据。参数一:指定接收端套接字描述符;参数二:指明一个缓冲区,该缓冲区用来存放re...转载 2019-04-03 15:03:31 · 821 阅读 · 0 评论 -
linux c之信号signal处理机制
https://blog.csdn.net/u011068702/article/details/54602566最近同事的程序设计过程中用到了Linux的signal机制,从而引发了我对Linux中signal机制的思考。Signal机制在Linux中是一个非常常用的进程间通信机制,很多人在使用的时候不会考虑该机制是具体如何实现的。signal机制可以被理解成进程的软中断,因此,在实时性方面...转载 2018-08-24 10:39:49 · 332 阅读 · 0 评论 -
位运算小结(按位与、按位或、按位异或、取反、左移、右移)
位运算小结(按位与、按位或、按位异或、取反、左移、右移)位运算不管是在Java语言,还是在C语言中,或者其他语言,都是经常会用到的,所以本文也就不固定以某种语言来举例子了,原始点就从0、1开始。位运算主要包括按位与(&)、按位或(|)、按位异或(^)、取反(~)、左移(<<)、右移(>>)这几种,其中除了取反(~)以外,其他的都是二目运算符,即要求运算符左右两侧均有...转载 2018-06-07 16:33:05 · 35888 阅读 · 4 评论 -
AAC的ADTS头文件信息介绍
https://blog.csdn.net/jay100500/article/details/52955232遵循:BY-SA署名-相同方式共享 4.0协议作者:谭东时间:2016年10月28日环境:Windows 7ADTS是Audio Data Transport Stream的简称。是AAC音频文件常见的传输格式。有的时候当你编码AAC裸流的时候,会遇到写出来的AAC文件并不能在PC和手机...转载 2018-05-30 17:27:55 · 320 阅读 · 0 评论 -
位(bit)、字节(Byte)、MB(兆位) bit、Byte、bps、Bps、pps、Gbps的单位详细说明及换算
https://blog.csdn.net/euxnijuoh/article/details/53502577B是Byte的缩写,B就是Byte,也就是字节(Byte);b是bit的缩写,b就是bit,也就是比特位(bit)。B与b不同,注意区分,KB是千字节,Kb是千比特位。 1MB(兆字节)=1024KB(千字节)=1024*1024B(字节)=1048576B(字节); 8bit(比特...转载 2018-05-30 17:04:35 · 25883 阅读 · 0 评论 -
char[][]转换成一个unsigned char*
http://www.myexception.cn/c/357072.html求教如何将char[][]转换成一个unsigned char*?有如下定义unsigned char* dest;char src[100][100];我想把src放到dest里,用如下办法貌似不行memcpy(dest,src,sizeof(src));程序会一直停在这里,也不退出。环境为unix或者LINUX---...转载 2018-05-29 18:03:25 · 3040 阅读 · 0 评论 -
C 字符串删除指定字符,比如删除字符串中的空格
http://blog.chinaunix.net/uid-9234131-id-3575486.htmlC 字符串删除指定字符,比如删除字符串中的空格 分类: C/C++2013-04-09 22:37:09由于最近在找工作,在一个笔试的题要求删除字符串中中所有的空格,比如原数组char array[转载 2018-03-28 14:20:36 · 7970 阅读 · 1 评论 -
一个Linux下C线程池的实现(转)
http://blog.csdn.net/hubi0952/article/details/80450941.线程池基本原理 在传统服务器结构中, 常是 有一个总的 监听线程监听有没有新的用户连接服务器, 每当有一个新的 用户进入, 服务器就开启一个新的线程用户处理这 个用户的数据包。这个线程只服务于这个用户 , 当 用户与服务器端关闭连接以后, 服务器端销毁这个转载 2018-03-21 17:37:12 · 178 阅读 · 0 评论 -
Linux C Socket编程原理及简单实例
http://www.cnblogs.com/xudong-bupt/archive/2013/12/29/3483059.html部分转自:http://goodcandle.cnblogs.com/archive/2005/12/10/294652.aspx1. 什么是TCP/IP、UDP?2. Socket在哪里呢?3. Socket是什么呢?4.转载 2016-04-20 17:28:58 · 647 阅读 · 0 评论 -
pthread_create(linux下C语言多线程)
http://www.xuebuyuan.com/1225521.html下面先来一个实例。我们通过创建两个线程来实现对一个数的递加。或许这个实例没有实际运用的价值,但是稍微改动一下,我们就可以用到其他地方去拉。下面是我们的代码:/*thread_example.c : c multiple thread programming in lin转载 2016-05-17 18:06:59 · 910 阅读 · 0 评论 -
Linux C 字符串操作的基本使用
http://www.360doc.com/content/12/0309/15/8500224_193018975.shtml所属头文件:0、获取字符串长度:int strlen(char *s)int strlen(char *s)函数说明:此函数用于获取s的长度,不包括'\0'注:切记最好保证s的尾部是'\0',strlen函数转载 2016-04-22 15:43:23 · 650 阅读 · 0 评论 -
LINUX 多线程 及为结构体malloc内存 线程专递 堆结构体
http://blog.csdn.net/qustdjx/article/details/7710526http://zhidao.baidu.com/link?url=z28sq8AVNHpcZ3Jo2XmxipNUKVAwNXb6RtlCErwep734uNbdD2Y0Um3gS6Q8tZWbBDjs9ZoxDWhWZj4p5FK3JNVb9dQFkU7glSpe3XBuSPW转载 2016-05-18 17:57:03 · 1164 阅读 · 0 评论 -
G711转AAC
http://blog.csdn.net/doitsjz/article/details/50002153在嵌入式系统中 ,因资源限制,一般音频采用G711压缩编码,但在上层应用中却很少直接支持G711,一般都市WMA,AAC,MP3等。如视频系统 存储文件采用MP4格式存储 就不直接支持 G711,故需要转换成 AAC,普通播放器才能播放 。分为2步1转载 2017-07-11 11:28:04 · 2517 阅读 · 0 评论 -
【基于libRTMP的流媒体直播之 AAC、H264 推送】
http://billhoo.blog.51cto.com/2337751/1557646/标签:FLV 直播 H264 RTMP AAC原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://billhoo.blog.51cto.com/2337751/1557646 这段时间在捣腾基转载 2017-07-24 17:14:16 · 302 阅读 · 0 评论 -
直播推流实现RTMP协议的一些注意事项
http://www.jianshu.com/p/00aceabce944?nomobile=yes—— 2017-2-12 更新RTMP 协议整理了一下,包括rtmp 消息类型,rtmp 如何分块,rtmp分块例子。 用脑图整理了一下,使用Xmind 打开,URL:https://github.com/gezhaoyou/RtmpMindmaprt转载 2017-07-24 17:41:49 · 1031 阅读 · 0 评论 -
rtmp 推送h264 + aac 的数据
http://blog.csdn.net/keepingstudying/article/details/42293875相关源码下载:http://download.csdn.NET/detail/keepingstudying/8340431需要libfaac,librtmp 的支持,1、帧的划分1.1 H.264帧转载 2017-07-25 18:07:47 · 477 阅读 · 0 评论 -
RTP视频传输播放延时(时间戳)
http://blog.csdn.net/ljz9425/article/details/7627949开发板OK6410+视频采集+wifi+VLC 视频传输采用RTP,实时传输视频,服务器端使用vlc播放,刚开始有3秒延时,播放时间越长延时越长,5分钟后竟达到10秒以后,分析代码,可能是时间戳造成,原时间代码部分:timestamp_increse+转载 2017-07-28 13:55:16 · 658 阅读 · 0 评论 -
BCD码简介及其与十进制数字字符串之间的转换
http://blog.csdn.net/zhouzhaoxiong1227/article/details/72835750大家都知道在计算机中,数据的常用编码格式有二进制、八进制、十进制和十六进制等,这些编码格式之间可以相互转换。在电力通信协议中,很多数据都是用BCD格式来编码的,这些数据需要转换为普通的十进制数字串。本文首先对BCD码进行简单的介绍,然后用代码演示它与转载 2017-12-07 18:00:49 · 633 阅读 · 0 评论 -
Linux下c语言实验Websocket通讯 含客户端和服务器测试代码
http://blog.csdn.net/sguniver_22/article/details/74273839Websocket是一种可双向通讯的网络协议,其底层的数据收发是基于socket的,所以使用c语言来实现理论上是没有问题的,主要难点在于协议中要求对个别数据进行加密处理,这些加密方法(库)在java、c#等专门开发web的平台中都是自带的API(随调随到),而在转载 2018-01-15 18:46:28 · 1136 阅读 · 0 评论 -
Linux下c语言实验Websocket通讯 含客户端和服务器测试代码
http://blog.csdn.net/sguniver_22/article/details/74273839Websocket是一种可双向通讯的网络协议,其底层的数据收发是基于socket的,所以使用c语言来实现理论上是没有问题的,主要难点在于协议中要求对个别数据进行加密处理,这些加密方法(库)在java、c#等专门开发web的平台中都是自带的API(随调随到),而在用到c语言时则苦转载 2018-01-16 17:02:05 · 6912 阅读 · 4 评论 -
用 Nginx 实现 https 转 http
http://blog.csdn.net/lvye1221/article/details/53843607缘由当前公司服务器已经采用 http 协议的方式部署成功,可 App Store 要求必须采用 https 协议,那么,能否在不改变公司服务器代码的情况下,实现 https 的要求呢?答案是肯定的,采用 Nginx 反向代理实现(以代理服务器来接受in转载 2018-03-07 18:26:16 · 1160 阅读 · 0 评论 -
使用nginx解决一台服务器中ws协议与wss协议共存问题 2017-07-09 13:29:06
https://www.worldflying.cn/article-id-13.htmlhttps://tieba.baidu.com/p/5213484390?red_tag=0009614627使用nginx解决一台服务器中ws协议与wss协议共存问题2017-07-09 13:29:06 众所周知,nginx是一个高性能的web静态服务器,同时具有很强大的反向代理以及fast...转载 2018-03-08 10:05:16 · 1021 阅读 · 0 评论 -
高效线程池之无锁化实现(Linux C)
http://blog.csdn.net/xhjcehust/article/details/45844901笔者之前照着通用写法练手写过一个小的线程池版本,最近几天复习了一下,发现大多数线程池实现都离不开锁的使用,如互斥量pthread_mutex*结合条件变量pthread_cond*。众所周知,锁的使用对于程序性能影响较大,虽然现有的pthread_mutex*在锁的转载 2018-03-15 18:08:23 · 996 阅读 · 0 评论 -
Linux + C + Epoll实现高并发服务器(线程池 + 数据库连接池)
http://blog.csdn.net/wuyuxing24/article/details/48758927一, 背景 先说下我要实现的功能,server端一直在linux平台下面跑,当客户端有请求过来的时候server端接受到请求,拿到客户端的数据,根据拿到的数据做出相应的处理,得到处理的结果直接把结果数据发送给客户端。这样一个连接的请求结束,我的转载 2018-03-15 18:17:25 · 559 阅读 · 0 评论 -
linux下高并发服务器实现
http://blog.csdn.net/wwb456/article/details/70649548在做网络服务的时候tcp并发服务端程序的编写必不可少。tcp并发通常有几种固定的设计模式套路,他们各有优点,也各有应用之处。下面就简单的讨论下这几种模式的差异:单进程,单线程在accept之后,就开始在这一个连接连接上的数据收接收,收到之后处理,发送,不再转载 2018-03-16 09:41:35 · 2067 阅读 · 0 评论 -
C 结构体小结
http://www.cnblogs.com/ligongzi/archive/2012/08/24/2654448.html看了三天结构体,是时候总结一下了。 关于结构体的声明: struct Student{ char name[20]; char sex; int age; char addr[40];};/*转载 2016-04-19 16:19:33 · 375 阅读 · 0 评论