既に投稿されている日本語版の動画を
他言語への翻訳テロップを再編集で挿入したいという、かなりの量の編集依頼が来た。
渡されたデータはタイムコードと翻訳文のデータ
これは楽したいと思いましたので作業しました。
テキストデータをエッセンシャルに変換するものは作ってあるので
タイムコードにマーカーを打って、後はShift+Mでマーカー移動するショートカットでトリミング作業行えばいいだけだなと・・・
トリミング作業もマクロ組んでやれば、恐らく数分の作業で終わると見たっ!
とりあえずテキストファイルからタイムコードを打つまで
ちょっと前までこのマーカー打つ関数は用意されていないと思ってたけど、もしかしてあった?
//タイムコードのテキストファイルの行ごとに配列に挿入
var mytextArray =[];
//テキストファイルを行ごとに読み込み
function readtext(){
var fileDirectory = File.openDialog("Select Text file","");
var myFile = new File(fileDirectory);
if (myFile.open("r")){
var myText = "";
while(!myFile.eof){
mytextArray.push(myFile.readln())
}
}
myFile.close();
}
//タイムコードのテキストファイルを秒数に変換
//ちなみにテキストファイルのタイムコードはフレームは無しで0:00:00ように時間:分:秒で格納されている
function timecodeToSecond(timeString){
var timeArray = timeString.split(":");
var hours = parseInt(timeArray[0]) * 60 * 60;
var minutes = parseInt(timeArray[1]) * 60;
var seconds = parseInt(timeArray[2]);
return hours+minutes+seconds
}
//とりまテキストファイルを配列に入れる関数を実行
readtext()
//あとは配列の分だけマーカー作成を実行
//CREATE NEW MARKERS
for (var i=0; i < mytextArray.length ; i++ ){
var markers = app.project.activeSequence.markers;
var newMark = markers.createMarker(timecodeToSecond(mytextArray[i]));
}
これでとりあえずシーケンスにだ~~~~っとマーカーは打たれました!
あとはマクロ組んで、次のマーカーに移動→リップルトリミング
これの繰り返しで、イージーモードかな!
タイムコードとエッセンシャルテキストを同時に配置する出来るようにやる事も出来るけど、
それは時間ある時に纏めてやります!
とりま自動でマーカー打つや~つのメモでした!