素材巴巴 > 程序开发 >

Nginx rtmp 推流(publish) 解析

程序开发 2023-09-15 13:11:03

系列文章:
Nginx rtmp 拉流播放(play)_fdsafwagdagadg6576的专栏-CSDN博客
Nginx rtmp 拉流(转发pull)_fdsafwagdagadg6576的专栏-CSDN博客
Nginx rtmp 转推_fdsafwagdagadg6576的专栏-CSDN博客
Nginx rtmp 点播流程_fdsafwagdagadg6576的专栏-CSDN博客 

1 整体结构图:

send streaming

先建立信令,然后接收媒体

2 流程图

3 阶段

4 源码分析:

ngx_rtmp_relay_publish(ngx_rtmp_session_t *s, ngx_rtmp_publish_t *v)

s->relay  

	//b) //s->relay无论是转推还是relay ;init is 0,转推,relay 一次之后变成1.直接nextif (ctx && s->relay) {goto next;}

接收流媒体 

	/*从ngx_rtmp_relay_create_local_ctx函数返回后,就一直返回到ngx_rtmp_relay_publish函数中.接着执行 next_publish的下一个函数.这里为 ngx_rtmp_live_publish。*///因为是next,所以不是ngx_rtmp_relay_publish,而是 ngx_rtmp_live_publish(relay先于live)//ngx_rtmp_live_publish;ngx_rtmp_live_join as publishreturn next_publish(s, v);

如果对您有所帮助,请随手点赞,谢谢


标签:

上一篇: vscode远程调试配置args参数 下一篇:
素材巴巴 Copyright © 2013-2021 http://www.sucaibaba.com/. Some Rights Reserved. 备案号:备案中。