Communitygithub.com

HKUDS/OpenSpace

인코딩 스크립트를 작성하기 전에 사용 가능한 FFmpeg 인코더를 확인하여 라이브러리 버전 불일치를 방지합니다.

OpenSpace란 무엇인가요?

이 스킬은 FFmpeg 인코딩 명령어를 실행하기 전에 시스템에 설치된 인코더 목록을 확인함으로써 라이브러리 버전 불일치로 인한 스크립트 오류를 예방합니다. `ffmpeg -encoders` 명령어를 통해 사용 가능한 코덱을 조회하고, 지원되지 않는 인코더를 사용하는 경우 자동으로 대체 방안을 제안하거나 경고합니다. macOS, Linux, Windows 등 다양한 환경에서 동작하며, CI/CD 파이프라인에 통합하여 배포 전 인코더 호환성을 검증할 수 있습니다. 특히 하드웨어 가속 인코더(h264_vaapi, hevc_nvenc 등)의 지원 여부를 사전에 체크하여 불필요한 디버깅 시간을 줄여줍니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/HKUDS/OpenSpace/tree/main/benchmarks/gdpval/skills/ffmpeg-encoder-check-4855c0

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

OpenSpace은(는) 무엇을 하나요?

인코딩 스크립트를 작성하기 전에 사용 가능한 FFmpeg 인코더를 확인하여 라이브러리 버전 불일치를 방지합니다.

이 스킬은 다음을 수행합니다:

  • 시스템에 설치된 모든 FFmpeg 인코더 목록 표시
  • 특정 인코더(하드웨어 가속 포함) 지원 여부 확인
  • 지원되지 않는 인코더 사용 시 경고 및 대체 제안

사용 방법

# 사용 가능한 모든 인코더 나열
ffmpeg -encoders

# 특정 인코더 확인 (grep 사용)
ffmpeg -encoders 2>&1 | grep -i "h264"

# 하드웨어 가속 인코더 확인
ffmpeg -encoders 2>&1 | grep -E "(nvenc|vaapi|qsv|videotoolbox)"

스크립트 예시

다음은 중요한 인코더 가용성을 확인하는 Bash 스크립트입니다:

#!/bin/bash
# check_encoders.sh - 필수 FFmpeg 인코더 확인

REQUIRED_ENCODERS=("libx264" "aac" "libmp3lame")
MISSING=()

for enc in "${REQUIRED_ENCODERS[@]}"; do
  if ! ffmpeg -encoders 2>&1 | grep -q "$enc"; then
    MISSING+=("$enc")
  fi
done

if [ ${#MISSING[@]} -eq 0 ]; then
  echo "✅ 모든 필수 인코더를 사용할 수 있습니다."
else
  echo "❌ 다음 인코더가 누락되었습니다: ${MISSING[*]}"
  echo "   패키지 관리자로 누락된 라이브러리를 설치하세요."
fi

지원 플랫폼

  • Linux (Ubuntu, Debian, Fedora, Arch 등)
  • macOS (Homebrew로 FFmpeg 설치 시)
  • Windows (Chocolatey, winget 또는 수동 설치)
  • CI/CD 환경 (GitHub Actions, GitLab CI 등)

문제 해결

인코더가 나열되지 않는 경우:

  • ffmpeg --version을 실행하여 FFmpeg가 설치되어 있는지 확인
  • libx264와 같은 일부 인코더는 별도의 라이브러리 패키지가 필요할 수 있습니다 (예: libx264-dev)
  • configure 옵션에 --enable-libx264 등이 포함된 FFmpeg 빌드를 사용 중인지 확인

자세한 정보:

관련 스킬