Commit Graph

48 Commits

Author SHA1 Message Date
OSSRS-AI
5d01393307 AI: Add utest to cover process module 2025-10-15 07:52:46 -04:00
winlin
bf7e93140b Refine access specifier for utest. 2025-10-13 22:26:38 -04:00
OSSRS-AI
de3d5bd1f5 AI: Add utest to cover dash module. 2025-10-09 22:34:26 -04:00
OSSRS-AI
702a58df6a AI: Improve coverage for app rtmp module. 2025-10-03 10:10:57 -04:00
Winlin
2384f3fb06
AI: Fix naming problem for app module. v7.0.85 (#4485)
Co-authored-by: OSSRS-AI <winlinam@gmail.com>
2025-09-12 19:44:43 -04:00
Winlin
3e8cb3f9d5
AI: Replace SrsSharedPtrMessage with SrsMediaPacket for unified media packet handling. v7.0.74 (#4465)
This PR introduces a major refactoring to replace `SrsSharedPtrMessage`
with `SrsMediaPacket` throughout the SRS codebase, providing a more
unified and cleaner approach to media packet handling.

---------

Co-authored-by: OSSRS-AI <winlinam@gmail.com>
2025-09-01 18:06:24 -04:00
Winlin
1b6f97bd2d
Refine source lock to fix race condition in source managers. v7.0.61 (#4449)
This PR fixes a critical race condition in SRS source managers where
multiple coroutines could create duplicate sources for the same stream.

- **Atomic source creation**: Source lookup, creation, and pool
insertion now happen atomically within lock scope
- **Consistent interface**: Standardize on `ISrsRequest*` interface
throughout codebase
- **Handler simplification**: Remove `ISrsLiveSourceHandler*` parameter,
obtain from global server instance

---------

Co-authored-by: OSSRS-AI <winlinam@gmail.com>
2025-08-23 07:36:41 -06:00
Winlin
6e1134fe9b
Use clang format. v7.0.52 (#4433)
---------

Co-authored-by: ChenGH <chengh_math@126.com>
2025-08-11 23:19:19 -04:00
ChenGH
13597d1b7f
update copyright to 2025. v5.0.218 v6.0.159 v7.0.21 (#4271)
update copyright to 2025

---------

Co-authored-by: john <hondaxiao@tencent.com>
Co-authored-by: winlin <winlinvip@gmail.com>
2025-01-14 17:35:18 +08:00
Winlin
1f9309ae25
SmartPtr: Support load test for source by srs-bench. v6.0.130 (#4097)
1. Add live benchmark support in srs-bench, which only connects and
disconnects without any media transport, to test source creation and
disposal and verify source memory leaks.
2. SmartPtr: Support cleanup of HTTP-FLV stream. Unregister the HTTP-FLV
handler for the pattern and clean up the objects and resources.
3. Support benchmarking RTMP/SRT with srs-bench by integrating the gosrt
and oryx RTMP libraries.
4. Refine SRT and RTC sources by using a timer to clean up the sources,
following the same strategy as the Live source.

---------

Co-authored-by: Haibo Chen <495810242@qq.com>
Co-authored-by: Jacob Su <suzp1984@gmail.com>
2024-06-21 07:13:12 +08:00
winlin
2a2da2253f Switch to 2013-2024. v6.0.109 2024-01-01 10:51:24 +08:00
winlin
29eff1a242 Refine LICENSE. 2023-10-23 14:33:19 +08:00
winlin
c46ef81ff2 SRS5: Update license date to 2023. v5.0.123
PICK 72f8ed4916
2023-01-01 08:56:20 +08:00
john
d927996890 DASH: Fix number mode bug to make it run. v5.0.96 (#3240)
* Add utc time utility
* Fix calculate duration in fmp4
* Refine dash code, use segment template timeline
* Shrink m4s file and cleanup
* Support play by dash.js
* Use SegmentTemplate timeline mode with $Number$

Co-authored-by: winlin <winlin@vip.126.com>
2022-11-24 18:13:49 +08:00
winlin
d117145b95 Update date from 2021 to 2022. 2022-06-20 19:22:25 +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
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
8b74c7cb89 SquashSRS4: Happy 2021 2021-04-16 09:29:43 +08:00
winlin
d783a12f89 Happy 2020 2019-12-30 10:10:35 +08:00
winlin
45009785fb Refine typo in app. 2019-04-30 08:24:52 +08:00
winlin
f5a1f9b774 Refine SrsFragment.start_dts in time unit 2019-04-18 08:01:17 +08:00
winlin
288bed6e26 Refine SrsTcpClient.timeout in time unit. 2019-04-18 07:58:37 +08:00
winlin
61afca7160 Refine SrsTcpClient timeout in time unit 2019-04-17 07:56:28 +08:00
winlin
e9770933a6 Refine dash controller publish or unpublish 2019-04-17 07:34:01 +08:00
winlin
53357e92fe Refine headers 2019-04-11 09:27:16 +08:00
winlin
6c12aa0eca Refine srs_update_system_time in time unit 2019-04-10 09:07:03 +08:00
winlin
839a496d50 Refine get_mr_sleep in time unit 2019-04-09 09:20:44 +08:00
winlin
5937304717 Refine get_dash_timeshift in time unit 2019-04-08 09:20:02 +08:00
winlin
12cf17ef6b Refine get_dash_update_period in time unit 2019-04-08 09:10:06 +08:00
winlin
4302ab7708 Refine get_dash_fragment to time unit 2019-04-08 09:02:39 +08:00
winlin
b2d1d84634 Change to 2019 2019-01-01 21:37:28 +08:00
winlin
ca1395a807 Change date from 2017 to 2018 2018-01-07 10:58:53 +08:00
winlin
6eae93258a For #913, APP support complex error. 2018-01-01 19:39:57 +08:00
winlin
7cac35a289 For #913, source cycle error 2017-06-11 09:40:07 +08:00
winlin
0e9e1792fe For #299, write fMP4 for DASH. 2017-06-04 15:10:35 +08:00
winlin
0a57a46016 Refine LICENSE 2017-03-25 21:29:29 +08:00
winlin
f32aab3d92 For #299, refine code. 2017-03-25 17:21:39 +08:00
winlin
9ab5e6a916 For #299, fix bug of fragment url 2017-03-19 12:49:58 +08:00
winlin
c71e8fa947 For #299, fragment reap workflow 2017-03-19 12:30:02 +08:00
winlin
721a8457c2 For #299, Refine init mp4, use fragment 2017-03-19 12:29:38 +08:00
winlin
da4c390d69 For #299, extract fragment and fragment window for hls 2017-03-18 21:29:08 +08:00
winlin
3ec9df6578 For #299, A/V init mp4 are fine. 2017-03-05 18:44:37 +08:00
winlin
8ab727f3c5 For #299, write MPD file. 2017-02-26 20:40:33 +08:00
winlin
cee9d736a4 for #299, refine code. 2017-02-19 22:03:51 +08:00
winlin
ede1c34a25 for #299, refine the signature of api for hls/dash 2017-02-19 21:48:32 +08:00
winlin
5e419c66f8 For #299, add dash files. 2017-02-11 21:14:28 +08:00
winlin
477414106a add dash files. 2017-02-11 12:30:21 +08:00