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
d0fc37db
Commit
d0fc37db
authored
4 years ago
by
xiongziliang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修复FFmpeg推流给第三方服务器时不重试的bug
parent
20e8e1d7
显示空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
13 行增加
和
1 行删除
+13
-1
server/FFmpegSource.cpp
+13
-1
没有找到文件。
server/FFmpegSource.cpp
查看文件 @
d0fc37db
...
...
@@ -196,7 +196,19 @@ void FFmpegSource::startTimer(int timeout_ms) {
//推流给其他服务器的,我们通过判断FFmpeg进程是否在线,如果FFmpeg推流中断,那么它应该会自动退出
if
(
!
strongSelf
->
_process
.
wait
(
false
))
{
//ffmpeg不在线,重新拉流
strongSelf
->
play
(
strongSelf
->
_src_url
,
strongSelf
->
_dst_url
,
timeout_ms
,
[](
const
SockException
&
)
{});
strongSelf
->
play
(
strongSelf
->
_src_url
,
strongSelf
->
_dst_url
,
timeout_ms
,
[
weakSelf
](
const
SockException
&
ex
)
{
if
(
!
ex
){
//没有错误
return
;
}
auto
strongSelf
=
weakSelf
.
lock
();
if
(
!
strongSelf
)
{
//自身已经销毁
return
;
}
//上次重试时间超过10秒,那么再重试FFmpeg拉流
strongSelf
->
startTimer
(
10
*
1000
);
});
}
}
return
true
;
...
...
This diff is collapsed.
Click to expand it.
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论