Snap any video URL or audio file into plaintext. No GPU. No cloud. One command. yapsnap "https://www.youtube.com/watch?v=dQw4w9WgXcQ" That's it. You get a .txt next to your shell, transcribed on your CPU, in less time than it took the video to play. ⚡ Fast on CPU. Streaming Zipformer transducer (Kroko English) chews through audio at several times realtime on a laptop. No CUDA. No M-series-only tricks. Plain old cores. 🌐 Any video URL, plus local files. YouTube. X. TikTok. Instagram Reels. Direct .mp4/.mp3 links. Or just point it at a file on disk. yt-dlp handles the fetch, ffmpeg handles the decode, the rest is yours. 📴 Offline after first run. ~80 MB model downloads once to your cache and stays there. No API keys. No quotas. Your audio never leaves your machine. 🪶 One file, three deps. sherpa-onnx, numpy, yt-dlp. The whole tool is a single Python module. ⏱ Sentence-level timestamps when you want them. --timestamps adds [MM:SS] per sentence using Kroko's built-in punctuation. Timing stays correct even when you transcribe at 2x. # 1. ffmpeg on PATH (one-time, per OS — see below) # 2. Install pip install . # 3. Snap something yapsnap https://www.tiktok.com/@user/video/7234567890123456789 yapsnap meeting.mp4 --timestamps yapsnap podcast.mp3 -o ~/notes/episode.txt The first run downloads the model (~80 MB). Every run after is offline. Any URL yt-dlp understands works. The big ones: Source Example YouTube https://www.youtube.com/watch?v=... YouTube Shorts https://www.youtube.com/shorts/... X / Twitter https://x.com/user/status/.../video/1 TikTok https://www.tiktok.com/@user/video/... Instagram Reels https://www.instagram.com/reel/.../ Direct media URL https://example.com/clip.mp4 Plus any local file ffmpeg can decode: .mp3, .mp4, .m4a, .wav, .webm, .mov, .mkv, .aac, .opus, .ogg, .flac, and friends. OS Command macOS brew install ffmpeg Linux sudo apt install ffmpeg or sudo dnf install ffmpeg Windows winget install ffmpeg or choco install ffmpeg Installs two equivalent com...
First seen: 2026-05-20 23:49
Last seen: 2026-05-21 07:54