Skip to content
usedelPublic

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

Repository files navigation

M3U8 Player

A cross-platform desktop M3U8 video player and downloader built with Tauri, Vue 3, and HLS.js.

Features

  • Streaming Playback — Play M3U8/HLS video streams directly via a built-in HTTP proxy that bypasses CORS restrictions
  • Video Download — Download and merge M3U8 segments into a single .mp4 file
  • Resume Support — Interrupted downloads can be resumed without re-downloading completed segments
  • Time Range Selection — Download only a specific time range of a video
  • Multi-threaded Downloads — Configurable concurrent download threads (1–16)
  • Modern UI — Clean dark-themed interface with real-time progress tracking

Screenshots

Tech Stack

Layer Technology
Desktop Framework Tauri 1.x
Frontend Vue 3 (Composition API)
Video Playback HLS.js
HTTP Client (Rust) reqwest
M3U8 Parser m3u8-rs

Prerequisites

Development

# Install dependencies
npm install

# Run in development mode
npm run tauri dev

# Build frontend only
npm run build

Build

# Build release package
npm run tauri build

The output installer will be in src-tauri/target/release/bundle/.

Build on Windows (NSIS)

If you encounter NSIS download errors due to network restrictions, set the environment variable:

[Environment]::SetEnvironmentVariable("TAURI_BUNDLER_TOOLS_GITHUB_MIRROR_TEMPLATE", "https://gitee.com/easy-win/tauri-binaries/releases/download/v0.1.0/<asset>", "User")

Then re-run npm run tauri build.

Project Structure

├── src/                    # Vue 3 frontend
│   ├── App.vue             # Main application component
│   ├── main.js             # Entry point
│   └── styles.css          # Global styles
├── src-tauri/              # Tauri / Rust backend
│   ├── src/
│   │   ├── main.rs         # Tauri commands & app setup
│   │   └── m3u8_downloader.rs  # M3U8 download engine
│   ├── Cargo.toml          # Rust dependencies
│   └── tauri.conf.json     # Tauri configuration
├── index.html              # HTML entry point
├── package.json            # Node.js dependencies
└── vite.config.js          # Vite configuration

License

MIT

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages