Au cours des dernières années, mon flux de travail pour éditer des vidéos pour ma chaîne YouTube était le suivant :
Écrire et enregistrer une narration/’A-roll’à l’aide d’un téléprompteur Importer l’enregistrement dans la chronologie , et coupez manuellement les parties silencieuses à l’aide des outils de lame et/ou de plage. Travaillez sur le reste du montage (ajoutez des”B-roll”et des inserts).
L’étape 3 est celle où la grande majorité du temps d’édition est passée, en particulier lorsque je dois ajouter des graphiques, des animations graphiques, etc.
Mais étape 2 est ennuyeux, d’autant plus que cela signifie que pour une vidéo typique de 10 minutes, je vais rester assis pendant 30 minutes environ à peaufiner toutes les coupures dans la partie silencieuse, pour essayer de faire passer le son d’une section du texte enregistré à l’autre.
Et ce n’est pas seulement pour les enregistrements de téléprompteur. Si vous éditez des screencasts, des VOD en streaming, des vlogs ou des interviews, il y a de fortes chances qu’il y ait beaucoup de parties silencieuses qui doivent être coupées avant le début du processus d’édition complet.
Il y a de très bons des applications qui automatisent tout ou partie de cela pour vous, comme :
Recut (99 $, aucun abonnement requis) Timebolt (17 $/mois et plus, selon l’abonnement) Descript (12 $/mois et plus, selon l’abonnement)
Mais j’ai pensé que Final Cut Pro X est une application de montage vidéo professionnelle utilisée par des tonnes de créateurs de contenu à travers le monde… il y a sûrement un moyen de le faire sans acheter de logiciel séparé qui crache une liste de décisions de montage que je dois importer dans Final Cut, n’est-ce pas ?
Eh bien… en quelque sorte. Après de nombreuses recherches et tests, ma nouvelle méthode pour couper les trous de silence est cet osascript de jashmenn. Il avait besoin d’un petit ajustement pour fonctionner avec mon flux de travail, mais combine le filtre de détection de silence de ffmpeg avec une petite automatisation OSA/AppleScript pour faire toutes les coupes pour moi.
L’étape 2 se déroule comme suit :
Exécutez ffmpeg-i [video.mp4]-af silencedetect=n=-35dB:d=800ms-f s16le-y/dev/null 2>&1 | tee silence.txt Assurez-vous que Final Cut Pro est ouvert sur une timeline (ou un plan composé) avec la même portion vidéo visible. Exécutez./final-cut-it-out.js silence.txt
Le script parcourt la vidéo et effectue des coupes à toutes les limites des portions silencieuses, puis revient en arrière et supprime toutes ces portions.
Ce n’est pas parfait, et ce serait bien d’avoir quelques-unes des fonctionnalités les plus robustes comme un vrai noise gate (attaque, déclin, etc. donc je n’ai pas de petits morceaux où il y a un pop ou je pose quelque chose), mais cela me permet de parcourir et de supprimer les mauvaises prises, d’ajuster les timings pour certaines des coupures d’écart et de continuer !
Je dois noter que j’ai changé la partie moveToTimecode du code en utilisant les changements de rlau1115 pour le métrage 23.98p.
J’ai également défini un seuil de bruit de-35dB et un retard de 800ms car cela semble offrir les meilleurs résultats pour mon type de discours.
Enfin, j’ai également ajusté les marges pour donner la bonne quantité de rembourrage pour le flux de mon discours h :
const startMargin=0,175 ; const endMargin=0,200 ;
Votre kilométrage peut varier. J’ai en fait créé le Gist dans un référentiel GitHub séparé, final-cut-it-out, depuis J’aimerais travailler à l’améliorer et à le rendre plus flexible pour différentes fréquences d’images et marges.