Le contrôle de version participe-t-il au processus de production vidéo?


18

Je suis développeur de logiciels et je m'intéresse également à la photographie (depuis quatre ans) et à la production vidéo (depuis quelques mois seulement).

■ Dans le développement logiciel, il existe une règle importante que chaque développeur suit pour chaque projet:tout devrait être sous contrôle de version: code source, fichiers de configuration, schéma de base de données, documentation - tout ce qui permet de construire le projet à partir de zéro.Cela a deux conséquences agréables:

  1. En cas de sinistre lorsque vous perdez tout, sauf le référentiel de contrôle de version, vous devriez pouvoir continuer comme si de rien n'était.

  2. En cas de changement stupide affectant négativement le projet, le développeur peut revenir à une révision antérieure.

■ en photographie,chaque modification apportée aux photos est stockée pour toujours dans le catalogue Lightroom, permettant de revenir à l’état précédent à tout moment.Grâce à la fonctionnalité de copie virtuelle, Lightroom permet également d'effectuer ce que l'on appelle une branche dans le contrôle de version: la possibilité de tester quelque chose de différent et de conserver les deux résultats ou d'en supprimer un ultérieurement.

Le catalogue ne stocke pas les photos RAW elles-mêmes, mais elles ne changent pas de toute façon.

■ En production vidéo, les choses semblent différentes.Je travaille avec Premiere Pro, After Effects et Soundbooth.

  • Aucun ne semble stocker l'historique de façon permanente: si je fais une action par erreur et que je ne le remarque que le lendemain, il n'y a aucun moyen de récupérer la version précédente.

  • Soundbooth modifie également directement les fichiers WAV, ce qui nécessite un effort supplémentaire pour conserver les enregistrements originaux séparés des fichiers modifiés.

  • Le contrôle de version est rarement mentionné, et je n'ai trouvé personne qui dise comment il utilise réellement le contrôle de version dans son flux de travail.De plus, personne ne mentionne le contrôle de version à utiliser, et comme la plupart des systèmes de contrôle de version sont optimisés pour les fichiers texte, et non pour les fichiers binaires, cela crée un défi supplémentaire.

  • Video.SE n'a pas de balises ou .

Ainsi, j'ai deux questions:

  1. Le contrôle de version participe-t-il au flux de travail d'une personne travaillant avec la production vidéo?Comment est-il intégré?

  2. La migration vers Adobe Creative Cloud vous aiderait-elle?Existe-t-il des fonctionnalités spécifiques permettant, dans Creative Cloud, de suivre les révisions successives d'un projet Premiere Pro ou After Effects?

Remarque: pour éviter les réponses hors sujet, je souligne quema question est sans rapport avec les sauvegardes, et concerne spécifiquement le stockage des révisions successives de mon travail, sans sauvegarde des données sur site/hors site.

10

Le contrôle de version au sens de Git n’est pas très pratique dans le monde de la vidéo.Vous devez créer un outil de contrôle de version spécifique pour chaque outil audio et vidéo, car tous fonctionnent avec leurs propres formats de projet. Mais être capable de lire ces formats n’est qu’une chose, vous avez également besoin du moteur de rendu de cet outil pour: montrer les diff.

Bien que tous ces outils fonctionnent de manière non destructive à moins que vous ne pré-rendiez certaines choses (comparez cela à la compilation d'une dll/lib d'un morceau de votre code et travaillez avec cela à partir de maintenant), de sorte que vous pouvez généralement revenir en arrière à une ancienne révision en utilisant ctrl + z ou en utilisant l'outil d'historique dans certains programmes.

Bien que sauvegarder les sous-versions soit généralement la solution.Comme stib décrit dans sa réponse ou en le faisant manuellement.

Quelque chose que j'aime faire et qui fonctionne bien avec chaque logiciel est de placer mes fichiers de projet (pas de métrage source) dans Dropbox.Si votre vitesse de téléchargement est assez rapide (~ 1 Mbit/s) et que votre fichier de projet n’est pas de 100 Mo +, vous pouvez télécharger votre projet avant de sauvegarder la prochaine fois.Un projet Premiere/AE/FCP moyen ayant une taille moyenne comprise entre 10 et 20 Mo, vos fichiers récemment sauvegardés seront téléchargés dans un délai de 1 à 2 minutes.Encore plus vite si vous avez plus de bande passante de téléchargement.

