Commit Graph

4655 Commits (d57e9c758ea5d371a6aefae49f01c9e600ae89f3)

Author SHA1 Message Date
winlin ef43532cf4 Merge #2440, fix #2390, SRT bug for zerolatency. 4.0.137 4 years ago
Alex.CR 7e164b0061 SRT: Fix bug for multiple NALUs, when configure OBS in zerolatency. (#2440)
* solve srt push bugs

* solve h264 mutiple nalus in srt when obs is configured in zerolatency

* optimize error code

* optimize error code

* optimize error code

* add commemnt:we only skip pps/sps frame and send left nalus in srt

* add commemnt:we only skip pps/sps frame and send left nalus in srt

Co-authored-by: shiwei <shiwei05@kuaishou.com>
4 years ago
long cff4c07be4
打开rtmp转rtc,当rtmp重复推流时,第2路会影响第1路流的正常播放。 (#2448)
* Update srs_app_rtmp_conn.cpp

修复推重复的RTMP流导致的RTC和RTMP播放的问题

* change ERROR_RTC_SOURCE_BUSY to ERROR_SYSTEM_STREAM_BUSY

change ERROR_RTC_SOURCE_BUSY to ERROR_SYSTEM_STREAM_BUSY

Co-authored-by: Haibo Chen <495810242@qq.com>
4 years ago
winlin 98e56f5325 Refine the random id by srs_random_str 4 years ago
winlin 6ea270adf3 Merge #2435, fix #2015, fix bug for HTTP-RAW-API to check vhost. 4.0.136 4 years ago
Xiaoniu 31679c46d4 check 'vhost' validity in 'http raw dvr api' (#2435) 4 years ago
winlin bfae75077e Fix #2431, configure FFmpeg bug. 4.0.135 4 years ago
winlin c8d8581d4b For #2444, add libavcodec/crystalhd.c for FFmpeg. 4.0.134 4 years ago
Xiaoniu 7bf03ef2ba Fix #2068, losing of last HLS ts file 4.0.133
fix bug: last segment of ts not trigger 'on_hls',
because of 'on_unpublish' earlier than 'segment_close' (#2438)
4 years ago
winlin aa12251084 Fix bug for v3.0-r6 4 years ago
winlin da763e43d5 Squash for #2424, query the latest available version. 4.0.132 4 years ago
winlin 25262dd3cb Fix SRT bug. 4.0.131 4 years ago
Alex.CR bb9aefd869 srt publish core dump bug (#2429)
* solve srt push bugs

Co-authored-by: shiwei <shiwei05@kuaishou.com>
4 years ago
winlin 5906345a97 Fix #2413, fix RTMP to RTC bug 4.0.130 4 years ago
john 1347da81f8
Check audio/video track when rtc stream updated (#2418) 4 years ago
winlin 70e552ef23 Guess where FFmpeg is. 4.0.129 4 years ago
winlin a52e7c08ea Update AUTHORS 4 years ago
winlin 229578cc65 Fix #1685, support RTC cross-build for armv7/armv8(aarch64). 4.0.128 4 years ago
winlin 1e9de0e191 For #1685: Cross build RTC with FFmpeg 4 years ago
winlin 1c75a270b3 RTC: Eliminate dead code. 4 years ago
winlin 623a453787 Fix #2214, remove detection for gmc and gmp. 4 years ago
winlin df20fe6c9d Fix build fail 4 years ago
winlin 68c48e27f5 Change GB28181 to feature/gb28181. 4.0.127 4 years ago
winlin d5266725e2 Build: Support --shared-ffmpeg to link with *.so for LGPL license. 4.0.126 4 years ago
winlin f44224a2a1 Build: Support --shared-srt to link with *.so for MPL license. 4.0.125 4 years ago
winlin 67272f0721 Fix build fail for SPDX 4 years ago
winlin 3cd22b6e6e Use SPDX-License-Identifier: MIT. 4.0.124 4 years ago
winlin 4cf1f852cf Fix bugs for GB28181 and RTC. 4.0.123 4 years ago
johzzy 7be6025546 fix: fix typo about inactive. (#2380) 4 years ago
louis.xia 1c7c74b01a GB28181: Fix parse rtp tcp failed (#2382)
* fix parse rtp-tcp failed

* fix parse rtp-tcp failed

* fix gb28181 support tcp stack is setup:passive

* Update push.gb28181.tcp.conf

Co-authored-by: cfw <fangwei.cheng@transwarp.io>
Co-authored-by: Winlin <winlin@vip.126.com>
4 years ago
cfw11 3e7536c493 GB28181: fix parse rtp-tcp failed (#2378)
* fix parse rtp-tcp failed

* fix parse rtp-tcp failed

Co-authored-by: cfw <fangwei.cheng@transwarp.io>
4 years ago
winlin 8e79b90bc3 RTC: Eliminate dead code. 4.0.122 4 years ago
winlin 5df90a2a1c Fix #2370 bug for Firefox play stream(published by Chrome). 4.0.121 4 years ago
winlin 37c9066636 RTC: Refine sdk, migrate from onaddstream to ontrack. 4.0.120 4 years ago
winlin 0c1e60c8df Tools: Refine configure options. 4.0.119 4 years ago
winlin 9e5c4e2c5b RTC: Fix build fail 4 years ago
winlin fc9363e7df Fix build fail when disable RTC by --rtc=off. 4.0.118 4 years ago
winlin af04285baa Tools: Remove srs-librtmp 4 years ago
chenhaibo bd506da070 Fix #2366, bug when disabled gb28181. 4 years ago
winlin 8f304b94ec Refine comments 4 years ago
root d55af6be44 Fix #2362: Allow WebRTC to play before publishing, for GB28181 as such. 4.0.117 4 years ago
Xiaoniu 75607d0723 Fix #2364: Live: Fail for stream busy if GB28181 is publishing. 4 years ago
winlin 0d14c4b073 System: Fail if use use full.conf 4 years ago
winlin 1bd6bfd142 GB28181: Rename sip and jitter file. 4 years ago
xialixin 4c2b19a264 GB28181: Refine for bad network, we can wait for more incomplete frames 4 years ago
xialixin 7d8bde3cdb Fix #2355: GB28181: Fix play by RTC bug. 4.0.116 4 years ago
winlin 4639510f1b RTC: Allow config perf_stat and queue_length of rtc_server 4 years ago
hondaxiao 90f1b482ab SRT: Build SRT from source by SRS. 4.0.115 4 years ago
winlin 3dce568b9c Rename SrsConsumer* to SrsLiveConsumer*. 4.0.114 4 years ago
winlin dae6dc5395 Rename SrsRtcStream* to SrsRtcSource*. 4.0.113 4 years ago
winlin 2dd58665fa Rename SrsSource* to SrsLiveSource*. 4.0.112 4 years ago
winlin 9b6a1b16e1 RTC: Eliminate unused perf_stat 4 years ago
winlin ddd7a378b1 Rename SrsRtpPacket2 to SrsRtpPacket. 4.0.111 4 years ago
winlin ab0979a4ea RTC: Remove DTLS utests, cover by regression test 4 years ago
winlin f7b32252b0 RTC: Remove Object Cache Pool, no effect. 4.0.110 4 years ago
winlin 717e811002 Change virtual public to public. 4.0.109 4 years ago
winlin 53e20d4a37 RTC: Eliminate unused stat code 4 years ago
winlin cd45750c9d RTC: Eliminate unused stat API 4 years ago
winlin 06f7d7d11b Refine id and vid for statistic. 4.0.108 4 years ago
winlin 393d976685 SquashSRS4: Fix memory leak 4 years ago
winlin 996c7d5697 SquashSRS3: Fix bug 4 years ago
winlin 8c5a435714 Fix print bug in retrieve_local_ips. 4.0.107 4 years ago
winlin 6dc93fe0a8 RTC: Update benchmark data 4 years ago
winlin 3bf1b0cb7d Refine tid for sdk and demos. 4.0.106 4 years ago
winlin 2ad24b2313 Refine shared fast timer. 4.0.105 4 years ago
winlin f370259c9d Fix build fail 4 years ago
winlin 4cf6da107c Refine init of global objects 4 years ago
winlin 8b58d18a5a Refine init of global objects 4 years ago
winlin b1e85664a1 Refine init of global SrsPps 4 years ago
winlin b6f2745822 Refine init of global variables 4 years ago
winlin e8f7c913b0 Refine global or thread-local variables initialize. 4.0.104 4 years ago
winlin e7cce88912 RTC: Refine timer stat 4 years ago
winlin 25f17c32e9 RTC: Refine fast timer 4 years ago
winlin 92fc0af8f4 RTC: Support circuit breaker. 4.0.103 4 years ago
winlin 46c980c70a RTC: Eliminate unused code 4 years ago
winlin 4527a91545 RTC: Refine play stream find track. 4.0.102 4 years ago
winlin b823dcdfd7 RTC: Refine FastTimer to fixed interval. 4.0.101 4 years ago
winlin 0c0b467917 RTC: Transform config for nack/twcc. 4.0.100 4 years ago
winlin b41788ca4a RTC: Fix config bug for nack and twcc. 4.0.99 4 years ago
winlin 4f48ad7a8b RTC: Fix config check bug for nack and twcc 4 years ago
winlin 81a87d07f6 Add video room demo. 4.0.98 4 years ago
winlin 9fb2b69212 Add RTC stream merging demo by FFmpeg. 4.0.97 4 years ago
winlin 5a611e0c4b Add one to one demo. 4.0.96 4 years ago
winlin 8a30cc86d9 Bridger: Fix build fail if disable rtc and ffmpeg-fit 4 years ago
winlin 3d225973ef Bridger: Support RTC2RTMP bridger and shared FastTimer. 4.0.95 4 years ago
winlin c770e6d7bc Bridger: Start RTMP2RTC bridger in RTMP publisher 4 years ago
winlin c10232b4e2 Bridger: Refine transcoder to support aac2opus and opus2aac. 4.0.94 4 years ago
winlin 00c192ede1 Timer: Apply shared FastTimer to RTC server. 4.0.93 4 years ago
winlin 8747dd6630 Timer: Extract shared FastTimer to use one timer for all connections 4 years ago
winlin 659e173e15 RTC: Refine for writing doc. 4.0.92 4 years ago
Winlin e8fe66e3ba
RTC: Support av1 for Chrome M90 enabled it. 4.0.91 (#2324)
* RTC: Support av1 for Chrome M90 enabled it. 4.0.91

* RTC: Show codec for WebRTC publisher
4 years ago
winlin a9d39f6946 RTC: Refine API params to create connection 4 years ago
winlin 7cae97e4d3 SquashSRS3: Update players 4 years ago
winlin 5516d3751f Change push-RTSP as deprecated feature. 4 years ago
winlin 5232f9e043 Disable CherryPy by --cherrypy=off. 4.0.90 4 years ago
winlin de1c7522f0 SquashSRS3: Add console 4 years ago
winlin 9ed7565789 SquashSRS3: Package srs-console 4 years ago
winlin cec0191b16 Happy 2021 4 years ago
winlin d01e603b25 Happy 2021 4 years ago
stone 6da91f7dea For #2275, fix bug for transcode engine config param. 4 years ago
winlin aae0f61165 RTC: Eliminate the dup code 4 years ago
winlin 061f367a82 RTC: Fix RTC connection dispose bug 4 years ago
winlin db7e820f04 RTC: Fix DTLS warnings for HTTP api 4 years ago
winlin 96003d4a52 RTC: Fix bug for republish stream. 4.0.89 4 years ago
winlin 8d9dd532b9 RTC: Fix bug for republish stream. 4.0.89 4 years ago
winlin 3c59fedab6 RTC: Fix memory leak 4 years ago
winlin 7823d75a38 RTC: Refine payload NALU type parser 4 years ago
winlin aa5d872b8c RTC: Refine TWCC and SDP exchange. 4.0.88 4 years ago
winlin bd1752a4b2 RTC: Fix TWCC send bug 4 years ago
winlin 7ac4a4f4ca RTC: Fix audio track description bug 4 years ago
winlin f4b791a9d5 Kernel: Never assert for SrsBuffer::require 4 years ago
winlin 4d5c7e0a73 RTC: Fix object cache bug, reset payload when recycle 4 years ago
winlin f2d0c34244 RTC: Refine comments for SrsRtpPacket2 4 years ago
winlin d6c16a7e23 RTC: Support WebRTC re-publish stream. 4.0.87 4 years ago
winlin 0cb05a2953 RTC: Refine ID parsing 4 years ago
winlin 89f941fadc Refine version file 4 years ago
winlin 6c7e24fc6d RTC: Eliminate dead code, we nerver send offer 4 years ago
winlin 4c39cc7c2f RTC: Use fast parse TWCCID, ignore in packet parsing. 4.0.86
1. TWCC should not be passed from end to end.
2. Publisher TWCC information, should be ignore when pass to player
3. Player should regenerate its own TWCC.
4 years ago
winlin f5ff28d47a RTC: Refine play stream init 4 years ago
winlin 3fea5c0ec3 Test: Add republish regression test, should fail 4 years ago
winlin a3dbb22696 Fix bugs. 4.0.85 4 years ago
winlin a53fe451ff RTC: Feed TWCC then drop the specified PT packet.
1. Sometimes we might drop RTP packets, by PT(payload type).
2. For example, the padding packets from client.
3. We should feed these packets to TWCC, then drop it.
4 years ago
winlin d4d11c2c18 DTLS: Change max loop to larger 4 years ago
winlin 62987aa01f DTLS: Refine retransmit between ClientHello and Certificate. 4 years ago
winlin 02aac0fea4 DTLS: Fix ARQ bug, use openssl timeout. 4.0.84 4 years ago
winlin 3c6e466280 DTLS: Use specified init API, to decrease packet size 4 years ago
winlin 3a5d88b435 DTLS: Disable QueryMTU for openssl, or the packet get fragmented 4 years ago
winlin 079c54bbe7 Add important comment for ST 4 years ago
winlin 55bdc354f5 Add important comment for disposing and thread stop 4 years ago
winlin e4df2eb2ce DTLS: Fix dead loop by duplicated Alert message. 4.0.83 4 years ago
winlin 1ed567a005 DTLS: Fix dead loop by duplicated Alert message 4 years ago
winlin 43028c99c8 Fix bug when client DTLS is passive. 4.0.82 4 years ago
winlin fc4f539907 Should check bridger status when publish stream. 4 years ago
winlin c143b6bfd0 Squash SRS3: Update README for docker 4 years ago
winlin de87dd427d Fix utest fail 4 years ago
Pieere Pi 4ba485002c Fix #2106, #2011, RTMP/AAC transcode to Opus bug. 4.0.81 4 years ago
winlin 8089fc004c Upgrade libsrtp from 2.0.0 to 2.3.0, with source code. 4.0.79 4 years ago
winlin 98839d3d53 RTC: Fix TWCC enable bug 4 years ago
winlin 96dbd7bced Upgrade openssl from 1.1.0e to 1.1.1b, with source code. 4.0.78 4 years ago
winlin 8f1c992379 Refine code, rename drop to loss 4 years ago
winlin d4b8a57cf7 Enable Object Cache and Zero Copy Nack by default. 4.0.77 4 years ago
winlin 57f16299f4 Fix #2219, Ubuntu build fail. Add CI for ubuntu20 4 years ago
winlin 58924d41b1 RTC: Support high performance NO-COPY-NACK. 4.0.76 4 years ago
winlin f63441413d RTC: Support disable the NACK no-copy, enable copy by default 4 years ago
winlin 50860325dd RTC: Fix copy RTP packet bug 4 years ago
winlin 2719e4c0be Refine code 4 years ago
winlin ee9ef378f9 RTC: Fix bug for wrap exists buffer size 4 years ago
winlin b91d37b78a RTC: Store the actual size of buffer for RTP packet. 4 years ago
winlin 171ae5dd2d RTC: Fix shared msg cache bug 4 years ago
winlin eed98dd85b RTC: Refine code, remove the reset for header 4 years ago
winlin 5d4baf4eca RTC: Refine code, remove the assign 4 years ago
winlin 7c517988a6 Perf: Refine header extensions marshal 4 years ago
winlin eb9a263433 Cache RTP packet size, revert 9ee0ed919a 4 years ago
winlin 11454b3ced Perf: Avoid RTP packet copy for player NACK. 4 years ago
winlin 51a5e283fc Perf: Avoid RTP packet copy for publisher NACK. 4 years ago
winlin 74f63d6b14 RTC: Ignore NACK when disable for player. 4 years ago
winlin 0aeaf442f7 RTC: Ignore NACK when disable for player. 4 years ago
winlin f831e9240e RTC: Fast copy shared message for RTP 4 years ago
winlin 42223b3f2e RTC: No cache for RTP packet size. 4 years ago
winlin 3728b07c49 Perf: Refine RTP packet copy 4 years ago
winlin 033f341ce1 Perf: Refine the recycle RTP packet, user should reset it 4 years ago
winlin b1457dfc16 Perf: Refine copy RTP header. 4 years ago
winlin 81dddcbd93 RTC: Remove dead code 4 years ago
winlin 00b0e22402 Refine code 4 years ago
winlin cca5f8db82 Refine code 4 years ago
winlin 6d64490d73 Perf: Never reset the csrc 4 years ago
winlin 0fa3646c4a Perf: Directly reference the extmap 4 years ago
winlin e441702246 Refine code 4 years ago
winlin e2bf9f3623 Refine code, remove goto 4 years ago
winlin ecef3e7f0a Perf: Refine player cycle, use fast coroutine 4 years ago
winlin 29b33e6303 RTC: Disable player perf stat, because it should be refined. 4 years ago
winlin 561acd26c5 Refine code 4 years ago
winlin db0090be05 Refine code 4 years ago
winlin aacdc21d1c Refine object cache. 4 years ago
winlin 1e2daf9ea3 Refine comments for object cache 4 years ago
winlin 6656330d2a Perf: Use vector to replace list for object cache 4 years ago
winlin f2d9eb345c Perf: Refine object cache, avoid dynamic cast 4 years ago
winlin 73e357a93f RTC: Support object cache pool. 4.0.75 4 years ago
winlin 8e4f252686 Support reload the object cache pool 4 years ago
winlin 501104e728 Perf: Limit the size of object cache pool 4 years ago
winlin 3989f2d553 RTC: Refine the stat logs, limit the object cache pool 4 years ago
winlin 30d760f909 RTC: Only cache the UDP packet message 4 years ago
winlin c00d286344 Perf: Refine the stat 4 years ago
winlin 919107c674 Perf: Stat the shared messages. 4 years ago
winlin fc4d7080c6 RTC: Cache the RTP payload objects 4 years ago
winlin 4d0863468a RTC: Cache the large buffer allocation 4 years ago
winlin 6e9cb059b3 RTC: Stat the large buffer allocation 4 years ago
winlin 4cb3a18d1e RTC: Apply RTP packet cache manager 4 years ago
winlin 86f43d4f72 RTC: Support RTP packet cache manager 4 years ago
winlin bde86a2b23 RTC: Refine RTP packet buffer allocate, align to about 1500 bytes 4 years ago
winlin b2d546156e RTC: Refine RTP packet api, keep shared message to private 4 years ago
winlin 0cb125e53d RTC: Refine publisher memory allocate, by packet itself 4 years ago
winlin cec588e08a For #2188: Remove sendmmsg from ST. 4 years ago
winlin d7bc8b98fb Fix build warning 4 years ago
winlin 048a72ab6e RTC: Refine memory allocate for publisher 4 years ago
winlin 23fa3fb350 RTC: Refine memory allocate for publisher 4 years ago
winlin 4aa82b2fbf RTC: Refine memory copy, allocate it later 4 years ago
winlin edb8a0f497 RTC: Cache the buffer for player 4 years ago
winlin e7529ce9dc RTC: Stat the RTP and payload objects 4 years ago
winlin 6dac180627 Kernel: Never depends on another globals for global variables 4 years ago
winlin d8ba72fdc5 Kernel: Extract SrsPps to kernel 4 years ago
winlin df6e47ebfc RTC: Refine stat for RTC server 4 years ago
winlin 5ff9977572 Perf: Improve fast find for pithy print 4 years ago
winlin 9ab12f9f2f RTC: Stat the drop of UDP packets. 4 years ago
winlin b9352eac0c RTC: Refine stat logs 4 years ago
winlin 09bd1b9faa RTC Stat the detail of send packets 4 years ago
winlin d92ceaca39 RTC: Stat the detail of received packets 4 years ago
winlin 6c24f2e353 Refine logs 4 years ago
winlin 2f1e8a6911 RTC: Refine logs 4 years ago
winlin 33f4e02072 RTC: Send NACK one by one to avoid packet freed by context switching 4 years ago
winlin e1a840772d RTC: Refine TWCC and RTCP timer to 100ms. 4 years ago
winlin 6d3aa2c426 Refine code. 4.0.74 4 years ago
winlin 3a83a74dfc Stat: Refine stat bug for timer 4 years ago
winlin 5b8eea8cc5 Stat: Fix build fail for stat of timer and dispose 4 years ago
winlin 941a9aaf7a Refine timer, 4.0.73 4 years ago
winlin 6bacccd1b8 Fix utest fail 4 years ago
xialixin@kanzhun.com fdaee20b81 For #2200, Enable RTC and FLV for GB28181 4 years ago
winlin 1f621a6db3 Remove dead code: memory watch 4 years ago
winlin 0fe031a156 Support to disable stats by default 4 years ago
winlin 7d75f0af0f Remove dead code 4 years ago
winlin 044df17791 Fix utest fail 4 years ago
winlin c5d2027f9a RTC: Support high performance timer about 25ms resolution. 4.0.72 4 years ago
winlin ebcba149ae For #2194, yield for timer, for rtc player 4 years ago
winlin df1eca10fb For #2194, yield for timer, for rtc publisher 4 years ago
winlin a049ce3fb7 For #2194, Core: Refine yield for high performance timer. 4 years ago
winlin a5a96491a3 For #2194, yield for timer, for live publisher 4 years ago
winlin d1bcc03d9a For #2194, yield for high performance timer, for live player 4 years ago
winlin c0fda42743 For #2194, Support ST yield 4 years ago
winlin d8563398b2 Clock: Update stat. Insert timer to execute first 4 years ago
winlin f987198af0 Clock: Use one system wall clock 4 years ago
winlin 9db7126eb4 Core: Refine ST stat for thread switch 4 years ago
winlin 15f7fa2c36 Core: Refine ST stat for io events 4 years ago
winlin 12d7e57011 Core: Refine sched and clock stat 4 years ago
winlin c2332f9e55 Core: Use 20ms wall clock 4 years ago
winlin bddc787a16 Refine the pps. 4 years ago
winlin 70fb647ac9 Perf: Add stat for sched of ST. 4 years ago
winlin e91e0eaf46 Perf: Add stat for io of ST. 4 years ago
winlin b431ad738c RTC: Refine performance about 700+ streams. 4.0.71 4 years ago
winlin b7c7d6566f Fix build fail 4 years ago
winlin 2aa94c643c Refine server stat, extract to hybrid server stat 4 years ago
winlin 6b260d6021 Fix utest fail 4 years ago
winlin 7114682eec Timer: Apply timer(HourGlass) to server and sources 4 years ago
winlin 77cffd3e04 Main: Refine sever manager. 4 years ago
winlin f9bd84109b Timer: Refine the hour glass, support stop 4 years ago
winlin 4a37fe30c7 RTC: Refine RTP header, never extends from any class 4 years ago
winlin 6feaeace27 RTC: Send NACK by timer, no by RTP packet 4 years ago
winlin d2e728812b RTC: Send NACK by timer, no by RTP packet 4 years ago
winlin 5919865e5d RTC: Refine NACK check, interval, time 4 years ago
winlin 627688c582 RTC: Update stat for received nack 4 years ago
winlin 44c85cc3d2 RTC: Never copy the packet for hijack. 4 years ago