Commit Graph

604 Commits

Author SHA1 Message Date
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
KkemChen
fd89e0d801
feat: VideoStack支持等比缩放 (#4191)
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
feat: VideoStack支持等比缩放 (目前以宏VIDEOSTACK_KEEP_ASPECT_RATIO
方式控制开启,后续考虑是否添加到配置文件中来控制)
2025-03-19 09:42:57 +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
xiongguangjie
2a85dffdf9
on_play/on_publish hook 新增protocol字段 (#4133 #4143)
对于webhook  涉及到media info的相关信息,增加protocol 的字段,表明是基于什么协议传输的
2025-02-13 15:18:47 +08:00
PioLing
5160769112
Improve the getSnap code (#4128) 2025-01-20 14:32:11 +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
PioLing
9863f9c160
Add logo and version information to exe on windows (#4093) 2025-01-03 11:33:35 +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
sbkyy
5c80c75ed9
修复video stack相关功能bug
/index/api/stack/reset 在相同url和通分辨率多次调用channel析构没画面的问题
是在 VideoStackManager::parseParams 函数里 多次 (*params)[i * cols + j] =
nullptr; 导致 channel 计数器为0,析构没画面。

同时修复cpu占用过高问题。
2024-10-26 09:20:24 +08:00
xia-chu
aca39bbfaa Support hot-reload of SSL certificates (#2835) 2024-09-22 18:38:53 +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
xiongziliang
942458480d Demangle backtrace function binary symbols when generated crash logs 2024-05-25 21:16:57 +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
xia-chu
664d0b67bc Add the listRtpSender http api 2024-04-21 11:31:43 +08:00
xia-chu
e4de454d5d Charset default to UTF-8 on Windows 2024-04-20 22:25:21 +08:00
renlu
c341f8ebf6 startSendRtp不指定use_ps时,发送的为裸包,不兼容之前的旧版本。 2024-04-14 11:35:31 +00:00
Aven
3dcd0ed463
Enable video stack individually (#3469) 2024-04-13 20:35:59 +08:00
ljx0305
24689fefd1
Fix compilation error (#3432) 2024-04-01 17:31:04 +08:00
xia-chu
af3ef996b0 Avoid build warnings in the main code 2024-03-30 14:59:28 +08:00
xia-chu
0602cc0c0b Add 'params' field to MediaSource tuple information 2024-03-30 14:46:39 +08:00
xia-chu
390c374086 Optimize the code
1. change param_strs to params
2. move params from MediaInfo to MediaTuple
3. passing MediaTuple as a parameter for some functions
2024-03-30 14:41:20 +08:00
xia-chu
ecc05dae28 BugFix: fix the issue where modifying the default secret resulted in HTTP api authentication failures 2024-03-30 14:04:32 +08:00
ljx0305
861be27ef8
Fix compilation error issues (#3412) 2024-03-26 15:05:14 +08:00
Jacob Su
208f57e2cd
Fix macOS compile error by rename version.h -> ZLMVersion.h (#3411 #3410) 2024-03-24 17:18:18 +08:00
xiongziliang
d8893877b2 Delete invalid code 2024-03-23 22:56:12 +08:00
johzzy
029813402d
feat: update negotiateSdp and WebRtcArgs (#3371)
- update negotiateSdp
- update HttpAllArgs and alias
- update onRtcConfigure
- define setWebRtcArgs, handle set_webrtc_cands and setLocalIp

---------

Co-authored-by: xiongziliang <771730766@qq.com>
Co-authored-by: KkemChen <kkemchen@qq.com>
2024-03-23 22:46:30 +08:00
KkemChen
2e2823d4cf
VideoStack: move sws execution to WorkThread and optimization interface (#3407)
VideoStack: move sws execution to WorkThread and optimization interface
2024-03-23 20:47:38 +08:00
xia-chu
cfac61e55b BugFix: prevent the player's configuration from being overridden in addStreamProxy 2024-03-22 20:50:07 +08:00
ljx0305
66a6253160
Fix compilation error issues (#3385) 2024-03-22 20:42:02 +08:00
KkemChen
437ae778c0
feat: VideoStack (#3373) 2024-03-16 22:56:32 +08:00
xia-chu
69738ad24e BugFix: configuration of downloadRoot cannot use absolute paths
Fix for http api `/index/api/downloadFile`
2024-03-16 21:53:30 +08:00
johzzy
2f50344e7b
Add ServiceController to manage PlayerProxy/PusherProxy/FFmpegSource/RtpServer services (#3337) 2024-03-10 16:31:20 +08:00
huangcaichun
78a6f041a8
Fixed issue that set use_ps in startSendRtp api does not take effect (#3353)
修复使用startSendRtp接口转发ps流,设置use_ps为1后,还发送es流的问题

---------

Co-authored-by: huangcaichun <cchuang@secusoft.cc>
2024-03-10 16:17:29 +08:00
waken
79b2aa6adc
openRtpServer接口增加单视频参数,加快单视频流注册速度 (#3342)
only_audio -> only_track
2024-03-05 17:06:31 +08:00
夏楚
24ad9c9b9e
Support mpegts rtp payload in startSendRtp (#3335) 2024-03-02 16:53:53 +08:00
xiongguangjie
4fb593f4a1
Fix compilation failure issue caused by lack of regular expression support in gcc 4.8.5 (#3301 #3279) 2024-02-19 11:05:30 +08:00
waken
bfcaf15075
Ignore localhost address when get icecand for webrtc from http request (#3282) 2024-02-04 23:11:18 +08:00
sandro-qiang
ceae040a7a
Fix http url path and component's coding (#3237 #3181) 2024-01-28 19:18:36 +08:00
waken
fd1ebb1a51
Auto get icecand ip address from http request (#3251)
Get ip address from http `Host` header, and set it to icecand ip for webrtc
2024-01-26 10:26:30 +08:00
张传峰
9977b550e0
Add snapshot cmd parameter to ignore audio (#3246)
Improve snapshot speed
2024-01-26 10:19:19 +08:00
waken
3a80b1de1e
openRtpServer接口新增local_ip参数 (#3224)
https://github.com/ZLMediaKit/ZLMediaKit/issues/3218

ipv4环境下,修改local_ip为0.0.0.0后可实现在openRtpServer后startSendRtp复用端口

仅测试windows服务端,sip与sip通话
2024-01-18 10:59:09 +08:00
chdahuzi
a17b950b21
Install http api and hook before starting the service listener (#3149)
We have found that sometimes, when starting zlmediakit, stream push requests may be received before the hook is ready.
2023-12-20 19:32:49 +08:00
xiongziliang
f1923f0076 Ignore the http connection which calling kick_sessions http api 2023-12-17 18:19:18 +08:00
xia-chu
9ff4c09211 BugFix: fix webrtc bad weak ptr exception 2023-12-10 11:09:04 +08:00
夏楚
64f15202de
Support multi audio/video track 2023-12-09 22:34:22 +08:00
夏楚
bbe8f4a018
release 8.0 2023-12-09 16:23:51 +08:00
Dw9
d21bdc35c9
修复addstreamproxy拉流瞬间超时的问题 (#3093) 2023-12-07 22:05:20 +08:00
xiongziliang
22732ea3f4 确保deleteRecordDirectory接口忽略正在录制的mp4文件 (#3032) 2023-12-02 21:53:25 +08:00
xiongziliang
c12a6f0aed 适配ZLToolKit 2023-12-02 19:49:28 +08:00
夏楚
76aebd74c6
整理MediaSource协议类型 2023-12-02 16:31:40 +08:00
夏楚
10c2197e76
新增downloadFile接口,支持下载限定目录下任意文件 (#3073) 2023-12-02 15:58:40 +08:00
xiongziliang
e1f199c986 deleteRecordDirectory接口忽略正在录制的mp4文件 (#3032) 2023-12-02 15:23:56 +08:00
xiongziliang
10663fd3b4 删除无效的hook api 2023-12-02 15:04:57 +08:00
xiongziliang
380887c5d3 http api回复改成英文 2023-12-02 15:02:00 +08:00
xiongziliang
a47c5d2ec0 http api不区分大小写 2023-12-02 14:56:59 +08:00
alexliyu7352
86029d08af
addStreamProxy支持透传参数并设置MediaPlayer (#3063)
通过addStreamProxy接口可以直接配置MediaPlayer相关设置参数,比如说http代理url等
2023-12-01 14:33:07 +08:00
夏楚
db0818c8d2
新增mp4点播接口loadMP4File (#3018 #2972) 2023-11-24 10:44:08 +08:00
Fummo
88f7f46497
Bugfix: Only close edge streams with no viewers (#2994)
Bugfix to only close streams with no viewers if they
originate from an edge server rather than all streams.

Fixes https://github.com/ZLMediaKit/ZLMediaKit/issues/2981
2023-11-19 14:35:18 +08:00
waken
7f25138b46
openRtpServerMultiplex接口统一url路径 (#2963) 2023-11-09 20:36:51 +08:00
waken
6888f20d74
新增openRtpServerMultiplex接口,支持创建多路复用RTP服务器端口 (#2954)
#2953
2023-11-09 11:26:13 +08:00
Dw9
f8285a3f6c
startSendRtp接口新增支持同ssrc向多个服务器推流 (#2951)
新增ssrc_multi_send参数,支持同ssrc向多个服务器推流,兼容当前startSendRtp/stopSendRtp接口
2023-11-07 23:38:58 +08:00
xia-chu
d8d7fe9144 通过getMediaList接口可返回Track时间戳增量信息 2023-10-31 11:10:02 +08:00
xia-chu
c1b82961cf deleteRecordDirectory接口新增name参数,可以指定删除特定录像文件 2023-10-31 11:10:02 +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
alexliyu7352
fdc00d5a02
增加jemalloc工具类, 增加jemalloc内存统计分析 (#2885)
增加jemalloc工具类, 增加jemalloc内存统计分析
2023-10-10 11:48:56 +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
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
0844f09e24 addStreamProxy重复拉流时返回错误 (#2773) 2023-08-26 23:03:15 +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
aac8905619 api secret无效时不再直接退出程序
而是修改为随机字符串并持久化至配置文件
2023-08-12 15:43:30 +08:00
xia-chu
2bcbff09b0 web hook不再直接放行来自127.0.0.1播放鉴权请求
防止代理越过鉴权
2023-07-27 15:54:04 +08:00
xia-chu
2c8a46862b 来自127.0.0.1的http api请求开启secret校验
防止http代理越过鉴权
2023-07-27 15:54:04 +08:00
xia-chu
c1f6517471 在开启on_http_access hook时,访问http文件(或目录)ip白名单机制不生效
on_http_access hook优先级更高,关闭on_http_access hook时才采用ip白名单机制,防止两种鉴权机制间的冲突
2023-07-27 15:54:03 +08:00
xia-chu
e81efec96e ip白名单机制只对需要secret校验的http api生效 2023-07-26 17:18:33 +08:00
xia-chu
706c63c64b 禁止通过setServerConfig接口修改ffmpeg.bin配置选项 2023-07-26 16:40:10 +08:00
xia-chu
098046cb1d 新增http api与http文件访问ip白名单限制机制,默认禁止公网访问 2023-07-26 16:33:21 +08:00
夏楚
25d5e410c3
禁止默认http api密钥,删除管理员越过鉴权逻辑 (#2655 #2690)
http api secret禁止使用默认的035c73f7-bb6b-4889-a715-d9eb2d1925cc
删除admin_params的设定
2023-07-22 17:30:20 +08:00
Xiaofeng Wang
a31108cc51
避免清空库列表导致 test 编译失败 (#2677) 2023-07-19 23:36:03 +08:00
xia-chu
f55e13f9da c sdk新增on_mk_media_send_rtp_stop事件回调 2023-07-08 22:34:09 +08:00