Communitygithub.com

AnayDhawan/openvidstudio-bgmusic

동영상에 배경 음악이 필요할 때 사용합니다. CC0 퍼블릭 도메인 카탈로그에서 음악을 검색하고 가져와 배경 음악으로 다듬습니다.

openvidstudio-bgmusic란 무엇인가요?

이 스킬은 동영상 제작 시 배경 음악(BGM)을 찾고 적용하는 과정을 자동화합니다. 사용자는 'find music', 'background music', 'music bed', 'bgm', 'the music is boring', 'something lo-fi' 등 자연어 명령으로 음악 검색을 시작할 수 있습니다. 내장된 두 개의 합성 음원(분위기 드론, 펄스)만으로 충분하지 않을 때, CC0-1.0 라이선스의 두 공개 도메인 카탈로그(btahir/open-lofi의 166개 로파이 트랙, SoundSafari/CC0-1.0-Music의 약 9200개 트랙)를 검색합니다. 검색된 음악 중 사용자가 선택하면, 해당 트랙을 다운로드하여 지정된 구간만큼 자르고 페이드 인/아웃을 적용하며 음량을 -20 LUFS로 정규화하여 내레이션과 조화를 이루게 합니다. `find_music_bed`, `import_music_bed`, `plan_music_cues` 등 세 단계로 구성되며, `ffmpeg`이 필요합니다. 음악 저작권 문제를 피하고 싶은 프로모션이나 런칭 동영상 제작에 적합하며, 효과음(`plan_sound_effects`)이나 내레이션(`generate_narration`)에는 사용하지 않습니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/AnayDhawan/openvidstudio/tree/main/.agents/skills/bgmusic

즐겨 사용하는 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 2 individual skills — each has its own dedicated page.

관련 스킬