Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Process and generate multimedia content using Google Gemini API. Capabilities include analyze audio files (transcription with timestamps, summarization, speech understanding, music/sound analysis up to 9.5 hours), understand images (captioning, object detection, OCR, visual Q&A, segmentation), process videos (scene detection, Q&A, temporal analysis, YouTube URLs, up to 6 hours), extract from documents (PDF tables, forms, charts, diagrams, multi-page), generate images (text-to-image, editing, com
.claude/skills/microck-ai-multimodal/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 322% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 143% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 52% | 0% |
| case-04 | ✗→✓ | ▲ Improved | 62% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 91% | 0% |
Process audio, images, videos, documents, and generate images using Google Gemini's multimodal API. Unified interface for all multimedia content understanding and generation.
| Task | Audio | Image | Video | Document | Generation | |------|:-----:|:-----:|:-----:|:--------:|:----------:| | Transcription | ✓ | - | ✓ | - | - | | Summarization | ✓ | ✓ | ✓ | ✓ | - | | Q&A | ✓ | ✓ | ✓ | ✓ | - | | Object Detection | - | ✓ | ✓ | - | - | | Text Extraction | - | ✓ | - | ✓ | - | | Structured Output | ✓ | ✓ | ✓ | ✓ | - | | Creation | TTS | - | - | - | ✓ | | Timestamps | ✓ | - | ✓ | - | - | | Segmentation | - | ✓ | - | - | - |
API Key Setup: Supports both Google AI Studio and Vertex AI.
The skill checks for GEMINI_API_KEY in this order:
export GEMINI_API_KEY="your-key".env.claude/.env.claude/skills/.env.claude/skills/ai-multimodal/.envGet API key: https://aistudio.google.com/apikey
For Vertex AI:
bashexport GEMINI_USE_VERTEX=true export VERTEX_PROJECT_ID=your-gcp-project-id export VERTEX_LOCATION=us-central1 # Optional
Install SDK:
bashpip install google-genai python-dotenv pillow
Transcribe Audio:
bashpython scripts/gemini_batch_process.py \ --files audio.mp3 \ --task transcribe \ --model gemini-2.5-flash
Analyze Image:
bashpython scripts/gemini_batch_process.py \ --files image.jpg \ --task analyze \ --prompt "Describe this image" \ --output docs/assets/<output-name>.md \ --model gemini-2.5-flash
Process Video:
bashpython scripts/gemini_batch_process.py \ --files video.mp4 \ --task analyze \ --prompt "Summarize key points with timestamps" \ --output docs/assets/<output-name>.md \ --model gemini-2.5-flash
Extract from PDF:
bashpython scripts/gemini_batch_process.py \ --files document.pdf \ --task extract \ --prompt "Extract table data as JSON" \ --output docs/assets/<output-name>.md \ --format json
Generate Image:
bashpython scripts/gemini_batch_process.py \ --task generate \ --prompt "A futuristic city at sunset" \ --output docs/assets/<output-file-name> \ --model gemini-2.5-flash-image \ --aspect-ratio 16:9
Optimize Media:
bash# Prepare large video for processing python scripts/media_optimizer.py \ --input large-video.mp4 \ --output docs/assets/<output-file-name> \ --target-size 100MB # Batch optimize multiple files python scripts/media_optimizer.py \ --input-dir ./videos \ --output-dir docs/assets/optimized \ --quality 85
Convert Documents to Markdown:
bash# Convert to PDF python scripts/document_converter.py \ --input document.docx \ --output docs/assets/document.md # Extract pages python scripts/document_converter.py \ --input large.pdf \ --output docs/assets/chapter1.md \ --pages 1-20
For detailed implementation guidance, see:
references/audio-processing.md - Transcription, analysis, TTSreferences/vision-understanding.md - Captioning, detection, OCRreferences/video-analysis.md - Scene detection, temporal understandingreferences/document-extraction.md - PDF processing, structured outputreferences/image-generation.md - Text-to-image, editingInput Pricing:
Token Rates:
TTS Pricing:
gemini-2.5-flash for most tasks (best price/performance)media_optimizer.py)Free Tier:
YouTube Limits:
Storage Limits:
Common errors and solutions:
All scripts support unified API key detection and error handling:
gemini_batch_process.py: Batch process multiple media files
media_optimizer.py: Prepare media for Gemini API
document_converter.py: Convert documents to PDF
Run any script with --help for detailed usage.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→pass | 4,708 | 3,482 | -26% | 1 | 1 | 0% | 839 | 3,539 | +322% | 0 | 0 | — |
case-02 | fail→pass | 7,731 | 4,107 | -47% | 1 | 1 | 0% | 1,530 | 3,722 | +143% | 0 | 0 | — |
case-03 | fail→pass | 12,520 | 3,471 | -72% | 1 | 1 | 0% | 2,166 | 3,297 | +52% | 0 | 0 | — |
case-04 | fail→pass | 12,018 | 3,150 | -74% | 1 | 1 | 0% | 2,246 | 3,636 | +62% | 0 | 0 | — |
case-09 | fail→pass | 10,326 | 2,259 | -78% | 1 | 1 | 0% | 1,679 | 3,213 | +91% | 0 | 0 | — |
case-05 | fail→pass | 14,775 | 2,289 | -85% | 1 | 1 | 0% | 2,342 | 3,346 | +43% | 0 | 0 | — |
case-06 | fail→pass | 11,507 | 3,011 | -74% | 1 | 1 | 0% | 2,040 | 3,423 | +68% | 0 | 0 | — |
case-07 | pass→pass | 8,370 | 3,123 | -63% | 1 | 1 | 0% | 1,425 | 3,406 | +139% | 0 | 0 | — |
case-08 | pass→pass | 8,654 | 2,981 | -66% | 1 | 1 | 0% | 1,464 | 3,392 | +132% | 0 | 0 | — |
case-10 | pass→pass | 10,668 | 4,201 | -61% | 1 | 1 | 0% | 1,676 | 3,559 | +112% | 0 | 0 | — |
case-11 | pass→pass | 4,082 | 2,294 | -44% | 1 | 1 | 0% | 620 | 3,212 | +418% | 0 | 0 | — |
case-12 | fail→pass | 9,809 | 3,249 | -67% | 1 | 1 | 0% | 1,716 | 3,482 | +103% | 0 | 0 | — |
case-13 | pass→pass | 8,781 | 2,180 | -75% | 1 | 1 | 0% | 1,473 | 3,205 | +118% | 0 | 0 | — |
case-14 | fail→pass | 8,147 | 2,754 | -66% | 1 | 1 | 0% | 1,250 | 3,376 | +170% | 0 | 0 | — |
case-15 | pass→pass | 8,426 | 3,025 | -64% | 1 | 1 | 0% | 1,367 | 3,371 | +147% | 0 | 0 | — |
case-16 | fail→pass | 5,086 | 1,570 | -69% | 1 | 1 | 0% | 817 | 3,072 | +276% | 0 | 0 | — |
case-17 | fail→pass | 13,053 | 1,582 | -88% | 1 | 1 | 0% | 2,043 | 3,074 | +50% | 0 | 0 | — |
case-18 | pass→pass | 6,379 | 2,582 | -60% | 1 | 1 | 0% | 1,027 | 3,258 | +217% | 0 | 0 | — |
case-19 | fail→pass | 8,118 | 2,764 | -66% | 1 | 1 | 0% | 1,510 | 3,353 | +122% | 0 | 0 | — |
case-20 | fail→pass | 14,419 | 11,343 | -21% | 1 | 1 | 0% | 2,447 | 4,759 | +94% | 0 | 0 | — |
case-21 | pass→pass | 17,538 | 10,776 | -39% | 1 | 1 | 0% | 3,087 | 4,880 | +58% | 0 | 0 | — |
case-22 | fail→fail | 11,908 | 5,182 | -56% | 1 | 1 | 0% | 2,109 | 3,787 | +80% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +59 percentage points is the difference between those two pass rates over the 22 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.