Skip to content
Back to skills

Media Spec Checker

ASecurity

Check local image and video files against explicit technical requirements and produce measured pass, fail, or unverified results. Use for delivery-format checks, media-folder QA, dimensions, display ratios, duration, codecs, file sizes, or naming checks, not creative scoring or automatic conversion.

  • 3 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added October 15, 2026
ai-agentspython

Security analysis

A100/100

Pro scans all 6 files and shows the line behind each finding

Scanned October 15, 2026

npx -y skills add jqaisystems/jqai-ai-skills --skill media-spec-checker --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Media Spec Checker?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Media Spec Checker
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/jqaisystems-media-spec-checker/badge)](https://www.skillsdirectory.com/skills/jqaisystems-media-spec-checker)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: media-spec-checker
description: Check local image and video files against explicit technical requirements and produce measured pass, fail, or unverified results. Use for delivery-format checks, media-folder QA, dimensions, display ratios, duration, codecs, file sizes, or naming checks, not creative scoring or automatic conversion.
---

# Media Spec Checker

Turn a supplied delivery specification into reproducible checks without changing the media.

## Workflow

1. Identify the exact local files and intended delivery requirements. Do not infer current platform limits from memory.
2. Read [the rules contract](references/rules-contract.md). Adapt [the fictional profile](assets/example-rules.json) to the supplied specification. Omitted checks are not performed.
3. Run the helper, using a finite timeout:

       python scripts/check_media.py sample-media --rules rules.json --recursive --json

4. Explain each failure and each unverified measurement. Missing tools, malformed media, unsupported files, absent durations, or an unconfigured media type are not passes.
5. Return measured values, the requirements used, the report counts, and the smallest suggested correction. Do not convert or alter files unless a separate task authorizes it.

## Dependencies and limits

Python 3.11 or newer. Image inspection requires Pillow; video inspection requires ffprobe on PATH. Explain missing dependencies without installing anything automatically. Animated image timing is measured when frame delays are available; static images have no duration. Display dimensions account for image orientation and right-angle video rotation; video display ratio also uses sample aspect ratio.

The timeout bounds each ffprobe process, not Pillow decoding. Image inspection uses Pillow's decompression-bomb protection; very large or many-frame inputs can still require substantial local work.

The checker inspects supported local containers, not playback quality, visual legibility, accessibility, licensing, or platform acceptance. It does not run network probes, re-encode media, or remove metadata. Unknown files in a selected folder remain visible as unverified.

## Privacy and output

Reports contain selected measurements and relative filenames, not arbitrary embedded tags. Filenames can still identify projects; keep real reports private and use generated assets for public examples. Linked directories and files are not followed.

Exit codes: 0 means every requested check passed; 1 means measured failures; 2 means invalid input or any unverified result. The JSON counts preserve measured failures even when the overall exit is 2.

Files in this skill

  • SKILL.md2.6 KB
  • agents/openai.yaml242 B
  • assets/example-rules.json669 B
  • assets/rules.schema.json1.7 KB
  • references/rules-contract.md2.8 KB
  • scripts/check_media.py13.2 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.