Skip to content

feat: add macOS Apple Silicon MLX support for transcription - #1

Open
SepineTam wants to merge 2 commits into
buyicoder:masterfrom
SepineTam:master
Open

feat: add macOS Apple Silicon MLX support for transcription#1
SepineTam wants to merge 2 commits into
buyicoder:masterfrom
SepineTam:master

Conversation

@SepineTam

Copy link
Copy Markdown

Summary

This PR adds first-class transcription support for macOS Apple Silicon via mlx-whisper, allowing snipclip to automatically leverage the Neural Engine on M-series Macs.

Changes

  • detect_device() now returns "mlx" on Apple Silicon when mlx-whisper is installed.
  • transcribe() branches between faster-whisper (cpu/cuda) and mlx-whisper (mlx).
  • Added mlx-whisper as an optional dependency under [project.optional-dependencies].
  • Updated tests/test_transcriber.py to cover MLX device detection and transcription path.
  • Updated README.md and README_en.md with MLX install instructions (pip install snipclip[mlx]).

Motivation

On Apple Silicon, faster-whisper falls back to CPU. mlx-whisper provides significantly better performance by running on the Apple Neural Engine, making transcription usable locally on M-series laptops.

Testing

  • Added unit tests for MLX device detection and the MLX transcription branch.
  • Existing faster-whisper paths remain unchanged and are still covered by existing tests.

Installation

pip install snipclip[mlx]

SepineTam added 2 commits July 9, 2026 15:44
- detect_device() now returns "mlx" on Apple Silicon when mlx-whisper is installed
- transcribe() branches between faster-whisper (cpu/cuda) and mlx-whisper (mlx)
- add mlx-whisper as optional dependency under [project.optional-dependencies]
- update transcriber tests to cover mlx device detection and transcription path
Mention Apple Silicon MLX auto-detection and pip install snipclip[mlx].
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant