source-compare
This skill should be used when the user asks "compare these videos", "which source is better", "compare blu-ray vs web", "which release should I use", "compare video quality", or needs to evaluate multiple versions of the same content to determine which has better quality.
What this skill does
# Video Source Comparison
Compare multiple video sources to determine which has better quality. Higher bitrate or resolution does not automatically mean better quality.
## Core Principle
Quality = how closely video resembles original master.
When comparing sources:
- Both derive from some common master
- The better source is closer to that master
- Technical specs (bitrate, resolution) are secondary to actual visual quality
## Comparison Workflow
### Step 1: Gather Metadata
Run MediaInfo on both sources:
```bash
mediainfo source_a.mkv > source_a_info.txt
mediainfo source_b.mkv > source_b_info.txt
```
Compare:
- Resolution
- Bitrate
- Encoder used
- Color space parameters
- HDR metadata (if applicable)
**Note**: Higher numbers don't guarantee better quality.
### Step 2: Extract Comparison Frames
Choose frames that reveal quality differences:
**Good comparison frames**:
- Dark scenes with gradients (reveals banding)
- Scenes with fine texture (hair, fabric, foliage)
- High motion scenes (reveals compression)
- Scenes with text or sharp edges (reveals filtering)
- Areas with strong colors (reveals color handling)
**Extract frames with ffmpeg**:
```bash
# Extract frame at specific timestamp
ffmpeg -ss 00:15:30 -i source.mkv -frames:v 1 frame_15m30s.png
# Extract multiple frames
ffmpeg -ss 00:10:00 -i source.mkv -frames:v 1 frame1.png
ffmpeg -ss 00:25:00 -i source.mkv -frames:v 1 frame2.png
ffmpeg -ss 00:45:00 -i source.mkv -frames:v 1 frame3.png
```
### Step 3: Visual Comparison
**Using SlowPics** (https://slow.pics):
1. Upload comparison frames from each source
2. Uncheck "Show border" and "Smooth scaling"
3. Use clicker mode (not slider)
4. Press number keys (1/2/3) to switch rapidly between sources
**What to look for**:
| Area | Better Source Shows |
|------|---------------------|
| Dark gradients | Smoother transitions, less banding |
| Edges | Clean edges, no haloing/ringing |
| Textures | Preserved grain/detail, not smeared |
| Colors | Natural, not oversaturated or shifted |
| Compression | Less blocking, less mosquito noise |
### Step 4: Check for Filtering
**Signs of harmful filtering**:
**Lowpassing (blur)**:
- Soft, smeared appearance
- Fine details less defined than other source
- Some Blu-ray authoring studios apply this
**Sharpening**:
- Haloing around edges (bright/dark outlines)
- Unnatural crispness
- Line warping on straight edges
**Color manipulation**:
- Oversaturated colors
- Crushed blacks or blown highlights
- Different color grading than other source
**Upscaling**:
- Details too sharp for claimed resolution
- AI hallucinations (invented details)
- Native resolution lower than file resolution
## Common Scenarios
### Blu-ray vs Web
**Blu-ray usually better when**:
- Same master, Blu-ray has more bitrate
- No filtering applied during authoring
- Proper color space handling
**Web can be better when**:
- Blu-ray has lowpass filter applied
- Web has newer/better master
- Blu-ray is poor upscale from SD source
- Web version has better color grading
### Multiple Blu-ray Releases
Different authoring studios, regions, or editions can have different quality:
- Check authoring studio (some are known for lowpassing)
- Compare frame-by-frame for filtering
- Look for remastered vs original master
### SD vs HD
**HD version better when**:
- Truly native HD content
- Good upscale from clean SD master
**SD version better when**:
- HD is poorly upscaled from SD source
- HD has additional filtering damage
- SD is closer to original DVD master
## Red Flags
**Higher bitrate source might be worse if**:
- Encoded with inferior encoder (NVENC vs x264)
- Has filtering applied (sharpening, lowpass)
- Is upscaled from lower resolution
- Has wrong color space applied
**Higher resolution source might be worse if**:
- Upscaled from lower resolution original
- Has AI upscaling artifacts
- Native production resolution was lower
## Quick Decision Guide
| Comparison | Check First | Likely Winner |
|------------|-------------|---------------|
| Blu-ray vs Web | Filtering, authoring | Depends on studio |
| 4K vs 1080p | Native resolution | If native, 4K |
| HEVC vs AVC | Encoder, settings | Neither inherently |
| High vs low bitrate | Encoder efficiency | Higher if same encoder |
| HDR vs SDR | HDR legitimacy | SDR if HDR is fake |
## Tools Reference
- **SlowPics** (slow.pics) - Frame comparison hosting
- **vs-preview** - VapourSynth comparison tool
- **mpv** - Frame extraction, playback comparison
- **MediaInfo** - Metadata comparison
## Additional Resources
- **JET Guide**: https://jaded-encoding-thaumaturgy.github.io/JET-guide/
- **`${CLAUDE_PLUGIN_ROOT}/references/quality-myths.md`** - Why specs don't equal quality
- **`${CLAUDE_PLUGIN_ROOT}/references/artifacts.md`** - What quality issues look like
Related in Image & Video
watch
IncludedWatch a video (URL or local path). Downloads with yt-dlp, extracts auto-scaled frames with ffmpeg, pulls the transcript from captions (or Whisper API fallback), and hands the result to Claude so it can answer questions about what's in the video.
physical-ai-defect-image-generation
IncludedUse when the user wants to orchestrate defect image generation, run associated setup, or handle outputs on OSMO. The Day 0 path handles cold-start with USD-to-ROI, image-edit augmentation, and AnomalyGen to create initial PCBA datasets. The Day 1 path performs inference and labeling on real images. This skill helps with first-time asset setup, creation of finetuning checkpoints, and configuring deployment. Trigger keywords: defect image generation, dig workflow, dig pipeline, defect image detection workflow, aoi pipeline, aoi anomalygen, usd2roi anomalygen, day 0 pcba, day 1 pcba, day 1 real-photo alignment, day 1 manual roi, metal surface anomaly, glass defect, anomalygen finetune, setup_pcb, setup_metal, setup_glass, setup_pretrained, dig setup, dig datasets, dig pretrained checkpoint, dig image-edit endpoint.
accelint-react-best-practices
IncludedReact performance optimization and best practices. ALWAYS use this skill when working with any React code - writing components, hooks, JSX; refactoring; optimizing re-renders, memoization, state management; reviewing for performance; fixing hydration mismatches; debugging infinite re-renders, stale closures, input focus loss, animations restarting; preventing remounting; implementing transitions, lazy initialization, effect dependencies. Even simple React tasks benefit from these patterns. Covers React 19+ (useEffectEvent, Activity, ref props). Triggers - useEffect, useState, useMemo, useCallback, memo, inline components, nested components, components inside components, re-render, performance, hydration, SSR, Next.js, useDeferredValue, combined hooks.
elevenlabs-agents
IncludedBuild conversational AI voice agents with ElevenLabs Platform using React, JavaScript, React Native, or Swift SDKs. Configure agents, tools (client/server/MCP), RAG knowledge bases, multi-voice, and Scribe real-time STT. Use when: building voice chat interfaces, implementing AI phone agents with Twilio, configuring agent workflows or tools, adding RAG knowledge bases, testing with CLI "agents as code", or troubleshooting deprecated @11labs packages, Android audio cutoff, CSP violations, dynamic variables, or WebRTC config. Keywords: ElevenLabs Agents, ElevenLabs voice agents, AI voice agents, conversational AI, @elevenlabs/react, @elevenlabs/client, @elevenlabs/react-native, @elevenlabs/elevenlabs-js, @elevenlabs/agents-cli, elevenlabs SDK, voice AI, TTS, text-to-speech, ASR, speech recognition, turn-taking model, WebRTC voice, WebSocket voice, ElevenLabs conversation, agent system prompt, agent tools, agent knowledge base, RAG voice agents, multi-voice agents, pronunciation dictionary, voice speed control, elevenlabs scribe, @11labs deprecated, Android audio cutoff, CSP violation elevenlabs, dynamic variables elevenlabs, case-sensitive tool names, webhook authentication
humanizer
IncludedHumanize AI-generated text by detecting and removing patterns typical of LLM output. Rewrites text to sound natural, specific, and human. Uses 28 pattern detectors, 560+ AI vocabulary terms across 3 tiers, and statistical analysis (burstiness, type-token ratio, readability) for comprehensive detection. Use when asked to humanize text, de-AI writing, make content sound more natural/human, review writing for AI patterns, score text for AI detection, or improve AI-generated drafts. Covers content, language, style, communication, and filler categories.
generating-mermaid-diagrams
IncludedSalesforce architecture diagrams using Mermaid with ASCII fallback. Use this skill when generating text-based diagrams for Salesforce architecture, OAuth flows, ERDs, integration sequences, or Agentforce structure. TRIGGER when: user says "diagram", "visualize", "ERD", or asks for sequence diagrams, flowcharts, class diagrams, or architecture visualizations in Mermaid. DO NOT TRIGGER when: user wants PNG/SVG image output (use generating-visual-diagrams), or asks about non-Salesforce systems.