Skip to content
This repository was archived by the owner on Jun 3, 2026. It is now read-only.

Releases: SebaB29/room-RTC

Academic Delivery (Final Version)

03 Jun 15:26
5887d5f

Choose a tag to compare

🚀 Release v1.0.0 - Academic Delivery (Final Version)

This release marks the final, stable version of RoomRTC, developed as the final project for Taller de Programación I (75.42) at FIUBA. This checkpoint represents the complete, functional peer-to-peer video conferencing solution featuring a custom WebRTC stack built from scratch in Rust.

✨ Features Included

This version delivers the core architecture for real-time video communications:

  • Custom WebRTC Library: Pure Rust implementation covering core protocol layers:
    • SDP (Session Description Protocol): Offer/answer generation and parsing.
    • ICE & STUN Client: Host candidate gathering, connectivity checks, and NAT traversal (RFC 5389 compliant).
    • RTP/RTCP: Video transport handling with H.264 packetization.
  • Media & Hardware Acceleration: Camera capture via OpenCV (HD 1280x720 @ 30 FPS) along with hardware-accelerated H.264 encoding/decoding via FFmpeg.
  • Signaling Server: Central coordination subsystem managing user authentication, presence directory, and SDP/ICE candidate relaying over TCP.
  • Frontend GUI: An interactive egui-based client interface featuring local and remote video display, camera controls, and session management.

🛠️ Stable Tech Stack & Requirements

  • Language: Rust (Stable)
  • Multimedia Links: OpenCV & FFmpeg development libraries installed on the host system.
  • GUI Engine: egui

📦 Quick Start: How to Build & Run

To clone, build, and run this exact delivered version, use the following commands:

  1. Clone this specific tag:
    git clone --branch v1.0.0 git@github.com:SebaB29/room-RTC.git
    cd room-RTC
  2. Build the production release binaries:
    cargo build --release
  3. Run the system application:
    cargo run --release

🧪 Running the Test Suite

To verify the state of the implementation and execution correctness:

cargo test