Pixerate video editor
Un projet est un simple JSON : taille de l'image, fps, un arrière-plan, des ressources (fichiers vidéo, audio ou image avec un src et, pour la vidéo et l'audio, une duration), des pistes listées de haut en bas (les pistes vidéo contiennent les médias, les titres et les clips de couleur ; les pistes audio contiennent le son ; une piste vidéo antérieure se superpose à une piste ultérieure), et des marqueurs. Un clip a un start et une duration sur la timeline ; un clip média a également un point in dans sa ressource, speed, volume, muted ; chaque clip peut avoir fadeIn, fadeOut, opacity, fit et transform, et une transition depuis le clip qui se termine là où il commence sur la même piste.
Un projet peut également contenir des séquences imbriquées ({ id, name, tracks }, leur propre timeline à partir de 0). Un clip composé (type: "sequence", sequence, in) joue un extrait de l'une d'elles comme une seule image et un seul son : son opacité, sa transformation, son mélange, son étalonnage, sa LUT, ses fondus, ses transitions et ses animations s'appliquent au composite de la séquence, et son volume, muted et ses fondus s'appliquent au mixage de la séquence. Les clips composés sont lus à vitesse normale (pas de speed ou de rampe), et les clips à l'intérieur d'une séquence peuvent être lus (list_video_sequences) mais pas encore modifiés.
Tous les temps sont en millisecondes sur la timeline (ou dans la source pour in). Identifiants : les pistes ressemblent à v1 / a1, les clips à c1, les marqueurs m1 ; vous pouvez définir vos propres identifiants lors de l'ajout. Lisez-les depuis get_video_project ; ne les inventez jamais.
Pour les erreurs, les noms d'outils avec espace de noms et les conventions d'annulation, voir pixerate-agent-tools.
Compétences de flux de travail
Pour ces travaux, chargez également la compétence de flux de travail : elle contient la méthode, les vérifications entre les étapes et les pièges, et utilise les outils ci-dessous.
pixerate-talking-head-edit: nettoyage de dialogue par transcription : tics verbaux, pauses, bégaiements.pixerate-bgm-alignment: coupe au rythme, baisse de la musique sous la parole, niveau sonore.pixerate-video-social-cut: recadrages verticaux, accroche en premier, durées pour les plateformes, titres dans la zone de sécurité.pixerate-video-colour-grade: corriger et harmoniser les plans, un rendu sur un clip de réglage, LUT et peau.pixerate-video-montage: sélections sur le rythme, rythme, transitions, musique et fin.
Méthode de travail
- Lire.
get_video_projectpour les paramètres, les ressources, les pistes, les clips (avec fin et plage source), un résumé de chaque séquence imbriquée, les marqueurs et les problèmes. Quand il y a des clips composés,list_video_sequencesmontre ce qu'ils contiennent. Définissez d'abord la taille de l'image et lefpsavecset_video_settingssi le projet est nouveau ; les modifier plus tard décale les limites basées sur l'image. - Importer les médias.
add_video_assetpour chaque fichier aveckind,srcet ladurationsource (sans elle, les coupes ne peuvent pas être vérifiées etcheck_video_projectavertitunknown-duration). Donnez uneposterpour la vidéo afin que les images rendues montrent une image. - Marquer la structure.
add_video_markersur les temps forts, les sections ou les notes de révision ; les bords des clips s'alignent sur les marqueurs dans l'interface utilisateur et les marqueurs font des ciblesseek_video. - Assembler en un seul lot. Utilisez
edit_videopour un montage brut : les opérationsadd_asset,add_track, puisadd_clipdans l'ordre, avec des identifiants de clips explicites afin que les opérations ultérieures (coupe, transition) puissent les nommer. Exécutez-le d'abord avecdry_run: true; l'erreur nomme l'opération en échec. - Affiner avec les outils individuels :
trim_video_clip,split_video_clip,move_video_clip,update_video_clip,set_video_transition,delete_video_clips/close_video_gaps; pour le timing entre les plans, utilisez les modes de coupe qu'un monteur utiliserait :roll_video_edit(déplacer une coupe),slip_video_clip(changer ce qu'un plan montre),slide_video_clip(déplacer un plan entre ses voisins) ; pour un tronçon entier,split_video_at,lift_video_rangeouextract_video_range. Animez l'opacité, le volume ou la position avecset_video_keyframes. - Couper par texte quand le média contient de la parole :
set_video_transcriptpour chaque ressource parlée (ou vérifieztranscriptWordsdansget_video_project),get_video_transcriptpour lire le montage, puisfind_video_fillers,find_video_pausesoufind_video_transcript_textet transmettez les plages que vous souhaitez supprimer àremove_video_rangesen un seul appel. Relisez la transcription après : chaque fois après qu'une coupe a été déplacée. - Vérifier.
check_video_projectet corrigez chaque erreur et avertissement ;find_video_gapspour les noirs ou les silences involontaires. - Regarder et écouter.
get_video_frameau niveau des coupes et des transitions pour les calques et les gains audio sous forme de nombres ;render_video_frameavectimespour une planche contact de la séquence. Rendez après un lot, pas après chaque édition. - Exporter quand demandé :
export_video_ffmpeg(une commande à exécuter, pas un rendu) ouexport_video_edl(une piste) pour finir ailleurs. Lisez les notes renvoyées. Pour un niveau sonore de livraison, faites d'abord exécuterexport_video_loudness_measurepar l'hôte et transmettez ce qu'il imprime commeloudness.measured; un seul passage (loudnesssansmeasured) est acceptable pour un brouillon. - Planifier d'abord quand l'utilisateur doit le voir. Pour tout ce qui est important ou lourd de jugement (un montage brut, un nettoyage, une coupe sur la musique), proposez-le avec
plan_video_edits(ou un outilplan_*des compétences de dialogue et de musique) au lieu de l'appliquer : le projet ne change pas, l'éditeur montre le plan avec son changement de durée et les tronçons qu'il coupe, et vous l'appliquez avecapply_video_edit_planune fois que l'utilisateur est d'accord (oudiscard_video_edit_plan).list_video_edit_plansmontre ce qui attend et si le projet a changé depuis. - Effets (uniquement lorsque l'hôte a enregistré un fournisseur d'effets ;
search_effectsditavailable: falsesinon) :search_effectsavec uneuse, puisdescribe_effectpour ses commandes, puisapply_effect(filtres et incrustations sur un clip),set_video_effect_transitionouadd_video_effect_clip(générateurs et titres). Réglez avecupdate_effectetset_video_effect_keyframes; vérifiez avecget_video_frame(les listes de calqueseffects) etlist_applied_effects. Un effet le long d'un chemin (un faisceau le long d'une bordure, une traînée, des mots écrits) :search_effectsavecaccepts: ["path"], ajoutez-le comme un clip ou un effet de clip, puisset_video_effect_pathavec lespointsdu cadre, les données du chemind, le contour dumaskd'un clip outext. - Mouvements de caméra (un fournisseur avec des mouvements de caméra, comme Flair) : un clip est le plan.
list_video_camera_movesavec unrole, puisset_clip_camera_move:transitionse déplace defromàframingdepuis le début du clip (un glissement, un whip pan, un punch zoom) ;holdjoue sur le reste du clip àframing(un dézoom Ken Burns sur un fixe). Les mouvements sont intégrés dans les clés x, y, scale et rotation du clip au fps du projet, deux clés à une coupe, donc l'aperçu et les exportations les lisent sans le fournisseur. Vérifiez avecget_video_frame. - Modèles de séquence (un fournisseur avec des modèles) : pour une ouverture, une révélation ou un compte à rebours prêts à l'emploi,
list_templates, puisdescribe_templatepour ses emplacements, puisfill_templateavecvalues(partez de sonexampleValues) etat. Il atterrit sur de nouvelles pistes au-dessus des autres en une seule étape d'annulation : la couche inférieure de chaque plan sur une piste de base portant la transition du plan, les autres couches comme des clips d'effet, d'image et de texte par rôle. Les emplacements ouverts reviennent sous forme de clips d'espace réservé gris (placeholders) ; placez la vraie image sur l'un d'eux avecadd_video_assetetadd_video_clipen modeoverwrite. Les mouvements de caméra ne sont pas reportés : ajoutez-les avecset_clip_camera_move.
Meilleures pratiques
- Couper sur l'action. Placez une coupe pendant un mouvement (un tour, une porte qui s'ouvre) afin que la continuité du mouvement la cache ;
split_video_clipsur l'action, puis coupez les côtés sortant et entrant. - Éviter les jump cuts. Deux plans consécutifs du même sujet depuis presque le même cadrage ressemblent à un défaut. Changez d'angle ou de taille, couvrez la coupe avec un B-roll sur une piste vidéo supérieure, ou rendez-la délibérée.
- Coupes J et L. Laissez le son précéder ou suivre l'image : placez le son du média sur une piste audio (un clip de la même ressource vidéo), coupez le son du clip vidéo (
muted: true), puisroll_video_editla coupe audio plus tôt (J) ou plus tard (L) que la coupe image. Cela lisse le dialogue et les changements de scène. - Transitions avec parcimonie. La coupe nette est la valeur par défaut. Utilisez
crossfadepour le passage du temps ou un changement de scène doux,dip(vers le noir, ou unecolor) pour une coupure de section,wiperarement. Gardez-les courtes (300-1000 ms).pushetslideconviennent plus aux graphiques, montages et montages sociaux qu'au drame ;irisest un effet de style d'époque ou de bande dessinée. Chaque type saufdipnécessite des poignées : la moitié de la durée des médias inutilisés après la coupe sur les deux clips ;dipn'en a besoin d'aucune. - Insertion vs remplacement.
add_video_clipetmove_video_clipprennentmode:refuse(par défaut ; l'erreur nomme le prochain endroit libre),overwrite(remplacer ce qui est en dessous, comme une édition par remplacement) ouinsert(pousser le matériel ultérieur). Utilisezripple: truesur la coupe et la suppression, etextract_video_rangeplutôt quelift_video_range, pour garder tout ce qui suit l'édition synchronisé sans espace. Le ripple et l'insertion déplacent chaque piste verrouillée en synchronisation déverrouillée, donc le dialogue et son image restent ensemble ; désactivezsyncLockedavecupdate_video_trackpour un lit musical qui doit rester en place. - Couper avec le bon outil. Pour changer quand une coupe se produit sans rien déplacer d'autre,
roll_video_edit; pour changer quel moment un plan montre,slip_video_clip; pour déplacer un plan plus tôt ou plus tard entre deux autres,slide_video_clip. Les trois maintiennent la timeline sans espace et rapportent le delta qu'ils ont réellement appliqué (limité aux médias disponibles). - Images clés avec parcimonie. Utilisez
set_video_keyframespour un push-in (scale1 à 1.1 sur le plan), une baisse sous le dialogue (volume), ou un fondu qui n'est pas à un bord ; facilitez (ease-in-out) plutôt que linéaire pour le mouvement. Les fondus simples aux bords du clip sontfadeIn/fadeOut. - Resserrer le dialogue d'abord par le texte. Avec une transcription, supprimez les tics verbaux et les pauses avec les outils de recherche et un
remove_video_ranges; examinez d'abord la liste des tics (un "tu sais" peut être voulu). Gardez 150-300 ms autour des mots (keep) pour que la parole respire. Sans transcription, utilisez le son lui-même, ci-dessous. - Resserrer le dialogue à l'oreille, en nombres.
find_video_silencessur un clip d'interview ou de voix off liste les pauses en temps de timeline ; extrayez les longues (gardez 150-300 ms de chaque côté pour que la parole ne semble pas coupée : réduisez chaque plage avantextract_video_range, et extrayez de la dernière pause à la première, ou relisez, car chaque extraction déplace ce qui suit). Utilisezget_video_audio_levelspour trouver où une réplique commence avant de couper ou diviser à cet endroit. - Rampes de vitesse pour l'emphase. Accélérez en ralenti juste avant le moment qui compte (un saut, une révélation) et revenez après :
set_video_speed_rampavec un glissement de 300-600 ms (toSpeed) plutôt qu'un changement brusque, et un ralenti autour de 0.25-0.5. Une image fixe (1-2 s) convient à un titre ou un moment "c'est moi" ; ajoutez-la avecadd_video_freeze_frame. Le son avec rampe est progressif et silencieux dans les images fixes, donc placez la musique ou les effets sous les plans avec rampe plutôt que leur propre son. - Fermer les espaces. Les espaces non intentionnels jouent comme couleur d'arrière-plan et silence.
find_video_gaps, puisclose_video_gapsou suppressions ripples. Laissez des espaces seulement là où vous voulez du noir. - Couper sur les images. Placez les débuts, les coupes et les divisions sur les limites d'image (multiples de 1000 / fps ms ; 41.667 à 24 ips, 33.333 à 30). Les éditions n'arrondissent pas pour vous.
- Niveaux audio. Le dialogue est la référence ; gardez la musique en dessous (volume autour de 0.2-0.4 sous la parole, plus entre les lignes) et évitez les gains au-dessus de 1 qui écrètent. Le
volumepar clip et levolumede piste se multiplient. Donnez à chaque clip audio qui commence ou se termine en plein son un courtfadeIn/fadeOut(10-50 ms) pour éviter les clics ; fondez les lits musicaux sur 1-3 s. Formez les fondus sonores avecfadeInCurve/fadeOutCurve:equal-powerlà où deux sons se chevauchent (il maintient le niveau sonore stable, là où le linéaire descend au milieu ;audioCurvedes transitions y est déjà par défaut pour les fondus enchaînés et les volets),exponentialpour fondre la musique en silence naturellement,s-curvepour un début et une fin doux. Le linéaire est la valeur par défaut. - Niveau sonore de livraison. Normalisez le mix final plutôt que de pousser les volumes des clips : -14 LUFS pour le web et le streaming, -16 pour les podcasts, -23 (EBU R128) ou -24 (ATSC) pour la diffusion, avec des pics réels à ou en dessous de -1 dBTP. Deux passages maintiennent la dynamique ; un passage contrôle le niveau.
- Étalonner en deux passes : corriger, puis le look. D'abord équilibrez chaque plan pour qu'une scène corresponde (
update_video_clipgrade: corrigez l'exposition et la balance des blancs par rapport au meilleur plan, puiscopy_video_gradede celui-ci au reste de la scène), puis ajoutez un look avecapply_video_grade_presetà unamountmodeste (0.3-0.6), ou un look.cubeque l'utilisateur possède avecset_video_lut(souvent àstrength0.5-0.8 : les LUT d'émulation film et créatives sont fortes à pleine force). Une LUT s'exécute après les réglages de l'étalonnage, donc corrigez d'abord l'exposition et la balance des blancs ; les LUT conçues pour les séquences log attendent une image plate et semblent écrasées sur une vidéo normale. Vérifiez avecrender_video_frameà quelques moments côte à côte. Les tons de peau sont la référence : évitez leshueoutintforts sur les personnes. - Clips de réglage pour les looks sur plusieurs plans. Plutôt que d'étalonner chaque clip d'une scène de la même manière,
add_video_adjustment_clipsur une piste au-dessus d'eux avec le look (grade, unpresetà unamount, ou des effets avecapply_effectsur le clip de réglage) : il change tout ce qui est en dessous pendant qu'il joue, donc les coupes et les nouveaux plans captent le look. La portéeallinclut les titres et les pistes au-dessus ; la portéetrackle limite à une piste. Fondu entrée et sortie (fadeIn/fadeOut) pour adoucir un look, et donnez-lui un masque pour le limiter à une partie de l'image. - Masques pour les changements ponctuels.
set_video_clip_maskcoupe un clip en une forme (ellipsepour un visage ou un vignettage,rectangleaveccorner_radiuspour une incrustation,linearpour un écran partagé ou un ciel dégradé,polygonpour une forme personnalisée avecpoints). Ajoutezinverted: truepour protéger le centre et affecter les bords. Utilisezmasksur les clips de réglage pour ne toucher qu'une partie de l'image, ou sur un clip vidéo pour un trou dans un incrusté. - Modèles pour un flux rapide. Utilisez
fill_templatepour un titre ou une transition récurrents, plutôt que de construire manuellement. Les clips d'espace réservé qu'il crée vous montrent où vos ressources vont. - Sauvegardes. L'éditeur Pixerate enregistre automatiquement ; utilisez
get_video_projectpour rafraîchir votre état. - Appeler les outils. Appelez toujours les outils vidéo directement par leur nom complet, avec tous les paramètres requis.
- Respecter le workflow. Suivez les étapes dans l'ordre : lecture, importation, assemblage, affinage, vérification, exportation. Ne sautez pas d'étapes.
- Tests. Utilisez
dry_run: truesur les opérations de lot avant de les appliquer. Vérifiez aveccheck_video_projectavant d'exporter.