Ensuite, si vous devez revenir en arrière, vous pouvez accéder à l'historique de vos fichiers de Dropbox et télécharger ou restaurer cette révision.Dropbox enregistre les révisions de fichiers pour toujours * sur un compte payé (* au moins quand ils avaient l'option pack rat, maintenant c'est un an je pense) et pendant 30 jours sur un compte gratuit.Je suis sûr que d’autres hébergeurs de cloud offrent des fonctionnalités similaires. C’est un peu comme utiliser une version super limitée de git qui gère très bien les fichiers binaires et ne pose pas de problèmes de tête. Cela présente l’avantage de ne pas encombrer le dossier des tonnes de fichiers et une sauvegarde en même temps.

La plupart des hébergeurs sur le cloud proposent également des adhésions à des équipes afin que vous puissiez travailler avec plusieurs éditeurs.Ou vous partagez le dossier de projet avec d'autres membres de l'équipe.

  0

Dropbox stocke les révisions de fichiers pour toujours?Et si vous aviez un fichier vidéo de 5 Go avec 800 révisions? 22 oct.. 142014-10-22 07:08:05

  0

J'ai édité la réponse un peu.Avec l’ancienne option pack rat, c’était en effet pour toujours une année et, oui, vous pouvez faire ce que vous venez de décrire, mais comme je l’ai écrit dans ma réponse, ne mettez pas de fichiers source (par exemple, vidéo/image/audio), mais uniquement vos fichiers. fichiers de projet.Sauf si vous avez une connexion gigabit, il ne serait pas très pratique de conserver des versions de fichiers source ou de rendu modifiés. 22 oct.. 142014-10-22 13:59:19

+1

Vous n’avez besoin que de votre VCS pour comprendre les formats si vous avez besoin de diffs.C'est un peu trop attendre. 07 mars. 152015-03-07 21:39:27

+1

Ainsi, vous pouvez facilement contrôler les versions de vos fichiers de projet, car 10-20 Mo de données binaires ne posent aucun problème à git.Il vous suffit d'écrire des messages de validation utiles pour décrire l'état de votre fichier de sauvegarde lorsque vous l'avez validé.Si vous avez de la chance, les modifications mineures ne modifient généralement pas la plupart des bits du fichier de projet et la compression delta de Git utilise beaucoup moins que les 10 Mo complets pour chaque commit.Et puis, les sauvegardes sont aussi simples que 'git push' sur votre serveur de sauvegarde.(avec une autre méthode pour garder une trace de quels maîtres vidéo vont avec quel projet, peut-être md5sums des fichiers source?) 07 mars. 152015-03-07 21:43:38

  0

Bien, c’est le cas idéal. Si votre projet aboutit à un fichier de projet plus volumineux, vous ne pourrez tout simplement pas télécharger des révisions aussi souvent en fonction de votre connexion.Un logiciel de stockage en nuage évolue parfaitement, git finira par rencontrer des problèmes. Les messages Commit sont définitivement un avantage pour git. 07 mars. 152015-03-07 22:31:26


5

Le contrôle de version n'a pas vraiment sa place dans le montage vidéo car il est par nature non destructif.Au cœur de tout éditeur de vidéo non linéaire (NLE), la sortie est en réalité une sorte de liste de décision de montage ou EDL.Ceci est extrêmement analogue à l'historique de Lightroom, car il constitue un enregistrement de tous les changements appliqués dans l'ordre.

Les NLE fonctionnent à partir de clips source.Ils prennent les points de début et de fin de ces clips pour les placer dans une chronologie, puis des effets peuvent être appliqués à ces éléments dans un ordre donné (en fonction du placement des effets). Cependant, il s’agit de décisions de montage et d’application à la volée (ou éventuellement rendu en fichiers de prévisualisation temporaires).Le rendu final de la sortie est le résultat de l’application de l’EDL complet aux clips source.

Vous pouvez enregistrer une version du projet afin de pouvoir revenir à une version précédente de la liste EDL si vous le souhaitez, mais cela n'est généralement pas nécessaire, sauf si vous branchez très intentionnellement une branche pour essayer une autre méthode d'édition d'une séquence (Dans ce cas, une copie de cette chronologie est souvent un meilleur choix.)

  0

Qu'entendez-vous par "non destructif" et NLE ici? 22 oct.. 142014-10-22 07:09:16

  0

Un NLE est un éditeur non linéaire (nom technique de la plupart des logiciels de montage vidéo). Non destructif signifie que les modifications apportées n'entraînent pas la destruction d'actifs.Il constitue une liste de modifications à effectuer, qui est fondamentalement la même chose que le contrôle de version.Lorsque vous apportez des modifications au code, cela est destructif, car vos nouvelles modifications détruisent vos anciennes.Avec un NLE, tous vos actifs restent inchangés et vous ne faites que modifier une liste de sections à utiliser et les filtres à appliquer. 22 oct.. 142014-10-22 13:30:52

  0

