Que fait Comparaison de montage vidéo ?
Génère le mode de comparaison V1 unique : original-vs-final-source-time.
Le panneau gauche diffuse l'original en continu. Le panneau droit projette les pixels réels de la livraison finale sur l'horloge source originale. Les plages supprimées sont en noir, les plages conservées sont étirées à leur durée source, et l'audio est copié à partir de l'original.
Dépendances
Nécessite ffmpeg/ffprobe dans le PATH ainsi que Python avec Pillow. Vérifiez ces dépendances avant de traiter les médias.
Entrées
work/timeline.json: mapping canonique chronologique source-programmeinput/original-video.mp4: source originalefinal/final-video.mp4: livraison réelle après toutes les modifications sélectionnées
Ne comparez pas avec un plan de montage ou un rendu intermédiaire. Les pixels finaux sont nécessaires pour que la révision inclue l'étalonnage et les habillages graphiques.
Rendu
python scripts/make_compare.py TIMELINE.json SOURCE.mp4 FINAL.mp4 OUT.mp4 [--filter-only]
Exemple de projet :
python skills/video-edit-compare/scripts/make_compare.py `
work/timeline.json `
input/original-video.mp4 `
final/final-video.mp4 `
review/04-edit-compare/original-vs-final-source-time.mp4
Le script écrit toujours le plan de comparaison durable work/edit-compare/compare-plan.json. Il écrit les images d'annotation PIL et le filtre généré sous le cache temporaire work/cache/. --filter-only crée le plan et les fichiers de cache inspectables sans rendre la vidéo.
Règles de mapping
- Conserver les clips source dans l'ordre chronologique, sans chevauchement et avec une source unique.
- Rogner chaque clip selon son
program_rangedepuis la vidéo finale. - L'étirer selon la vitesse du clip pour retrouver la durée de son
source_range. - Insérer du noir pour chaque écart de temps source.
- Mapper l'audio original sans le retimer.
- Dériver le début et la fin de chaque partie à partir des limites absolues du temps source, puis rogner à ce nombre d'images et reconstruire les PTS à la fréquence d'images rationnelle de la timeline. Ne jamais arrondir la durée de chaque partie indépendamment ; l'arrondi cumulé du concat provoque une dérive du temps source.
Les timelines réordonnées, dupliquées, chevauchantes, à vitesse non linéaire ou multi-source ne sont pas prises en charge en V1 et doivent échouer à la validation.
Vérification
Après le rendu, le script vérifie automatiquement la sortie complète :
- la durée est égale à
source_duration_sà une image près ; - la largeur de sortie est le double de la largeur source ;
- chaque échantillon de plage supprimée est noir sur le côté droit ;
- les échantillons des plages conservées correspondent aux images du programme final correspondant ;
- l'audio original reste continu et sur l'horloge source.
En cas de succès, il écrit review/04-edit-compare/comparison-summary.md avec un résultat de vérification positif. Lorsque work/project.json existe, il ajoute ou actualise le nœud de révision original-vs-final-source-time, enregistre les révisions exactes de l'opération active dans based_on, et actualise START-HERE.md. Ne créez pas de manifeste de vérifications séparé.
Cette comparaison est un livrable de révision, pas un aperçu par défaut. Générez-la après l'existence du rendu final.