feat(sim): add MediaMTX binary downloader
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
38
scripts/download_mediamtx.sh
Executable file
38
scripts/download_mediamtx.sh
Executable file
@@ -0,0 +1,38 @@
|
||||
#!/usr/bin/env bash
|
||||
# Download the MediaMTX static binary used by scripts/sim_cameras.sh.
|
||||
# One-time setup. Re-run to upgrade.
|
||||
set -euo pipefail
|
||||
|
||||
VERSION="${MEDIAMTX_VERSION:-1.9.3}"
|
||||
REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||
DEST_DIR="${REPO_ROOT}/.sim"
|
||||
DEST="${DEST_DIR}/mediamtx"
|
||||
|
||||
case "$(uname -s)_$(uname -m)" in
|
||||
Linux_x86_64) ASSET="mediamtx_v${VERSION}_linux_amd64.tar.gz" ;;
|
||||
Linux_aarch64) ASSET="mediamtx_v${VERSION}_linux_arm64v8.tar.gz" ;;
|
||||
Darwin_x86_64) ASSET="mediamtx_v${VERSION}_darwin_amd64.tar.gz" ;;
|
||||
Darwin_arm64) ASSET="mediamtx_v${VERSION}_darwin_arm64.tar.gz" ;;
|
||||
*)
|
||||
echo "Unsupported platform: $(uname -s) $(uname -m)" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
URL="https://github.com/bluenviron/mediamtx/releases/download/v${VERSION}/${ASSET}"
|
||||
|
||||
mkdir -p "${DEST_DIR}"
|
||||
TMP="$(mktemp -d)"
|
||||
trap 'rm -rf "${TMP}"' EXIT
|
||||
|
||||
echo "Downloading ${ASSET}..."
|
||||
curl -fsSL "${URL}" -o "${TMP}/mediamtx.tar.gz"
|
||||
|
||||
echo "Extracting..."
|
||||
tar -xzf "${TMP}/mediamtx.tar.gz" -C "${TMP}"
|
||||
|
||||
mv "${TMP}/mediamtx" "${DEST}"
|
||||
chmod +x "${DEST}"
|
||||
|
||||
echo "Installed: ${DEST}"
|
||||
"${DEST}" --version || true
|
||||
Reference in New Issue
Block a user