A lightweight, keyboard-first audio player for Windows built with C# WinForms and Windows Media Player (WMP) COM. Designed for power users who want full control without touching the mouse.
β‘ No external media framework required β uses the built-in WMP engine for playback, plus TagLib# for metadata and album art.
| Key | Action |
|---|---|
Space / K |
Play / Pause |
Esc |
Stop |
β / β |
Seek β5s / +10s |
J / L |
Seek β10s / +10s |
Ctrl+β / Ctrl+β |
Previous / Next track |
β / β |
Volume +5 / β5 |
F6 |
Mute / Unmute |
Delete |
Remove selected track |
Ctrl+O |
Open files |
Ctrl+S / Ctrl+L |
Save / Load playlist (.m3u) |
Ctrl+0β¦9 |
Jump to 0%β90% of track |
A / B / C |
Set A-B repeat / Clear |
F3 |
Toggle Repeat One |
F4 |
Clear playlist |
F5 |
Refresh track list |
F7 |
Now Playing info |
F8 |
Toggle Shuffle |
F9 |
Toggle Mini Mode |
0β9 |
Speed preset (0.25x β 2.5x) |
F1 |
Show shortcut help |
F2 |
Settings (forward key & seconds) |
Works even when the app is minimized or in the background:
- Media Next / Previous / Stop / Play-Pause β fully mapped.
- Custom Forward Hotkey β assign any key (AβZ, arrows) with
Ctrl+Altmodifier, and set forward duration in seconds.
- Album art and artist metadata via TagLib#.
- Custom seek bar with draggable fill.
- Mini Mode β compact layout for small screens.
- Search / filter tracks by name.
- Drag & drop files or folders to load.
- Session restore β remembers last playlist, track, and position.
- Dark theme with orange accents.
- A-B Repeat β set loop points on the fly.
- Playback speed control β 0.25x to 2.5x (WMP rate).
- Shuffle and Repeat One modes.
- Volume persistence and mute toggle.
- Windows 7 / 8 / 10 / 11
- .NET Framework 4.7.2
- Windows Media Player (installed by default on most Windows systems)
- TagLib# 2.3.0 (via NuGet β included in
packages.config)
-
Clone the repository
git clone https://github.com/TahirAhmad88/AudioPlayerApp.git
-
Open in Visual Studio (2017 or later).
-
Restore NuGet packages (TagLib# is already referenced).
-
Build and run (F5).
-
Load audio files via Ctrl+O, drag & drop, or double-click a track.
π‘ The app uses the Windows Media Player COM control (AxWMPLib). If it's missing, enable it via Turn Windows features on or off β Media Features β Windows Media Player.
ποΈ Project Structure
AudioPlayerApp/
βββ Form1.cs # Main logic (playback, hotkeys, UI events)
βββ Form1.Designer.cs # UI layout (WinForms)
βββ Program.cs # Entry point/
βββ Properties/
β βββ Settings.settings # User settings (forward key, seconds)
β βββ Resources.resx # Default album art (audiopic.png)
βββ packages.config # NuGet dependencies (TagLib#)
βββ AudioPlayerApp.csproj # Project file
π οΈ Configuration Settings are stored in:
%APPDATA%\AudioPlayerApp\settings.ini
-
ForwardKey β global forward hotkey (default: Right)
-
ForwardSeconds β forward duration (default: 10)
-
LastPlaylist, LastTrack, LastPosition β session restore data
π§© Future Roadmap
This project is actively evolving. Planned updates:
- Built-in Equalizer (10-band, presets, bass boost)
- Video Player Mode (MP4, MKV, AVI support via WMP)
- Playlist Manager (drag-to-reorder, save/load multiple lists)
- Lyrics Support (.lrc sync)
- Custom Themes (light / dark / neon)
- Cross-platform exploration (.NET MAUI / Avalonia)
The roadmap is flexible β future updates will be driven by user feedback and technical feasibility.
π€ Contributing
Contributions are welcome! If you find a bug or have a feature request, please open an issue or submit a pull request.
-
Fork the repo
-
Create a feature branch (git checkout -b feature/equalizer)
-
Commit your changes (git commit -m 'Add equalizer')
-
Push to the branch (git push origin feature/equalizer)
-
Open a Pull Request
π License
This project is licensed under the MIT License β see the LICENSE file for details.
-
π€ Author Tahir Ahmad
-
GitHub: @TahirAhmad88
LinkedIn: www.linkedin.com/in/tahir-ahmad88
β Show Your Support If you like this project, please star β the repository and share it with others who might find it useful.
πΈ Screenshots
π Acknowledgements
-
TagLib# β for audio metadata and album art.
-
Windows Media Player COM β for reliable playback on Windows.
-
.NET Framework β the foundation of this app.
Built with β€οΈ for keyboard-first music lovers.