zc277584121/marketing-skills

raw-video-processing

Post-process raw screen recordings by removing silent segments and applying speed adjustments.

소스 보기

사용 방법

  1. 설치 명령을 복사하고 자신의 에이전트 환경에 설치하기 전에 소스 패키지를 확인하세요.
  2. 필요한 도구, 인증 정보, 지원 환경은 원본 문서에서 확인하세요.
  3. 입력과 원하는 산출물을 설명하고 출처와 결과를 대조하세요.
npx skills add https://github.com/zc277584121/marketing-skills --skill raw-video-processing

시작 전 확인

  • 설치에는 모델 구독, API 한도, 파일 접근 권한이 포함되지 않습니다.
  • 별점 수와 설치 수는 활동 지표이며 독립적인 품질·보안 검증이 아닙니다.
원본 Skill 문서

원본 저장소의 제목, 예시, 코드, 표, 링크, 이미지를 유지해 표시합니다.

Skill: Raw Video Processing

Post-process raw screen recordings to improve pacing — remove silent segments, then speed up the result.

Prerequisite: FFmpeg and uv must be installed.

When to Use

The user has recorded a screencast and wants to clean it up before publishing. Typical issues in raw recordings:

  • Long pauses / dead air while thinking or waiting for loading
  • Keyboard typing sounds and other low-level background noise that should be treated as silence
  • Overall pacing feels slow and could benefit from a slight speed boost

Default Workflow

When the user provides a raw video file, run both scripts in sequence by default:

Step 1: Remove Silent Segments

bash
uv run --python 3.12 /path/to/skills/raw-video-processing/scripts/remove_silence.py <input.mp4> -t="-20dB" -d 0.5

This detects and cuts out silent portions (including keyboard sounds), producing <input>_nosilence.mp4.

Always pass these parameters (tuned for screen recordings with keyboard noise):

  • -t="-20dB" — aggressive threshold that filters out keyboard typing and background noise (use = syntax to avoid argparse treating negative values as flags)
  • -d 0.5 — remove short silences too (0.5s minimum)
  • -p 0.2 — seconds of breathing room kept around speech boundaries (default, usually no need to pass)

The script prints a detailed summary: number of silent segments found, total silence removed, and all kept segments with timestamps. Review this output to confirm the result looks reasonable.

Step 2: Speed Up the Video

bash
uv run --python 3.12 /path/to/skills/raw-video-processing/scripts/speed_video.py <input>_nosilence.mp4

This applies a speed multiplier to the silence-removed video, producing <input>_nosilence_1.2x.mp4.

Default parameters:

  • --speed 1.2 — 1.2x playback speed (a subtle boost that doesn't feel rushed)

Script Options

remove_silence.py

FlagDefaultDescription
-o, --output<input>_nosilence.mp4Custom output path
-t, --threshold-30dBSilence threshold in dB (higher = more aggressive). Always use `-20dB` for screencasts — pass as -t="-20dB" to avoid argparse issues with negative values
-d, --duration0.8Minimum silence duration in seconds to remove. Use `0.5` for screencasts
-p, --padding0.2Padding kept around non-silent segments
--dry-runoffOnly print detected segments, don't export

speed_video.py

FlagDefaultDescription
-o, --output<input>_<speed>x.mp4Custom output path
-s, --speed1.2Playback speed multiplier

Custom Scenarios

  • Only remove silence — run just Step 1.
  • Only speed up — run just Step 2 directly on the input file.
  • Conservative cleanup — use -t="-30dB" -d 0.8 if the default is cutting too much speech.
  • Extra aggressive cleanup — use -t="-15dB" -d 0.3 and --speed 1.5 for maximum compression.
  • Preview before committing — use --dry-run on remove_silence.py to see what would be cut without creating a file.
  • Custom output name — use -o on either script to control the output path.

Important Notes

  • Always run removesilence **before** speedvideo. Silence detection works on the original audio; speeding up first would alter the audio characteristics and make silence detection less accurate.
  • For long videos (>30 min), the silence removal step may take a few minutes as it processes each segment individually.
  • Both scripts preserve video quality — removesilence uses stream copy (no re-encoding), while speedvideo re-encodes with FFmpeg defaults.

관련 작업

같은 저장소의 Skills

더 많은 Skills

모든 Skills