Claude Skill MartBrowse skillsWhat is a Skill?
Back to list

ASR Transcribe to Text (Speaker-Labeled)

Turns audio and video into speaker-labeled, timestamped transcripts — and owns ASR audio preprocessing as a first-class job.

Image & VideoAdvanced1,323212AI score 9/10Last updated: Aug 8, 2026

What it does

  • Takes local audio/video files or media URLs (including podcast episode pages) and produces [00:12 - 00:30] SPEAKER_01: ... transcripts plus a CSV.
  • On Apple Silicon it runs fully local via MLX (Qwen3-ASR + mlx-whisper + pyannote) at 15–27x realtime for free; elsewhere it calls a remote API such as a self-hosted vLLM endpoint.
  • Uses a decoupled, WhisperX-style pipeline: the audio is never chopped before ASR, so transcription keeps full-file context; word timings and speaker segments are aligned afterwards, with an anchored_ratio trust signal.
  • Preprocessing is a standalone feature: resample to 16 kHz mono 16-bit, merge multi-segment recorder dumps (DJI TX01/TX02), pitch-preserved 1.3x speedup to cut metered ASR billing, and destination-aware format choice (wav/m4a/ogg/flac).
  • Documents the real-world gotchas: truncation detection, vLLM's 25 MB and 600 s caps, MP3 rejection arriving as HTTP 200, and pkill -f killing your own shell.

Who it's for

  • Anyone who needs meeting or interview transcripts with "who said what".
  • Podcast, lecture, and video creators building searchable text archives.
  • Apple Silicon Mac users who want local, private transcription with no cloud upload.
  • Engineers running a self-hosted vLLM ASR endpoint who keep hitting format/size limits.

Examples

  1. Two-hour meeting: hand it meeting.m4a and get a speaker-split .txt plus .csv ready for summarization and action-item extraction.
  2. Merging a recorder dump: TX02_MIC024.wav + TX02_MIC025.wav are sorted by filename timestamp, merged, and self-verified (duration delta and splice-boundary volume checks).
  3. Cutting metered ASR cost: transcode to M4A and apply pitch-preserved 1.3x speedup — roughly 5x smaller upload and ~23% fewer billed minutes.

· · · Install guide · · ·

Install in the Claude app (no terminal)
  1. Download the ZIP with the button below.
  2. In Claude, open Settings → Capabilities and turn on 'Code execution and file creation'. (one time)
  3. Go to Customize → Skills → + → 'Upload a skill' and upload the ZIP.
Download ZIP
Install in Claude Code

Let Claude do it — paste this into Claude Code

Install the skill I found on Claude Skill Mart.
Copy the daymade-audio/asr-transcribe-to-text folder from the GitHub repo daymade/claude-code-skills into my ~/.claude/skills/asr-transcribe-to-text/.
When it's done, tell me in one line what this skill can do.

Install with a command instead

git clone https://github.com/daymade/claude-code-skills.git /tmp/daymade-skills && mkdir -p ~/.claude/skills && cp -r /tmp/daymade-skills/daymade-audio/asr-transcribe-to-text ~/.claude/skills/

This is a third-party skill. Check the source repository before installing.

  1. Install prerequisites first. On macOS: brew install ffmpeg uv — both ffmpeg and uv are required.
  2. Clone the repository:
    git clone https://github.com/daymade/claude-code-skills.git /tmp/daymade-skills
    
  3. Copy the skill into your Claude Code skills directory:
    mkdir -p ~/.claude/skills
    cp -r /tmp/daymade-skills/daymade-audio/asr-transcribe-to-text ~/.claude/skills/
    
  4. For speaker labels, accept the terms at https://hf.co/pyannote/speaker-diarization-3.1 and run huggingface-cli login once (or export HF_TOKEN). Skip it and you get plain text only.
  5. Restart Claude Code and ask something like "transcribe this recording with speaker labels". On first run the skill detects your platform and asks whether to use local MLX or a remote endpoint.
  6. Before a long job, smoke-test once: uv run ~/.claude/skills/asr-transcribe-to-text/scripts/transcribe_local_mlx.py --smoke-test.