mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
Merge SRS4, lots of features
This commit is contained in:
commit
3bb1b673c5
3479 changed files with 920400 additions and 110 deletions
|
@ -1,26 +1,81 @@
|
||||||
version: 2
|
version: 2
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build-c7-baseline:
|
||||||
docker:
|
docker:
|
||||||
- image: ossrs/srs:dev
|
- image: ossrs/srs:dev
|
||||||
steps:
|
steps:
|
||||||
- checkout
|
- checkout
|
||||||
- run: |
|
- run: |
|
||||||
cd trunk &&
|
echo "Build and run SRS baseline" &&
|
||||||
./configure --gb28181=off --utest=off --srtp-nasm=off && make &&
|
cd trunk && ./configure && make
|
||||||
./configure --gb28181=on --utest=on --srtp-nasm=on && make clean && make
|
build-c7-noasm:
|
||||||
test:
|
|
||||||
docker:
|
docker:
|
||||||
- image: ossrs/srs:dev
|
- image: ossrs/srs:dev
|
||||||
steps:
|
steps:
|
||||||
- checkout
|
- checkout
|
||||||
- run: |
|
- run: |
|
||||||
cd trunk &&
|
echo "Build and run SRS without NASM or SRTP-NASM" &&
|
||||||
./configure --gb28181=on --srtp-nasm=on --utest=on --gcov=on && make &&
|
cd trunk && ./configure --nasm=off --srtp-nasm=off && make
|
||||||
|
build-c7-gb28181:
|
||||||
|
docker:
|
||||||
|
- image: ossrs/srs:dev
|
||||||
|
steps:
|
||||||
|
- checkout
|
||||||
|
- run: |
|
||||||
|
echo "Build and run SRS with GB28181" &&
|
||||||
|
cd trunk && ./configure --gb28181=on && make
|
||||||
|
build-c8-baseline:
|
||||||
|
docker:
|
||||||
|
- image: ossrs/srs:dev8
|
||||||
|
steps:
|
||||||
|
- checkout
|
||||||
|
- run: |
|
||||||
|
echo "Build and run SRS for CentOS8" &&
|
||||||
|
cd trunk && ./configure && make
|
||||||
|
build-u20-baseline:
|
||||||
|
docker:
|
||||||
|
- image: ossrs/srs:dev8
|
||||||
|
steps:
|
||||||
|
- checkout
|
||||||
|
- run: |
|
||||||
|
echo "Build and run SRS for Ubuntu20" &&
|
||||||
|
cd trunk && ./configure && make
|
||||||
|
run-utest:
|
||||||
|
docker:
|
||||||
|
- image: ossrs/srs:dev
|
||||||
|
steps:
|
||||||
|
- checkout
|
||||||
|
- run: |
|
||||||
|
echo "Build and run utest for SRS" &&
|
||||||
|
cd trunk && ./configure --gb28181=on --utest=on --gcov=on && make &&
|
||||||
./objs/srs_utest && bash auto/coverage.sh
|
./objs/srs_utest && bash auto/coverage.sh
|
||||||
|
run-regression-test:
|
||||||
|
docker:
|
||||||
|
- image: ossrs/srs:dev
|
||||||
|
steps:
|
||||||
|
- checkout
|
||||||
|
- run: |
|
||||||
|
echo "Build and run SRS with regression config" &&
|
||||||
|
cd trunk && ./configure && make && ./objs/srs -c conf/regression-test.conf &&
|
||||||
|
echo "Run srs-bench regression test" &&
|
||||||
|
cd 3rdparty/srs-bench && make && ./objs/srs_test -test.v
|
||||||
|
build-c7-ansi-noff:
|
||||||
|
docker:
|
||||||
|
- image: ossrs/srs:dev
|
||||||
|
steps:
|
||||||
|
- checkout
|
||||||
|
- run: |
|
||||||
|
echo "Build and run SRS C++98(ANSI), no FFmpeg-fit" &&
|
||||||
|
cd trunk && ./configure --cxx11=off --cxx14=off --ffmpeg-fit=off && make
|
||||||
workflows:
|
workflows:
|
||||||
version: 2
|
version: 2
|
||||||
build_and_test:
|
build_and_test:
|
||||||
jobs:
|
jobs:
|
||||||
- build
|
- build-c7-baseline
|
||||||
- test
|
- run-utest
|
||||||
|
- run-regression-test
|
||||||
|
- build-c7-noasm
|
||||||
|
- build-c7-gb28181
|
||||||
|
- build-c8-baseline
|
||||||
|
- build-u20-baseline
|
||||||
|
- build-c7-ansi-noff
|
||||||
|
|
12
README.md
12
README.md
|
@ -58,6 +58,7 @@ docker run -p 1935:1935 -p 1985:1985 -p 8080:8080 \
|
||||||
* Usage: How to delivery HLS?([CN][v3_CN_SampleHLS], [EN][v3_EN_SampleHLS])
|
* Usage: How to delivery HLS?([CN][v3_CN_SampleHLS], [EN][v3_EN_SampleHLS])
|
||||||
* Usage: How to publish GB28181 to SRS? [#1500](https://github.com/ossrs/srs/issues/1500#issuecomment-606695679)
|
* Usage: How to publish GB28181 to SRS? [#1500](https://github.com/ossrs/srs/issues/1500#issuecomment-606695679)
|
||||||
* Usage: How to play WebRTC from SRS? [#307](https://github.com/ossrs/srs/issues/307)
|
* Usage: How to play WebRTC from SRS? [#307](https://github.com/ossrs/srs/issues/307)
|
||||||
|
* Usage: How to publish WebRTC to SRS? [#307](https://github.com/ossrs/srs/issues/307)
|
||||||
* Usage: How to publish SRT(Experimental) to SRS?([CN][v4_CN_SampleSRT], [EN][v4_EN_SampleSRT])
|
* Usage: How to publish SRT(Experimental) to SRS?([CN][v4_CN_SampleSRT], [EN][v4_EN_SampleSRT])
|
||||||
* Usage: How to transode stream by FFMPEG?([CN][v2_CN_SampleFFMPEG], [EN][v2_EN_SampleFFMPEG])
|
* Usage: How to transode stream by FFMPEG?([CN][v2_CN_SampleFFMPEG], [EN][v2_EN_SampleFFMPEG])
|
||||||
* Usage: How to forward stream to other servers?([CN][v3_CN_SampleForward], [EN][v3_EN_SampleForward])
|
* Usage: How to forward stream to other servers?([CN][v3_CN_SampleForward], [EN][v3_EN_SampleForward])
|
||||||
|
@ -156,6 +157,11 @@ For previous versions, please read:
|
||||||
|
|
||||||
## V4 changes
|
## V4 changes
|
||||||
|
|
||||||
|
* v4.0, 2021-03-03, Fix [#2106][bug #2106], [#2011][bug #2011], RTMP/AAC transcode to Opus bug. 4.0.81
|
||||||
|
* v4.0, 2021-03-02, Refine build script for FFmpeg and SRTP. 4.0.80
|
||||||
|
* v4.0, 2021-03-02, Upgrade libsrtp from 2.0.0 to 2.3.0, with source code. 4.0.79
|
||||||
|
* v4.0, 2021-03-01, Upgrade openssl from 1.1.0e to 1.1.1b, with source code. 4.0.78
|
||||||
|
* v4.0, 2021-03-01, Enable Object Cache and Zero Copy Nack by default. 4.0.77
|
||||||
* v4.0, 2021-02-28, RTC: Support high performance [Zero Copy NACK](https://github.com/ossrs/srs/commit/36ea67359e55c94ab044cee4b6a4ec901a83a287#commitcomment-47654868). 4.0.76
|
* v4.0, 2021-02-28, RTC: Support high performance [Zero Copy NACK](https://github.com/ossrs/srs/commit/36ea67359e55c94ab044cee4b6a4ec901a83a287#commitcomment-47654868). 4.0.76
|
||||||
* v4.0, 2021-02-27, RTC: Support [Object Cache Pool](https://github.com/ossrs/srs/commit/14bfc98122bba369572417c19ebb2a61b373fc45#commitcomment-47655008) for performance. 4.0.75
|
* v4.0, 2021-02-27, RTC: Support [Object Cache Pool](https://github.com/ossrs/srs/commit/14bfc98122bba369572417c19ebb2a61b373fc45#commitcomment-47655008) for performance. 4.0.75
|
||||||
* v4.0, 2021-02-12, RTC: Support [High Resolution(about 25ms) Timer](https://github.com/ossrs/srs/commit/c5d2027f9af77fc2d34a6b6ca941c0f0fbdd10c4#commitcomment-47655747). 4.0.72
|
* v4.0, 2021-02-12, RTC: Support [High Resolution(about 25ms) Timer](https://github.com/ossrs/srs/commit/c5d2027f9af77fc2d34a6b6ca941c0f0fbdd10c4#commitcomment-47655747). 4.0.72
|
||||||
|
@ -1474,6 +1480,10 @@ Winlin
|
||||||
[v3_EN_NgExec]:https://github.com/ossrs/srs/wiki/v3_EN_NgExec
|
[v3_EN_NgExec]:https://github.com/ossrs/srs/wiki/v3_EN_NgExec
|
||||||
[v3_CN_ReusePort]:https://github.com/ossrs/srs/wiki/v3_CN_ReusePort
|
[v3_CN_ReusePort]:https://github.com/ossrs/srs/wiki/v3_CN_ReusePort
|
||||||
[v3_EN_ReusePort]:https://github.com/ossrs/srs/wiki/v3_EN_ReusePort
|
[v3_EN_ReusePort]:https://github.com/ossrs/srs/wiki/v3_EN_ReusePort
|
||||||
|
[v4_CN_SampleSRT]:https://github.com/ossrs/srs/wiki/v4_CN_SampleSRT
|
||||||
|
[v4_EN_SampleSRT]:https://github.com/ossrs/srs/wiki/v4_EN_SampleSRT
|
||||||
|
[v3_CN_SampleDASH]:https://github.com/ossrs/srs/wiki/v3_CN_SampleDASH
|
||||||
|
[v3_EN_SampleDASH]:https://github.com/ossrs/srs/wiki/v3_EN_SampleDASH
|
||||||
|
|
||||||
[bug #213]: https://github.com/ossrs/srs/issues/213
|
[bug #213]: https://github.com/ossrs/srs/issues/213
|
||||||
[bug #194]: https://github.com/ossrs/srs/issues/194
|
[bug #194]: https://github.com/ossrs/srs/issues/194
|
||||||
|
@ -1815,6 +1825,8 @@ Winlin
|
||||||
[bug #1657-2]: https://github.com/ossrs/srs/issues/1657#issuecomment-722904004
|
[bug #1657-2]: https://github.com/ossrs/srs/issues/1657#issuecomment-722904004
|
||||||
[bug #1657-3]: https://github.com/ossrs/srs/issues/1657#issuecomment-722971676
|
[bug #1657-3]: https://github.com/ossrs/srs/issues/1657#issuecomment-722971676
|
||||||
[bug #1998]: https://github.com/ossrs/srs/issues/1998
|
[bug #1998]: https://github.com/ossrs/srs/issues/1998
|
||||||
|
[bug #2106]: https://github.com/ossrs/srs/issues/2106
|
||||||
|
[bug #2011]: https://github.com/ossrs/srs/issues/2011
|
||||||
[bug #zzzzzzzzzzzzz]: https://github.com/ossrs/srs/issues/zzzzzzzzzzzzz
|
[bug #zzzzzzzzzzzzz]: https://github.com/ossrs/srs/issues/zzzzzzzzzzzzz
|
||||||
|
|
||||||
[exo #828]: https://github.com/google/ExoPlayer/pull/828
|
[exo #828]: https://github.com/google/ExoPlayer/pull/828
|
||||||
|
|
|
@ -1,75 +1,80 @@
|
||||||
http-parser-2.1.zip
|
http-parser-2.1.zip
|
||||||
for srs to support http callback.
|
* for srs to support http callback.
|
||||||
|
|
||||||
nginx-1.5.7.zip
|
nginx-1.5.7.zip
|
||||||
for srs to support hls streaming.
|
* for srs to support hls streaming.
|
||||||
|
|
||||||
|
openssl-1.1.1b.tar.gz
|
||||||
openssl-1.1.0e.zip
|
openssl-1.1.0e.zip
|
||||||
openssl-OpenSSL_1_0_2u.tar.gz
|
openssl-OpenSSL_1_0_2u.tar.gz
|
||||||
openssl for SRS(with-ssl) RTMP complex handshake to delivery h264+aac stream.
|
* openssl for SRS(with-ssl) RTMP complex handshake to delivery h264+aac stream.
|
||||||
SRTP depends on openssl 1.0.*, so we use both ssl versions.
|
* SRTP depends on openssl 1.0.*, so we use both ssl versions.
|
||||||
|
|
||||||
CherryPy-3.2.4.zip
|
CherryPy-3.2.4.zip
|
||||||
sample api server for srs.
|
* sample api server for srs.
|
||||||
|
|
||||||
|
libsrtp-2.3.0.tar.gz
|
||||||
|
* For WebRTC.
|
||||||
|
|
||||||
ffmpeg-3.2.4.tar.gz
|
ffmpeg-3.2.4.tar.gz
|
||||||
yasm-1.2.0.tar.gz
|
yasm-1.2.0.tar.gz
|
||||||
lame-3.99.5.tar.gz
|
lame-3.99.5.tar.gz
|
||||||
speex-1.2rc1.zip
|
speex-1.2rc1.zip
|
||||||
x264-snapshot-20131129-2245-stable.tar.bz2 (core.138)
|
x264-snapshot-20131129-2245-stable.tar.bz2 (core.138)
|
||||||
for srs to support live stream transcoding.
|
* for srs to support live stream transcoding.
|
||||||
remark: we use *.zip for all linux plantform.
|
* remark: we use *.zip for all linux plantform.
|
||||||
|
|
||||||
fdk-aac-0.1.3.zip
|
fdk-aac-0.1.3.zip
|
||||||
https://github.com/mstorsjo/fdk-aac/releases
|
* https://github.com/mstorsjo/fdk-aac/releases
|
||||||
|
|
||||||
tools/ccache-3.1.9.zip
|
tools/ccache-3.1.9.zip
|
||||||
to fast build.
|
* to fast build.
|
||||||
|
|
||||||
gtest-1.6.0.zip
|
gtest-1.6.0.zip
|
||||||
google test framework.
|
* google test framework.
|
||||||
|
|
||||||
gperftools-2.1.zip
|
gperftools-2.1.zip
|
||||||
gperf tools for performance benchmark.
|
* gperf tools for performance benchmark.
|
||||||
|
|
||||||
st-srs
|
st-srs
|
||||||
st-1.9.zip
|
st-1.9.zip
|
||||||
state-threads
|
state-threads
|
||||||
state-threads-1.9.1.tar.gz
|
state-threads-1.9.1.tar.gz
|
||||||
Patched ST from https://github.com/ossrs/state-threads
|
* Patched ST from https://github.com/ossrs/state-threads
|
||||||
|
|
||||||
links:
|
links:
|
||||||
nginx:
|
* nginx:
|
||||||
http://nginx.org/
|
http://nginx.org/
|
||||||
http-parser:
|
* http-parser:
|
||||||
https://github.com/joyent/http-parser
|
https://github.com/joyent/http-parser
|
||||||
state-threads:
|
* state-threads:
|
||||||
https://github.com/ossrs/state-threads
|
https://github.com/ossrs/state-threads
|
||||||
ffmpeg:
|
* ffmpeg:
|
||||||
http://ffmpeg.org/
|
http://ffmpeg.org/
|
||||||
http://ffmpeg.org/releases/ffmpeg-3.2.4.tar.gz
|
http://ffmpeg.org/releases/ffmpeg-3.2.4.tar.gz
|
||||||
x264:
|
* x264:
|
||||||
http://www.videolan.org/
|
http://www.videolan.org/
|
||||||
ftp://ftp.videolan.org/pub/videolan/x264/snapshots/x264-snapshot-20131129-2245-stable.tar.bz2
|
ftp://ftp.videolan.org/pub/videolan/x264/snapshots/x264-snapshot-20131129-2245-stable.tar.bz2
|
||||||
lame:
|
* lame:
|
||||||
http://sourceforge.net/projects/lame/
|
http://sourceforge.net/projects/lame/
|
||||||
http://nchc.dl.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz
|
http://nchc.dl.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz
|
||||||
yasm:
|
* yasm:
|
||||||
http://yasm.tortall.net/
|
http://yasm.tortall.net/
|
||||||
http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz
|
http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz
|
||||||
cherrypy:
|
* cherrypy:
|
||||||
http://www.cherrypy.org/
|
http://www.cherrypy.org/
|
||||||
https://pypi.python.org/pypi/CherryPy/3.2.4
|
https://pypi.python.org/pypi/CherryPy/3.2.4
|
||||||
openssl:
|
* openssl:
|
||||||
http://www.openssl.org/
|
http://www.openssl.org/
|
||||||
http://www.openssl.org/source/openssl-1.1.0e.tar.gz
|
http://www.openssl.org/source/openssl-1.1.0e.tar.gz
|
||||||
gtest:
|
* gtest:
|
||||||
https://code.google.com/p/googletest
|
https://code.google.com/p/googletest
|
||||||
https://code.google.com/p/googletest/downloads/list
|
https://code.google.com/p/googletest/downloads/list
|
||||||
gperftools:
|
* gperftools:
|
||||||
https://code.google.com/p/gperftools/
|
https://code.google.com/p/gperftools/
|
||||||
https://code.google.com/p/gperftools/downloads/list
|
https://code.google.com/p/gperftools/downloads/list
|
||||||
speex:
|
* speex:
|
||||||
http://www.speex.org/downloads/
|
http://www.speex.org/downloads/
|
||||||
http://downloads.xiph.org/releases/speex/speex-1.2rc1.tar.gz
|
http://downloads.xiph.org/releases/speex/speex-1.2rc1.tar.gz
|
||||||
|
* srtp:
|
||||||
|
https://github.com/cisco/libsrtp/releases/tag/v2.3.0
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue