首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Loken1
掘友等级
音视频开发工程师
|
弦外之音
《FFmpeg原理》一书作者
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
358
文章 358
沸点 0
赞
358
返回
|
搜索文章
Loken1
关注了
zxbing
音视频开发工程师 @弦外之音
Loken1
音视频开发工程师 @弦外之音
·
2月前
关注
我年轻时候的模样,那年我19岁
我不是一个喜欢回头看的人,星光不问赶路人,我也从来不看星光。但是这几年我的心态发生了一些变化,想写一点文章记录一下自己年轻时候的模样。...
赞
3
分享
Loken1
音视频开发工程师 @弦外之音
·
3月前
关注
SRS的混合服务SrsHybridServer—SRS源码分析
SrsHybridServer 顾名思义,就是混合服务,目前他里面有 3 个 Server 服务,分别是 Server,SrtServer,RtcServer,如下: 全局...
赞
评论
分享
Loken1
音视频开发工程师 @弦外之音
·
3月前
关注
SRS的定时器模块SrsFastTimer—SRS源码分析
SRS 的定时器是 SrsFastTimer,它跟 SrsSignalManager 类似,也是继承的 ISrsCoroutineHandler,所以他也是一个 Handl...
赞
评论
分享
Loken1
音视频开发工程师 @弦外之音
·
3月前
关注
SRS的信号处理模块SrsSignalManager—SRS源码分析
SrsSignalManager 就是 SRS 的信号处理模块,他的主要逻辑是把 信号事件 转换成 IO 事件,这样就能用协程来处理了。关于 信号 转 IO 可以阅读之前的...
赞
评论
分享
Loken1
音视频开发工程师 @弦外之音
·
3月前
关注
SRS的线程池介绍SrsThreadPool—SRS源码分析
SRS 里面跟线程池相关的数据结构是 SrsThreadPool、SrsThreadEntry,他们的关系如下: 刚开始看这个这个结构的时候,我以为 SRS 的线程池的设计...
赞
评论
分享
Loken1
音视频开发工程师 @弦外之音
·
3月前
关注
SRS的协程ID-SrsContextId—SRS源码分析
SRS 给每个协程都赋予了一个 ID(SrsContextId),由于 SRS 每处理一个 RTMP 客户端连接,都使用一个协程,所以这个 ID 也可以理解为 连接ID,连...
赞
评论
分享
Loken1
音视频开发工程师 @弦外之音
·
3月前
关注
SRS对StateThreads的封装—SRS源码分析
SRS 对 StateThreads 的封装都在 srs_app_st.hpp、srs_app_st.cpp 里面,这个文件里面的 class 类结构之间的关系如下: Sr...
赞
评论
分享
Loken1
音视频开发工程师 @弦外之音
·
3月前
关注
SRS的错误处理SrsCplxError—SRS源码分析
SrsCplxError 是 SRS 的错误处理类,可以发现,大部分函数,它的返回值都是 SrsCplxError 结构的,如下: srs_error_t 是 SrsCpl...
赞
评论
分享
Loken1
音视频开发工程师 @弦外之音
·
3月前
关注
SRS的日志文件模块SrsFileLog—SRS源码分析
关于 SRS 日志的基本介绍以及 切割等功能,请阅读 SRS 官方文档《日志》与《日志切割》。本文主要讲解 SRS 日志模块的代码实现。 SRS 日志模块的实现类是 Srs...
赞
评论
分享
Loken1
音视频开发工程师 @弦外之音
·
3月前
关注
SRS的配置文件模块SrsConfig—SRS源码分析
SrsConfig 不只是解析配置文件,同时负责解析命令行的参数。解析命令行参数的函数是 parse_options() 与 parse_argv(),如下: 命令行参数的...
赞
评论
分享
Loken1
音视频开发工程师 @弦外之音
·
3月前
关注
SRS的启动过程main—SRS源码分析
阅读开源项目的代码,有一些技巧与经验分享给大家。 1,首先不要从头文件一个一个看,想一下子把所有变量的含义都搞明白。我以前也用这个方式,后来发现效率太低。变量的含义跟作用应...
赞
评论
分享
Loken1
音视频开发工程师 @弦外之音
·
3月前
关注
SRS的编译过程分析configure—SRS源码分析
SRS 的 configure 只有 800 行,相对于 FFmpeg 的 8000 行 configure,还是比较简单的,他的主要流程如下: 本文主要提取一些重点来讲解...
赞
评论
分享
Loken1
音视频开发工程师 @弦外之音
·
3月前
关注
SRS对StateThreads的多线程改造—SRS对StateThreads的改进与完善
在前面《StateThread为什么不支持多线程》一文中,讲解了为什么 StateThreads 不支持多线程,要利用 CPU 多核,只能用 fork 开多进程。 实际上就...
2
1
分享
Loken1
音视频开发工程师 @弦外之音
·
3月前
关注
使用Valgrind检查StateThreads内存泄漏—SRS对StateThreads的改进与完善
这个 patch 其实是 toffaletti 贡献的,SRS 把他合并过来了,整个 commit 其实很小,我们可以直接手动把它复制过 st-1.9 项目里面的。 复制完...
2
评论
分享
Loken1
音视频开发工程师 @弦外之音
·
3月前
关注
srs.py调试脚本介绍—SRS对StateThreads的改进与完善
前面《如何查看协程相关信息》,已经介绍了如何查看协程数量,遍历协程,通过 EBP 寄存器去查看协程的函数调用层级。不过这样手敲命令,还是比较麻烦。有没一种更自动化一点的方法...
赞
评论
分享
Loken1
音视频开发工程师 @弦外之音
·
3月前
关注
StateThreads对RISCV、龙芯等CPU架构的支持—SRS对StateThreads的改进与完善
让 StateThreads 支持新的 CPU 架构,只需要实现下面 3 个函数就行了。 MD_SETJMP,保存函数上下文 MD_GET_SP,获取函数的 SP 寄存器,...
赞
评论
分享
Loken1
音视频开发工程师 @弦外之音
·
3月前
关注
自定义jmpbuf结构—SRS对StateThreads的改进与完善
jmpbuf 的全称其实是 jump buffer,存储的是 longjump 函数所需要的信息。也就是协程的上下文。由于 jmpbuf 在不同的平台内部实现不一样,而且如...
赞
评论
分享
Loken1
音视频开发工程师 @弦外之音
·
3月前
关注
ST协程切换回调介绍—StateThreads协程源码分析
StateThreads 提供了一个协程切换回调功能,当切走 协程的时候 会执行 _st_this_vp.switch_out_cb() 函数,到恢复协程的时候 会执行 _...
赞
评论
分享
Loken1
音视频开发工程师 @弦外之音
·
3月前
关注
st_thread_join协程间通信介绍—StateThreads基础函数介绍
在进行多线程编程的时候,我们通常会使用 pthread_join() 函数来等待一个线程的结束。StateThread 也为我们提供了一个 st_thread_join()...
赞
评论
分享
下一页
个人成就
文章被点赞
794
文章被阅读
112,155
掘力值
4,771
关注了
12
关注者
185
收藏集
0
关注标签
2
加入于
2022-01-06