Commit Graph

4201 Commits

Author SHA1 Message Date
夏楚
ae662fa083
webrtc dtls默认采用https证书,如果https证书不存在则随机生成 (#2928)
之前默认随机创建dtls证书,导致每次启动证书都不一致,而Firefox要求同主机的dtls证书必须一致,所以导致每次服务重启,Firefox可能拒绝dtls握手。
并且在集群模式下,如果Firefox接入多个不同集群实例的webrtc服务,也可能导致webrtc dtls握手失败。
2023-10-25 17:50:29 +08:00
leibnewton
0a19627d86
修复startSendRtp成功后udp套接字被关闭的问题 (#2468 #2924)
对端端口未打开,udp得到connection refused的错误而关闭。
2023-10-25 15:14:08 +08:00
xia-chu
a871fc1882 websocket服务器支持在创建器中指定消息类型
通过该修改可以更灵活的指定同端口下不同websocket服务的消息类型
2023-10-23 20:59:37 +08:00
xia-chu
ebde21a314 修复openRtpServer开启tcp模式后打开端口失败的bug
两次监听同个tcp端口将导致打开tcp模式失败
2023-10-23 20:49:54 +08:00
xia-chu
08d86c498e 修复jemalloc编译问题 2023-10-23 20:41:38 +08:00
xia-chu
d9ea82c800 更新zltoolkit 2023-10-23 20:39:10 +08:00
ljx0305
7ee2d66eaa
统一代码命名风格 (#2910)
openRtpServer时,如果开启tcp模式,从tcp端口池获取
2023-10-19 17:55:30 +08:00
Armstrong
b8cb8957e4
修复WebApi退出清理时重复析构问题 (#2900)
1. s_???Map.clear()会触发key/value的析构,先执行析构再移除map成员。析构执行完之前map成员仍然有可见性。
2. s_???Map的成员析构时,根据当前状态,可能触发回调,如播放终止回调。
3. 在状态变更的回调函数中,通过s_???Map.erase(key)的方式解注册,此时也会触发一次析构。

两次析构导致double free:a) map.erase, b) map.clear

Signed-off-by: ArmstrongCN <armstrong@sweelia.com>
2023-10-13 15:26:31 +08:00
imp_rayjay
eedf262059
新增支持mjpeg负载的mp4文件点播 (#2898) 2023-10-12 17:26:53 +08:00
Deepslient
67bc0273b4
Modify the readme description (#2859) 2023-10-12 14:38:45 +08:00
PioLing
6348e64cdf
确保hls播放器持续播放 (#2896)
在hls注销后,hls cookie会继续存活60秒,在此期间,如果hls流重新注册,将导致无法继续播放;
通过此修改,在hls注销后每3秒查询一次MediaSource,可以在性能和功能间保持平衡。
2023-10-12 11:05:41 +08:00
fruit Juice
c25e76311f
修复相对时间戳模式下时间戳回退导致音视频不同步的问题 (#2894 #2877)
加大时间戳回退容忍度,最大回退阈值改成与跳变最大幅度一致
2023-10-11 14:52:16 +08:00
alexliyu7352
fdc00d5a02
增加jemalloc工具类, 增加jemalloc内存统计分析 (#2885)
增加jemalloc工具类, 增加jemalloc内存统计分析
2023-10-10 11:48:56 +08:00
alexliyu7352
db3f0147be
升级jemalloc到5.3版本 (#2884)
升级jemalloc到5.3版本,相比5.2.1内存稳定许多,去除--without-export编译参数,
解决类似glibc中分配内存却在jemalloc中释放导致崩溃问题.
比如: toolkit::LoggerWrapper::printLogV中使用的vasprintf
2023-10-09 19:37:04 +08:00
xia-chu
48f62810c7 更新zltoolkit
优化udp server线程分配逻辑,确保线程负载更均衡
2023-09-28 16:00:33 +08:00
xia-chu
ba01136f15 更新默认ssl证书
之前证书(default.zlmediakit.com)已过期,故更新
2023-09-28 15:48:51 +08:00
夏楚
9f6930390a
IP白名单支持ipv6 (#2858)
Fix #2855
2023-09-26 14:48:19 +08:00
xia-chu
3ff373471e 更新zltoolkit
修复tcp客户端获取peer ip信息失败的问题
2023-09-23 20:34:53 +08:00
xia-chu
d542eca4d7 http-flv拉流客户端支持压测模式 2023-09-23 20:34:43 +08:00
xia-chu
585f7c3a3a 修复ffmpeg日志保存目录相关bug
每次调用addFFmpegSource/getSnap接口时,都可能导致篡改全局配置变量
2023-09-23 20:34:36 +08:00
xiongguangjie
f69f3b3029
docker 优雅关闭(docker stop graceful) (#2827) 2023-09-09 10:59:27 +08:00
xiongziliang
f26e25323f 更新作者列表与readme 2023-09-02 19:26:24 +08:00
Deepslient
6fa4d1b92f Add semicolons to unify JS format 2023-09-02 19:10:52 +08:00
xia-chu
c83a3c5639 mk_media_source_broadcast_msg接口添加返回值 2023-09-02 13:06:42 +08:00
xia-chu
11fdffe84a 新增broadcastMessage接口 2023-09-02 13:01:56 +08:00
xia-chu
144165d537 新增mk_media_source_broadcast_msg接口
通过该接口可以广播webrtc datachannel消息给webrtc播放器
2023-09-02 12:58:20 +08:00
xia-chu
e3e7495c90 新增webrtc播放器datachannel消息广播机制和接口 2023-09-02 12:53:56 +08:00
xia-chu
39dd886ec1 优化获取播放器列表相关功能 2023-09-02 12:07:42 +08:00
xia-chu
d286ac1d73 NoticeCenter支持安全类型转换,解决监听者参数类型不一致导致的bug 2023-09-02 11:22:28 +08:00
xia-chu
c35b5e9215 rtp过滤逻辑限制version字段 2023-09-02 10:50:25 +08:00
waken
fef85da771
修复调用close_stream同时调用getMediaList引发的崩溃 (#2800)
复现条件:chrome打开webrtc
demo网页,网页会每秒调用getMediaList。添加一条rtsp拉流,然后再调用close_stream,会偶现进入RtspPlayer::getPacketLossRate函数,然后_rtcp_context为空拿不到指针
2023-08-31 10:53:46 +08:00
Dw9
81966f2c48
修复未开启sctp时,webrtc datachannel sdp交换相关bug (#2791)
主要优化如下:
1、通过设置port为0 声明不支持datachannel(而不是inactive)。
2、设置正确的ice用户名和密码,防止ice建联失败。
3、group attribute移除datachannel的mid。
3、datachannel 相关sdp移除rtcp相关描述。
2023-08-29 11:22:30 +08:00
xia-chu
0844f09e24 addStreamProxy重复拉流时返回错误 (#2773) 2023-08-26 23:03:15 +08:00
xia-chu
06a6d26491 提高http文件服务器安全性 2023-08-26 19:43:11 +08:00
xia-chu
f36ccee3de 更新zltoolkit 2023-08-26 11:34:30 +08:00
xia-chu
cb4ab21548 修复rtsp组播遍历迭代器导致崩溃的bug 2023-08-26 11:34:22 +08:00
xia-chu
f3f4b49332 修复设置点播速度后时间戳跳跃问题 2023-08-26 11:34:12 +08:00
xia-chu
b4fd445f2d webrtc测试页面不再刷新流列表 2023-08-26 11:33:54 +08:00
xia-chu
895e93cb6a 端口池分配端口改成无序分配
解决zlmediakit重启后端口重复分配导致国标串流问题
2023-08-20 12:19:53 +08:00
xia-chu
0c80f0c13c 更新zltoolkit
修复在收到tcp reset时,获取socket对端地址失败的问题: #2749
2023-08-20 11:38:04 +08:00
xia-chu
90c164f7f7 rtsp播放器过滤非法的回复 (#2760)
提高对一些rtsp流的兼容性
2023-08-20 11:19:57 +08:00
夏楚
e628cba1ca
新增配置项过滤on_stream_changed hook协议类型 (#2759)
配置项hook.stream_changed_schemas可指定监听感兴趣的协议
2023-08-14 00:05:32 +08:00
夏楚
f69204b321
hook请求添加hook_index, 防止hook请求乱序 (#2758) 2023-08-13 20:46:08 +08:00
xia-chu
2e05119df1 修复访问http目录下索引文件相关的bug 2023-08-12 15:54:12 +08:00
xia-chu
08299b6652 mp4录制新增追踪日志 2023-08-12 15:50:09 +08:00
xia-chu
aac8905619 api secret无效时不再直接退出程序
而是修改为随机字符串并持久化至配置文件
2023-08-12 15:43:30 +08:00
xia-chu
a7d95461ee 过滤掉不支持的webrtc rtp ext,提高webrtc转发兼容性
在测试obs simulcast推流时,发现chrome无法正常播放,
分析rtp ext扩展,发现是rtp mid ext未过滤导致,
zlmediakit在回复answer sdp时,已申明不支持mid扩展,
但是obs并未理会还是发送mid扩展。
根据answer sdp过滤rtp ext可兼容此问题。
2023-08-12 15:25:16 +08:00
xia-chu
2378617dd8 修复前向声明导致的编译问题 2023-08-08 16:06:29 +08:00
夏楚
383da1e09e
优化代码 (#2741)
删除无效的配置项,
同时修复编译警告
2023-08-05 21:30:01 +08:00
夏楚
fbf4819c5a
更新合作项目列表 2023-08-05 21:29:34 +08:00