Files
CTR-WebCam/scripts/pc-install.sh
T
2025-10-28 19:17:52 +01:00

70 lines
1.8 KiB
Bash

#!/bin/bash
# Install PC server dependencies (Linux - Debian/Ubuntu)
set -e
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
PROJECT_ROOT="$(dirname "$SCRIPT_DIR")"
VENV_DIR="$PROJECT_ROOT/.venv"
echo "======================================"
echo "PC Server Installer (Linux)"
echo "======================================"
echo ""
# Update package list
echo "Updating package list..."
sudo apt-get update
# Install system dependencies
echo ""
echo "Installing system dependencies..."
sudo apt-get install -y \
v4l2loopback-dkms \
v4l2loopback-utils \
ffmpeg \
python3 \
python3-venv \
python3-pip \
python3-dev \
build-essential
# Create virtual environment
echo ""
echo "Creating Python virtual environment..."
if [ -d "$VENV_DIR" ]; then
echo "Virtual environment already exists, updating..."
else
python3 -m venv "$VENV_DIR"
fi
# Activate and install Python packages
echo ""
echo "Installing Python packages..."
source "$VENV_DIR/bin/activate"
pip install --upgrade pip
pip install -r "$PROJECT_ROOT/pc-server/requirements.txt"
echo ""
echo "======================================"
echo "Installation complete!"
echo "======================================"
echo ""
echo "Next steps:"
echo ""
echo "1. Create v4l2loopback device(s):"
echo " For single device:"
echo " ./scripts/create-v4l2.sh"
echo " For dual devices (stereo):"
echo " ./scripts/create-v4l2.sh --dual"
echo ""
echo "2. Run the server:"
echo " ./pc-server/run_server.sh --device /dev/video0"
echo ""
echo "3. For stereo side-by-side:"
echo " ./pc-server/run_server.sh --stereo-mode sbs --width 400 --height 240"
echo ""
echo "4. For dual devices:"
echo " ./pc-server/run_server.sh --stereo-mode dual --dual-devices /dev/video0,/dev/video1"
echo ""