Commit Graph

248 Commits

Author SHA1 Message Date
hondaxiao
e13d16439e SRT: support rtmp to srt 2022-06-14 20:02:22 +08:00
winlin
fa78cf3354 Prefix with srs_protocol in protocol directory. 2022-06-09 20:26:58 +08:00
winlin
f1840b87e5 Fix typo, change bridger to bridge. 2022-06-09 19:35:07 +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
7580341a1e
LiveSource/RtcSource: Refine fetch for external exposed interface. (#2873) 2022-01-13 11:43:32 +08:00
winlin
716e578a19 Squash: Fix bugs 2021-12-26 17:30:51 +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
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
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
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
b874d9c9ba Squash: Merge SRS 4.0, regression test for RTMP. 2021-10-12 08:36:24 +08:00
winlin
71ed6e5dc5 RTC: Refine config, aac to rtmp_to_rtc, bframe to keep_bframe. v4.0.174 2021-10-11 22:14:45 +08:00
winlin
5042117034 Squash: Merge SRS 4.0 2021-10-07 21:10:44 +08:00
ChenGH
7a4de9ffe7
Fix #2415, refine dtls fragment and rtp payload size (#2652) 2021-10-07 21:05:30 +08:00
winlin
7d3ec991e1 Squash: Merge SRS 4.0 2021-09-26 17:12:55 +08:00
winlin
ad4b648ed2 For #2545, Refine code with space lines. 2021-09-26 17:07:59 +08:00
johzzy
ee23e3abed fix some crash in rtc. (#2545) 2021-09-26 17:04:00 +08:00
johzzy
dc778020fc
fix some crash in rtc. (#2545) 2021-09-26 17:01:53 +08:00
winlin
f01c9638f1 Support http callback on_play/stop. 5.0.12 2021-09-23 13:38:04 +08:00
zozobreakzou
46adcfb6c9
[rtc] *Fix Fua package bug(payload size minus one). (#2618)
* This can cause webrtc video PacketBuffer assemble corrupt when (nal size - 1) % 1300 == 0
* issues about webrtc all caused by this bug
2021-09-23 11:10:16 +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
529b89a29e Fix #2504 coredump bug: caused by publish stream that codec is h.263 (#2505) 2021-08-04 17:14:41 +08:00
Haibo Chen
06f10b1894
fix coredump bug: caused by publish stream that codec is h.263 (#2505) 2021-08-04 17:06:55 +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
Haibo Chen
90b7933dbb For #2403, fix padding packets for RTMP2RTC. 4.0.140.
Calculate the correct payload_size which pure padding data, in the process of rtc2rtmp, make Chrome happy (#2461)

* Calculate the correct payload_size which pure padding data, in the process of rtc2rtmp, make Chrome happy

* make clear for magic number

make clear for magic number

* Update srs_app_rtc_source.cpp
2021-07-08 14:27:51 +08:00
Haibo Chen
7eee9aa598
Calculate the correct payload_size which pure padding data, in the process of rtc2rtmp, make Chrome happy (#2461)
* Calculate the correct payload_size which pure padding data, in the process of rtc2rtmp, make Chrome happy

* make clear for magic number

make clear for magic number

* Update srs_app_rtc_source.cpp
2021-07-08 14:23:53 +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
f043a7eb48 SquashSRS4: Allow RTC play before publish. 2021-05-19 21:06:17 +08:00
root
d55af6be44 Fix #2362: Allow WebRTC to play before publishing, for GB28181 as such. 4.0.117 2021-05-19 20:54:22 +08:00
winlin
e3bca883e1 SuqashSRS4: Build SRT native 2021-05-16 16:14:00 +08:00
winlin
dae6dc5395 Rename SrsRtcStream* to SrsRtcSource*. 4.0.113 2021-05-15 12:33:02 +08:00
winlin
2dd58665fa Rename SrsSource* to SrsLiveSource*. 4.0.112 2021-05-15 12:30:13 +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
f7b32252b0 RTC: Remove Object Cache Pool, no effect. 4.0.110 2021-05-14 16:12:11 +08:00
winlin
53e20d4a37 RTC: Eliminate unused stat code 2021-05-14 09:06:12 +08:00
winlin
8895d36746 SquashSRS4: Refine shared fast timer 2021-05-08 17:44:15 +08:00
winlin
2ad24b2313 Refine shared fast timer. 4.0.105 2021-05-08 16:50:26 +08:00
winlin
3256c7c2fa SquashSRS4: Refine the init of global objects 2021-05-08 11:51:54 +08:00
winlin
8b58d18a5a Refine init of global objects 2021-05-08 11:25:48 +08:00
winlin
b1e85664a1 Refine init of global SrsPps 2021-05-08 11:11:13 +08:00
winlin
276bd2223e SquashSRS4: Support circuit breaker 2021-05-08 10:04:44 +08:00
winlin
25f17c32e9 RTC: Refine fast timer 2021-05-07 18:42:36 +08:00
winlin
92fc0af8f4 RTC: Support circuit breaker. 4.0.103 2021-05-07 17:43:05 +08:00
winlin
fd6c653d3c SquashSRS4: Refine performance for FastTimer 2021-05-07 11:25:37 +08:00
winlin
b823dcdfd7 RTC: Refine FastTimer to fixed interval. 4.0.101 2021-05-07 10:20:00 +08:00
winlin
74bb47c13f SquashSRS4: Support RTC2RTMP. 2021-05-01 22:15:57 +08:00
winlin
3d225973ef Bridger: Support RTC2RTMP bridger and shared FastTimer. 4.0.95 2021-05-01 18:16:51 +08:00
winlin
c770e6d7bc Bridger: Start RTMP2RTC bridger in RTMP publisher 2021-05-01 18:16:51 +08:00
winlin
c10232b4e2 Bridger: Refine transcoder to support aac2opus and opus2aac. 4.0.94 2021-05-01 18:16:51 +08:00
winlin
aa07f45545 SquashSRS4: Happy 2021 2021-04-20 19:03:02 +08:00
winlin
cec0191b16 Happy 2021 2021-04-20 19:00:14 +08:00
winlin
fcf72b48f9 SquashSRS4: Fix republish bug 2021-04-04 19:05:44 +08:00
winlin
96003d4a52 RTC: Fix bug for republish stream. 4.0.89 2021-04-04 19:01:42 +08:00
winlin
fa2fec3247 SquashSRS4: Refine payload NALU type parser 2021-04-01 14:48:41 +08:00
winlin
7823d75a38 RTC: Refine payload NALU type parser 2021-04-01 14:46:28 +08:00
winlin
4692e8b8ad SquashSRS4: Support WebRTC re-publish stream. 2021-03-26 14:59:25 +08:00
winlin
d6c16a7e23 RTC: Support WebRTC re-publish stream. 4.0.87 2021-03-24 20:12:31 +08:00
winlin
de65a331f1 SquashSRS4: Fix DTLS config bug, dup Alert bug. 4.0.83 2021-03-08 12:39:25 +08:00
winlin
fc4f539907 Should check bridger status when publish stream. 2021-03-05 16:47:47 +08:00
winlin
98839d3d53 RTC: Fix TWCC enable bug 2021-03-04 14:13:40 +08:00
winlin
f63441413d RTC: Support disable the NACK no-copy, enable copy by default 2021-03-02 19:34:56 +08:00
winlin
11454b3ced Perf: Avoid RTP packet copy for player NACK. 2021-03-02 19:34:12 +08:00
winlin
51a5e283fc Perf: Avoid RTP packet copy for publisher NACK. 2021-03-02 19:34:10 +08:00
winlin
74f63d6b14 RTC: Ignore NACK when disable for player. 2021-03-02 19:34:08 +08:00
winlin
0aeaf442f7 RTC: Ignore NACK when disable for player. 2021-03-02 19:34:04 +08:00
winlin
033f341ce1 Perf: Refine the recycle RTP packet, user should reset it 2021-03-02 19:33:49 +08:00
winlin
ecef3e7f0a Perf: Refine player cycle, use fast coroutine 2021-03-02 19:33:32 +08:00
winlin
561acd26c5 Refine code 2021-03-02 19:33:27 +08:00
winlin
f2d9eb345c Perf: Refine object cache, avoid dynamic cast 2021-03-02 19:33:15 +08:00
winlin
fc4d7080c6 RTC: Cache the RTP payload objects 2021-03-02 19:32:42 +08:00
winlin
4cb3a18d1e RTC: Apply RTP packet cache manager 2021-03-02 19:32:34 +08:00
winlin
b2d546156e RTC: Refine RTP packet api, keep shared message to private 2021-03-02 19:32:25 +08:00
winlin
6dac180627 Kernel: Never depends on another globals for global variables 2021-03-02 19:30:56 +08:00
winlin
b9352eac0c RTC: Refine stat logs 2021-03-02 19:30:36 +08:00
winlin
2f1e8a6911 RTC: Refine logs 2021-03-02 19:30:26 +08:00
winlin
33f4e02072 RTC: Send NACK one by one to avoid packet freed by context switching 2021-03-02 19:30:18 +08:00
winlin
f987198af0 Clock: Use one system wall clock 2021-02-19 18:52:58 +08:00
winlin
627688c582 RTC: Update stat for received nack 2021-02-10 16:14:47 +08:00
winlin
81db13f27f RTC: Update stat for nack 2021-02-10 16:13:18 +08:00
winlin
2b60112130 RTC: Support disable nack 2021-02-10 15:57:12 +08:00
winlin
b373400257 RTC: Extract NACK handler from stream to track. 2021-01-31 18:06:40 +08:00
winlin
40ea0b67f9 RTC: Refine RTP packet decoder to track and stream 2021-01-31 18:05:51 +08:00
winlin
4bb3ad5637 For #2142, Fix bug for fixing memory leak for bridger. 4.0.62 2021-01-15 16:58:23 +08:00
winlin
4e70bf5eaf For #2142, Fix memory leak for bridger of RTC source stream. 4.0.61 2021-01-15 14:16:32 +08:00
winlin
50bb9eb391 Revert "For #2142, RTC: Fix memory leak"
This reverts commit 2492b726af.
2021-01-15 13:31:58 +08:00
winlin
ed32965aa4 Revert "Fix #2142, Async release bridger when unpublish. 4.0.60"
This reverts commit 06adb9dc42.
2021-01-15 13:30:52 +08:00
winlin
06adb9dc42 Fix #2142, Async release bridger when unpublish. 4.0.60 2021-01-14 19:12:01 +08:00