From 055767fef0c1674be2378839b43ca6d77d873a11 Mon Sep 17 00:00:00 2001 From: Alessandro Ros Date: Sat, 26 Aug 2023 18:11:55 +0200 Subject: [PATCH] fix manual benchmarks (#2249) --- bench/proxy/Dockerfile | 5 +++-- bench/proxy/start.sh | 12 +++++++++--- bench/publish/Dockerfile | 5 +++-- bench/publish/start.sh | 2 +- bench/read/Dockerfile | 5 +++-- bench/read/start.sh | 4 ++-- scripts/bench.mk | 3 ++- 7 files changed, 23 insertions(+), 13 deletions(-) diff --git a/bench/proxy/Dockerfile b/bench/proxy/Dockerfile index c467bc36..4608bf1b 100644 --- a/bench/proxy/Dockerfile +++ b/bench/proxy/Dockerfile @@ -1,9 +1,10 @@ -FROM golang:1.20-alpine3.18 +ARG BASE_IMAGE +FROM $BASE_IMAGE RUN apk add --no-cache \ ffmpeg -RUN wget -O /video.mkv http://jell.yfish.us/media/jellyfish-10-mbps-hd-h264.mkv +RUN wget -O /video.mkv http://www.larmoire.info/jellyfish/media/jellyfish-10-mbps-hd-h264.mkv WORKDIR /s diff --git a/bench/proxy/start.sh b/bench/proxy/start.sh index 142d8bb7..2678b580 100644 --- a/bench/proxy/start.sh +++ b/bench/proxy/start.sh @@ -1,13 +1,16 @@ #!/bin/sh -e -PROXY_COUNT=20 +PROXY_COUNT=50 PROXY_PROTOCOL=tcp ##################################################### # source CONF="" +CONF="${CONF}rtmp: no\n" CONF="${CONF}hls: no\n" +CONF="${CONF}webrtc: no\n" +CONF="${CONF}srt: no\n" CONF="${CONF}rtspAddress: :8555\n" CONF="${CONF}rtpAddress: :8002\n" CONF="${CONF}rtcpAddress: :8003\n" @@ -15,7 +18,7 @@ CONF="${CONF}paths:\n" CONF="${CONF} all:\n" echo -e "$CONF" > /source.conf -RTSP_RTMP=no /mediamtx /source.conf & +/mediamtx /source.conf & sleep 1 @@ -28,7 +31,10 @@ sleep 1 # proxy CONF="" +CONF="${CONF}rtmp: no\n" CONF="${CONF}hls: no\n" +CONF="${CONF}webrtc: no\n" +CONF="${CONF}srt: no\n" CONF="${CONF}pprof: yes\n" CONF="${CONF}paths:\n" for i in $(seq 1 $PROXY_COUNT); do @@ -38,7 +44,7 @@ for i in $(seq 1 $PROXY_COUNT); do done echo -e "$CONF" > /proxy.conf -RTSP_RTMP=no /mediamtx /proxy.conf & +/mediamtx /proxy.conf & sleep 5 diff --git a/bench/publish/Dockerfile b/bench/publish/Dockerfile index 9d359094..442b913f 100644 --- a/bench/publish/Dockerfile +++ b/bench/publish/Dockerfile @@ -1,9 +1,10 @@ -FROM golang:1.20-alpine3.18 +ARG BASE_IMAGE +FROM $BASE_IMAGE RUN apk add --no-cache \ ffmpeg -RUN wget -O /video.mkv http://jell.yfish.us/media/jellyfish-10-mbps-hd-h264.mkv +RUN wget -O /video.mkv http://www.larmoire.info/jellyfish/media/jellyfish-10-mbps-hd-h264.mkv WORKDIR /s diff --git a/bench/publish/start.sh b/bench/publish/start.sh index d9a1b8ca..0e1619d7 100644 --- a/bench/publish/start.sh +++ b/bench/publish/start.sh @@ -1,6 +1,6 @@ #!/bin/sh -e -PUBLISHER_COUNT=20 +PUBLISHER_COUNT=50 PUBLISHER_PROTOCOL=tcp ##################################################### diff --git a/bench/read/Dockerfile b/bench/read/Dockerfile index 7a3ccfbe..35a6fb95 100644 --- a/bench/read/Dockerfile +++ b/bench/read/Dockerfile @@ -1,9 +1,10 @@ -FROM golang:1.20-alpine3.18 +ARG BASE_IMAGE +FROM $BASE_IMAGE RUN apk add --no-cache \ ffmpeg -RUN wget -O /video.mkv http://jell.yfish.us/media/jellyfish-10-mbps-hd-h264.mkv +RUN wget -O /video.mkv http://www.larmoire.info/jellyfish/media/jellyfish-10-mbps-hd-h264.mkv WORKDIR /s diff --git a/bench/read/start.sh b/bench/read/start.sh index 7693db6c..9261bd3e 100644 --- a/bench/read/start.sh +++ b/bench/read/start.sh @@ -1,6 +1,6 @@ #!/bin/sh -e -READER_COUNT=20 +READER_COUNT=50 READER_PROTOCOL=tcp ##################################################### @@ -26,7 +26,7 @@ sleep 1 for i in $(seq 1 $READER_COUNT); do ffmpeg -hide_banner -loglevel error \ -rtsp_transport $READER_PROTOCOL \ - -i rtsp://localhost:8554/source -c copy -f mpegts -y /dev/null & + -i rtsp://localhost:8554/source -c copy -f null - & done sleep 5 diff --git a/scripts/bench.mk b/scripts/bench.mk index d518f07c..7b5b293d 100644 --- a/scripts/bench.mk +++ b/scripts/bench.mk @@ -1,3 +1,4 @@ bench: - docker build -q . -f bench/$(NAME)/Dockerfile -t temp + docker build -q . -f bench/$(NAME)/Dockerfile -t temp \ + --build-arg BASE_IMAGE=$(BASE_IMAGE) docker run --rm -it -p 9999:9999 temp