1
0
Fork 0
mirror of https://github.com/ossrs/srs.git synced 2025-02-12 19:31:53 +00:00
Commit graph

166 commits

Author SHA1 Message Date
Winlin
9dba99a1cc
SmartPtr: Support shared ptr for RTC source. v6.0.128 (#4085)
---------

Co-authored-by: Haibo Chen <495810242@qq.com>
2024-06-14 08:07:26 +08:00
Jacob Su
08971e5905
Build: Refine workflow for cygwin and remove scorecard. v6.0.120 (#3995)
#3983 already fixed the `test` workflow, but I think the `release` will
have same issue.

---------

Co-authored-by: winlin <winlinvip@gmail.com>
2024-03-26 16:37:33 +08:00
Winlin
b891c8b587
Disable patreon in FUNDING.yml 2024-03-19 20:00:01 +08:00
Jacob Su
954b1b7ef2
Typo: Fix some typos for #3973 #3976 #3982. v6.0.114 (#3973) 2024-03-18 10:17:00 +08:00
Winlin
22c2469414
Upgrade hls.js and set in low latency mode. v6.0.112 (#3924)
HLS typically has a delay of around 30 seconds, roughly comprising three
segments, each lasting 10 seconds. We can reduce the delay to about 5
seconds by lowering the segment duration to 2 seconds and starting
playback from the last segment, achieving a stable delay.

Of course, this requires setting the OBS's GOP to 1 second, and the
profile to baseline, preset to fast, and tune to zerolatency.
Additionally, updating a few configurations in the hls.js player is
necessary, such as setting it to start playback from the last segment,
setting the maximum buffer, and initiating accelerated playback to
reduce latency.

---------

Co-authored-by: chundonglinlin <chundonglinlin@163.com>
Co-authored-by: john <hondaxiao@tencent.com>
2024-02-05 21:37:29 +08:00
winlin
d7248bbb0e Update the template for issues. 2024-02-02 19:29:05 +08:00
john
3e463a8e56
Fix opus delay options, use ffmpeg-opus in docker test. v6.0.102 (#3883)
The `ffmpeg-opus` tool allows you to control the delay using the
`opus_delay` option. The minimum delay can be set to 2.5ms. However, in
practice, you cannot set it this low. You need to set at least 10 frames
to allow the audio encoder to lookahead. Otherwise, the sound will be
distorted.

---------

Co-authored-by: chundonglinlin <chundonglinlin@163.com>
2023-11-22 14:58:30 +08:00
john
24235d8b6a
Fix the test fail when enable ffmpeg-opus. v6.0.100 (#3868)
1. After enabling FFmpeg opus, the transcoding time for each opus packet
is around 4ms.
2. To speed up case execution, our test publisher sends 400 opus packets
at intervals of 1ms.
3. After the publisher starts, wait for 30ms, then the player starts.
4. Due to the lengthy processing time for each opus packet, SRS
continuously receives packets from the publisher, so it doesn't switch
coroutines and can't accept the player's connection.
5. Only after all opus packets are processed will it accept the player
connection. Therefore, the player doesn't receive any data, leading to
the failure of the case.

---------

Co-authored-by: winlin <winlinvip@gmail.com>
2023-11-16 18:17:04 +08:00
chundonglinlin
e7b629cd39
RTC: Refine FFmpeg opus audio noisy issue. v5.0.197 v6.0.97 (#3852)
### Description

When converting between AAC and Opus formats (aac2opus or opus2aac), the
`av_frame_get_buffer` API is frequently called.

### Objective

The goal is to optimize the code logic and reduce the frequent
allocation and deallocation of memory.

In the case of aac2opus, av_frame_get_buffer is still frequently called.
In the case of opus2aac, the goal is to avoid calling
av_frame_get_buffer and reduce memory allocations.

### Additional Note

Before calling the `av_audio_fifo_read` API, use
`av_frame_make_writable` to check if the frame is writable. If it is not
writable, create a new frame.

---------

Co-authored-by: john <hondaxiao@tencent.com>
2023-11-04 16:21:44 +08:00
Winlin
d10e16e335
Use new cache image name. v6.0.86 (#3815)
---------

Co-authored-by: john <hondaxiao@tencent.com>
2023-10-08 07:43:14 -05:00
winlin
42bd4a9fb8 Update the ISSUE TEMPALTE. 2023-09-26 09:34:29 +08:00
Winlin
73dd8af4c9
HLS: Ignore empty NALU to avoid error. v6.0.65 (#3750)
For the DJI M30, there is a bug where empty NALU packets with a size of
zero are causing issues with HLS streaming. This bug leads to random
unpublish events due to the SRS disconnecting the connection for the HLS
module when it fails to handle empty NALU packets.

To address this bug, we have patched the system to ignore any empty NALU
packets with a size of zero. Additionally, we have created a tool in the
srs-bench to replay pcapng files captured by tcpdump or Wireshark. We
have also added utest using mprotect and asan to detect any memory
corruption.

It is important to note that this bug has been fixed in versions 4.0.271
6477f31004 and 5.0.170
939f6b484b. This patch specifically
addresses the issue in SRS 6.0.

Please be aware that there is another commit related to this bug that
partially fixes the issue but still leaves a small problem for asan to
detect memory corruption. This commit,
577cd299e1, only ignores empty NALU
packets but still reads beyond the memory.

---------

Co-authored-by: chundonglinlin <chundonglinlin@163.com>
2023-08-02 22:49:49 +08:00
Winlin
e19efe0bcd
Support helm to optimize the deployment procedure of a SRS cluster. v6.0.64 (#3611)
1. Introduce a novel Docker tag in the x.y.z format, akin to the HELM
format, such as ossrs/srs:5.0.155.
2. Incorporate the SRS_PLATFORM flag for containers initiated through
HELM.

---------

`TRANS_BY_GPT3`

---------

Co-authored-by: chundonglinlin <chundonglinlin@163.com>
2023-07-27 09:07:31 +08:00
Winlin
8c061fcf5d
Docker: Refine the main dockerfile. v6.0.54 (#3594)
------

Co-authored-by: Haibo Chen <495810242@qq.com>
2023-06-20 18:05:54 +08:00
john
113a3dd85e
Fix crash when process rtcp feedback message. v5.0.159, v6.0.52 (#3591)
---------

Co-authored-by: johzzy <hellojinqiang@gmail.com>
2023-06-20 13:20:00 +08:00
Winlin
dcd02fe69c
Support composited bridges for 1:N protocols converting. v6.0.41 (#3392)
Co-authored-by: john <hondaxiao@tencent.com>
Co-authored-by: chundonglinlin <chundonglinlin@163.com>
2023-04-01 21:34:59 +08:00
winlin
2ac9eb84bc Fix release bug. Release v6.0.36 2023-03-23 14:02:41 +08:00
winlin
35fd9be863 Scorecard: Pin some github actions. 2023-01-17 13:16:05 +08:00
winlin
8ea7d8b33f Scorecard: Add OpenSSF Best Practics badge. 2023-01-11 11:55:42 +08:00
winlin
1ead71891c Scorecard: Only update for 5.0release. 2023-01-11 11:39:05 +08:00
winlin
edb4866889 Actions: Rename workflow name. 2023-01-11 11:24:41 +08:00
Winlin
498ce72af8 SRS5: Config: Support better env name for prefixed with srs (#3370)
* Actions: Fix github action warnings.

* Forward: Bind the context id of source or stream.

* Config: Support better env names.

PICK a4e7427433

Co-authored-by: pengfei.ma <pengfei.ma@ctechm.com>
Co-authored-by: Haibo Chen <495810242@qq.com>
2023-01-11 10:57:24 +08:00
winlin
badf33c544 Scorecard: Delcare default permissions as read only except CodeQL. 2023-01-10 22:08:35 +08:00
Winlin
d34085615b
Create scorecard.yml (#3374) 2023-01-10 21:17:13 +08:00
Winlin
f06a2d61f7 SRS5: DVR: Support blackbox test based on hooks. v5.0.132 (#3365)
PICK e655948e96
2023-01-07 21:34:09 +08:00
winlin
7a56208f2f Test: Use long duration for HLS balckbox test. 2023-01-04 19:33:48 +08:00
winlin
b104826a96 SRS5: Test: Run fast and slow blackbox tests seperately.
PICK 95b534ff10
2023-01-03 23:10:58 +08:00
Winlin
4c2db0073a SRS5: Test: Support blackbox test by FFmpeg. v5.0.128 (#3355)
1. Enable blackbox test for each PR and push.
2. Refine Makefile and README for srs-bench.
3. Add blackbox using FFmpeg and ffprobe.
4. Add blackbox basic test for RTMP stream.
5. Add blackbox basic test for HTTP-FLV stream.
6. Fix utest rand seed issue.

PICK 2141d220b4
2023-01-02 15:34:19 +08:00
winlin
7bd8682d40 SRS5: Script: Refine depends tools. v5.0.124
1. Never auto install tools now, user should do it.
2. Support --help and --version for SRS.
3. Install tools for cygwin64.

PICK e690c93bcf
2023-01-01 14:13:22 +08:00
winlin
3f7c4a7ff4 GB28181: Enable regression test for gb28181. v5.0.122
1. Build regression test tool for gb28181.
2. Run regression test for gb28181.
3. Format go code and eliminate logs.
4. Change base docker to ubuntu20.

PICK 7750bdae10
2022-12-31 19:47:54 +08:00
winlin
39c9487a73 Support first SRS6 version. v6.0.10 2022-12-30 19:27:43 +08:00
Winlin
4bc716179b Use english template for issue. 2022-12-30 11:43:36 +08:00
winlin
2ed9516a35 SRS5: Actions: Fix github actions bug.
PICK fe3502e6ad
2022-12-26 18:06:38 +08:00
winlin
2e1d99002f SRS5: Actions: Fix GitHub actions warnings.
PICK 23b7939574
2022-12-26 18:04:14 +08:00
winlin
b5aaf67c93 Merge branch v5.0.116 into develop
1. MP3: Fix bug for TS or HLS with mp3 codec. v4.0.269 (#296) (#3333)
2. MP3: Add config examples for MP3. #296
3. Script: Refine GitHub actions.
2022-12-25 16:23:23 +08:00
winlin
3ed7d88990 Script: Refine GitHub actions. 2022-12-25 12:37:57 +08:00
Winlin
9c066081dd
Update issue_template.md 2022-12-25 09:52:13 +08:00
Winlin
7bb7be4427
Update issue_template.md 2022-12-15 18:30:07 +08:00
winlin
72182865ef Merge branch v5.0.108 into develop
* DASH: Fix dash crash bug when writing file. v5.0.108 (#3301)
* Test: Refine cache for cygwin64 test.
2022-12-13 00:43:37 +08:00
winlin
61d3815fdf Test: Refine cache for cygwin64 test. 2022-12-13 00:30:38 +08:00
winlin
3049fa70eb Merge branch v5.0.106 into develop
* Build: Refine cygwin64 test script.
* API: Parse fragment of URI. v5.0.106 (#3295)
2022-12-08 18:56:53 +08:00
winlin
539f5975d6 Build: Refine cygwin64 test script. 2022-12-08 16:24:27 +08:00
winlin
e6c395e473 Merge branch v5.0.105 into develop.
* v5.0, 2022-12-04, Cygwin: Enable gb28181 for Windows. v5.0.105
* v5.0, 2022-12-04, Asan: Set asan loging callback. v5.0.104
2022-12-04 22:39:30 +08:00
winlin
0e550d496b Cygwin: Enable gb28181 for Windows. v5.0.105 2022-12-04 22:34:36 +08:00
winlin
fa177679a6 Merge 5.0.100, v5.0-a1 into develop. 2022-12-01 23:13:56 +08:00
Winlin
e83fc2388b
Docker: Remove CentOS 6 support. (#3287)
1. Remove CentOS 6 for test and utest.
2. Statically build FFmpeg, no so depends.
2022-12-01 21:32:08 +08:00
Winlin
178e40a5fc
H265: Support HEVC over RTMP or HTTP-FLV. (#3272)
1. Support configure with --h265=on.
2. Parse HEVC(H.265) from FLV or RTMP packet.
3. Support HEVC over RTMP or HTTP-FLV.

Co-authored-by: runner365 <shi.weibd@hotmail.com>
2022-11-23 08:34:13 +08:00
Winlin
136e5cf0e0
Support gitee mirror for release resource files. (#3265) 2022-11-22 10:06:16 +08:00
ChenGH
f4f9c70d79
Asan: Fix global ip address leak check bug. v5.0.90 (#3248)
* asan: fix global ips memory leak bug

* Asan: Fix global ip address leak check. v5.0.90

* Asan: Directly start SRS for daemon error fixed.

Co-authored-by: winlin <winlin@vip.126.com>
2022-11-21 20:22:13 +08:00
winlin
a2bddbe9c3 Release: Refine pipeline for release. 2022-11-20 20:35:24 +08:00