A modern, multi-panel command center with application launcher, video player, and dual-pane file manager. Built with CustomTkinter for a clean, vibrant blue interface.
Last Updated: 2026-02-16
- Application launcher with large icons (200x200px cards)
- Multi-monitor app launching (M2, M3, M4 buttons)
- QuickPlayer video/audio/image player with MPV backend
- QuickFiles dual-pane file manager with thumbnail view
- Named bookmark buttons (D:, Home, LaunchPad, etc.)
- File list with Name, Size, Created, Modified columns
- Thumbnail view with grid display (50 item limit for performance)
- Real Windows thumbnails via IShellItemImageFactory COM API
- Right-click context menu with file operations
- System volume control in header
- Image controls: Fit to Window, Actual Size, Zoom slider (10-400%)
- Scrollbars for zoomed images
- QuickImage features: Convert Format, Resize, Adjust Quality
- Edit in QuickDrop integration
- Resizable dual-pane panels with active pane tracking
- Recursive search with blinking indicator
- Dual-player architecture: Separate MPV instances for audio (vo=null) and video (vo=gpu)
- High-quality pipeline: 48kHz/float32/stereo, WASAPI, 1s buffer, gapless playback
- Polling-based UI updates: No property observers (eliminates GIL contention crackling)
- Process priority: ABOVE_NORMAL for audio thread scheduling
- 10-band EQ via Equalizer APO: System-level WASAPI EQ (±20dB range, real-time config file updates)
- Skip buttons: ⏪ -15s / ⏩ +30s (keyboard: Left/Right, Shift for ±30s)
- Mouse wheel volume: Scroll on player area = player volume, scroll on CCL = system volume
- Pop-out fullscreen player: Same audio quality, auto-hide controls, keyboard shortcuts
- Quick Links: 20% (600px)
- QuickPlayer: 40% (1200px)
- QuickFiles Left: 30%
- QuickFiles Right: 10%
- Equalizer APO requires reboot: Installed at
D:\EqualizerAPO\, needs one reboot to activate the driver-level audio hook. After that, EQ presets work instantly. - MPV af filters broken: This mpv.net build (v0.37.0) accepts
afproperty changes but never applies them to the audio pipeline. EQ is handled by Equalizer APO instead. - Large folder thumbnails: Limited to 50 items to prevent UI freezing
Command Center LaunchPad is a visual command center that lives on your ultra-wide monitor (Monitor 1) and provides:
- Quick Links: Application launcher grid
- QuickPlayer: Video/audio player with drag-and-drop
- QuickFiles: Dual-pane file manager
┌────────────────────────────────────────────────────────────────────────┐
│ COMMAND CENTER LAUNCHPAD │
│ [M2] [M3] [M4] [Volume] [Date/Time] │
├──────────────┬──────────────┬──────────────────────────────────────────┤
│ QUICK LINKS │ QUICKPLAYER │ QUICKFILES │
│ │ │ [D:][Home][LaunchPad][Downloads]... │
│ [App1] │ 🎬 Video │ ┌─────────────┬─────────────┐ │
│ [App2] │ Player │ │ LEFT PANE │ RIGHT PANE │ │
│ [App3] │ │ │ 📁 FOLDER: │ 📁 FOLDER: │ │
│ [App4] │ [Controls] │ │ 🔎 SEARCH: │ 🔎 SEARCH: │ │
│ ... │ │ │ [files...] │ [files...] │ │
│ │ │ └─────────────┴─────────────┘ │
│ │ │ [Copy F5] [Move F6] [Delete] [New] │
└──────────────┴──────────────┴──────────────────────────────────────────┘
- Python 3.10 or higher
- Windows OS
- mpv.net (for video playback)
# Install Python packages
pip install customtkinter screeninfo pygetwindow Pillow pywin32 requests mutagen pycaw comtypes
# Navigate to app directory
cd D:\LaunchPadApp
# Run the launcher
python launcher.py- Install mpv.net from: https://github.com/mpv-player/mpv/releases
- Default path:
C:\Users\<username>\AppData\Local\Programs\mpv.net
- 200x200px app cards with 24pt font names
- Double-click to launch (Windows-style)
- Monitor targeting: Click M2/M3/M4 then click app
- Right-click menu: Edit, Duplicate, Delete
- Categories: Web, Development, Tools, Productivity, Media, Games
- Drag-and-drop video/audio/image files
- Supported formats: MP4, AVI, MKV, MOV, WMV, WebM, MP3, WAV, FLAC, PNG, JPG, GIF, etc.
- Dual-player audio engine: Separate MPV instance for audio files (vo=null, zero GPU/Tk interaction) eliminates crackling. Video files use GPU-embedded player.
- High-quality audio: 48kHz sample rate, 32-bit float, stereo, WASAPI, 1s buffer, gapless playback, ReplayGain album normalization
- Playback controls: Play/Pause, Stop, ⏪ Skip Back (-15s), ⏩ Skip Forward (+30s), Seek slider, Volume (0-150%)
- 10-band Equalizer: Powered by Equalizer APO (system-level WASAPI). ±20dB range. Presets: Flat, Warm, Bass+, Treble+, Vocal
- Mouse wheel volume: Scroll on player area adjusts player volume (±5%), scroll elsewhere on CCL adjusts system volume (±2%)
- Keyboard shortcuts: Space (play/pause), Left/Right (seek ±15s/30s), Shift+Left/Right (±30s), Up/Down (volume), M (mute)
- Pop-out fullscreen: Full keyboard/mouse control, auto-hiding controls, resumes position on close
- Image controls (top bar):
- Fit to Window: Scale image to fit display
- Actual Size: Show image at 100% zoom
- Zoom slider: 10% to 400%
- Mousewheel zoom support
- Scrollbars for panning zoomed images
- External open support: TCP listener on port 51478 for "Open with" integration
- Dual panes for easy file operations
- Named bookmarks: D:, Home, LaunchPad, QuickTube, F:, Downloads, Desktop, Documents
- File columns: Name, Size (right-aligned), Created, Modified (centered)
- Human-readable dates: "Today 2:30 PM", "Yesterday", "Sun 19th", "Jan 5th, 2024"
- View modes: List view or Thumbnail view (toggle button)
- Thumbnail view: Grid of image previews with 50 item limit for performance
- Search/filter: Type patterns like
*.mp3,*.txt,file.*,*.doc? - Right-click menu:
- Open / Open in Explorer
- Play in QuickPlayer (for media files)
- Edit in QuickDrop (for images)
- QuickImage submenu (for images):
- Convert Format (PNG, JPEG, WebP, BMP, GIF, TIFF)
- Resize Image (with presets)
- Adjust Quality (1-100%)
- Refresh
- Copy / Cut / Paste
- Rename / Delete
- New Folder
- Properties
| Key | Action |
|---|---|
| F5 | Copy selected files to other pane |
| F6 | Move selected files to other pane |
| Tab | Switch between panes |
| Backspace | Go to parent directory |
| Enter | Open selected file/folder |
| Double-click | Open file/folder |
D:\LaunchPadApp\
├── launcher.py # Main application (~1500 lines)
├── quickfiles.py # Dual-pane file manager with thumbnails (~1800 lines)
├── quickplayer.py # Dual-player media widget (~1700 lines)
├── file_operations.py # File copy/move/delete operations
├── apps.json # User's app shortcuts
├── quickfiles.json # File manager bookmarks & settings
├── shell_thumbs/ # Disk cache for IShellItemImageFactory thumbnails
├── video_thumbs/ # Disk cache for FFmpeg video thumbnails
├── audio_diag.py # Audio diagnostic test script
├── audio_test.py # A/B audio config test script
└── README.md # This file
D:\EqualizerAPO\ # System-level audio EQ (requires reboot to activate)
├── config/
│ ├── config.txt # Main config (includes quickplayer_eq.txt)
│ └── quickplayer_eq.txt # Written by QuickPlayer EQ panel in real-time
└── ...
{
"apps": [
{
"name": "Chrome",
"path": "C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe",
"category": "Web",
"monitor": 0,
"args": []
}
]
}{
"bookmarks": {
"D:": {"path": "D:\\", "name": "D:"},
"Home": {"path": "C:\\Users\\username", "name": "Home"}
},
"left_pane": {"path": "D:\\"},
"right_pane": {"path": "F:\\"}
}Vibrant blue theme:
COLORS = {
"bg_dark": "#001A4D", # Deep navy background
"card_bg": "#0047AB", # Cobalt blue cards
"card_hover": "#0066FF", # Bright blue hover
"text": "#FFFFFF", # White text
"accent": "#00BFFF", # Sky blue accents
"accent_hover": "#1E90FF", # Dodger blue hover
}- Monitor 1 (Ultra-wide 5120x1440): CCL stays here
- M2: Left workspace (identified by X < -3000)
- M3: Top-front workspace (1920x1080 at 0,0) - DEFAULT
- M4: Right workspace (identified by X > 3000)
- Search filters the current folder only (not recursive)
- Make sure you're in a folder that has matching files
- Check console for
[SEARCH TRIGGERED]messages
- This is a non-critical threading warning
- Video playback still works
- Can be ignored
- Some apps don't support automated positioning
- 3-second delay allows app to load before moving
- Check console for positioning debug messages
- Verify the path is correct (use Browse button)
- For apps with arguments, use the
argsarray in apps.json
v3.0 (2026-02-16) - Current
- Dual-player audio architecture: Separate MPV instances for audio (vo=null) and video (vo=gpu) - eliminates all crackling/popping
- High-quality audio pipeline: 48kHz/float32/stereo, WASAPI, 1s buffer, gapless, ReplayGain
- Equalizer APO integration: 10-band graphic EQ via system-level WASAPI driver (±20dB, real-time)
- Polling-based UI: Replaced MPV property observers with 1s polling timer (eliminates GIL contention)
- Skip buttons: ⏪ -15s / ⏩ +30s on both embedded and pop-out players
- Mouse wheel volume: Player area = player volume, CCL background = system volume
- Keyboard shortcuts: Space, Left/Right, Shift+Left/Right, Up/Down, M (mute)
- Pop-out player improvements: Skip buttons, mouse wheel volume, matching seek times
- QuickFiles thumbnail fix: Text no longer cut off in Large view
- Process priority: ABOVE_NORMAL for better audio scheduling
- EQ presets: Flat, Warm, Bass+, Treble+, Vocal (headphone-tuned)
v2.1 (2026-01-24)
- Added thumbnail view to QuickFiles with 50 item limit
- Added image controls to QuickPlayer (Fit to Window, Actual Size, Zoom 10-400%)
- Added scrollbars for panning zoomed images
- Added mousewheel zoom support
- Added QuickImage features: Convert Format, Resize, Adjust Quality
- Added Edit in QuickDrop integration
- Fixed right-click context menu in thumbnail view
- Optimized panel default sizes (20%/40%/30%/10%)
v2.0 (2026-01-22)
- Added QuickFiles dual-pane file manager
- Added QuickPlayer video/audio player
- Added search filtering with wildcard patterns
- Added named bookmark buttons
- Increased all fonts to 20-26pt for readability
- Added Size, Created, Modified columns
- Added human-readable date formatting
- Added right-click context menu with file operations
- Added Play in QuickPlayer option for media files
v1.5 (2025-11-12)
- Added system volume control slider
- Added command-line arguments support for apps
- Fixed Thorium browser multiple windows issue
v1.0 (2025-10-27)
- Initial release
- Multi-monitor support
- Application launcher
- Category organization
- Framework: CustomTkinter + ttk.Treeview
- Audio/Video: python-mpv (libmpv v0.37.0 from mpv.net)
- Audio EQ: Equalizer APO v1.4.2 (system-level WASAPI filter)
- Thumbnails: IShellItemImageFactory COM API with 6-thread pool + disk cache
- Monitor Detection: screeninfo (characteristic-based, not index-based)
- Window Positioning: pygetwindow with retry logic
- File Operations: shutil with threading
- Data Storage: JSON format
- Equalizer APO requires a one-time reboot after installation to activate
- MPV's
afaudio filter property is broken in mpv.net v0.37.0 (accepts but doesn't apply) - MPV requires separate installation (mpv.net)
- Some apps resist window positioning
- Thumbnail view limited to 50 items for performance (large folders show partial)
- EQ is system-wide (Equalizer APO affects all audio, not just QuickPlayer)
Command Center LaunchPad - Your multi-monitor productivity hub