Commit Graph

360 Commits

Author SHA1 Message Date
xiongziliang
974428d1e7 确保获取丢包率时线程安全 2022-06-11 14:40:14 +08:00
xiongziliang
09af12a183 操作MediaSource对象时确保线程安全 2022-06-11 14:17:43 +08:00
Leon
be995f9cd2 !17 【功能请求】 /index/api/getMediaList接口 增加LOSS字段用于统计每个轨道丢包率反馈
* update webrtc/WebRtcPusher.h.
* update webrtc/WebRtcPusher.cpp.
* update webrtc/WebRtcTransport.h.
* update webrtc/WebRtcTransport.cpp.
* update src/Common/MediaSource.h.
* update src/Common/MediaSource.cpp.
* update server/WebApi.cpp.
2022-06-11 04:31:06 +00:00
xiongziliang
b23cbaa0f8 on_publish hook新增continue_push_ms参数,用于断连续推延时控制 2022-06-04 11:06:35 +08:00
xiongziliang
b0beea7781 修复笔误 2022-05-30 12:44:11 +08:00
xiongziliang
fd52ba31b0 忽略SIGHUP信号 2022-05-29 21:44:53 +08:00
xiongziliang
a11289e5f0 集群模式,溯源重试改成最大3次: #1663 2022-05-28 09:52:31 +08:00
夏楚
e2908e9775
cmake构建时自动生成mk_export头文件,解决msvc链接设备问题 (#1660)
* 解决msvc下链接问题
* CMAKE添加自动生成mk api export头文件
* 兼容非cmake构建时情况

Co-authored-by: baiyfcu <baiyfcu@gmail.com>
2022-05-26 20:30:43 +08:00
xiongziliang
8231c5c293 新增GB28181 tcp passive被动发送接口(startSendRtpPassive) 2022-05-14 23:25:22 +08:00
ziyue
3062ea0e7c 初步支持ipv6: #576, #1406 2022-05-07 20:06:08 +08:00
ziyue
200a193c04 openRtpServer新增ssrc参数修改为追加至函数末尾, 确保代码逻辑一致无歧义: #1572 2022-04-28 17:44:35 +08:00
xiongziliang
5e729d6153 溯源集群模式支持边沿服务器选择开启转hls: #1588 2022-04-23 18:40:20 +08:00
wangcker
e712639e33
openrtpserver接口新增ssrc参数,强制过滤不属于本端口的视频流,以解决视频串流问题 (#1572) 2022-04-16 15:12:49 +08:00
xiongziliang
e065b1dfba 子进程重启失败时,不应通知守护进程退出,确保子进程重启成功 2022-04-09 21:02:54 +08:00
xiongziliang
c334dcfd38 Revert "子进程重启失败时,不断重试,避免重启失败 (#1545)"
This reverts commit 471a8b77
2022-04-09 20:57:00 +08:00
alexliyu7352
471a8b7735
子进程重启失败时,不断重试,避免重启失败 (#1545)
* Update main.cpp

* 双重保险, 避免重启失败

业务繁忙的服务器当子进程崩溃后,
虽然延时了3秒, 但是如果服务器负载很高, 或者开启了coredump
会导致拉起子进程时, 仍旧端口占用导致子进程重启失败而直接退出主进程.

因此, 这里做了双重保险, 当子进程拉起时如果端口占用, 那么子进程会继续重试.
2022-04-09 20:37:36 +08:00
xiongziliang
a6e82799f5 openRtpServer接口新增re_use_port参数 2022-04-09 10:26:15 +08:00
xiongziliang
2818e371b8 完善startSendRtp接口 2022-04-03 18:37:22 +08:00
xiongziliang
de0738b1d1 Merge branch 'feature/rawrtpsend' of github.com:ZLMediaKit/ZLMediaKit 2022-04-03 17:34:51 +08:00
alexliyu7352
007164ac9b
崩溃重启时间改成3秒 (#1536)
在负载比较重的机器上重启子进程太快了.
很容易导致端口仍旧还未释放完毕导致的错误
端口已被占用
从而主进程直接退出.
因此适当延长重启的间隔时间
2022-04-03 17:32:38 +08:00
xgj
29ceddd23d fix startsendrtp pt error 2022-04-01 19:15:35 +08:00
xgj
9d532cf16b fix startsendrtp pt error 2022-04-01 19:12:37 +08:00
xgj
61625f458f for webapi startsendrtp can send raw rtp 2022-04-01 18:28:09 +08:00
xiongziliang
62543202a5 精简进程管理相关代码 2022-03-27 22:37:41 +08:00
xiongziliang
4b9b022690 优化进程管理代码: #1518 2022-03-27 21:48:13 +08:00
alexliyu7352
43c5d05d8f
使用clone替代fork (#1518)
使用clone替代fork
因为fork子进程有时会导致提前写时复制, 进而影响性能.
而vfork又会引起父进程阻塞
所以使用clone来产生子进程运行ffmpeg
2022-03-27 21:25:40 +08:00
xiongziliang
5879947325 webrtc url添加session参数,用于hook追踪会话唯一性 2022-03-27 21:12:59 +08:00
xiongziliang
76372cd34b 修好addStreamProxy接口获取参数失败的问题 2022-03-12 15:23:45 +08:00
xiongziliang
d239ada9ac 精简代码 2022-03-12 15:18:12 +08:00
xiongziliang
3c99b3af98 修复addStreamProxy接口笔误 2022-03-12 15:08:30 +08:00
xiongziliang
9527a2b1cf addStreamProxy接口新增多种转协议相关参数 2022-03-12 15:07:01 +08:00
xiongziliang
8db01651fe on_publish hook新增rtsp/rtmp/ts/fmp4转协议开关 2022-03-12 14:39:59 +08:00
xiongziliang
0f1120b8a6 on_publish hook新增多种选项 2022-03-12 14:34:48 +08:00
xiongziliang
4dc621e1bb 转协议选项抽象为ProtocolOption对象 2022-03-12 13:24:23 +08:00
ziyue
d88fe077ed on_publish hook新增originType字段 2022-03-02 18:03:44 +08:00
ziyue
26d0589bf5 ffmpeg命令支持相对路径 2022-02-24 11:42:43 +08:00
ziyue
63f22ee6f2 截图失败时,返回ffmpeg日志; ffmpeg命令支持相对路径 2022-02-24 11:28:48 +08:00
ziyue
a3d696d805 完善判定ffmpeg截图是否为空逻辑 2022-02-23 17:06:09 +08:00
ziyue
81199fabd4 添加必要头文件:#1248 2022-02-16 10:31:39 +08:00
夏楚
c72cf4cbcc
整理命名空间 (#1409)
* feat: remove using namespace mediakit in header files.

(cherry picked from commit d44aeb339a8a0e1f0455be82b21fe4b1b536299f)

* feat: remove using namespace mediakit in FFmpegSource.h

* feat: remove using namespace mediakit in RtpExt.h

* feat: remove using namespace mediakit in header files.

* feat: remove using namespace std in header files.

* feat: remove using namespace std in header files when zltoolkit remove std in header

* 补充命名空间

* 整理命名空间

* 整理命名空间2

* 修复macos ci

* 修复编译问题

* 修复编译问题2

* 修复编译问题3

Co-authored-by: Johnny <hellojinqiang@gmail.com>
Co-authored-by: Xiaofeng Wang <wasphin@gmail.com>
2022-02-02 20:34:50 +08:00
ziyue
81cf93a2bf openRtpServer接口强制关闭reuse_port属性,防止端口冲突 2022-01-19 17:44:58 +08:00
ziyue
0c4410c523 Merge branch 'master' of github.com:ZLMediaKit/ZLMediaKit 2022-01-17 10:36:00 +08:00
ziyue
27482a5459 修复编译警告 2022-01-17 10:35:29 +08:00
xiongziliang
c9d755f4e8 修复编译问题 2022-01-14 22:04:46 +08:00
wangcker
e8b0993493
给openrtpserver接口添加enable_reuse参数 (#1372)
* 修改rtpopen逻辑

* 给openrtpserver接口添加enable_reuse端口
2022-01-14 21:53:01 +08:00
ziyue
a0dec8cd79 支持多级溯源 2022-01-12 20:24:19 +08:00
ziyue
170f5500cf 新增溯源超时时间配置项 2022-01-12 17:58:07 +08:00
ziyue
6f4d8c5884 Typo: 修复错误注释 2022-01-12 17:51:00 +08:00
ziyue
838e4f2788 溯源集群模式支持多个源站 2022-01-12 17:43:07 +08:00
ziyue
be77f84315 支持溯源方式的集群模式 2022-01-12 16:48:14 +08:00