Skip to content

Latest commit

 

History

History
37 lines (26 loc) · 1.3 KB

File metadata and controls

37 lines (26 loc) · 1.3 KB

Go Video Streaming - Lightweight HLS Streaming Server

Go Gin License

A high-performance HTTP Live Streaming (HLS) server written in Go, designed for secure and efficient delivery of segmented video content.

Features

  • 🚀 Fast Media Delivery: Built with Go and Gin for high-throughput streaming
  • 🔒 Security-First: Protects against path traversal attacks with strict file access controls
  • 📁 Simple Setup: Just point to your HLS directory (m3u8 playlists + ts segments)
  • 🛡️ Auto-Error Handling: Custom 403/404 pages for forbidden/missing content
  • 🌐 Web Interface: Optional homepage template for status/instructions

Use Cases

  • Private video streaming platforms
  • Low-latency live event broadcasting
  • Secure internal media distribution
  • Development/testing for HLS applications

Quick Start

# Clone repository
git clone https://github.com/majdsassi/Go-Video-Streaming.git
cd Go-Video-Streaming

# Create videos directory (or mount your existing HLS content)
mkdir -p videos/stream1

# Add HLS files (e.g., videos/stream1/master.m3u8 + segments)

# Run server (default port :8080)
go run main.go