2013-10-07 4 views
177

Sto provando a creare uno script in ExtendScript per Premiere Pro che caricherà i file video specificati, li ritaglierà alle ore di inizio e fine specificate, li inserirà in una sequenza e quindi esporta il film risultante.Aggiungere i file importati in sequenze usando la connessione ExtendScript di Premiere Pro

capisco che Adobe non ha un documentazione ufficiale sulla creazione di script per Premiere Pro, quindi ho lavorato dal browser dei dati (nel ExtendScript Toolkit, o ESTK) e una collezione di riferimenti alle classi a portata di mano che ho trovato here.

ho caricato con successo nel file CSV che specifica le informazioni necessarie e anche sapere come importare i file video e creare una nuova sequenza (come spiegato here). Il problema che sto avendo ora è ottenere i file importati ritagliati correttamente e inseriti nella sequenza. Vedo che activeSequence ha metodi come setInPoint e setOutPoint, ma ciò non sembra comportare il corretto taglio all'esportazione.

Ecco il mio codice con i commenti per mostrare il flusso della scrittura complessiva:

#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

per favore aggiungi anche il tuo codice o esempio jsfiddle. – Anup

+6

@Anup Ho aggiunto il mio codice alla domanda principale. Come puoi vedere, non sto interagendo con HTML e non ho bisogno di un lettore video. Ho letto tutta la documentazione che hai linkato per Video.js e sono quasi sicuro che non farà ciò di cui ho bisogno. – adara

+3

@adara, ah hai detto la parola "video" !!! Consentitemi di incollare questo link del plugin jQuery ** ** NON RAPPRESENTATO CHIARAMENTE [qui] (http://stackoverflow.com). Questo dovrebbe risolvere ** ADOBE PREMIERE XML SCHEMA WRITER ** usando ExtendScript !!!! – Xeoncross

risposta

1

Invece di impostare in/out punti sulla sequenza attiva perché non caricare il raw video in finestra di origine, invece, e impostare la in/out punti lì, e quindi costruire la versione finale all'interno della sequenza attiva.

La copia della clip da origine a sequenza può essere eseguita in molti modi e dovrebbe essere abbastanza semplice.

Quindi, il mio consiglio è provare a utilizzare la fonte anziché la sequenza per il ritaglio. Potrebbe avere migliore fortuna.

Problemi correlati