Vous voulez donc dire que nous pouvons dire au programme de montage vidéo "revenir à la version 2.5", éditer un peu, puis lui dire "revenir à la version 7" et qu'il est capable de le faire? 22 oct.. 142014-10-22 21:45:45

+1

Non, il signifie que vous avez toujours votre vidéo maître.L'hypothèse est que reproduire les effets/réductions que vous aviez précédemment n'est pas difficile, ou que sauvegarder des fichiers de projets avec un VCS représenterait plus de travail que de simplement saisir à nouveau les décisions de montage.Si ce n'est pas le cas, alors assurez-vous que la version contrôle vos fichiers de projet.Bien que, sans la possibilité de fusionner les modifications de différentes branches, il est probablement plus utile de noter simplement les numéros d’images exacts qu’il vous a fallu longtemps pour déterminer le bon endroit pour une coupe, ou quelque chose du genre. 07 mars. 152015-03-07 21:47:35


3

Si vous l'activez dans les préférences, After Effects et Premiere effectuent automatiquement des sauvegardes incrémentielles des fichiers du projet.autosave preferences

Ces sauvegardes incrémentielles peuvent être utilisées pour revenir aux versions précédentes, ce qui ressemble à une implémentation très basique du contrôle de version (vous pouvez cependant augmenter le nombre de versions à partir de 5).FCP a une fonction "restaurer à partir de la version précédente" intégrée, ce qui est utile pour modifier les fichiers de votre projet.After Effects a (mais Premiere n'a pas, allez comprendre) la possibilité de sauvegarder progressivement un projet.Je l'utilise tout le temps lorsque j'apporte de grands changements à un projet et que je veux pouvoir revenir au tronc principal, pour ainsi dire.

Pour un contrôle accru, vous pouvez imaginer utiliser un logiciel de contrôle de version pour gérer les dossiers dans lesquels vous conservez vos fichiers de projet et les sauvegardes automatiques. Ainsi, les éditeurs vérifient les modifications actuelles de coupe et de validation, tant que tous les médias sont accessibles ou copiés de manière centralisée. sur toutes les machines dans le même chemin relatif.Cela ne vous laisserait pas bifurquer et fusionner les modifications d'autres personnes, comme avec du code - ce serait une fonctionnalité intéressante (je dirais qu'elle pourrait être implémentée avec le script de rallonges d'Adobe, tant que vos compétences sont en mesure de réécrire. Git ou SVN en Javascript).

  0

oui, pour diff et fusionner, soit votre VCS doit comprendre les fichiers de sauvegarde de votre NLE, soit le NLE doit fournir diff/fusion.(Par exemple, étant donné qu'un programme pouvant fusionner les modifications dans un fichier de projet, avec un ancêtre commun, je pense que vous pouvez configurer git pour qu'il l'utilise pour 'git mergetool', afin de pouvoir fusionner les validations d'arbres contenant des fichiers de projet modifiés.) 07 mars. 152015-03-07 21:52:19


6

Juste pour ajouter aux réponses précédentes: Bien que rien ne ressemble à Git dans le monde de la vidéo, il existe des outils de gestion des actifs numériques/médias qui peuvent plus ou moins faire la même chose - le contrôle de version et la gestion des autorisations/utilisateurs (ils le font également). beaucoup plus, car ils sont vraiment construits en tant que bibliothèques pour vos médias).Pendant des années, j'ai utilisé l'application Final Cut Server d'Apple (maintenant obsolète) intégrée à Final Cut Suite (Final Cut Pro 7, Soundtrack Pro, etc.) dans une petite installation de publication.

