Agent skill
whisper-lolo-audio-ingest
Build or modify the browser-side recording and upload pipeline for whisper-lolo. Use when implementing MediaRecorder + IndexedDB chunking, assembling audio blobs, or configuring Vercel Blob client uploads with progress and callbacks.
Install this agent skill to your Project
npx add-skill https://github.com/Lofp34/whisper-lolo/tree/main/whisper-lolo-audio-ingest
SKILL.md
Whisper Lolo Audio Ingest
Overview
Implement long-form browser recording with chunked storage in IndexedDB and direct uploads to Vercel Blob, without serverless upload limits.
Recording workflow
- Initialize MediaRecorder with a supported mime type.
- Start with
MediaRecorder.start(timeslice)to emit chunks. - On
dataavailable, persist each chunk to IndexedDB. - On stop, rehydrate chunks and assemble a final Blob.
- Clear stored chunks after a successful upload.
Storage guidance
- Do not keep full audio in RAM; always store chunks in IndexedDB.
- Use idb-keyval for simple storage of Blob chunks.
- Guard against empty chunks; some browsers emit zero-size data.
Upload workflow (client uploads)
- Use
upload()from@vercel/blob/client. - Generate tokens via a server route using
handleUpload. - Persist
blob_urland update status touploadedafter completion. - Use
onUploadProgressfor UX feedback on large files.
Non-negotiable constraints
- Never upload audio via a Next.js API route.
- Do not wait for transcription inside HTTP requests.
- Chunk before transcription; upload only after assembly.
Common pitfalls
- Check
MediaRecorder.isTypeSupported()before selecting mime type. - Resume/pause should not break chunk order in IndexedDB.
- Ensure
onUploadCompletedworks locally only with a tunnel orVERCEL_BLOB_CALLBACK_URL.
References to consult
documentation/mediarecorder-mdn.mddocumentation/web-dictaphone-mdn.mddocumentation/idb-keyval.mddocumentation/mediarecorder-examples-mozdevs.mddocumentation/vercel-blob-client-uploads.mddocumentation/vercel-blob-sdk.mddocumentation/vercel-blob-examples.md
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
whisper-lolo-roadmap
Guide development of the whisper-lolo project based on specifications-projet.md. Use when planning or executing a sprint/PR, validating scope or constraints, or aligning architecture, statuses, and DoD for the Next.js + Vercel + Blob + Inngest + Whisper stack.
whisper-lolo-transcription-jobs
Implement or adjust background transcription jobs for whisper-lolo. Use when wiring Inngest events, handling long-running jobs, chunking before transcription, persisting transcripts, or maintaining the TranscriptionProvider abstraction.
setup-pre-commit
Set up Husky pre-commit hooks with lint-staged (Prettier), type checking, and tests in the current repo. Use when user wants to add pre-commit hooks, set up Husky, configure lint-staged, or add commit-time formatting/typechecking/testing.
scaffold-exercises
Create exercise directory structures with sections, problems, solutions, and explainers that pass linting. Use when user wants to scaffold exercises, create exercise stubs, or set up a new course section.
handoff
Compact the current conversation into a handoff document for another agent to pick up.
obsidian-vault
Search, create, and manage notes in the Obsidian vault with wikilinks and index notes. Use when user wants to find, create, or organize notes in Obsidian.
Didn't find tool you were looking for?