Tooluck logoTooluck
SKILL.md

whisper-transcription

Agent skill frombenchflow-ai/skillsbench

Transcribe audio/video to text with word-level timestamps using OpenAI Whisper. Use when you need speech-to-text with accurate timing information for each word.

How to install whisper-transcription

install whisper-transcription
# install the skillsbench pack with the skills CLI
npx skills add benchflow-ai/skillsbench

# or add only this skill to Claude Code: copy the folder

tasks-extra/video-filler-word-remover/environment/skills/whisper-transcription/

# into

~/.claude/skills/whisper-transcription/ (all projects)

.claude/skills/whisper-transcription/ (one project)

tasks-extra/video-filler-word-remover/environment/skills/whisper-transcription/SKILL.md

Apache-2.0Full file
1# Whisper Transcription
2
3OpenAI Whisper provides accurate speech-to-text with word-level timestamps.
4
5## Installation
6
7```bash
8pip install openai-whisper
9```
10
11## Model Selection
12
13**Use the `tiny` model for fast transcription** - it's sufficient for most tasks and runs much faster:
14
15| Model | Size | Speed | Accuracy |
16|-------|------|-------|----------|
17| tiny | 39 MB | Fastest | Good for clear speech |
18| base | 74 MB | Fast | Better accuracy |
19| small | 244 MB | Medium | High accuracy |
20
21**Recommendation: Start with `tiny` - it handles clear interview/podcast audio well.**
22
23## Basic Usage with Word Timestamps
24
25```python
26import whisper
27import json
28
29def transcribe_with_timestamps(audio_path, output_path):
30 """
31 Transcribe audio and get word-level timestamps.
32
33 Args:
34 audio_path: Path to audio/video file
35 output_path: Path to save JSON output
36 """
37 # Use tiny model for speed
38 model = whisper.load_model("tiny")
39
40 # Transcribe with word timestamps
41 result = model.transcribe(
42 audio_path,
43 word_timestamps=True,
44 language="en" # Specify language for better accuracy
45 )
46
47 # Extract words with timestamps
48 words = []
49 for segment in result["segments"]:
50 if "words" in segment:
51 for word_info in segment["words"]:
52 words.append({
53 "word": word_info["word"].strip(),
54 "start": word_info["start"],
55 "end": word_info["end"]
56…

Excerpt shown under the repository's Apache-2.0 license.

More skills in skillsbench

Newsletter

Join the Community

Subscribe to our newsletter for the latest news and updates