Nous l'avons utilisé pour le contrôle de version et la création de branches sur les fichiers de projet, ce qui a permis à plusieurs éditeurs de travailler sur un même projet de manière relativement transparente.S'agissant d'un produit Apple, il a été conçu pour être utilisé avec Final Cut Pro et permet donc de lire et de travailler très facilement avec les fichiers de projet FCP.Même dans ces conditions, le contrôle de version de Final Cut Server s’appuyait sur l’enregistrement des versions précédentes de l’ensemble du fichier de projet. Il n’utilisait pas de différences.Je ne connais aucun DAM qui le fasse pour la même raison qu'une réponse précédente avait déjà indiqué: il y a beaucoup trop de formats propriétaires (même si, paradoxalement, beaucoup d'entre eux reposent maintenant sur XML comme colonne vertébrale pour ces formats de fichier de projet).

FCS était super parce que c'était relativement abordable.Il n’existait jamais vraiment d’analogie avec Premiere Pro. De nos jours, malheureusement, vous aurez besoin de beaucoup de changements pour obtenir des fonctionnalités similaires, principalement parce que ces outils sont réellement conçus pour les installations de publication, pas pour un seul éditeur.Ils nécessitent également une intégration/configuration potentiellement importante.

Voici quelques options (je n’ai aucune relation avec aucune de ces sociétés, c’est uniquement sur la base de mes recherches pour trouver une solution similaire):

  0

+1 pour cela car toutes les autres réponses supposent un environnement à éditeur unique. 09 sept.. 142014-09-09 14:33:43


2

J'avais la même question, étant aussi un ingénieur en logiciel de métier, en pensant au travail de photoshop.

nous pouvons dire au programme de montage vidéo "revenir à la version 2.5", éditer un peu, puis lui dire "revenir à la version 7" et est-il capable de le faire?

J'ai trouvé que Photoshop me permettait de définir une version nommée dans l'historique, et je pense que c'est enregistré dans le fichier ...?Pour les révisions (entrées dans la liste d'historique) qui ne sont pas nommées, les nœuds sont perdus de l'affichage lorsqu'une modification est apportée à un emplacement précédent (branchement) et qu'il n'y a pas de refusion exposée.

Les nouvelles versions de Premiere semblent avoir un historique similaire, et je suppose qu’elles évoluent vers la même architecture interne, où chaque modification correspond à une autre copie du projet qui partage la plupart des statistiques avec la précédente.Si l'historique contient des points de contrôle enregistrés, cela ressemble beaucoup à un magasin git: chaque version contient des références (partagées) aux éléments sous-jacents jusqu'aux définitions de segment.Comme la vidéo elle-même ne se trouve pas dans le fichier, elle se prête bien à la croissance de versions de plus en plus nombreuses.

J'ai assisté à un séminaire au cours duquel un membre de l'équipe de développement de Photoshop a expliqué l'architecture.Il semble que les entrées d’historique que vous voyez soient analogues aux versions de git, comme les écrans gitk.Nommer la version est identique à une balise git.Vous pouvez réinitialiser toute révision visible en pointant dessus, puis réinitialiserretouraussi.Cependant, tout changement inscrit dans l’historique revient à effectuer une actualisation complète (Maj ou Ctrl F5) - vous perdez tout ce qui n’est pas enchaîné depuis la tête de branche ou la balise nomméepensedes choses comme les références de sources de clonage pointent toujours vers la version maintenant invisible.

Mais ce n'est pas ce que j'écris pour suggérer.Je règle le volume NAS où réside mon projet pour créer un instantané toutes les 3 heures.Windows a un mécanisme de point de contrôle mais je pense que ce n'est pas configurable;Mac Time Machine fait quelque chose de similaire.

En général,vous pouvez archiver toutes les versions sauvegardées du fichieret dans Premiere qui ne contient pas tous les éléments importés (constants), il est donc raisonnable de tous les enregistrer, même sans pouvoir utiliser les deltas pour enregistrer uniquement les éléments modifiés.

Juste pour réapprendre Premiere et pour devenir plus agressif en essayant des choses, je suis confiant que je pourrai revenir si la prochaine fois que je travaille dessus, je regrette ce que j'ai fait, ou j'ai trouvé un meilleur moyen et je veux le refaire.C'est un système de gestion de version efficace.En le faisant sur le NAS, je suis également protégé contre un BSOD qui détruit tout le projet lors de la sauvegarde.:)

mettre à jourl'histoire est courte, 32 entrées par défaut.Il est vide lorsque le projet est chargé.Cependant, la sauvegarde automatique ne sauvegarde pas uniquement le même fichier que dans la plupart des programmes;plutôt il les numérote et les garde.Ainsi, je peux voir les horodatages des fichiers et charger une copie plus ancienne, ce qui me donne l'historique des versions de points de contrôle de 15 minutes.Dans mon cas, chaque fichier est de 44K, ce qui estrienpar rapport à la taille de l’actif - c’est la taille de 76 millisecondes d’audio ou 1/7ème de trameclasse 10Métrage de carte SD.

