Que fait bgmusic ?
Trouvez une véritable musique de fond pour une vidéo, à partir de catalogues de domaine public, sans télécharger de bibliothèque ni devoir créditer quiconque.
Quand les pistes intégrées suffisent
public/sfx/ fournit déjà deux musiques de fond qui ne coûtent aucune requête :
music-bed.mp3, un drone ambiant de 60s. Parfait pour un tutoriel technique court.pulse-bed.mp3, 112bpm avec une grille de repères exacte danspulse-bed.cues.json. Le seul morceau dont les coupures calées sur le rythme sont exactes plutôt qu'estimées, car il a été synthétisé plutôt qu'analysé.
Utilisez-les quand la vidéo est courte, principalement narrative, ou que la musique n'a qu'à ne pas être du silence. Cherchez ailleurs quand la vidéo est un lancement ou une promotion et que la musique de fond porte l'ambiance.
Les deux catalogues
| Source | Quoi | Taille |
|---|---|---|
lofi | btahir/open-lofi, 166 pistes lo-fi en 10 catégories | ~3 Mo par piste |
cc0 | SoundSafari/CC0-1.0-Music, ~9200 pistes de freepd, chosic, Free Music Archive, freesound et Pixabay | 2-15 Mo par piste |
Les deux sont sous licence CC0-1.0. Domaine public, usage commercial autorisé, aucune attribution requise, rien à mentionner dans la description de la vidéo. C'est pourquoi ces deux catalogues sont intégrés alors que plan_sound_effects envoie encore l'utilisateur vers Pixabay manuellement pour les effets.
Une mise en garde qu'il vaut la peine de mentionner : le corpus est agrégé par la communauté et fonctionne sur demande de retrait, donc sa déclaration CC0 par piste est celle du mainteneur, pas une licence que vous avez lue. Pour une vidéo produit, c'est acceptable et le fichier de provenance enregistre la source. Là où une mauvaise licence coûterait cher, restez sur lofi, qui est un auteur, une version, une déclaration de licence.
Le flux
find_music_bed -> [utilisateur auditionne] -> import_music_bed -> plan_music_cues -> stitch_composition
1. find_music_bed
Interrogez avec des mots d'ambiance ou de scène simples : "calme concentration codage", "nuit néon tardive", "chaud entraînant". Les titres et les catégories sont ce qui est mis en correspondance.
Le premier appel construit un index, environ sept appels à l'API GitHub, mis en cache dans output/music-index.json. Les recherches suivantes sont une lecture locale. Passez refresh: true seulement après qu'un catalogue a publié une nouvelle version.
Les catégories lofi sont des métadonnées réelles, donc category: "ambient-lofi" fonctionne. Les pistes du corpus n'en ont pas : une piste y est un nom de fichier dans un dossier nommé d'après le site dont elle provient. Quand rien ne correspond, l'outil renvoie un échantillon simple et définit matchedQuery: false. C'est un signal pour essayer un mot qu'un compositeur mettrait réellement dans un titre, pas pour abandonner.
Laissez l'utilisateur choisir. Renvoyez trois à cinq candidats avec leurs titres et catégories. La musique est une question de goût, et une mauvaise musique de fond est plus remarquable qu'une mauvaise police.
2. import_music_bed
import_music_bed(id: "lofi:terminal-rain", out: "public/audio/music-bed.mp3", seconds: 45, start: 12)
Ce qu'il fait en plus du téléchargement : découpe seconds à partir de start, applique des fondus d'entrée et de sortie, et normalise à -20 LUFS pour que la musique de fond reste sous la narration au lieu de la combattre. Passez raw: true pour ignorer tout cela et garder la piste telle que publiée.
Où placer le fichier :
public/audio/music-bed.mp3pour la musique de fond de la composition.stitch_compositionattache ce chemin automatiquement, donc rien d'autre ne change.public/imported_audios/(par défaut) pour tout le reste, qui est le dossier contenant le matériel qui ne provient pas du pack intégré.
Il écrit <fichier>.source.json et une ligne dans MUSIC-SOURCES.md à côté de la piste : id, titre, dépôt source, licence, date. CC0 n'exige rien de tout cela. C'est là pour que, un an plus tard, la provenance d'une musique de fond soit une lecture de fichier plutôt qu'une supposition.
Sautez au milieu d'une piste avec start. Les intros sont généralement la partie la moins utile, et une musique de fond qui commence sur un temps fort n'a pas besoin d'édition pour sembler délibérée.
3. plan_music_cues
Appelez-le sur le fichier importé. Pour toute piste qui n'est pas pulse-bed.mp3, la grille est estimée à partir d'une enveloppe d'attaques, donc traitez-la comme un guide de planification : accrochez quelques révélations majeures à strongCues, pas toutes les coupures. docs/STYLE.md contient les tolérances.
Coûts et limites
- Rien n'est vendu. open-lofi publie ses pistes uniquement dans une archive zip de 554 Mo, donc une importation lit le répertoire central de ce zip via des requêtes HTTP range et ne télécharge que les octets du membre choisi. Les 554 Mo ne sont jamais téléchargés.
- Façonner une musique de fond nécessite
ffmpegdans le PATH.raw: truenon. - La limite de l'API GitHub non authentifiée est de 60 requêtes par heure. Une construction d'index en utilise environ sept. Définissez
GITHUB_TOKENsur une machine qui le reconstruit souvent. - Le cache de l'index se trouve sous
output/, qu'un projet déjà structuré a déjà dans son.gitignore.
Ce qu'il ne faut pas faire
- Ne commitez pas un catalogue entier dans un projet. Une musique de fond par vidéo est l'unité ici.
- Ne mettez pas de piste dans
public/sfx/. Ce dossier est le pack qui accompagne le paquet, etpublic/sfx/CREDITS.mdindique ce qu'il contient et pourquoi il n'a pas de conditions. - N'utilisez pas ceci pour des effets sonores.
plan_sound_effectsvérifie d'abord le pack intégré et ne cherche ensuite, ce qui est le bon ordre pour les effets.