Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
Z
ZLMediaKit
概览
Overview
Details
Activity
Cycle Analytics
版本库
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
问题
0
Issues
0
列表
Board
标记
里程碑
合并请求
0
Merge Requests
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
Snippets
成员
Collapse sidebar
Close sidebar
活动
图像
聊天
创建新问题
作业
提交
Issue Boards
Open sidebar
张翔宇
ZLMediaKit
Commits
5b57b9d6
Commit
5b57b9d6
authored
3 years ago
by
xiongziliang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
确保rtc播放不强引用rtsp直播源
parent
44b0e13b
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
11 行增加
和
2 行删除
+11
-2
webrtc/WebRtcTransport.cpp
+11
-2
没有找到文件。
webrtc/WebRtcTransport.cpp
查看文件 @
5b57b9d6
...
...
@@ -344,7 +344,7 @@ void WebRtcTransportImp::onDestory() {
//流量统计事件广播
GET_CONFIG
(
uint32_t
,
iFlowThreshold
,
General
::
kFlowThreshold
);
if
(
_
play_src
)
{
if
(
_
reader
)
{
WarnL
<<
"RTC播放器("
<<
_media_info
.
_vhost
<<
"/"
<<
_media_info
.
_app
<<
"/"
...
...
@@ -457,6 +457,13 @@ void WebRtcTransportImp::onStartWebRTC() {
strongSelf
->
onSendRtp
(
rtp
,
++
i
==
pkt
->
size
());
});
});
_reader
->
setDetachCB
([
weak_self
](){
auto
strongSelf
=
weak_self
.
lock
();
if
(
!
strongSelf
)
{
return
;
}
strongSelf
->
onShutdown
(
SockException
(
Err_eof
,
"rtsp ring buffer detached"
));
});
RtcSession
rtsp_send_sdp
;
rtsp_send_sdp
.
loadFrom
(
_play_src
->
getSdp
(),
false
);
...
...
@@ -473,6 +480,8 @@ void WebRtcTransportImp::onStartWebRTC() {
}
}
}
//使用完毕后,释放强引用,这样确保推流器断开后能及时注销媒体
_play_src
=
nullptr
;
}
void
WebRtcTransportImp
::
onCheckSdp
(
SdpType
type
,
RtcSession
&
sdp
){
...
...
@@ -849,7 +858,7 @@ void WebRtcTransportImp::onBeforeEncryptRtp(const char *buf, size_t &len, void *
}
void
WebRtcTransportImp
::
onShutdown
(
const
SockException
&
ex
){
Info
L
<<
ex
.
what
();
Warn
L
<<
ex
.
what
();
_self
=
nullptr
;
}
...
...
This diff is collapsed.
Click to expand it.
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论