Commit Graph

684 Commits

Author SHA1 Message Date
winlin
6c94e91792 SRT: Refine get_srt_poller to poller. 2022-06-14 20:02:24 +08:00
hondaxiao
b566182f0b SRT: fix utest failed 2022-06-14 20:02:24 +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
9385f2b80b Merge branch '4.0release' into develop 2022-03-19 13:21:58 +08:00
winlin
41e35155f7 SRT: Compatible with previous auth querystring. #2908 2022-03-19 09:04:51 +08:00
loveforever
210cdf04be
SRT: url supports multiple QueryStrings (#2908)
* SRT:  parse srt url to supports multiple QueryStrings.(#2893)

* SRT:  url supports multiple QueryStrings by  comma-separated key-value pairs with no nesting  (#2893)

* SRT:  url supports multiple QueryStrings by comma-separated key-value pairs with no nesting  (#2893)

* SRT: Add comments for url.

* Add utest for SRT URL parsing.

* Update README.

Co-authored-by: winlin <winlin@vip.126.com>
2022-03-19 08:24:06 +08:00
ChenGH
ab81696102 Bugfix: Fix rtcp nack blp encode bug (#2966). v4.0.248
Co-authored-by: Winlin <winlin@vip.126.com>
2022-03-15 08:43:03 +08:00
ChenGH
70aa6b66bb
bugfix: fix rtcp nack blp encode bug (#2966)
Co-authored-by: Winlin <winlin@vip.126.com>
2022-03-15 08:40:06 +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
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
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
Haibo Chen
290c3b95a5 Fix bug when the value of http header is empty (#2888)
* Fix bug when the value of http header is empty

* add utest
2022-02-03 15:06:06 +08:00
Haibo Chen
b94ce1485a
Fix bug when the value of http header is empty (#2888)
* Fix bug when the value of http header is empty

* add utest
2022-02-03 15:05:09 +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
f05e67e1a6 Squash: Fix bugs 2021-12-13 09:24:16 +08:00
long
4decc1fa6b
RTC: Fix nack encode seqnum (#2766)
* fix nack encode seqnum

* add nack encode utest

* change Variable naming

Co-authored-by: liyalong1 <liyalong1@100tal.com>
2021-12-06 12:42:39 +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
6cde9a0230 Squash: Guess config files by FHS 2021-11-07 18:53:21 +08:00
winlin
df7faa1603 For #2369, #1708, #1941: Add utest to cover fail for close or stop 2021-11-04 08:47:40 +08:00
winlin
523b055c06 Squash: Support RPM. Fix bugs. 2021-11-04 07:37:17 +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
665b5f48f7 Squash: JSON: Support escape special chars. (#1758) 2021-10-20 09:16:18 +08:00
xmedia-systems
34b968aabf JSON: Support escape special chars. (#1758) v4.0.182 2021-10-20 08:57:40 +08:00
Matheus Macabu
061d544195 RTMP: If port is explicity set to 0, use default 1935 (#1754). v4.0.181 2021-10-19 08:24:37 +08:00
Matheus Macabu
9a017f4037
RTMP: If port is explicity set to 0, use default 1935 (#1754) 2021-10-19 08:20:28 +08:00
Haibo Chen
7fd5e8607c DVR: support mp3 audio codec. (#2593) v5.0.17 2021-10-16 14:06:43 +08:00
winlin
b874d9c9ba Squash: Merge SRS 4.0, regression test for RTMP. 2021-10-12 08:36:24 +08:00
winlin
d6064ac608 UTest: Fix utest fail for config 2021-10-11 23:28:37 +08:00
winlin
a81aa2edc5 Squash: Merge SRS 4.0 2021-10-10 12:05:26 +08:00
winlin
2fa5a0bee8 Fix #2304, Remove Push RTSP feature. v4.0.171 2021-10-10 11:50:07 +08:00
winlin
19e857ada4 Remove dead link for issues 2021-10-10 09:31:06 +08:00
Haibo Chen
36b813b971 Enhance HLS: support http callback on_play/stop, support statistic (#2578)
* Enhance HLS: support http callback on_play/stop, support statistic

* make code readable

* make code readable

* rename secret
2021-09-23 13:32:15 +08:00
Haibo Chen
f901831362
Enhance HLS: support http callback on_play/stop, support statistic (#2578)
* Enhance HLS: support http callback on_play/stop, support statistic

* make code readable

* make code readable

* rename secret
2021-09-23 13:31:45 +08:00
winlin
19c0a9eb4b Suqash: Merge 4.0 2021-09-05 14:17:41 +08:00
ChenGH
3f94d26ca4
For #1920, refine rtmp listen ip and port check (#2581) 2021-09-05 14:05:28 +08:00
ChenGH
714e182096
fix srs_string_replace deap loop when new_str inclue old_str (#2580) 2021-09-04 22:29:21 +08:00
Haibo Chen
c8bf98e8e2 Support for multiple SPS/PPS, then pick the first one. (#2544) 2021-08-27 07:32:02 +08:00
Haibo Chen
826f5121c5
Support for multiple SPS/PPS, then pick the first one. (#2544) 2021-08-27 07:27:33 +08:00
winlin
85620a34f5 Squash: Fix rtc to rtmp sync timestamp using sender report. #2470 2021-08-17 07:25:03 +08:00
john
ea8cff6163
RTC: Fix rtc to rtmp sync timestamp using sender report. (#2470)
* fix annotation spell failed

* RTC to RTMP using SenderReport to sync av timestamp

* update pion/webrtc versio from v3.0.4 -> v3.0.13, auto config sender/receiver report

* Add rtc push flv play regression test

* Add unit test of ntp and av sync time

* Take flag CXX to makefile of utest

* Add annotation about rtc unit test

* Fix compiler error in C++98

* Add FFmpeg log callback funciton.
2021-08-17 06:32:35 +08:00
Haibo Chen
86c67f7d95 RTC: Support statistic for HTTP-API, HTTP-Callback and Security (#2483) v4.0.144
* commit message for your changes. Lines starting

* Update srs_app_rtc_api.cpp

* add SrsRtcConnPlay and SrsRtcConnPublish, in enum SrsRtmpConnType

* Update srs_rtmp_stack.cpp

* Update srs_app_rtc_conn.cpp

* Update srs_app_rtc_api.cpp

* update utest

* Update srs_utest_app.cpp
2021-07-24 08:08:35 +08:00
Haibo Chen
0efd7b1bbc
RTC: Support statistic for HTTP-API, HTTP-Callback and Security (#2483)
* commit message for your changes. Lines starting

* Update srs_app_rtc_api.cpp

* add SrsRtcConnPlay and SrsRtcConnPublish, in enum SrsRtmpConnType

* Update srs_rtmp_stack.cpp

* Update srs_app_rtc_conn.cpp

* Update srs_app_rtc_api.cpp

* update utest

* Update srs_utest_app.cpp
2021-07-24 08:05:10 +08:00
Winlin
c8a1e0f3da
Refine AUTHORS.txt to AUTHORS.md, etc. 5.0.8 (#2464)
* Refine AUTHORS.txt to AUTHORS.md, etc. 5.0.8

* Update README.md

* Update README.md

* Refine format for AUTHORS.md
2021-07-08 14:30:47 +08:00
winlin
15901cacee SquashSRS4: Use SPDX-License-Identifier: MIT. 5.0.3 2021-05-31 13:42:20 +08:00
winlin
3cd22b6e6e Use SPDX-License-Identifier: MIT. 4.0.124 2021-05-31 12:59:21 +08:00
winlin
a1d7fe46c1 SquashSRS4: Rename SrsRtpPacket2 to SrsRtpPacket. 2021-05-15 08:53:54 +08:00
winlin
ddd7a378b1 Rename SrsRtpPacket2 to SrsRtpPacket. 4.0.111 2021-05-15 08:47:09 +08:00
winlin
6a980683f7 SquashSRS4: Remove object cache and stat api 2021-05-14 18:17:42 +08:00
winlin
ab0979a4ea RTC: Remove DTLS utests, cover by regression test 2021-05-14 18:14:00 +08:00
winlin
717e811002 Change virtual public to public. 4.0.109 2021-05-14 09:13:15 +08:00
winlin
3256c7c2fa SquashSRS4: Refine the init of global objects 2021-05-08 11:51:54 +08:00
winlin
f370259c9d Fix build fail 2021-05-08 11:42:50 +08:00
winlin
b6f2745822 Refine init of global variables 2021-05-08 10:25:04 +08:00
winlin
ea1f32526a RTC: Remove DTLS utest, cover by regression test 2021-04-27 18:54:10 +08:00
winlin
8b74c7cb89 SquashSRS4: Happy 2021 2021-04-16 09:29:43 +08:00
winlin
d01e603b25 Happy 2021 2021-04-16 09:25:55 +08:00
winlin
e74810230a SquashSRS4: Regine DTLS and add regression tests. 4.0.84 2021-03-10 08:29:40 +08:00
winlin
62987aa01f DTLS: Refine retransmit between ClientHello and Certificate. 2021-03-09 22:12:23 +08:00
winlin
dc93836489 SquashSRS4: Refine DTLS init, use specified API by role 2021-03-09 12:01:23 +08:00
winlin
3c6e466280 DTLS: Use specified init API, to decrease packet size 2021-03-09 11:54:27 +08:00
winlin
3bb1b673c5 Merge SRS4, lots of features 2021-03-04 14:49:03 +08:00
winlin
de87dd427d Fix utest fail 2021-03-04 14:18:54 +08:00
winlin
6bacccd1b8 Fix utest fail 2021-02-19 18:54:16 +08:00
winlin
044df17791 Fix utest fail 2021-02-19 18:53:23 +08:00
winlin
37679f2acc Fix utest fail 2021-02-19 11:18:42 +08:00
winlin
3147c8f9bc Fix utest fail 2021-02-15 12:37:16 +08:00
winlin
6b260d6021 Fix utest fail 2021-02-10 16:17:01 +08:00
winlin
52609ea2f0 RTC: Use vector for fast search fast-id 2021-02-10 15:57:55 +08:00
winlin
152c161de3 Fix utest fail 2021-02-09 21:56:30 +08:00
winlin
3d34eb33e5 Fix utest fail 2021-02-07 22:11:35 +08:00
winlin
95193979f4 RTC: Use vector for fast search fast-id 2021-02-07 19:31:46 +08:00
winlin
b6843428c6 Fix build warnings 2021-01-08 14:09:28 +08:00
winlin
81d78310a0 Fix build warnings 2021-01-08 13:29:32 +08:00
winlin
61f62ceec6 Fix build warnings 2021-01-08 11:48:56 +08:00
winlin
473942c6f6 Kernel: Add utest for srs_string_split 2021-01-08 10:27:12 +08:00
winlin
bfa156247c Merge branch '4.0release' into develop 2021-01-07 17:47:54 +08:00
winlin
1c41f5d796 Merge SRS3, change id of stat to string 2021-01-07 17:04:11 +08:00
winlin
fb7c051833 Change id from int to string for the statistics. 3.0.157 2021-01-07 16:47:49 +08:00
winlin
248085edfe For #2109, Add more utest for srs_string_split 2021-01-07 12:30:51 +08:00
winlin
155587d2c1 RTC: Fix parse error stap playload crash bug 2021-01-05 10:56:05 +08:00
winlin
4d18835f3c Fix build fail 2020-12-21 10:37:33 +08:00
winlin
90b61ad952 Merge SRS4 2020-12-18 10:14:26 +08:00
winlin
5ebf034aea For #1694, Refine API for nb_bytes 2020-12-18 09:56:40 +08:00
winlin
c17474627b Merge SRS3 2020-12-18 09:34:32 +08:00
winlin
25c76c1e8a Fix #1694, Support DVR 2GB+ MP4 file. 3.0.155 2020-12-17 18:43:45 +08:00
winlin
27db60cc23 Fix #1996, Heap off-by-one in utest 2020-12-01 19:49:15 +08:00
莫战
b38f30c3ee support query parsing and escape 2020-12-01 16:27:37 +08:00
莫战
dc7124cd05 support base64 encode 2020-12-01 16:04:55 +08:00
winlin
07c04a042a URI: Refine uri parser 2020-11-10 18:51:21 +08:00
winlin
d67b050935 For #1657, fix the jsonp bug 2020-11-05 17:57:22 +08:00
winlin
7c68487bf7 For #1657, Fix utest fail 2020-11-03 17:04:05 +08:00
winlin
8c1eca98b0 Merge SRS3.0 2020-10-31 19:25:56 +08:00
winlin
86f8cbb5eb Remove some global elements for debugging. 3.0.152 2020-10-31 18:01:16 +08:00
winlin
b348539687 Remove some global elements for debugging. 3.0.152 2020-10-31 17:53:00 +08:00
winlin
ba6462aab4 RTC: Refine DTLS ARQ, use step interval 2020-10-03 21:34:34 +08:00
winlin
e61391028e RTC: Refine utest for DTLS 2020-10-03 20:10:42 +08:00
winlin
776f24cf3d Refine resource manager, ignore unsubscribed handler 2020-10-02 09:13:41 +08:00
winlin
1a33452e95 Refine resource manager, fix loop and context switching bug 2020-09-20 22:09:03 +08:00
winlin
033e2f9210 Add utest for resource manager 2020-09-20 21:10:48 +08:00
winlin
4e2fca2b0f Fix utest fail 2020-09-19 12:37:39 +08:00
winlin
8bf677e3c8 Refine code 2020-09-19 10:53:55 +08:00
winlin
64705d1cc8 RTC: Refine resouce management 2020-09-19 10:30:05 +08:00
winlin
f7faa13dc5 RTC: Cover connection manager coroutine switch when dispoing conn 2020-09-17 11:44:16 +08:00
winlin
dd7587c497 Dispose session when DTLS alert 2020-09-14 10:47:06 +08:00
winlin
86a80396de Add utest for connection manager 2020-09-13 13:08:49 +08:00
winlin
72122c746a Fix utest build fail 2020-09-13 11:01:34 +08:00
winlin
b095c15720 Fix utest fail 2020-08-30 11:55:18 +08:00
winlin
afd20563ad Refine string dump to hex 2020-08-20 13:56:05 +08:00
winlin
036cc2a7a2 RTC: Limit the ARQ for DTLS 2020-08-19 21:28:06 +08:00
winlin
9416fddd2b RTC: Refine DTLS impl, extract client and server 2020-08-19 19:06:00 +08:00
winlin
466813b7d5 RTC: Covert client ARQ for DTLS 2020-08-19 17:35:15 +08:00
winlin
e4b0dd56f0 RTC: Covert server ARQ for DTLS 2020-08-19 17:22:34 +08:00
winlin
1d17666641 RTC: Add utest for DTLS client 2020-08-19 10:31:46 +08:00
winlin
307c644f18 Fix build fail 2020-08-18 19:35:35 +08:00
winlin
17bef0402e RTC: Fix error code for DTLS 2020-08-18 19:29:35 +08:00
winlin
c33dfd2313 RTC: Add utest for DTLS 2020-08-18 19:20:07 +08:00
winlin
74a0a2e969 RTC: When parsing header, should ignore padding 2020-08-12 15:18:45 +08:00
winlin
6bc316016b RTC: For NACK, it sequence must match exactly, or it cause SRTP fail 2020-08-10 15:06:08 +08:00
winlin
77b6151857 RTC: Use srs_string_dumps_hex to dump some bytes when error 2020-08-05 16:23:31 +08:00
winlin
d439e36344 RTC: Covert basic packet identify for DTLS/STUN/RTP/RTCP 2020-08-04 17:03:25 +08:00
winlin
c659098f71 RTC: Set tracks to active for publisher 2020-08-04 13:45:17 +08:00
winlin
4aabbd74dc RTC: Cover default status of track 2020-08-03 13:12:39 +08:00
winlin
c72fb76334 RTC: Cover default track status 2020-08-03 13:10:00 +08:00
winlin
0408040ed7 Fix utest fail for C++11 or C++14 2020-07-30 19:26:28 +08:00
winlin
8e22508057 Refine utest 2020-07-30 18:54:16 +08:00
winlin
0a057a0427 Log: Refine log context, use const 2020-07-13 11:19:34 +08:00
winlin
0a16b1c1e3 Log: Refine log context. 2020-07-11 20:58:25 +08:00
winlin
f551ff5ae8 Log: Use string compare function 2020-07-05 23:49:47 +08:00
winlin
6624b8acca Log: Use object as context id for complex context 2020-07-05 23:26:55 +08:00
winlin
5f951ca126 HTTP: Fix the http parser fail bug, always reset the parser. 2020-07-04 21:25:56 +08:00
winlin
e01b98c91e HTTP: Add utest for http infinite chunked 2020-07-04 11:38:09 +08:00
winlin
671af4369b HTTP: Only enable infinite chunked for HTTP_REQUEST 2020-07-03 17:05:01 +08:00
winlin
1c3e4c71ee Fix utest fail 2020-07-02 16:28:26 +08:00
winlin
df9efb6486 RTC: Infinite chunk handle read error as EOF. 2020-07-02 16:20:32 +08:00
winlin
9ff8bff601 RTC: Fix the OPTIONS read, no infinited chunked mode 2020-07-02 12:41:08 +08:00
winlin
a273298e63 HTTP: Enable infinite_chunked by default 2020-06-30 19:29:23 +08:00
winlin
9e447e541b Fix utest failed 2020-06-30 10:05:01 +08:00
winlin
81d2e10f65 Refactor ISrsContext and ISrsLog 2020-06-25 13:14:59 +08:00
winlin
7627c290c9 Fix context string ID bug 2020-06-19 08:57:18 +08:00
winlin
8a0c2e01f8 Log: Change cid from int to string 2020-06-18 11:45:43 +08:00
winlin
69e4a1b5e7 RTC: Refactor variable name 2020-05-19 18:06:12 +08:00
忘篱
d603b1580e RTC: Merge srs_rtp_seq_distance with srs_seq_is_newer 2020-05-17 09:03:40 +08:00
忘篱
3f5ab8dc63 RTC: Add utest for srs_rtp_seq_distance 2020-05-17 00:03:14 +08:00
winlin
8933e6f429 Fix utest build failed. 2020-05-05 08:35:16 +08:00
winlin
ed338f4c0a Refactor macro SRS_AUTO_XXX to SRS_XXX. 2020-04-29 20:02:28 +08:00
winlin
ee1002fc3d Fix OSX utest failed. 2020-04-22 11:39:18 +08:00