Si vous avez l’intention de garder un point de contrôle avec un nom explicite, il suffit d’enregistrer la copie sous.Mais la sauvegarde automatique, réglée sur une fréquence élevée, peut être utilisée pour revisiter n’importe quel état (jusqu’à la granularité de ce moment-là) sans planification préalable, avec peu d’effort.

Remarque à l'intention des non-ingénieurs qui ne maîtrisent pas le contrôle de version: Outre la possibilité de revenir en arrière de manière évidente, je l'utilise souvent pour vérifierjustemodifié ou comparer avec l'état d'avant le début de la tâche en cours, ou comparer avec la dernière version partagée avec le groupe.

Puisque Premeire prend désormais en charge l’ouverture de plusieurs projets dans l’espace de travail, il serait possible d’avoir un paramètre d’espace de travail pour la disposition des fenêtres permettant de comparer deux calendriers.Autrement dit, utiliser plus efficacementayantces versions, pas seulement pour la sauvegarde.Je dis souvent aux programmeurs qui n'utilisent pas git comment il devient un outil généraliste, comme un éditeur de texte.

Je me demande comment les cinéastes professionnels gèrent le contrôle de version, si ce n'est plus qu'ad-hoc?La conception de la sauvegarde automatique semble très utile, et l'outil de logiciel de groupe intégré pour l'écriture de scripts dispose d'un suivi explicite des révisions visibles.


3

En tant que professionnel de la vidéo à long terme, je peux attester du fait que le besoin d'une forme légère, robuste, transparente et ouverte de système de gestion de la sécurité (VCS) fait cruellement défaut dans la majorité des flux de production multimédia.Le problème est cependant multiple, à la fois culturel et technique.

Nous travaillons traditionnellement dans une usine de fabrication de saucisses où un projet est éclairé, puis passe de la production à la production. Une fois terminé, il passe en post-production, puis une sortie finale est livrée au groupe de distribution qui extrait ensuite les sorties des appareils/plates-formes. .

De nos jours, cette approche de type usine est une illusion dans laquelle le transfert entre la post-production et la distribution n’est jamais clair.Il y a beaucoup de va-et-vient avec des réductions/éditions pour différentes langues/marchés, que ce soit de revenir en arrière et de refaire le master pour le dernier format par exemple.Il faut ensuite accéder aux versions finales à des fins de marketing ... Il est donc essentiel que non seulement les parties distantes, mais aussi les personnes qui ne se rencontrent jamais, aient une compréhension définitive et cataloguée de la version sur laquelle elles doivent travailler.Cela s'étend non seulement aux codes maîtres mais à toutes les versions de ce maître pour différents marchés, ainsi que les versions des actifs utilisés pour créer chaque maître.

Ce n’est que maintenant que la communauté des technologies de l’information s’engage sur ce qu’est vraiment une version et elle est régulièrement débattue en raison de la multitude de problèmes et de flux de travaux.Je le divise en une version de travail et une version de distribution. Il existe des efforts pour remédier à cela au sein de la distribution en créant un format de fichier d’archive qui enregistre les versions en lui-même (pour lutter contre le fait qu’il existe plusieurs outils, plates-formes, etc.). le format maître interopérable (IMF - à ne pas confondre avec la banque) et est piloté via SMPTE.La bonne chose à propos de cela est qu’elle est en train de proposer une interopérabilité entre la myriade de systèmes de gestion des actifs numériques (ceux qui veulent le prendre en charge) qui sont disponibles - certains studios, je le sais, ont des systèmes de gestion des actifs qui se comptent par centaines - aidez-les en interne et encore moins pour les transferts externes.Bien sûr, il n'a pas encore été utilisé dans un environnement de production, vu qu'il est conçu comme un format de niveau archive (Netflix l'utilise maintenant).Il s’agit également d’un fichier très volumineux, qui n’est pas facile à créer, sauf si vous avez le capital nécessaire pour investir dans les outils.Netflix a publié un ensemble d’outils open source offrant des capacités de lecture agréables.

Au niveau de la version de travail ou de la production, j’estime qu’il est nécessaire de fournir un VCS (tel qu’une forme modifiée de git) que tout le monde peut utiliser, qu’il soit grand ou petit, afin de faciliter le travail à distance.Les fichiers multimédias sont bien sûr beaucoup plus volumineux qu’un code ou des bibliothèques à échanger, mais les décisions prises en fonction de ces fichiers en sont l’élément clé.Pour ma part, j'aimerais tester le travail à distance via git commits, ne serait-ce que pour éviter les conventions de dénomination des conventions de dénomination 'fichier_Final_FINAL_MASTER_version3.mxf' qui sont échangées dans les deux sens.