Communitygithub.com

openvidstudio — 실제 제품 → 런치 컷

실제 제품 화면을 MCP로 캡처해 Remotion 시네마틱 데모/런치 영상으로. 생성 UI 없음. README brand/demo.gif 증명.

openvidstudio — 실제 제품 → 런치 컷란 무엇인가요?

Launch Video 1단계: MCP+Playwright로 실제 앱 캡처→Remotion 완성. README demo.gif.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add AnayDhawan/openvidstudio

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

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

문서

bgmusic

라이브러리를 다운로드하거나 저작권 표시를 할 필요 없이, 공개 도메인 카탈로그에서 비디오에 어울리는 실제 뮤직 베드를 찾으세요.

내장된 것으로 충분할 때

public/sfx/에는 이미 두 개의 베드가 포함되어 있으며, 둘 다 요청이 필요하지 않습니다:

  • music-bed.mp3 - 60초 분위기 드론. 짧은 기술 워크스루에 적합합니다.
  • pulse-bed.mp3 - 112bpm이며 pulse-bed.cues.json에 정확한 큐 그리드가 있습니다. 비트에 맞춘 컷이 추정치가 아니라 정확한 유일한 트랙입니다. 분석된 것이 아니라 합성되었기 때문입니다.

비디오가 짧거나, 내레이션 중심이거나, 음악이 침묵만 아니면 될 때 사용하세요. 비디오가 런칭이나 홍보 영상이고 베드가 분위기를 전달해야 할 때는 다른 것을 찾아보세요.

두 개의 카탈로그

소스내용크기
lofibtahir/open-lofi, 10개 카테고리의 166개 로파이 트랙트랙당 ~3MB
cc0SoundSafari/CC0-1.0-Music, freepd, chosic, Free Music Archive, freesound 및 Pixabay의 ~9200개 트랙트랙당 2-15MB

두 카탈로그 모두 CC0-1.0 라이선스입니다. 공개 도메인, 상업적 사용 가능, 저작권 표시 불필요, 비디오 설명에 아무것도 추가할 필요 없습니다. 이것이 plan_sound_effects가 여전히 사용자를 Pixabay로 수동으로 보내는 동안 이 두 카탈로그가 연결된 이유입니다.

한 가지 분명히 말해야 할 주의사항: 이 컬렉션은 커뮤니티에서 집계된 것이며 삭제 요청에 따라 운영되므로, 각 트랙의 CC0 주장은 유지 관리자의 주장이지 사용자가 읽은 라이선스가 아닙니다. 제품 비디오의 경우 괜찮으며, 출처 파일에는 소스가 기록되어 있습니다. 잘못된 라이선스가 비용이 많이 드는 상황이라면, 한 저자, 한 릴리스, 한 라이선스 명세인 lofi를 사용하세요.

흐름

find_music_bed -> [사용자 청취] -> import_music_bed -> plan_music_cues -> stitch_composition

1. find_music_bed

평범한 분위기나 장면 단어로 질의하세요: "calm focus coding", "late night neon", "warm upbeat". 제목과 카테고리가 매칭됩니다.

첫 번째 호출은 인덱스를 구축합니다. 약 7번의 GitHub API 호출로, output/music-index.json에 캐시됩니다. 이후 검색은 로컬 읽기입니다. 카탈로그가 새 릴리스를 게시한 후에만 refresh: true를 전달하세요.

lofi 카테고리는 실제 메타데이터이므로 category: "ambient-lofi"가 작동합니다. Corpus 트랙에는 메타데이터가 없습니다. 해당 사이트의 이름을 딴 폴더에 있는 파일 이름일 뿐입니다. 일치하는 항목이 없으면 도구는 일반 샘플을 반환하고 matchedQuery: false를 설정합니다. 이는 작곡가가 실제로 제목에 넣을 단어를 시도하라는 신호이지, 포기하라는 신호가 아닙니다.

사용자가 선택하도록 하세요. 제목과 카테고리와 함께 3~5개의 후보를 반환하세요. 음악은 취향이며, 잘못된 베드는 잘못된 글꼴보다 더 눈에 띕니다.

2. import_music_bed

import_music_bed(id: "lofi:terminal-rain", out: "public/audio/music-bed.mp3", seconds: 45, start: 12)

다운로드 외에 하는 작업: start부터 seconds만큼 자르고, 페이드 인/아웃하며, -20 LUFS로 정규화하여 베드가 내레이션 아래에 자리 잡고 싸우지 않도록 합니다. raw: true를 전달하면 이 모든 것을 건너뛰고 트랙을 출시된 그대로 유지합니다.

저장 위치:

  • public/audio/music-bed.mp3 - 구성의 베드용. stitch_composition이 자동으로 해당 경로를 첨부하므로 다른 것은 변경할 필요가 없습니다.
  • public/imported_audios/ (기본값) - 그 외의 모든 것. 내장 팩에서 가져오지 않은 자료를 보관하는 폴더입니다.

트랙 옆에 <file>.source.json과 MUSIC-SOURCES.md 행을 씁니다: id, 제목, 소스 저장소, 라이선스, 날짜. CC0는 이러한 것 중 어느 것도 요구하지 않습니다. 1년 후에 베드의 출처를 추측이 아닌 파일 읽기로 알 수 있도록 하기 위한 것입니다.

start로 트랙 중간으로 건너뛰세요. 인트로는 보통 가장 덜 유용한 부분이며, 다운비트로 시작하는 베드는 의도적으로 보이기 위해 편집이 필요하지 않습니다.

3. plan_music_cues

가져온 파일에서 호출하세요. pulse-bed.mp3가 아닌 트랙의 경우 그리드는 온셋 엔벨로프에서 추정되므로 계획 지침으로 취급하세요: 모든 컷이 아닌 주요 공개 장면 몇 개를 strongCues에 스냅하세요. docs/STYLE.md에 허용 오차가 있습니다.

비용 및 제한 사항

  • 어떤 것도 벤더링되지 않습니다. open-lofi는 트랙을 554MB 릴리스 zip 안에만 게시하므로, 가져오기는 HTTP 범위 요청을 통해 해당 zip의 중앙 디렉토리를 읽고 선택한 멤버의 바이트만 가져옵니다. 554MB는 절대 다운로드되지 않습니다.
  • 베드를 조형하려면 PATH에 ffmpeg가 필요합니다. raw: true는 필요하지 않습니다.
  • GitHub의 인증되지 않은 API 제한은 시간당 60개 요청입니다. 인덱스 구축은 약 7개를 사용합니다. 자주 재구축하는 머신에서는 GITHUB_TOKEN을 설정하세요.
  • 인덱스 캐시는 output/ 아래에 있으며, 스캐폴딩된 프로젝트는 이미 gitignore 처리되어 있습니다.

하지 말아야 할 것

  • 전체 카탈로그를 프로젝트에 커밋하지 마세요. 여기서 단위는 비디오당 하나의 베드입니다.
  • 트랙을 public/sfx/에 넣지 마세요. 해당 폴더는 패키지와 함께 제공되는 팩이며, public/sfx/CREDITS.md에는 그 안에 무엇이 있고 왜 조건이 없는지 명시되어 있습니다.
  • 이것을 음향 효과에 사용하지 마세요. plan_sound_effects는 먼저 내장 팩을 확인하고 그 다음에만 찾으러 가는데, 이것이 효과에 맞는 올바른 순서입니다.

Individual skills in this repo

This repo contains 3 individual skills — each has its own dedicated page.

관련 스킬