Commit Graph

3264 Commits

Author SHA1 Message Date
winlin
bc569d91a0 STAT: Ignore stat for API, only for HTTP streaming clients. 2022-08-29 07:54:48 +08:00
winlin
9bd3c51818 RTMP: Refine code for gussing stream by app. 2022-08-28 17:03:34 +08:00
chundonglinlin
96add9be3d RTMP: Support publish with Server without StreamKey using OBS.(#3018) 2022-08-28 16:19:11 +08:00
winlin
f492d8b03a HTTP: Support API with body, for RTC. 2022-08-28 16:14:05 +08:00
winlin
457738f6eb Fix #2881: HTTP: Support merging api to server. v5.0.47 2022-08-28 13:11:31 +08:00
winlin
6508a082e9 Fix #3108: STAT: Update stat for SRT. v5.0.46 2022-08-27 20:40:34 +08:00
winlin
4e3ea99ccd STAT: Refine stat for global server. 2022-08-27 20:40:34 +08:00
winlin
da24de5ecb STAT: Update stat for SRT connection. 2022-08-27 20:40:34 +08:00
winlin
101e4fa3b9 STAT: Add hls-play, flv-play, srt-play and srt-publish. 2022-08-27 20:40:33 +08:00
winlin
2944fe430f STAT: Only stat media streaming clients. 2022-08-27 20:39:09 +08:00
winlin
ccf83a3f68 HLS: Extract a HLS streaming to serve pseudo session. 2022-08-27 20:37:27 +08:00
winlin
d39995cc31 HLS: Enable hls_ctx by default. 2022-08-27 19:41:07 +08:00
ChenHaibo
2c569f568c HLS: Support config hls_ctx to disable HLS streaming. 2022-08-27 19:41:07 +08:00
winlin
6dc86b8a2e CLS: Refine logging to global object. 2022-08-27 18:56:53 +08:00
winlin
8bc7342c3c Protobuf: Extract protobuf encoder. 2022-08-26 18:46:26 +08:00
winlin
a54d371549 Log: Stat the number of logs. v5.0.45 2022-08-26 12:41:19 +08:00
winlin
95cd0e84eb Log: Support write log to tencentcloud CLS. v5.0.44 2022-08-24 15:51:23 +08:00
winlin
3da0b57121 Merge 4.0release. 2022-08-24 15:27:56 +08:00
winlin
9923c749d4 STAT: Support config server_id and generate one if empty. v4.0.257 2022-08-24 15:06:43 +08:00
winlin
8e6d207e56 For #2136: API: Cleanup no active streams for statistics. v4.0.256 2022-08-24 12:47:16 +08:00
winlin
41155b7789 STAT: Add kbps for client. 2022-08-24 12:42:21 +08:00
winlin
2438bc99e0 Config: Refine ulimit check. 2022-08-22 19:46:47 +08:00
winlin
9b010ac158 Fix #3114: Origin cluster config bug. v5.0.43 2022-08-22 11:43:44 +08:00
winlin
e9d6601f7d For #2136: API: Cleanup no active streams for statistics. v5.0.42 2022-08-19 19:45:19 +08:00
winlin
a842c6c32a Support crossbuild for hisiv500. v5.0.40 2022-08-12 17:41:15 +08:00
winlin
0227e44ef0 Fix warning for comparing int with sizeof. 2022-08-10 19:34:23 +08:00
winlin
febd45d514 Fix server id generator bug. v4.0.254 2022-08-10 10:20:47 +08:00
winlin
a71eddd56a Fix the snprintf size issue. 2022-08-10 08:32:02 +08:00
winlin
0a025fc4b6 Remove unneccessary depends headers. 2022-08-09 18:32:01 +08:00
winlin
25c004e947 Opus: Add TODO because the audio might be corrupted, if use FFmpeg native opus. 2022-08-09 13:35:57 +08:00
winlin
f9e8065b51 Fix build warnings. 2022-08-09 08:27:08 +08:00
winlin
5ae495ab95 For #1229: Check the return value of vsnprintf. 2022-08-08 08:31:57 +08:00
winlin
f7280399d4 Merge 4.0release, migrate to new website. 2022-07-31 18:34:18 +08:00
winlin
6c295952f6 RTMP: Fix unused variable warning. 2022-07-20 21:53:57 +08:00
Steven Liu
8a6fa30992 app/srs_app_rtmp_conn: move err result to RTC MACRO to fix compiling warning 2022-07-18 13:50:10 +08:00
winlin
0badae4797 Support thread pool and update ossrs.net. v5.0.33 2022-06-29 20:48:08 +08:00
winlin
b2e083b00d Support multiple threads by thread pool. v5.0.32 2022-06-29 20:15:44 +08:00
winlin
7c6bd0ce5c Refine async DVR manager. 2022-06-29 19:51:10 +08:00
winlin
e05535267b Disable reload for log config. 2022-06-29 19:29:50 +08:00
winlin
cb6a4d0143 Thread: Refine SrsThreadMutex and SrsThreadLocker. 2022-06-28 20:50:25 +08:00
winlin
d117145b95 Update date from 2021 to 2022. 2022-06-20 19:22:25 +08:00
winlin
d525d27e64 Merge from 4.0release 2022-06-15 19:21:13 +08:00
winlin
93fed3874b SRT: Rebase develop. 2022-06-14 20:17:00 +08:00
winlin
0957cdb944 SRT: Refine the lock for log. 2022-06-14 20:05:11 +08:00
hondaxiao
910b5945af SRT: add srt log handle, srs log supoort multithread 2022-06-14 20:05:11 +08:00
hondaxiao
fd74b2f6e1 SRT: readd mix_correct, compatible old srt conf 2022-06-14 20:05:11 +08:00
hondaxiao
c037f920b2 SRT: move accept log into srt conn cycle 2022-06-14 20:05:11 +08:00
winlin
e09daa2d4b SRT: Change bridges to bridge. 2022-06-14 20:05:09 +08:00
winlin
077d93c7b6 SRT: Refine code, remove SrsSrtListenerType 2022-06-14 20:02:25 +08:00
winlin
d2149a8b79 SRT: Add todo for coroutine yield. 2022-06-14 20:02:25 +08:00
winlin
8437370c1e SRT: Refine packet error handler. 2022-06-14 20:02:25 +08:00
winlin
9a0db5a14f SRT: Undo extract of fetch_or_create_source and change mode_ to local. 2022-06-14 20:02:25 +08:00
winlin
6009395c10 SRT: Hide srt implements from API. 2022-06-14 20:02:25 +08:00
winlin
d39ec3cf45 SRT: Extract ISrsSrtPoller to hide SRT_EPOLL_EVENT 2022-06-14 20:02:25 +08:00
winlin
94cc50d146 SRT: Wrap SRT stat object. 2022-06-14 20:02:25 +08:00
winlin
78b778fb93 SRT: Rename srs_service_st_srt to srs_protocol_srt 2022-06-14 20:02:25 +08:00
hondaxiao
fbc6eebe18 SRT: remove rtmp_to_srt 2022-06-14 20:02:25 +08:00
hondaxiao
43d98d0b1c SRT: remove mix_correct 2022-06-14 20:02:24 +08:00
hondaxiao
a5ac7cfe37 SRT: use srs code style in function defination 2022-06-14 20:02:24 +08:00
hondaxiao
dd8ccfe5d8 SRT: refine int to srs_utime_t in srt timeout config 2022-06-14 20:02:24 +08:00
hondaxiao
26498a00fe SRT: Tsbpdmode default on 2022-06-14 20:02:24 +08:00
winlin
6c94e91792 SRT: Refine get_srt_poller to poller. 2022-06-14 20:02:24 +08:00
winlin
21899c5998 SRT: Initialize SRT eventloop in adapter. 2022-06-14 20:02:24 +08:00
winlin
4899be9c34 SRT: Refine the schedule resolution to 10ms if idle. 2022-06-14 20:02:24 +08:00
winlin
b507a080b2 SRT: Refine parse SRT listen ip and port. 2022-06-14 20:02:24 +08:00
hondaxiao
e13d16439e SRT: support rtmp to srt 2022-06-14 20:02:22 +08:00
hondaxiao
94fa0ff7bd Refine SRT code, with StateThread adpater 2022-06-14 19:58:42 +08:00
winlin
3ed4aed824 Fix build failed. 2022-06-09 20:46:20 +08:00
winlin
fa78cf3354 Prefix with srs_protocol in protocol directory. 2022-06-09 20:26:58 +08:00
winlin
665ad564fb Rename service to protocol files. 2022-06-09 19:59:51 +08:00
winlin
f1840b87e5 Fix typo, change bridger to bridge. 2022-06-09 19:35:07 +08:00
winlin
0304e78cf1 Support SIGABRT to generate coredump. 2022-05-25 12:45:58 +08:00
winlin
16babd2b64 Merge branch '4.0release' into develop 2022-04-07 13:48:59 +08:00
winlin
1d503c770f Fix proc stat issue. 2022-04-07 13:48:19 +08:00
mapengfei53
8dc5853f8c
Fix parse_file function did not handle err (#2928)
* Fix parse file function did not handle err

* Fix parse_file function did not handle err

* Fix error message

* Updated error information
2022-03-19 13:22:27 +08:00
Haibo Chen
67ccd589c1
Security: Enable CIDR for allow/deny play/publish (#2914)
* protocol/utility: add srs_ipv4_to_num

* protocol/utility: add srs_ipv4_within_mask

* protocol/utility: add srs_get_cidr_mask and CIDR_VALUES static struct

* protocol/utility: add srs_get_cidr_ipv4

* app/security: support cidr ip ranges in allow/deny rules

* conf: update security example with cidr ranges

* Security: Enable CIDR for allow/deny play/publish

* Security: Enable CIDR for allow/deny play/publish

* Security: Enable CIDR for allow/deny play/publish

* fix compile error on centos6

Co-authored-by: Matheus Macabu <macabu.matheus@gmail.com>
2022-03-11 12:24:35 +08:00
winlin
9d3ae5c8ed Merge branch '4.0release' into develop 2022-03-09 08:06:56 +08:00
winlin
e26db694ca RTC: Identify the WebRTC publisher in param for hooks. v4.0.247 2022-03-07 16:34:51 +08:00
Matthew
526cd62075
Fix FD leak when exceed max connections limit. (#2925)
* fix fd leak

when tcp connection exceed max_connection, that connection will leak because of not closing the fd

* fix leak, code refine
2022-02-26 07:50:09 +08:00
winlin
88c8a4f6c0 Squash: Bug fixed 2022-02-16 11:34:05 +08:00
chundonglinlin
03cf93fc2b
Forward: support config full rtmp url forward to other server (#2799)
* Forward: add backend config and demo server for dynamic create forwarder to other server.(#1342)

* Forward: if call forward backend failed, then return directly.

* Forward: add API description and change return value format.

* Forward: add backend conf file and wrapper function for backend service.

* Forward: add backend comment in full.conf and update forward.backend.conf.

* Forward: rename backend param and add comment tips.
2022-02-16 10:49:16 +08:00
winlin
b94ae922d4 Fix warnings for uuid. v4.0.245 2022-02-15 19:07:37 +08:00
winlin
eeb44ebbe9 Version: Ignore the mgmt version 2022-02-14 18:17:02 +08:00
mapengfei53
fde44885d9
Support include directive for config file (#2878)
* Support include import configuration

* Remove support for regular rules

* Remove support for regular rules

* Fix configuration file parsing bug

* Added utest tests for include functionality

* Added utest tests for include functionality

* Modify the UTest function

* optimized code

* Config: Refine parse error with state

* Config: Reorder functions

* Config: Rename parsing type to context

* Config: Refine args for include

* Config: Add utests for include

* Config: Refine code, parsing recursively.

* Config: Change the mock from file to buffer

* Config: Mock buffer in config

* Config: Refine code

* Add utests for include

* Added utest for include

Co-authored-by: pengfei.ma <pengfei.ma@ngaa.com.cn>
Co-authored-by: winlin <winlin@vip.126.com>
2022-02-14 15:08:51 +08:00
winlin
acf0af6b5a Squash: Update 2022-02-13 08:31:10 +08:00
winlin
8d88a5b4cc Release v4.0-b8, 4.0 beta8, v4.0.241, 144445 lines. 2022-02-11 16:38:11 +08:00
winlin
6b7fc6fdb5 Squash: Fix bugs for 4.0 2022-01-23 08:12:19 +08:00
stone
92434cfeba
bugfix:SrsMetaCache memleak (#2887)
Co-authored-by: wanglei <wanglei@unicloud.com>
2022-01-22 18:50:10 +08:00
winlin
d5c86dc5fa Switch LICENSE from MIT to **MIT or MulanPSL-2.0**. v5.0.21 2022-01-13 18:40:22 +08:00
winlin
93aa0eb5ba Squash: Fix bugs 2022-01-13 18:26:28 +08:00
chundonglinlin
584889754c
RTC: fix play rtc judge for config rtc2rtmp on.(#2863) (#2872) 2022-01-13 17:03:03 +08:00
chundonglinlin
7580341a1e
LiveSource/RtcSource: Refine fetch for external exposed interface. (#2873) 2022-01-13 11:43:32 +08:00
winlin
71a4b3c3f7 Add conf/lighthouse.conf for LightHouse. v4.0.222 2022-01-13 11:38:25 +08:00
chundonglinlin
c30aa479a7
RTC: Fix both rtmp and rtc streams can be published at the same time. (#2875) 2022-01-12 09:12:29 +08:00
winlin
4110fb14cb Squash: Fix bugs. v5.0.20 2022-01-11 08:40:37 +08:00
chundonglinlin
750c58beff
RTC: fix play rtc judge for rtmp inactive.(#2863) (#2867) 2022-01-11 08:18:06 +08:00
chundonglinlin
c85daeb12d
RTC: fix play crash or no stream for rtmp2rtc tips.(#2728) (#2863) 2022-01-10 19:14:11 +08:00
winlin
2f6d6a0ac0 Change warn to trace for release query 2022-01-07 16:41:02 +08:00
winlin
51ca3fd80a Only discover api server ip as candidate. 2022-01-06 11:31:06 +08:00
winlin
4d09b8caae When reopening segment, never update the duration. (#2717). v4.0.219 2022-01-05 08:29:20 +08:00
winlin
fbb6d9464c Discover api server and ip as candidates. v4.0.218 2022-01-04 22:31:27 +08:00
winlin
7808bd7ca8 Support config in_docker to fix the detect fail. (#2824). v4.0.216 2022-01-03 16:55:52 +08:00
winlin
8bc2759c7e Refine error log for rtmp2rtc. (#2728). v4.0.215 2021-12-31 11:42:49 +08:00
john
a9397598e8
Fix typo(HTTP-Server -> HTTPS-Server) (#2822) 2021-12-29 11:53:16 +08:00
mapengfei53
3f8b1a2922
Fix the error of pps statistics (#2820) 2021-12-29 11:25:30 +08:00
winlin
716e578a19 Squash: Fix bugs 2021-12-26 17:30:51 +08:00
winlin
44e9dc83e9 Upgrade gperftools to 2.9 for GCP/GMC/GMP/GMD. (#2247) 2021-12-26 15:19:08 +08:00
winlin
63da0dca92 Cleanup server for GMC, by WaitGroup to destroy. (#2247). v4.0.206 2021-12-26 11:37:59 +08:00
chundonglinlin
e73d00250b
HTTP: Fix mp4/flv file size exceed 2GB download error (#2780) (#2809) 2021-12-25 08:18:47 +08:00
winlin
2f52d0aefa Fix bug for HLS log printing. (#2807). v4.0.209 2021-12-23 18:38:18 +08:00
winlin
d32195993d Refine the default config file. (#2711). v4.0.208 2021-12-23 18:34:40 +08:00
chundonglinlin
3188c772b1
RTC: Eliminate duplicate assignment for video packet frame type (#2803)
Co-authored-by: zhangjunqin1 <zhangjunqin@jd.com>
2021-12-21 08:32:17 +08:00
Huachao Mao
faeacf1fc9
RTC: Replace payload name AV1X with AV1 for WebRTC. (#2760) (#2784)
* RTC: Replace payload name AV1X with AV1 for WebRTC. (#2760)

* Add compatibility check code for old versions of Chrome

* 新增获取track_desc的AV1X编码兼容性检查
2021-12-20 13:20:03 +08:00
winlin
f05e67e1a6 Squash: Fix bugs 2021-12-13 09:24:16 +08:00
john
7c353b5986 RTC: Fix memory leak when replace rtp packet in cache. (#2771). v4.0.205
* fix memory leak when replace rtp packet in cache.
2021-12-07 09:11:01 +08:00
winlin
8576fa7052 Squash: Merge v4.0.203 2021-12-04 11:21:35 +08:00
john
f3c4023c25
Fix bugs for RTC2RTMP. (#2768)
1. Cache IDR frame's rtp timestamp instead of avsync timestamp.
2. Cache clock rate calculate by sender report.
3. Using srs_rtp_seq_distance instead of direct minus.
4. Add utest of av timestamp sync when duplicated sender report.
2021-12-04 11:15:02 +08:00
winlin
b807ef9049 Fix dead links 2021-12-04 11:08:42 +08:00
winlin
4e64c66e02 RTC: Ignore empty audio packet when transcoding (#2757). v4.0.202 2021-12-04 10:56:37 +08:00
James
2c0cd9b58d
fix #2690, 如果发现音频包为空,则不送解码,以免提前结束了解码上下文 (#2757)
* fix #2690, 如果发现音频包为空,则不送解码,以免提前结束了解码上下文

* fix #2690,出错信息中,显示相关参数名称

Co-authored-by: jiankai <wangjiankai@cmhi.chinamobile.com>
2021-12-04 10:46:17 +08:00
johzzy
ff8657e1c5 RTC: Fix crash when pkt->payload() if pkt is nullptr (#2751). v4.0.199 2021-11-25 07:36:12 +08:00
johzzy
a862573220
RTC: Fix crash when pkt->payload() if pkt is nullptr (#2751) 2021-11-25 07:33:41 +08:00
winlin
66435d583a Squash: Fix stat bug 2021-11-15 20:39:35 +08:00
winlin
f3380d2ec0 Fix bug for CPU arch info 2021-11-15 20:35:20 +08:00
winlin
93242918ad Squash: For #1708 2021-11-15 11:10:44 +08:00
winlin
93964bb037 ST: Print log when multiple thread stop one coroutine. (#1708) 2021-11-15 09:35:23 +08:00
winlin
5f85d405e7 Squash: Merge #2721, #2729 2021-11-13 19:36:43 +08:00
john
469bd8cfe2
RTC: check audio track exist when negotiate (#2729) 2021-11-13 19:09:45 +08:00
john
878833bb95
Rtc2Rtmp: Using rtp timestamp to distinguish different video frame (#2721) 2021-11-09 07:35:00 +08:00
winlin
6cde9a0230 Squash: Guess config files by FHS 2021-11-07 18:53:21 +08:00
winlin
1f4dad024e Config: Guess config files by FHS. v4.0.194 (#2711) 2021-11-07 17:39:58 +08:00
Haibo Chen
b06661539c DVR: Copy req from publish. v4.0.193 (#2714)
* DVR: copy req from publish

* DVR: copy req from publish
2021-11-07 17:01:45 +08:00
Haibo Chen
3974b319d1
DVR: Copy req from publish (#2714)
* DVR: copy req from publish

* DVR: copy req from publish
2021-11-07 16:59:33 +08:00
winlin
84a16774b2 Fix build fail for CentOS6, without SO_REUSEPORT 2021-11-05 18:32:06 +08:00
winlin
523b055c06 Squash: Support RPM. Fix bugs. 2021-11-04 07:37:17 +08:00
Haibo Chen
27083430ce Edge: Refuse edge request when state is stopping (#2707) 2021-11-04 07:30:30 +08:00
Haibo Chen
a01354a595
Edge: Refuse edge request when state is stopping (#2707) 2021-11-04 07:28:48 +08:00
john
2d6ec03c5b
RTC: Remove no need code when check sdp. (#2702) 2021-11-03 07:45:37 +08:00
winlin
ab5079909d For #2369, #1708, #1941: Check errno when close fd or stop thread 2021-10-31 19:33:27 +08:00
winlin
8125dd4dd1 Forward: Fast quit when cycle fail. v4.0.188 (#2284) 2021-10-30 07:59:57 +08:00
winlin
da7fac0939 Release SRS v5.0.19, develop version, not stable 2021-10-28 08:06:26 +08:00
winlin
ed1c499bd3 Gop: Ignore zero timestamp when shrinking. v4.0.187 (#2186) 2021-10-28 07:52:24 +08:00
Haibo Chen
ced518ea92 STAT: Add server_id into http_hooks (#2692) v4.0.185 2021-10-25 14:14:06 +08:00
Haibo Chen
88cdba6965
STAT: Add server_id into http_hooks (#2692) 2021-10-25 14:11:15 +08:00
winlin
5783c4420f For #2689: Support stat for CPU archs. 2021-10-24 18:45:47 +08:00
winlin
99904f9ec2 For #2689: Support stat for CPU archs. 2021-10-24 18:41:12 +08:00
Haibo Chen
592d4964ef API: Always stat client event if auth fail. v4.0.183 2021-10-22 08:06:39 +08:00
Haibo Chen
a86f3905b2
Put the statistics code after http callback (#2687) 2021-10-22 08:03:49 +08:00
winlin
f0910cf9b7 Squash: For #1758: Fix bug for marshal JSON with SDP. 2021-10-21 09:03:17 +08:00
winlin
31693d4b61 For #1758: Fix bug for marshal JSON with SDP. 2021-10-21 07:36:01 +08:00