Commit Graph

365 Commits

Author SHA1 Message Date
xia-chu
3b54168b44 listStreamProxy接口支持返回track、status_str信息 2026-03-17 19:43:50 +08:00
xia-chu
4e170e9281 addStreamProxy新增force,支持强制重试拉流 2026-03-17 19:33:43 +08:00
xia-chu
ca47a1f8b2 http access事件新增文件绝对路径参数
Some checks failed
Android / build (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
Docker / build (push) Has been cancelled
Linux / build (push) Has been cancelled
Linux_Python / build (push) Has been cancelled
macOS / build (push) Has been cancelled
macOS_Python / build (push) Has been cancelled
Windows / build (push) Has been cancelled
Windows_Python / build (push) Has been cancelled
2026-03-09 18:01:48 +08:00
xia-chu
f48caf90e8 downloadFile http api支持secret鉴权 2026-03-09 17:07:23 +08:00
xia-chu
725fdf1786 http api请求有json body才解析 2026-02-25 12:21:43 +08:00
xia-chu
0ead9b6945 优化cookie登录逻辑
Some checks failed
Android / build (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
Docker / build (push) Has been cancelled
Linux / build (push) Has been cancelled
Linux_Python / build (push) Has been cancelled
macOS / build (push) Has been cancelled
macOS_Python / build (push) Has been cancelled
Windows / build (push) Has been cancelled
Windows_Python / build (push) Has been cancelled
2026-02-25 12:01:49 +08:00
xia-chu
3514376a97 修复videostack开启后编译失败问题
Some checks failed
Android / build (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
Docker / build (push) Has been cancelled
Linux / build (push) Has been cancelled
Linux_Python / build (push) Has been cancelled
macOS / build (push) Has been cancelled
macOS_Python / build (push) Has been cancelled
Windows / build (push) Has been cancelled
Windows_Python / build (push) Has been cancelled
2026-02-22 18:45:16 +08:00
xia-chu
3a35144243 新增cookie登录鉴权模式,避免secret硬编码鉴权安全缺陷
Some checks failed
Android / build (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
Docker / build (push) Has been cancelled
Linux / build (push) Has been cancelled
Linux_Python / build (push) Has been cancelled
macOS / build (push) Has been cancelled
macOS_Python / build (push) Has been cancelled
Windows / build (push) Has been cancelled
Windows_Python / build (push) Has been cancelled
2026-02-19 23:09:37 +08:00
liangjianhua
8ca4b4d92a Add optional subnet_prefix parameter to searchOnvifDevice interface 2026-02-13 23:11:37 +08:00
夏楚
6d520ea6a3
新增支持Python混合编程模式 (#4579)
Some checks failed
Android / build (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
Docker / build (push) Has been cancelled
Linux / build (push) Has been cancelled
Linux_Python / build (push) Has been cancelled
macOS / build (push) Has been cancelled
macOS_Python / build (push) Has been cancelled
Windows / build (push) Has been cancelled
Windows_Python / build (push) Has been cancelled
2026-02-10 13:28:42 +08:00
xia-chu
9cc4563fae getAllSession接口返回链接类型 2026-01-09 11:34:40 +08:00
xia-chu
adb844032d 初步添加onvif客户端
Some checks failed
Android / build (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
Docker / build (push) Has been cancelled
Linux / build (push) Has been cancelled
macOS / build (push) Has been cancelled
Windows / build (push) Has been cancelled
2025-11-22 08:40:25 +08:00
xia-chu
68cc757708 修复getMediaList接口线程安全问题 (#4526)
Some checks failed
Android / build (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
Docker / build (push) Has been cancelled
Linux / build (push) Has been cancelled
macOS / build (push) Has been cancelled
Windows / build (push) Has been cancelled
2025-10-30 11:20:04 +08:00
xia-chu
5c58f39046 优化getMediaList接口,新增返回currentStamp字段,获取单个流时确保返回loss字段 (#4260)
Some checks are pending
Android / build (push) Waiting to run
CodeQL / Analyze (cpp) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
Docker / build (push) Waiting to run
Linux / build (push) Waiting to run
macOS / build (push) Waiting to run
Windows / build (push) Waiting to run
2025-10-18 13:00:54 +08:00
xia-chu
6d01aa6389 loadMP4File接口新增支持seek_ms与speed参数 (#4261) 2025-10-18 12:36:46 +08:00
baigao-X
3fb43c5fef
feat: 增加webrtc代理拉流 (#4389)
Some checks failed
Android / build (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
Docker / build (push) Has been cancelled
Linux / build (push) Has been cancelled
macOS / build (push) Has been cancelled
Windows / build (push) Has been cancelled
- 增加客户端模式,支持主动拉流、推流:
   - addStreamProxy接口新增支持whep主动拉流,拉流地址目前只兼容zlm的whep url。
   - addStreamPusherProxy接口新增支持whip主动推流,推流地址目前只兼容zlm的whip url。
   - 以上推流url格式为webrtc[s]://server_host:server_port/app/stream_id?key=value, 内部会自动转换为http[s]://server_host:server_port/index/api/[whip/whep]?app=app&stream=stream_id&key=value。

- 增加WebRtc p2p 模式:
  - 增加 ICE FULL模式。
  - 增加STUN/TURN 服务器。
  - 增加websocket 信令。
  - 增加P2P代理拉流。

---------

Co-authored-by: xia-chu <771730766@qq.com>
Co-authored-by: mtdxc <mtdxc@126.com>
Co-authored-by: cqm <cqm@97kid.com>
2025-09-20 16:23:30 +08:00
xia-chu
88b422db08 优化pauseRtpCheck接口,新增pause_seconds参数
Some checks are pending
Android / build (push) Waiting to run
CodeQL / Analyze (cpp) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
Docker / build (push) Waiting to run
Linux / build (push) Waiting to run
macOS / build (push) Waiting to run
Windows / build (push) Waiting to run
2025-09-09 23:11:48 +08:00
xia-chu
5686027fc2 修复MediaSource::close线程安全问题
主动或无人观看关闭流可能会由于线程安全问题导致崩溃
2025-09-09 22:02:20 +08:00
ShineSea
c89caf560a
优化WebApi ListRtpServer接口实现 (#4436)
Some checks failed
Android / build (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
Docker / build (push) Has been cancelled
Linux / build (push) Has been cancelled
macOS / build (push) Has been cancelled
Windows / build (push) Has been cancelled
2025-09-08 19:00:45 +08:00
yingxiaodong
2faa04da30
bug-fix: rtpserver死锁 (#4421)
Some checks are pending
Android / build (push) Waiting to run
CodeQL / Analyze (cpp) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
Docker / build (push) Waiting to run
Linux / build (push) Waiting to run
macOS / build (push) Waiting to run
Windows / build (push) Waiting to run
1、RtpServer对应的socket在读取数据后,会加锁后进行数据处理
  a) LOCK_GUARD(_mtx_event);
  b) _on_multi_read
当_on_multi_read处理中出现问题,会通过回调,调用 s_rtp_server.erase(key); ,
这里锁的调用顺序为:_mtx_event -> s_rtp_server._mtx
2、当外部调用api关闭RtpServer时,会先调用 s_rtp_server.erase(key);
,释放RtpServer对象时,会调用Socket的 setOnRead(nullptr),这里会调用Socket的 _mtx_event。
这里的锁调用顺序为:s_rtp_server._mtx -> _mtx_event
以上两种情况,存在 交叉调用两把锁的问题,会出现死锁。
2025-09-01 11:35:50 +08:00
xia-chu
652ac9fe82 新增获取poller监听fd个数方法 2025-08-10 12:15:56 +08:00
xia-chu
5d9ced2cf3 startSendRtp相关接口新增enable_origin_recv_limit参数控制是否开启源端限流
Some checks failed
Android / build (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
Docker / build (push) Has been cancelled
Linux / build (push) Has been cancelled
macOS / build (push) Has been cancelled
Windows / build (push) Has been cancelled
多倍速rtp转发时,在tcp模式下,如果转发速度跟不上接收速度将导致转发失败,通过开启该参数,可以确保历史视频多倍速下载成功
2025-08-02 21:14:42 +08:00
xia-chu
c9a0025620 新增startRecordTask接口,支持录制事件视频
用户可以录制当前时间前后一定时间内的视频,配置文件gop_cache设置较大时历史视频才能录全
2025-08-02 21:00:30 +08:00
xia-chu
b1e1a0f174 新增deleteSnapDirectory删除截图接口 2025-08-02 21:00:30 +08:00
PioLing
7b1f8fedac
Add network traffic statistics (#4239)
Some checks failed
Android / build (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
Docker / build (push) Has been cancelled
Linux / build (push) Has been cancelled
macOS / build (push) Has been cancelled
Windows / build (push) Has been cancelled
Co-authored-by: xiongguangjie <xiong_panda@163.com>
Co-authored-by: xia-chu <771730766@qq.com>
2025-05-02 16:23:25 +08:00
PioLing
ab14adb94d
Add loadMP4File respond "durations" (#4262 #4260)
Some checks failed
Android / build (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
Docker / build (push) Has been cancelled
Linux / build (push) Has been cancelled
macOS / build (push) Has been cancelled
Windows / build (push) Has been cancelled
2025-04-26 19:58:48 +08:00
PioLing
beff8c0527
修复编译失败的问题 (#4249) #4252
Some checks failed
Android / build (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
Docker / build (push) Has been cancelled
Linux / build (push) Has been cancelled
macOS / build (push) Has been cancelled
Windows / build (push) Has been cancelled
2025-04-15 09:48:00 +08:00
xia-chu
41bdfa0755 addStreamProxy、addStreamPusherProxy接口确保线程负载均衡
Some checks failed
Android / build (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
Docker / build (push) Has been cancelled
Linux / build (push) Has been cancelled
macOS / build (push) Has been cancelled
Windows / build (push) Has been cancelled
2025-04-13 19:42:30 +08:00
custompal
f0204ea3b3
播放器(reader)setGetInfoCB时统一使用Session对象 (#4195)
Some checks failed
Android / build (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
Docker / build (push) Has been cancelled
Linux / build (push) Has been cancelled
macOS / build (push) Has been cancelled
Windows / build (push) Has been cancelled
Co-authored-by: custompal <chenrengen@gosuncn.com>
2025-03-21 15:22:48 +08:00
ziyuexiachu
52ca731392 修复http api可能导致死锁的bug
Some checks failed
Android / build (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
Docker / build (push) Has been cancelled
Linux / build (push) Has been cancelled
macOS / build (push) Has been cancelled
Windows / build (push) Has been cancelled
2025-02-26 11:34:53 +08:00
PioLing
a8507d9ecc
Optimize the code related to decoding and screenshot (#4106)
Co-authored-by: xia-chu <771730766@qq.com>
2025-01-19 20:18:32 +08:00
baigao-X
1c8ed1c55a
Add srt caller mode and stream encryption support. (#4088)
Add srt caller mode and stream encryption support.
1. Support srt caller mode, realize srt proxy pull stream proxy push
stream;
url parameter format such as: srt://127.0.0.1:9000?streamid=#!
::r=live/test11
2. Support srt stream encrypted transmission in caller and listener
mode.

---------

Co-authored-by: xiongguangjie <xiong_panda@163.com>
2024-12-28 20:21:29 +08:00
xia-chu
87b42ab492 优化代码
除1024改成右移10位
2024-11-29 23:51:34 +08:00
xia-chu
ef11c66fb8 新增语音对讲接口(startSendRtpTalk) 2024-11-09 19:29:04 +08:00
mtdxc
901c381300
新增获取推流推流代理列表和ffmpeg源列表接口 (#3992) 2024-11-01 10:47:18 +08:00
alex
4152dcd409
AI automatically translates all comments in the code into English (#3917) 2024-09-19 14:53:50 +08:00
PioLing
ab22cac85b
新增兼容whip接口http头的 Authorization 的Bearer令牌 (#3849)
新增兼容whip接口http头的 Authorization 的Bearer令牌 转成 webhook 的 params的参数 ,
即也支持rtc应用业务层回调推流 Authorization Bearer鉴权
2024-08-29 10:58:51 +08:00
waken
df9dd3d17a
修复startSendRtp接口开启收流时vhost设置错误的问题 (#3848) 2024-08-28 12:28:01 +08:00
wEnchanters
bd40c24745
startSendRtp接口支持指定接收流的app和vhost参数 (#3841) 2024-08-22 19:50:29 +08:00
u7ko4
e3cad7f8fa
支持绑定到指定网卡 (#3760) 2024-08-01 11:03:26 +08:00
xia-chu
81aef25583 整理startSendRtp相关接口,新增支持udp被动模式
startSendPassive接口指定is_udp为1时则为开启udp被动模式, 被动模式下需要对方先发数据给zlmediakit,然后才能回复rtp数据;
同时在被动模式指定src_port时,不再等待对方连接成功后再返回(而是直接返回成功和端口号,失败通知请监听on_send_rtp_stopped hook)。
2024-07-28 23:37:13 +08:00
mtdxc
d735aa1797
Media tuple refactor (#3715)
Co-authored-by: cqm <cqm@97kid.com>
2024-07-14 09:32:41 +08:00
autoantwort
f24802d0e4
WebAPI: Fix build if ENABLE_MP4=false (#3699)
The class `MP4Reader` is only defined if the macro is ON
2024-07-09 10:43:34 +08:00
zhang2349
c72e576420
rtp server新增支持自定义vhost和app名称 (#3693)
代码来自https://github.com/ZLMediaKit/ZLMediaKit/pull/3446 , 增加了vhost
2024-07-09 10:42:10 +08:00
KkemChen
2f6723f602
perf: 调整VideoStack相关代码 (#3642)
1. 修复编译宏不生效问题
2. 新增reset接口,用于不断流的情况下变更拼接参数
2024-06-19 14:06:02 +08:00
xiongziliang
77d2df1695 移除RtpSelector相关逻辑,优化代码结构 2024-06-09 10:52:10 +08:00
waken
8dad1983a0
ServiceController增加size方法 (#3587) 2024-06-01 18:14:52 +08:00
waken
f83e287c77
修复C++17新库std::variant导致的编译出错 (#3567) 2024-05-23 17:36:56 +08:00
admin
65c2abb0b5 修复无法删除mp4录像文件的bug 2024-05-15 14:31:36 +08:00
xia-chu
2eed284e61 feat: Close the connection after authentication failed in HTTP API
Improve the safety of HTTP API
2024-05-09 18:07:08 +08:00