Skip to content

🎬 All-in-one Media Downloader – Effortless, high-quality video & audio downloads on any OS. Powered by yt-dlp.

License

Notifications You must be signed in to change notification settings

codeandwhisky/yt-dlp-gui-xplatform

Repository files navigation

Professional Media Downloader (yt-dlp-gui-xplatform)

A modern, cross-platform desktop application for high-quality video and audio downloads. Powered by yt-dlp.

alt text

πŸš€ Why Choose This App?

  • Advanced download controls: select resolution, format, and audio quality
  • Comprehensive error handling: clear, actionable messages for every scenario
  • Auto-retry, format fallbacks, and real-time validation
  • Batch operations: start, pause, clear, and retry downloads with one click
  • Works on Windows, macOS, and Linux

✨ Features

  • πŸŽ₯ Video Downloads: 4K, 1080p, 720p, 480p, 360p, and more
  • 🎡 Audio Downloads: MP3 (320/256/128kbps), AAC, FLAC, OGG
  • πŸ”„ Retry Failed Downloads: One-click retry for any error
  • πŸ›‘οΈ Robust Error Handling: Private, geo-blocked, age-restricted, network, and format errors
  • πŸ“Š Live Progress Tracking: Speed, size, and status updates
  • 🧹 Queue Management: Pause, resume, clear, and remove downloads
  • πŸ“‚ Custom Download Location: Choose your output folder
  • πŸ–₯️ Cross-Platform: Avalonia UI for native experience everywhere

πŸ–₯️ Installation

  1. Install yt-dlp on your system
  2. Download or build this app
    • Windows/macOS/Linux: Download release from Releases
    • Or build from source: dotnet build (requires .NET 8)
  3. Run the app
    • Windows:
      • Double-click YtDlpGui.Avalonia.exe in src/YtDlpGui.Avalonia/bin/Release/net8.0/win-x64/
      • Or open a terminal in that folder and run: YtDlpGui.Avalonia.exe
    • macOS:
      • Open Terminal and run:
        cd src/YtDlpGui.Avalonia/bin/Release/net8.0/osx-x64/
        chmod +x YtDlpGui.Avalonia
        ./YtDlpGui.Avalonia
      • Note: Double-clicking the executable in Finder will not launch the app unless it is packaged as a .app bundle. By default, Avalonia and .NET apps are not bundled for macOS double-click support. Always use Terminal to run the app unless you create a .app bundle.
      • To enable double-click launching, you must package the app as a macOS .app bundle. See Avalonia documentation for macOS packaging.
    • Linux:
      • Open Terminal and run:
        cd src/YtDlpGui.Avalonia/bin/Release/net8.0/linux-x64/
        ./YtDlpGui.Avalonia
      • You may need to set executable permissions first:
        chmod +x YtDlpGui.Avalonia
    • Or run from source (all OS): dotnet run --project src/YtDlpGui.Avalonia

πŸ“¦ Automated Build & Release

To build, bundle, and package releases for Windows, macOS, and Linux, use the provided automation script:

1. Run the release script

chmod +x build_release.sh
./build_release.sh

This will:

  • Build and publish for Windows, macOS, and Linux
  • Create a macOS .app bundle
  • Zip all platform releases for easy distribution

2. Find your release files

  • YtDlpGui.Avalonia-win.zip (Windows)
  • YtDlpGui.Avalonia-linux.zip (Linux)
  • YtDlpGui.Avalonia-mac.zip (macOS .app bundle)

3. Distribute

  • Upload the zip files to GitHub Releases or your preferred platform

4. (Optional) Sign and notarize the macOS app for public distribution

See Avalonia docs for macOS packaging and Apple docs for notarization.


πŸ“ Usage

  1. Paste your video or audio URL
  2. Select desired quality and format
  3. Click 'Add' or 'Start'
  4. Monitor progress and status in the queue
  5. Retry, pause, or clear downloads as needed
  6. Open the download folder directly from the app

πŸ’‘ Tips & Best Practices

  • Higher quality = larger file size
  • Use the retry button for failed downloads
  • Change output folder anytime
  • All errors are explained with actionable messages

πŸ› οΈ Troubleshooting

  • yt-dlp not found: Ensure yt-dlp is installed and in your PATH
  • Network errors: Check your internet connection
  • Format errors: Try a different quality or format
  • Permission errors: Check your output folder permissions

🀝 Contributing & Support

  • Feature requests, bug reports, and contributions are welcome!
  • See CONTRIBUTING.md for guidelines
  • For help, open an issue or contact the maintainer

πŸ“„ License

This project is licensed under the MIT License.


πŸ‘¨β€πŸ’» Credits


Download smarter. Download faster. Download with confidence.

About

🎬 All-in-one Media Downloader – Effortless, high-quality video & audio downloads on any OS. Powered by yt-dlp.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published