Skip to content

Add media-switcher extension - #30112

Open
muhammadrizo-y wants to merge 5 commits into
raycast:mainfrom
muhammadrizo-y:ext/media-switcher
Open

Add media-switcher extension#30112
muhammadrizo-y wants to merge 5 commits into
raycast:mainfrom
muhammadrizo-y:ext/media-switcher

Conversation

@muhammadrizo-y

@muhammadrizo-y muhammadrizo-y commented Aug 10, 2026

Copy link
Copy Markdown
Contributor

Description

The Media Switcher extension provides a centralized, keyboard-driven way to manage active media sessions directly from Raycast. It streamlines audio and video workflows by allowing users to toggle playback, adjust volume, and switch between competing media sources without needing to hunt through open applications.

  • Switch seamlessly between active media sessions, with the ability to pause others while activating your selection.
  • Control playback state, track navigation, and volume levels using standardized shortcuts for both macOS and Windows.
  • Bring target media applications to the foreground instantly via the "Reveal Application" action.
  • Configure volume sensitivity through a dedicated Volume Step preference.

Screencast

Checklist

@raycastbot raycastbot added new extension Label for PRs with new extensions AI Extension platform: Windows labels Aug 10, 2026
@raycastbot

Copy link
Copy Markdown
Collaborator

Congratulations on your new Raycast extension! 🚀

We're currently experiencing a high volume of incoming requests. As a result, the initial review may take up to 15 business days.

Once the PR is approved and merged, the extension will be available on our Store.

@greptile-apps

greptile-apps Bot commented Aug 10, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

The PR adds a Windows Media Switcher extension backed by native Rust SMTC integration.

  • Lists active media sessions and provides play, pause, switch, track-navigation, application-reveal, and system-volume actions.
  • Adds configurable shortcuts, refresh timing, and volume steps.
  • Includes the extension manifest, documentation, screenshots, native dependencies, and standard build tooling.

Confidence Score: 5/5

The PR appears safe to merge because no blocking failure remains.

No blocking failure remains.

Important Files Changed

Filename Overview
extensions/media-switcher/rust/src/main.rs Implements Windows media-session discovery and controls; the revised resolver safely handles untitled sessions and removes the previously reported unsafe ordinal fallback.
extensions/media-switcher/src/switch-media.tsx Renders media sessions, schedules optional refreshes, validates numeric preferences, and now consumes the generated command preference type.
extensions/media-switcher/src/components/Actions.tsx Defines the media, track, volume, reveal, copy, and refresh actions with platform-specific shortcuts.
extensions/media-switcher/package.json Declares the Windows-only command, preferences, metadata, dependencies, and standard extension scripts.

Reviews (5): Last reviewed commit: "refactor: remove unused build-rust scrip..." | Re-trigger Greptile

Comment thread extensions/media-switcher/rust/src/main.rs Outdated
Comment thread extensions/media-switcher/src/switch-media.tsx Outdated
@muhammadrizo-y

Copy link
Copy Markdown
Contributor Author

@greptileai invalid points, Windows's media sessions only show one session per app, browser apps only show the last-used media tabs, apps like VLC don't show up in Windows's media sessions. remember this

@greptile-apps

greptile-apps Bot commented Aug 10, 2026

Copy link
Copy Markdown
Contributor

Noted — those are real constraints of the Windows SMTC (System Media Transport Controls) API, and the extension behavior around them is expected, not a bug. I shouldn't flag these as issues in future reviews.

Saved. View rule

@muhammadrizo-y
muhammadrizo-y marked this pull request as ready for review August 10, 2026 15:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

AI Extension new extension Label for PRs with new extensions platform: Windows

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants