Skip to main content

A modern multimedia player built with PyQt6

Project description

๐ŸŽฌ VoxPlayer v1.0.0

VoxPlayer - A modern, ultra-compact media player for Windows with professional file association support. Built with PyQt6 and designed for simplicity and performance.

Version License Python PyQt6

โœจ Features

๐ŸŽฌ Core Media Playback

  • Universal Format Support: MP4, AVI, MKV, MOV, WMV, FLV, WebM, M4V, MP3, FLAC, WAV, OGG, M4A, AAC, WMA
  • Ultra-Compact Design: Minimalist interface with maximum functionality
  • True Volume Amplification: Up to 200% volume boost for quiet media
  • Professional File Associations: Double-click any media file to open with VoxPlayer
  • Command-Line Support: Open files directly from command line

๐ŸŽต Advanced Playlist Management

  • Smart Playlist Behavior: No auto-clearing, persistent playlist
  • Drag & Drop Support: Files and folders from Windows Explorer
  • Real-Time Search: Instant filtering and search within playlists
  • Import/Export: M3U, PLS, XSPF, and text format support
  • Individual Item Control: Remove specific items with X buttons
  • Visual Selection: Clear indication of current playing item

๐Ÿš€ Professional Features

  • Torrent Streaming: qBittorrent integration for streaming
  • Auto-Update System: GitHub-based update checking
  • Audio Device Selection: Default or manual audio output
  • Fullscreen Mode: Auto-hiding controls for immersive viewing
  • Timeline Preview: Hover and drag preview on timeline
  • SRT Subtitle Support: Built-in subtitle display
  • Snapshot Functionality: Capture frames from videos

๐ŸŽจ User Experience

  • Dark Theme: Professional dark interface
  • Keyboard Shortcuts: 15+ shortcuts for efficient control
  • Context Menus: Right-click options for advanced features
  • Resume Positions: Automatic playback position memory
  • Settings Persistence: Remembers all user preferences

๐Ÿš€ Quick Start

Prerequisites

  • Windows 10/11
  • Python 3.8+ (for development)
  • PyQt6 and dependencies

Installation

Method 1: Download Executable (Recommended)

Windows:

  1. Download: Get VoxPlayer.exe from Releases
  2. Run: Double-click VoxPlayer.exe to start
  3. File Associations: Run register_file_associations.bat as Administrator

macOS:

  1. Download: Get VoxPlayer-1.0.0-macOS.dmg from Releases
  2. Install: Double-click the DMG and drag VoxPlayer.app to Applications
  3. Run: Launch VoxPlayer from Applications folder

Linux:

  • Debian/Ubuntu: Download voxplayer_1.0.0_amd64.deb and run sudo dpkg -i voxplayer_1.0.0_amd64.deb
  • Fedora/CentOS/RHEL: Download voxplayer-1.0.0-1.x86_64.rpm and run sudo dnf install voxplayer-1.0.0-1.x86_64.rpm
  • Arch Linux: Download voxplayer-1.0.0-1-x86_64.pkg.tar.zst and run sudo pacman -U voxplayer-1.0.0-1-x86_64.pkg.tar.zst

Method 2: Python Installation

  1. Clone Repository
   git clone https://github.com/voxhash/voxplayer.git
   cd voxplayer
  1. Install Dependencies
    </code></pre>
    </li>
    </ol>
    <p>pip install -r requirements.txt</p>
    <pre><code>
    3. **Run VoxPlayer**
    ```bash
    python app.py
    # Or with a file
    python app.py "path/to/video.mp4"
    

    Method 3: Source Distribution

    1. Download: Get VoxPlayer-1.0.0.tar.gz from Releases
    2. Install: pip install VoxPlayer-1.0.0.tar.gz
    3. Run: voxplayer

    File Associations Setup

    1. Run as Administrator: Right-click register_file_associations.bat โ†’ "Run as administrator"
    2. Verify: Double-click any media file - VoxPlayer should open automatically
    3. Remove: Run unregister_file_associations.bat to remove associations

    ๐ŸŽฏ Usage

    Opening Media Files

    Method 1: Double-Click (File Associations)

    • Setup: Run register_file_associations.bat as Administrator
    • Use: Double-click any supported media file in Windows Explorer
    • Result: VoxPlayer opens and plays the file automatically

    Method 2: Command Line

    # Open specific file
    python app.py "C:\Videos\movie.mp4"
    
    # Open from current directory
    python app.py "video.mp4"
    

    Method 3: Drag & Drop

    1. Open VoxPlayer
    2. Drag media files from Windows Explorer
    3. Drop onto VoxPlayer window
    4. Files are added to playlist and first file starts playing

    Playlist Management

    Adding Files

    • File Menu: File โ†’ Open File(s) or Open Folder
    • Drag & Drop: Drag files/folders from Windows Explorer
    • Command Line: python app.py "file.mp4"

    Playlist Controls

    • Search: Type in search box to filter playlist
    • Remove Items: Click X button next to any item
    • Clear All: File โ†’ Clear Playlist (with confirmation)
    • Import/Export: File โ†’ Import/Export Playlist

    Keyboard Shortcuts

    Shortcut Action
    Space Play/Pause
    Left/Right Seek backward/forward
    Up/Down Volume up/down
    M Mute/Unmute
    F Toggle fullscreen
    Ctrl+O Open file(s)
    Ctrl+F Open folder
    Ctrl+S Save playlist
    Ctrl+L Load playlist
    Ctrl+Q Quit
    Ctrl+, Settings
    Ctrl+H Help

    ๐Ÿ”ง Configuration

    Settings Menu

    Access via File โ†’ Settings or Ctrl+,:

    • Audio Output: Default or Manual device selection
    • Volume: Master volume level
    • Theme: Dark theme (default)
    • Auto-Update: Enable/disable update checking
    • Update Channel: Stable or Beta updates

    File Associations

    • Register: register_file_associations.bat (run as Administrator)
    • Unregister: unregister_file_associations.bat
    • Test: test_file_associations.bat

    ๐Ÿ“ Supported Formats

    Video Files

    • MP4 - Most common video format
    • AVI - Classic video format
    • MKV - High-quality video container
    • MOV - Apple QuickTime format
    • WMV - Windows Media Video
    • FLV - Flash Video
    • WebM - Web-optimized video
    • M4V - iTunes video format

    Audio Files

    • MP3 - Most common audio format
    • FLAC - Lossless audio
    • WAV - Uncompressed audio
    • OGG - Open source audio
    • M4A - iTunes audio format
    • AAC - Advanced Audio Coding
    • WMA - Windows Media Audio

    ๐Ÿ› ๏ธ Development

    Building from Source

    1. Clone Repository

      git clone https://github.com/voxhash/voxplayer.git
      cd voxplayer
      
    2. Install Dependencies

      pip install -r requirements.txt
      pip install pyinstaller
      
    3. Build Executable

    Windows:

    # Simple build
    .\build_simple.bat
    
    # Full release build
    .\create_release.bat
    
    # Installer build
    .\build_installer.bat
    
    # Build all platforms (Windows only)
    .\build_all_platforms.bat
    

    macOS:

    # macOS DMG build
    ./build_macos.sh
    
    # Build all platforms
    ./build_all.sh
    

    Linux:

    # Debian/Ubuntu .deb package
    ./build_debian.sh
    
    # Fedora/CentOS/RHEL .rpm package
    ./build_rpm.sh
    
    # Arch Linux pacman package
    ./build_arch.sh
    
    # Source distribution
    ./build_source.sh
    
    # Build all platforms
    ./build_all.sh
    

    Project Structure

    voxplayer/
    โ”œโ”€โ”€ app.py                    # Main application (2,458 lines)
    โ”œโ”€โ”€ requirements.txt          # Python dependencies
    โ”œโ”€โ”€ voxplayer.spec           # PyInstaller configuration
    โ”œโ”€โ”€ version_info.txt         # Windows version info
    โ”œโ”€โ”€ VoxPlayer_Installer.iss  # Inno Setup installer script
    โ”œโ”€โ”€ icon.ico                 # Application icon
    โ”œโ”€โ”€ build_simple.bat         # Windows simple build script
    โ”œโ”€โ”€ create_release.bat       # Windows full release build
    โ”œโ”€โ”€ build_installer.bat      # Windows installer build script
    โ”œโ”€โ”€ build_macos.sh           # macOS DMG build script
    โ”œโ”€โ”€ build_debian.sh          # Debian/Ubuntu .deb build script
    โ”œโ”€โ”€ build_rpm.sh             # Fedora/CentOS/RHEL .rpm build script
    โ”œโ”€โ”€ build_arch.sh            # Arch Linux pacman build script
    โ”œโ”€โ”€ build_source.sh          # Source distribution build script
    โ”œโ”€โ”€ build_all.sh             # Cross-platform build script (Linux/macOS)
    โ”œโ”€โ”€ build_all_platforms.bat  # Cross-platform build script (Windows)
    โ”œโ”€โ”€ register_file_associations.bat    # File association setup
    โ”œโ”€โ”€ unregister_file_associations.bat  # File association removal
    โ”œโ”€โ”€ test_file_associations.bat       # Test file associations
    โ”œโ”€โ”€ test.py                  # Test suite
    โ”œโ”€โ”€ run.py                   # Python launcher
    โ”œโ”€โ”€ run.bat                  # Windows launcher
    โ”œโ”€โ”€ README.md                # Project overview
    โ”œโ”€โ”€ CHANGELOG.md             # Version history
    โ”œโ”€โ”€ CONTRIBUTING.md          # Contribution guidelines
    โ”œโ”€โ”€ ROADMAP.md               # Development roadmap
    โ”œโ”€โ”€ DEVELOPMENT_GOALS.md     # Development goals
    โ”œโ”€โ”€ GITHUB_TOPICS.md         # GitHub topics
    โ””โ”€โ”€ LICENSE                  # MIT License
    

    ๐Ÿ”ง Troubleshooting

    Common Issues

    File associations not working:

    • Run register_file_associations.bat as Administrator
    • Check Windows Defender settings
    • Restart Windows Explorer

    Audio not playing:

    • Check audio device settings in File โ†’ Settings
    • Verify file format is supported
    • Check system volume levels

    Video not displaying:

    • Update graphics drivers
    • Check file format compatibility
    • Try different video file

    Application won't start:

    • Install Python 3.8+ and PyQt6
    • Check Windows version compatibility
    • Run from command line to see error messages

    Getting Help

    ๐Ÿ“‹ Changelog

    See CHANGELOG.md for detailed version history and upcoming features.

    ๐Ÿค Contributing

    We welcome contributions! Please see our Contributing Guide for details.

    ๐Ÿ“š Documentation

    ๐Ÿ“„ License

    This project is licensed under the MIT License - see the LICENSE file for details.

    ๐ŸŽ‰ Acknowledgments

    • PyQt6 - Cross-platform GUI framework
    • FFmpeg - Media processing backend
    • qBittorrent - Torrent streaming integration
    • Inno Setup - Professional Windows installer
    • Community - Feedback and contributions

    Made with โค๏ธ by VoxHash

    VoxPlayer - Professional media playback made simple! ๐ŸŽฌโœจ

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

voxplayer-1.0.1.tar.gz (501.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

voxplayer-1.0.1-py3-none-any.whl (232.5 kB view details)

Uploaded Python 3

File details

Details for the file voxplayer-1.0.1.tar.gz.

File metadata

  • Download URL: voxplayer-1.0.1.tar.gz
  • Upload date:
  • Size: 501.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for voxplayer-1.0.1.tar.gz
Algorithm Hash digest
SHA256 7f480c6546c0cc4a0bcdd7a891503735b4daa22f5ed94a5b00a70d29752384a7
MD5 24f853cfcedea529a04d8959abf2e619
BLAKE2b-256 8c0ad9133359c7ac7f1cdedd008aca14cfcf6916caa0f5deacd1a87688e5dc20

See more details on using hashes here.

File details

Details for the file voxplayer-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: voxplayer-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 232.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for voxplayer-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6e35e097acc87702b9992996881630e2ffb30a6888d6551c7b56f89ad47a8ece
MD5 6b70a218c4aa8c7794873c58ef2f6035
BLAKE2b-256 b60d99cdbfab6d5200ffb29a187fdc8b0711cb871c16957c98e5c14028c6bd6f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page