加载中
rtmp中flv和flv文件的区别

rtmp中flv: * 当format为0时,rtmp的header为12字节,其中3字节表示timestamp,3字节表示body size,即rtmp单个包的长度。 * 当format为1时,rtmp的header为8字节(没有4字节的stream id),其...

07/11 14:35
70
nginx-rtmp: connect过程

客户端和服务器经过三次握手后,执行函数ngx_rtmp_cycle()。 首先执行函数ngx_rtmp_cycle() void ngx_rtmp_cycle(ngx_rtmp_session_t *s) { ngx_connection_t *c; c = s...

2017/08/30 15:15
93
linux进程通信:管道(pipe)

man 7 pipe PIPE(7) Linux Programmer’s Manual PIPE(7) NAME pipe - overview of pipes and FIFOs DESCRIPTION Pipes and FIFOs ...

2017/08/14 16:52
27
nginx中平滑升级:ngx_add_inherited_sockets

平滑升级取决于环境变量NGINX_VAR ngx_pid_t ngx_exec_new_binary(ngx_cycle_t *cycle, char *const *argv) { char **env, *var; u_char *p; ngx_uint_t...

2017/08/11 14:44
39
nginx配置项NGX_DIRECT_CONF,NGX_MAIN_CONF和NGX_ANY_CONF

Nginx配置指令类型 1、NGX_DIRECT_CONF: 所有NGX_DIRECT_CONF都是和NGX_MAIN_CONF同时出现的。NGX_DIRECT_CONF表示,配置文件对应的结构已经创建。对应NGX_CORE_MODULE类型的模块,且模块n...

2017/08/09 17:06
86
nginx的结构体 ngx_conf_t

ngx_conf_t 该结构体用于Nginx在解析配置文件时描述每个指令的属性。 struct ngx_conf_s { char *name; ngx_array_t *args; ngx_cycle_t *c...

2017/08/09 15:13
187
environ: linux环境变量指针数组

environ它是一个字符指针数组,其中每个指针包含一个以NULL结尾的字符串的地址。全局变量environ则包含了该指针数组的地址。 通过函数打印environ内容 #include <stdio.h> #include <stdlib....

2017/08/08 14:51
121
ngx_log_init 分析

ngx_log_init() 初始化ngx_log,设置日志级别ngx_log.log_level,并得到日志的文件句柄ngx_log_file.fd。 结构体ngx_log_t static ngx_log_t ngx_log; struct ngx_log_s { ngx_...

2017/08/08 13:45
22
nginx中的几个主要结构体:ngx_cycle_t,ngx_listening_t,ngx_connection_t和ngx_peer_connection_t

摘自《Nginx模块开发与架构解析》 1. ngx_cycle_t Nginx框架是围绕着ngx_cycle_t结构体来控制进程运行。 //我们来看一看这神奇的ngx_cycle_s结构体吧,看一看庐山真面目. struct ngx_cycle_...

2017/08/07 18:17
146
rtmp Chunk stream ID 说明

Chunk basic header: chunk basic head的长度为1~3个字节,具体长度主要是依赖chunk stream ID的长度,所谓chunk stream ID是flash server用来管理连接的客户端的信令交互的标识,协议最大支...

2017/08/04 15:24
126
C++ 继承和动态内存分配

摘自《c++ Primer Plus》第6版 13.7 如果基类使用的动态内存分配,并重新定义了赋值和复制构造函数,这将怎样影响派生类的实现? 情况1:派生类不使用new 假设基类在构造函数中使用new,析构...

c++
2017/08/03 10:55
17
c++ virtual

摘自《C++ Primer Plus》第6版13.3 C++ Virtual 示例: #include<string> class Brass { private: std::string fullName; long acctNum; double balance; ...

c++
2017/08/02 18:50
10
c++浅拷贝和深拷贝

摘自《C++ Primer Plus》第6版 12.1.2和12.1.3 c++浅拷贝和深拷贝 浅拷贝只是对指针的拷贝,拷贝后两个指针指向同一个内存空间,深拷贝不但对指针进行拷贝,而且对指针指向的内容进行拷贝,经...

c++
2017/08/02 16:52
4
C++类构造函数初始化列表

摘自《C++ Primer Plus》第6版12.7.1 类声明 class Quene { private: struct Node { int item; struct Node * next; }; enum { Q_SIZE = 10}; Node ...

c++
2017/08/02 15:28
11
c++泛型编程

c++泛型编程 摘自《c++ Primer Plus》第6版16.4 泛型编程最初诞生于C++中,由Alexander Stepanov和David Musser创立。目的是为了实现C++的STL(标准模板库)。其语言支持机制就是模板(Templ...

c++
2017/08/01 16:52
9
c++友元

c++友元 参考《c++ Primer Plus》 第6版15.1 C++控制对类对象私有部分的访问,在外部无法直接访问类的私有或保护成员。通常,公有类方法提供唯一的访问途径。有时这种限制太严格,不适合特定...

c++
2017/08/01 13:39
9
c和c++主要区别

摘选自《C++ Primer Plus》第6版 c和c++主要区别 根据书中的描述,进行了整理 1、 源代码文件的扩展名 摘自1.4.1 C++实现 源代码文件的扩展名 UNIX C、cc、cxx、c GNU C++ C、cc、cxx、cpp、...

c++
2017/07/31 15:40
31
指针数组和数组指针

指针数组:array of pointers,即用于存储指针的数组,也就是数组元素都是指针 数组指针:a pointer to an array,即指向数组的指针,也称为行指针,返回值为指针。 指针数组: #include <io...

c++
2017/07/28 17:45
10
ifelse 测试-C++ Primer Plus

该书中有一个好玩的打印 case 1: #include <iostream> int main() { char ch; std::cout << "Type, and I shall repeat.\n"; std::cin.get(ch); wh...

c++
2017/07/28 09:54
2
不同播放器在播放rtmp直播流时结束播放的不同行为

cutv播放直播流,结束播放时,发送closeStream ffmpeg拉直播流,结束拉流时,发送deleteStream: vlc播放后,点击停止播放时,不发送上面任意两条指令,只发送TCP 【RST,ACK】 vlc播放后,点...

2017/07/12 18:07
82

没有更多内容

加载失败,请刷新页面

返回顶部
顶部