Extract frames from a screencast video in ~/ビデオ/スクリーンキャスト/, analyze the content, and execute instructions. Use when the user wants to verify UI changes, debug visual issues, or document features from recorded screencasts.
Extract frames from screencast videos, analyze visual content, and execute instructions based on the video.
Claude uses this skill when:
/check-video [N] <instruction>/check-video [N] <instruction>
N (optional): Which video to use (1 = latest, 2 = second latest, etc.). Default: 1instruction: What to do after analyzing the video contentFind the latest (or N-th latest) video file in ~/ビデオ/スクリーンキャスト/:
# Get the N-th latest video file (default N=1)
VIDEO_FILE=$(ls -t ~/ビデオ/スクリーンキャスト/*.{mp4,webm,mkv,avi,mov} 2>/dev/null | sed -n '${N}p')
# Example for latest (N=1):
VIDEO_FILE=$(ls -t ~/ビデオ/スクリーンキャスト/*.{mp4,webm,mkv,avi,mov} 2>/dev/null | head -1)
Extract key frames at regular intervals (e.g., every 3 seconds):
# Create temporary directory for frames
FRAME_DIR=$(mktemp -d)
# Extract frames every 3 seconds
ffmpeg -i "$VIDEO_FILE" -vf "fps=1/3" "$FRAME_DIR/frame_%04d.png"
# Or extract specific number of frames evenly distributed
DURATION=$(ffmpeg -i "$VIDEO_FILE" 2>&1 | grep "Duration" | awk '{print $2}' | tr -d ,)
# Calculate interval for N frames (e.g., 10 frames)
ffmpeg -i "$VIDEO_FILE" -vf "select='not(mod(n\,30))'" -vsync vfr "$FRAME_DIR/frame_%04d.png"
Use the Read tool to view each extracted frame:
# List all extracted frames
ls "$FRAME_DIR"/*.png
Then read each frame with the Read tool to analyze the visual content:
Based on the analyzed video content, execute the user's instruction:
# Remove temporary frames
rm -rf "$FRAME_DIR"
# Every 3 seconds
ffmpeg -i "$VIDEO_FILE" -vf "fps=1/3" "$FRAME_DIR/frame_%04d.png"
# Extract exactly 10 evenly-distributed frames
ffmpeg -i "$VIDEO_FILE" -vf "select='not(mod(n\,$(ffprobe -v error -count_frames -select_streams v:0 -show_entries stream=nb_read_frames -of default=nokey=1:noprint_wrappers=1 "$VIDEO_FILE" | awk '{print int($1/10)}'))'" -vsync vfr "$FRAME_DIR/frame_%04d.png"
# Extract frames only when scene changes significantly
ffmpeg -i "$VIDEO_FILE" -vf "select='gt(scene,0.3)'" -vsync vfr "$FRAME_DIR/frame_%04d.png"
/check-video 1 Verify if the alignment issue in PhotoTags tab is fixed
/check-video 1 Create screenshots for the S3 backup feature documentation
/check-video 1 Implement the emoji icons shown in the maintenance tab
/check-video 2 Compare this video with the previous one to check for regressions
Frame Rate: Adjust fps based on video length
fps=1/2)fps=1/3 or fps=1/5)fps=1/10)Video Format: ffmpeg supports most formats (mp4, webm, mkv, avi, mov)
Frame Quality: Use PNG for lossless quality when analyzing UI details
Focus on Key Moments: Use scene detection to capture only important changes
Temporary Storage: Always use mktemp -d for frame storage and clean up afterwards
~/ビデオ/スクリーンキャスト/ exists and contains video filessudo apt install ffmpeg (Linux) or brew install ffmpeg (Mac)This skill is particularly useful for: