1
0
Fork 0
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:
winlin 2021-03-04 14:49:03 +08:00
commit 3bb1b673c5
3479 changed files with 920400 additions and 110 deletions

View file

@ -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

View file

@ -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

View file

@ -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