Thanks to visit codestin.com
Credit goes to github.com

Skip to content

TalBarmocha/HLS-Converter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎥 HLS Converter

HLS Converter is a lightweight, cross-platform desktop application for converting video files into HLS format (.m3u8) using FFmpeg.
It supports:

  • Drag-and-drop multiple video files
  • Batch parallel conversions
  • CRF quality control
  • Automatic folder output
  • Real-time progress and estimated time remaining
  • Built-in FFmpeg binaries (no manual install required)
  • Converts videos to HLS with H.264 video codec and AAC audio codec for maximum compatibility.
  • Detect if remuxing can be used instead of re-encoding.

🚀 Features

  • ✅ Convert .mp4,.m4v, .mkv, .avi, .mov, .wmv, .flv to HLS (.m3u8).
  • ✅ Encodes output to H.264 (video) and AAC (audio) formats.
  • ✅ GPU-accelerated encoding capability.
  • ✅ Parallel batch processing (2 files simultaneously).
  • ✅ Drag & drop or browse file selection.
  • ✅ Adjustable video quality (CRF slider).
  • ✅ Standalone .app (Mac Intel & Apple Silicon) or .exe (Windows) – no Python or FFmpeg installation needed.
  • ✅ Custom application icon.
  • ✅ Generates a thumbnail automatically at 25% of the video’s duration.

📦 Installation

🔹 macOS (Apple Silicon & Intel)

  1. Download the latest release.
    • HLSConverter-MacOS_ARM.app.zip → for Apple Silicon (M1/M2/M3/M4).
    • HLSConverter-MacOS_Intel.app.zip → for Intel-based Macs.
  2. Extract the .zip file and move HLSConverter.app to your Applications folder.
  3. On first launch, macOS may block the app because it's unsigned:
    • Go to System Preferences → Security & Privacy → General.
    • Click Allow Anyway, then reopen the app.

🔹 Windows

  1. Download the latest release (HLSConverter-Windows.exe).
  2. Double-click the .exe to start converting videos.
    • No Python or FFmpeg installation is required; everything is bundled.

🛠️ Building from Source

If you prefer to build the application manually:

(Python is needed for the build application)

  1. Clone the repository:

    git clone https://github.com/yourusername/HLS-Converter.git
    cd HLS-Converter
  2. Install Python dependencies:

    pip install -r requirements.txt
  3. Download FFmpeg binaries for all platforms:

    • From the realese page download the latest bin.zip and extract the bin folder.
    • From the bin folder get ffmpeg and ffprobe files for your platform.
    • Place the ffmpeg and ffprobe for your platform at the root of the bin folder:
      bin/
       ├─ ffmpeg (or .exe on Windows)
       ├─ ffprobe (or .exe on Windows)
      

    Each folder bin should contain both ffmpeg and ffprobe (or .exe on Windows).

  4. Build standalone apps:

    • macOS:
      pyinstaller --onefile --windowed --icon=icon.icns --add-binary "bin/ffmpeg:bin" --add-binary "bin/ffprobe:bin" --hidden-import=tkinterdnd2 HLSconverter.py
    • Windows:
      pyinstaller --onefile --windowed --noconsole --icon=icon.ico --add-binary "bin/ffmpeg.exe;bin" --add-binary "bin/ffprobe.exe;bin" --hidden-import=tkinterdnd2 --add-data "icon.ico;." HLSconverter.py

After the build process the portable application should be in the dist folder


📂 Output

  • Each converted video gets its own folder inside the chosen output directory.
  • Contains:
    • output.m3u8
    • .ts video segments for HLS streaming.
    • thumbnail.jpg preview image.

📝 License

MIT License – feel free to use and modify.