Ajouter des fichiers importés dans des séquences à l'aide de la connexion ExtendScript d'Adobe Premiere Pro


177

J'essaie de créer un script ExtendScriptpour Premiere Pro qui chargera les fichiers vidéo spécifiés, les coupera aux heures de début et de fin spécifiées, les placera dans une séquence, puis exportera le film résultant.

Je comprends qu'Adobe ne dispose pas de documentation officielle sur les scripts pour Premiere Pro, j'ai donc travaillé à partir du navigateur de données (dans le ExtendScript Toolkit, ou ESTK) et d'une collection de références de classe pratiques que j'ai trouvées ici .

J'ai chargé avec succès le fichier CSV qui spécifie les informations nécessaires et je sais également comment importer les fichiers vidéo et créer une nouvelle séquence (comme expliqué ici ). Le problème que j'ai maintenant est d'obtenir les fichiers importés correctement coupés et placés dans la séquence. Je vois que activeSequence a des méthodes comme setInPoint et setOutPoint, mais cela ne semble pas entraîner le découpage correct lors de l'exportation.

Voici mon code avec des commentaires pour montrer le flux du script global:

#target premierepro

var myDir = "G:\\directoryWithVideoFiles\\";
// defined "indexOf" subfunction here
// ***** begin main body of script *****
// (dataRuns has fields runName, startVideo, startTime, stopVideo, stopTime)
// Import video files listed in dataRuns
var vidFiles = new Array;
for (i=0; i<dataRuns.length; i++) {
    if (indexOf.call(vidFiles,myDir + dataRuns[i].startVideo + '.MPG') == -1) {
        vidFiles.push(myDir + dataRuns[i].startVideo + '.MPG');
        }
    if (indexOf.call(vidFiles,myDir + dataRuns[i].stopVideo + '.MPG') == -1) {
        vidFiles.push(myDir + dataRuns[i].stopVideo + '.MPG');
        }
    app.project.createNewSequence(dataRuns[i].runName,'');
    }
app.project.importFiles(vidFiles);
// at this point, for each run (called runName) I need to:
// - take a clip of the startVideo from the startTime to the end of the video
// - take a clip of the stopVideo from the start of the video to the stopTime
// - put clip 1 at the beginning of the associated sequence, & clip 2 right after
// - export the sequence as a new video file

2
veuillez également ajouter votre code ou exemple jsfiddle.
Anup

6
@Anup J'ai ajouté mon code à la question principale. Comme vous pouvez le voir, je n'interagis pas avec le HTML et je n'ai pas besoin d'un lecteur vidéo. J'ai lu toute la documentation que vous avez liée pour Video.js, et je suis presque certain qu'elle ne fera pas ce dont j'ai besoin.
adara

3
@adara, ah tu as dit le mot "vidéo" !!! Permettez-moi de coller ce lien de plugin jQuery CLAIREMENT NON REELÉ ici . Cela devrait réparer ADOBE PREMIERE XML SCHEMA WRITER utilisant ExtendScript !!!!
Xeoncross

Réponses:


2

Plutôt que de définir des points d'entrée / sortie sur la séquence active, pourquoi ne pas charger votre vidéo brute dans la fenêtre source à la place, et définir les points d'entrée / sortie là, puis créer la version finale à l'intérieur de la séquence active.

La copie du clip de la source vers la séquence peut être effectuée de plusieurs façons et devrait être assez facile.

Donc oui, mon conseil serait d'essayer d'utiliser la source plutôt que la séquence pour le découpage. Pourrait avoir plus de chance.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.