Skip to content

A lightweight recording tool for capturing data from early-stage prototypes and experimental hardware.

Notifications You must be signed in to change notification settings

SEA-AI/protorec

Repository files navigation

ProtoRec

ProtoRec is a Flask-based web application for managing audio and video recordings with GStreamer, designed specifically for early-stage prototypes and experimental hardware.

🚀 Features

  • 📹 Record and monitor live sessions
  • 💾 Track storage usage effectively

📋 Requirements

  • Python 3.8+
  • GStreamer with necessary plugins
  • JavaScript-enabled modern web browser
  • UV Python package manager (for development)

⚙️ Quick Start

Download the latest wheel from the releases page or create one with uv build.

  1. Install the wheel:
sudo pip3 install /path/to/protorec-<version>-py3-none-any.whl

👨‍💻 Manual start

  1. Launch the web app:
protorec-app --config /absolute/path/to/your_config.json --recdir /absolute/path/to/your_recordings_dir
  1. Go to http://<your-server-ip>:5000 on your browser.

🐧 Start on Boot

  1. Install linux service:
sudo protorec-service --config /absolute/path/to/your_config.json --recdir /absolute/path/to/your_recordings_dir
  1. Go to http://<your-server-ip>:5000 on your browser.
Something went wrong?
  1. Check service status:
sudo systemctl status protorec
  1. Check service logs:
sudo journalctl -u protorec -f
  1. Stop service:
sudo systemctl stop protorec

💪 Contributing

Contributions are welcome! Please open an issue or submit a pull request.

  • Pre-commit Hooks: Use pre-commit hooks to maintain code quality.
  • Style Guide: Follow guidelines enforced via ruff and run checks before committing.
  1. Install pre-commit hooks:
uvx pre-commit install
  1. Run Ruff for linting and auto-fixes:
uvx ruff check --fix
  1. Add dependencies using UV:
uv add <package-name>
uv add <package-name>@<version>
uv sync  # Syncs dependencies from pyproject.toml

About

A lightweight recording tool for capturing data from early-stage prototypes and experimental hardware.

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •