弦外之音

好消息:《SRS原理》一书荣获官方推荐,访问地址:https://srs.xianwaizhiyin.net

《SRS原理》上架了,深度剖析 SRS 源代码,访问地址:srs.xianwaizhiyin.net 本文采用的 SRS 版本是 4.0-b8 , 下载地址:github 本文讲解 SrsRtmpConn::stream_service_cycle() 函数的实现原理。流程图如下: ...

发布 0 条评论

《SRS原理》上架了,深度剖析 SRS 源代码,访问地址:srs.xianwaizhiyin.net 本文采用的 SRS 版本是 4.0-b8 , 下载地址:github 本文讲解 SrsRtmpConn::cycle() 函数的实现原理。流程图如下: google_ads_...

发布 0 条评论

《SRS原理》上架了,深度剖析 SRS 源代码,访问地址:srs.xianwaizhiyin.net 本文采用的 SRS 版本是 4.0-b8 , 下载地址:github 《SRS4.0源码分析-RTMP入口》 讲解了 建立 RTMP 的入口是在 SrsServer::fd_to_resource...

发布 0 条评论

《SRS原理》上架了,深度剖析 SRS 源代码,访问地址:srs.xianwaizhiyin.net 本文采用的 SRS 版本是 4.0-b8 , 下载地址:github 上篇文章 《SRS4.0源码分析-main》 讲解了 SRS main 函数的基本流程,但是可能有些朋友...

发布 0 条评论

《SRS原理》上架了,深度剖析 SRS 源代码,访问地址:srs.xianwaizhiyin.net 本文采用的 SRS 版本是 4.0-b8 , 下载地址:github 本文开始讲解 SRS 的入口文件。SRS 源码里 其实有 3 个 main() 函数,分别在 srs_main_...

发布 0 条评论

core dump又叫核心转储, 当程序运行过程中发生异常, 程序异常退出时, 由操作系统把程序当前的内存状况存储在一个core文件中, 叫core dump. (linux中如果内存越界会收到SIGSEGV信号,然后就会core dump) 之前说过 ST 协程的栈...

发布 0 条评论

本文主要讲解 GDB 的调试技巧。 1,backtrace backtrace 命令可以查看当前函数的调用栈,代码如下: #include <stdio.h> void print_a(); void print_b(); void print_c(); void print_a(void* arg) { prin...

发布 0 条评论

《ST源码分析-st_thread_create》跟 《ST源码分析-内存保护》两篇文章,讲解了,协程函数的栈内存就是下图的区域,如下: google_ads_content 下面就来验证一下协程函数的局部变量是不是真的存储到这块内存区域。...

发布 0 条评论

st_thread_create() 创建协程的时候,会调 _st_stack_new() 来申请一块内存,_st_stack_new() 里面额外申请了 2*REDZONE 的内存,在我的电脑上 一个 REDZONE 是 4096 字节。这个 两个 REDZONE 是一个在栈顶,一个在栈底。 ,如下...

发布 0 条评论

《SRS原理》上架了,深度剖析 SRS 源代码,访问地址:srs.xianwaizhiyin.net 本文采用的 SRS 版本是 4.0-b8 , 下载地址:github 由于 SRS 主要使用的 是 state-thread 协程库,这个库是 8年前的, 《state-thread 官...

发布 0 条评论