Ich benötige eine professionelle Beratung zur Selbsteinschätzung unter Studierenden. Ich suche nach einem Tool (Skript oder Skripts), das beim Kommentieren sehr langer Videos in After Effects hilft. Ich möchte den Prozess auch automatisieren, ohne mich zu wiederholen.
Ich habe lange Reden (Erzählungen) von Studenten mit Untertiteln. Untertitel werden in Subtitle Edit bearbeitet. In Subtitle Edit füge ich am Anfang einiger Wörter oder Sätze Symbole wie [#] oder [$] hinzu . Nach dem Importieren von Video und Untertiteln ( pt_ImportSubtitles ) mit hinzugefügten Symbolen [#] und [$] möchte ich, dass für jedes importierte Wort ein bestimmtes unteres Drittel (einfache Textanmerkung oder Feedback) automatisch aktiviert wird (auf dem Bildschirm erscheint) (für 3 Sekunden). oder Wortgruppe (Marker oder Zeitstempel) mit bestimmten Symbolen.
Nehmen wir an, ich habe zwei untere Drittel. Das erste untere Drittel ist Wörtern zugeordnet, die mit einem [#]-Symbol (gültiges Argument) beginnen, und andere Sätze von Wörtern sind Wörtern zugeordnet, die mit [$] (ungültiges Argument) beginnen.
Beispiele [#] Moskau ist die Hauptstadt der Russischen Föderation [$] Moskau ist keine Hauptstadt der Russischen Föderation
Wenn [#] 30 Mal wiederholt wird, muss das erste untere Drittel auch 30 Mal erscheinen. Die gleiche Logik gilt für das Symbol [$] .
Texte für untere Drittel müssen vorzugsweise außerhalb von AE in einer Tabellenkalkulation gespeichert werden, z. B. ( Text2Spreadsheet )
Bitte lassen Sie mich wissen, ob ein Tool (Skript oder eine Reihe von Skripten), das ich suche, tatsächlich existiert oder nicht. Wenn nicht. Wie kann ich es manuell mit Skripten machen, die ich oben erwähnt habe? Danke euch allen
Wie ich in meinem Blog geschrieben habe , können Sie die Funktion verwenden evalFile
, um den Inhalt einer externen Datei als Daten oder ausführbaren Code zu laden.
Wenn Sie also eine Datei namens haben titles.txt
, die so aussieht
var titles={
{startTime:1.23, endTime:2.23, textContent:"this is the first subtitle"},
{timestamp:2.34, endTime:3.45, textContent:"this is the second subtitle"},
{timestamp:4.56, endTime:5.55, textContent:"and so on…"}
}
…können Sie es als Teil der Quelle des Ausdrucks auswerten, sodass das titles
Array jetzt für den Ausdruck verfügbar ist.
Sie könnten also mit der Quelltexteigenschaft einer Textebene so etwas machen:
try{
myPath = “/path/to/my/titles.txt”; //obviously the path to the file
$.evalFile(myPath);
for (var i=0; i < titles.length; i++){
if (time > titles[i].startTime && time < titles[i].endTime){
titles[i].textContent;
} else { ""; } //blank text
}catch(err){
“ERROR”;
}
Was das bewirkt ist:
Andere Ebenen könnten die Variablen startTime und endTime verwenden, um andere Eigenschaften wie Deckkraft oder andere animierbare Elemente zu steuern.
Wenn Ihre Untertitel-Zeitstempel als Smpte-Timecode dargestellt werden, müssen Sie dem Ausdruck einen Konverter hinzufügen. Hier ist einer .
Sie können einen leistungsfähigen Texteditor (notepad++, atom, sublime text, vim usw.) verwenden, um die Untertiteldatei neu zu formatieren, oder Sie können JS-Textverarbeitungstools (z. B. regex, string.split, string.replace usw.) im Skript verwenden, um dies zu tun Analysieren Sie die Untertiteldatei. Ich würde gegen letzteres empfehlen, sie werden viel langsamer sein. Denken Sie daran, dass der Ausdruck jedes Mal ausgewertet wird, wenn der Frame gerendert wird, was das Lesen der Untertiteldatei von der Festplatte beinhaltet. Wenn Sie Bewegungsunschärfe aktiviert haben, kann dies Dutzende Male pro Frame bedeuten.
Sehen Sie sich Marker Remap unter www.aescripts.com/marker-remap an. Es übernimmt die oben erwähnten Prinzipien und fügt ein leistungsstarkes After Effects-Bedienfeld hinzu, um das Hinzufügen von Markern und das Timing zu steuern. Sie können es nicht an Ihre Tags anpassen, aber ich denke, es bietet die Funktionalität, die Sie suchen.
stib
Frage
Frage