#!/bin/bash ##################################################################################### # linux shell color support. RED="\\033[31m" GREEN="\\033[32m" YELLOW="\\033[33m" BLACK="\\033[0m" echo -e "${GREEN}build summary:${BLACK}" echo -e " ${BLACK}+------------------------------------------------------------------------------------${BLACK}" echo -e " |${GREEN}{disabled} gperf @see: https://github.com/ossrs/srs/wiki/v1_CN_GPERF${BLACK}" echo -e " | ${GREEN}{disabled} gmc @see: http://google-perftools.googlecode.com/svn/trunk/doc/heap_checker.html${BLACK}" echo -e " | ${GREEN}{disabled} gmc: gperf memory check, or memory leak detect${BLACK}" echo -e " | ${GREEN}{disabled} env PPROF_PATH=./objs/pprof HEAPCHECK=normal ./objs/srs -c conf/console.conf 2>gmc.log # start gmc${BLACK}" echo -e " | ${GREEN}{disabled} killall -2 srs # or CTRL+C to stop gmc${BLACK}" echo -e " | ${GREEN}{disabled} cat gmc.log # to analysis memory leak${BLACK}" echo -e " | ${GREEN}{disabled} gmp @see: http://google-perftools.googlecode.com/svn/trunk/doc/heapprofile.html${BLACK}" echo -e " | ${GREEN}{disabled} gmp: gperf memory profile, similar to gcp${BLACK}" echo -e " | ${GREEN}{disabled} rm -f gperf.srs.gmp*; ./objs/srs -c conf/console.conf # start gmp${BLACK}" echo -e " | ${GREEN}{disabled} killall -2 srs # or CTRL+C to stop gmp${BLACK}" echo -e " | ${GREEN}{disabled} ./objs/pprof --text objs/srs gperf.srs.gmp* # to analysis memory profile${BLACK}" echo -e " | ${GREEN}{disabled} gcp @see: http://google-perftools.googlecode.com/svn/trunk/doc/cpuprofile.html${BLACK}" echo -e " | ${GREEN}{disabled} gcp: gperf cpu profile${BLACK}" echo -e " | ${GREEN}{disabled} rm -f gperf.srs.gcp*; ./objs/srs -c conf/console.conf # start gcp${BLACK}" echo -e " | ${GREEN}{disabled} killall -2 srs # or CTRL+C to stop gcp${BLACK}" echo -e " | ${GREEN}{disabled} ./objs/pprof --text objs/srs gperf.srs.gcp* # to analysis cpu profile${BLACK}" echo -e " ${BLACK}+------------------------------------------------------------------------------------${BLACK}" echo -e " |${GREEN}{disabled} gprof @see: https://github.com/ossrs/srs/wiki/v1_CN_GPROF${BLACK}" echo -e " |${GREEN}{disabled} gprof: GNU profile tool, @see: http://www.cs.utah.edu/dept/old/texinfo/as/gprof.html${BLACK}" echo -e " | ${GREEN}{disabled} rm -f gmon.out; ./objs/srs -c conf/console.conf # start gprof${BLACK}" echo -e " | ${GREEN}{disabled} killall -2 srs # or CTRL+C to stop gprof${BLACK}" echo -e " | ${GREEN}{disabled} gprof -b ./objs/srs gmon.out > gprof.srs.log && rm -f gmon.out # gprof report to gprof.srs.log${BLACK}" echo -e " ${BLACK}+------------------------------------------------------------------------------------${BLACK}" echo -e " |${YELLOW}{disabled} utest: ./objs/srs_utest, the utest for srs${BLACK}" echo -e " ${BLACK}+------------------------------------------------------------------------------------${BLACK}" echo -e " |${GREEN}librtmp @see: https://github.com/ossrs/srs/wiki/v1_CN_SrsLibrtmp${BLACK}" echo -e " |${GREEN}librtmp: ./objs/include, ./objs/lib, the srs-librtmp library${BLACK}" echo -e " | ${GREEN}simple handshake: publish/play stream with simple handshake to server${BLACK}" echo -e " | ${GREEN}complex handshake: it's not required for client, recommend disable it${BLACK}" echo -e " | ${GREEN}librtmp-sample: ./research/librtmp, the srs-librtmp client sample${BLACK}" echo -e " | ${GREEN}librtmp-sample: ./research/librtmp/objs/srs_ingest_flv${BLACK}" echo -e " | ${GREEN}librtmp-sample: ./research/librtmp/objs/srs_ingest_rtmp${BLACK}" echo -e " | ${GREEN}librtmp-sample: ./research/librtmp/objs/srs_detect_rtmp${BLACK}" echo -e " | ${GREEN}librtmp-sample: ./research/librtmp/objs/srs_bandwidth_check${BLACK}" echo -e " ${BLACK}+------------------------------------------------------------------------------------${BLACK}" echo -e " |${GREEN}{disabled} research: ./objs/research, api server, players, ts info, librtmp.${BLACK}" echo -e " | ${GREEN}{disabled} @see https://github.com/ossrs/srs/wiki/v2_CN_SrsLibrtmp#srs-librtmp-examples${BLACK}" echo -e " ${BLACK}+------------------------------------------------------------------------------------${BLACK}" echo -e " |${GREEN}tools: important tool, others @see https://github.com/ossrs/srs/wiki/v2_CN_SrsLibrtmp#srs-librtmp-examples${BLACK}" echo -e " | ${GREEN}./objs/srs_ingest_hls -i http://ossrs.net/live/livestream.m3u8 -y rtmp://127.0.0.1/live/livestream${BLACK}" echo -e " ${BLACK}+------------------------------------------------------------------------------------${BLACK}" echo -e " |${GREEN}server: ./objs/srs -c conf/srs.conf, start the srs server${BLACK}" echo -e " | ${GREEN}hls @see: https://github.com/ossrs/srs/wiki/v2_CN_DeliveryHLS${BLACK}" echo -e " | ${GREEN}hls: generate m3u8 and ts from rtmp stream${BLACK}" echo -e " | ${GREEN}dvr @see: https://github.com/ossrs/srs/wiki/v2_CN_DVR${BLACK}" echo -e " | ${GREEN}dvr: record RTMP stream to flv files.${BLACK}" echo -e " | ${GREEN}{disabled} nginx @see: https://github.com/ossrs/srs/wiki/v2_CN_DeliveryHLS${BLACK}" echo -e " | ${GREEN}{disabled} nginx: delivery HLS stream by nginx${BLACK}" echo -e " | ${GREEN}{disabled} nginx: sudo ./objs/nginx/sbin/nginx${BLACK}" echo -e " | ${GREEN}ssl @see: https://github.com/ossrs/srs/wiki/v1_CN_RTMPHandshake${BLACK}" echo -e " | ${GREEN}ssl: support RTMP complex handshake for client required, for instance, flash${BLACK}" echo -e " | ${YELLOW}{disabled} ffmpeg @see: https://github.com/ossrs/srs/wiki/v1_CN_FFMPEG${BLACK}" echo -e " | ${YELLOW}{disabled} ffmpeg: transcode, mux, ingest tool${BLACK}" echo -e " | ${YELLOW}{disabled} ffmpeg: ./objs/ffmpeg/bin/ffmpeg${BLACK}" echo -e " | ${GREEN}transcode @see: https://github.com/ossrs/srs/wiki/v1_CN_FFMPEG${BLACK}" echo -e " | ${GREEN}transcode: support transcoding RTMP stream${BLACK}" echo -e " | ${GREEN}ingest @see: https://github.com/ossrs/srs/wiki/v1_CN_Ingest${BLACK}" echo -e " | ${GREEN}ingest: support ingest file/stream/device then push to SRS by RTMP stream${BLACK}" echo -e " | ${GREEN}http-callback @see: https://github.com/ossrs/srs/wiki/v2_CN_HTTPCallback${BLACK}" echo -e " | ${GREEN}http-callback: support http callback for authentication and event injection${BLACK}" echo -e " | ${GREEN}http-server @see: https://github.com/ossrs/srs/wiki/v2_CN_HTTPServer${BLACK}" echo -e " | ${GREEN}http-server: support http server to delivery http stream${BLACK}" echo -e " | ${GREEN}http-api @see: https://github.com/ossrs/srs/wiki/v2_CN_HTTPApi${BLACK}" echo -e " | ${GREEN}http-api: support http api to manage server${BLACK}" echo -e " | ${YELLOW}{disabled} stream-caster @see: https://github.com/ossrs/srs/wiki/v2_CN_Streamer${BLACK}" echo -e " | ${YELLOW}{disabled} stream-caster: start server to cast stream over other protocols.${BLACK}" echo -e " ${BLACK}+------------------------------------------------------------------------------------${BLACK}" echo -e "${GREEN}binaries @see: https://github.com/ossrs/srs/wiki/v2_CN_Build${BLACK}" echo "You can:" echo " ./objs/srs -c conf/srs.conf" echo " to start the srs server, with config conf/srs.conf."