Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>Media Player ProNew to Visual Studio Code? Get it now.
Media Player Pro

Media Player Pro

Gyana Prakash Khandual

|
1 install
| (0) | Free
Browse and play local music and video files inside VS Code.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Media Player Pro

Browse local music and video folders in a VS Code sidebar and play files in native webview-based player tabs. No telemetry. No network calls. Works fully offline.

Features

  • Activity bar icon opens the Media Player sidebar with three views: Media Explorer, Now Playing Queue, and Favorites & Recent.
  • Add unlimited root folders; each expands as a lazy tree (subfolders and files are read only when you expand them, so large libraries open instantly).
  • Separate Music Player and Video Player tabs, each with play/pause, seek bar, volume, and playback speed controls.
  • Video Player includes fullscreen and Picture-in-Picture support.
  • Now Playing Queue supports drag-and-drop reordering.
  • Favorites and Recently Played (capped at 50) are persisted across restarts.
  • Shuffle and repeat (off / repeat all / repeat one) modes.
  • Status bar mini-player shows the current track; click to reveal the player tab.
  • Resume on reopen: last position is saved every two seconds and restored when you reopen the same file.
  • Export/import your library (tracked folders, favorites, queue) as a JSON file.
  • All player UI uses VS Code CSS variables — colors follow your active theme automatically.

Supported formats

Format Kind Notes
.mp3, .wav, .ogg, .m4a Audio Full support
.flac Audio Best effort (Electron Chromium build dependent)
.mp4, .webm, .ogv Video Full support
.mov, .mkv Video Best effort (codec dependent)

Install / Build

git clone <repo>
cd media-player-pro
npm install
npm run compile      # single build
npm run watch        # rebuild on save

Press F5 in VS Code to launch the Extension Development Host with the extension loaded.

To produce a .vsix for manual installation:

npm run vsce:package
code --install-extension media-player-pro-*.vsix

Keybindings

Action Windows / Linux macOS
Play / Pause Ctrl+Alt+Space Cmd+Alt+Space
Next track Ctrl+Alt+Right Cmd+Alt+Right
Previous track Ctrl+Alt+Left Cmd+Alt+Left

Settings

Setting Default Description
mediaPlayerPro.defaultVolume 80 Initial volume (0–100)
mediaPlayerPro.hideNonMediaFiles true Hide non-media files in tracked folders
mediaPlayerPro.autoPlayNext true Auto-advance to the next queue item when a track ends
mediaPlayerPro.confirmFolderRemoval true Ask for confirmation before removing a tracked folder

Architecture notes

  • Extension host code lives in src/ and bundles to dist/extension.js via esbuild.
  • Webview assets (CSS + JS) live in media/ and are loaded as local resources via asWebviewUri. They use a generated nonce and a strict Content Security Policy.
  • State is persisted via context.globalState under the key mediaPlayerPro.state.v1.
  • Tree views are lazy: directories are read with vscode.workspace.fs.readDirectory only when expanded.

Privacy

No telemetry, analytics, or network requests of any kind are made by this extension. All data stays local.

TODO (advanced features stubbed)

  • src/utils/id3Reader.ts: ID3v2 tag reading (title/artist/album/cover art from APIC frames). Currently only ID3v1 (last 128 bytes) is parsed.
  • Album art extraction and caching under context.globalStorageUri.
  • Equalizer (5-band Web Audio API BiquadFilterNode chain inside the webview).
  • Crossfade between tracks via Web Audio API gain ramping.
  • A–B loop / segment repeat.
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft