リンクをクリップボードにコピー
コピー完了
100ミリ秒のストップウォッチを作りたいのです。
データの読み込みとか、OSの読み込み動画に配置し読み込み時間とかを検証したいのです。
一度作ってみたのですが、60ミリ秒のストップウォッチが出来てしまいました^^;
フレームレートとかが影響しているのでしょうか?
ストップウォッチの外のフレームとかは、後でどうにかする予定です。
数字だけの物でも構いません。
今回ご教示いただきたい点は2点になります。
1.過去に何回か作った時に作成したものは、一度動画出力して別動画の上に配置したので、
作成したストップウォッチの下に配置したレイヤーがストップウォッチの黒背景に塗りつぶされてしまう。
できれば、数字だけで背景は透明の物を作りたい。
2.60ミリ秒のストップウォッチではなく、100ミリ秒のストップウォッチを作成したい。
ご教示いただけないでしょうか?よろしくお願いいたします。
リンクをクリップボードにコピー
コピー完了
こんばんは、ship buttonさん
◆After Effects CCでエクスプレッションを使用して作成しましょう。
①コンポジション設定を行います。
サイズは、500×100くらいが適当かと思います。デュレーションはストップウォッチの計測可能時間に合わせます。
②テキストレイヤーを作成します。文字は書きません。
③ソーステキストにエクスプレッションを記述します。
「Alt(Windowsの場合)を押しながらストップウォッチをクリックすると、エクスプレッション記述行が作成されます。
そこに下記エクスプレッションを貼り付けてください。
function place(x){ //place()関数を定義
if(x<10){ return "0" + x } //1桁なら0追加して、2桁にして表示
else{ return "" + x }//2桁ならそのままの値を返す
}
t = Math.floor(time); //Math.floorで小数点以下切り捨て
place( Math.floor(t/3600) ) + ":" + place( Math.floor((t%3600)/60) ) +
":" + place( Math.floor(t%60) )+ ":" + time.toFixed(2).substr(-2);
//順番に時間、分、秒、1/100秒を計算してテキストとして表示
下から2行目の真ん中にある「コロン」を「ポイント」に変えると小数点になります。
下から2行目の最後にある2カ所の数字を「1」に変えると1/10秒に、「3」に変えると1/1000秒になります。
例えば、 ":" + place( Math.floor(t%60) )+ "." + time.toFixed(3).substr(-3); このようにすると、下図の様になります。
下図はAfter Effectsの画面です。ブラウザのウィンドウを最大化し、下図の上でクリックすると拡大します。
◆Premiere Pro CCに読み込むには
①After Effectsの「.aep」ファイル形式で保存します。
②Premiere Pro CCで、.aepファイルを読み込み、ビデオトラックに配置します。
③背景は透明です。文字のサイズ、位置を「エフェクトコントロール」パネルの「スケール」と「位置」パラメーターで調整します。余分な桁はマスクまたはクロップエフェクトをかけて消します。
リンクをクリップボードにコピー
コピー完了
【追記です】
簡単にストップウォッチを作成する方法はホームページからダウンロードする方法があります。
「DTVかくし味」のホームページ(下記リンク)からは、3種類のストップウォッチをダウンロードできます(下図)。最大表示時間はあまり長くないです。
操作手順
①上記リンクのホームページから.mpegファイルをダウンロードします。1個のストップウォッチにつき、1個のファイルがあります。
②Premiere Pro CCに読み込み、ビデオトラックに配置します。プログラムモニターには下図の様に表示されます。
③ルミナンスキーエフェクトをかけて背景の黒を抜きます。
④モーションの「位置」と「スケール」で、ストップウォッチの位置とサイズを調整します。
このストップウォッチはDVシーケンスで作成されていますので、ハイビジョンシーケンスに配置すると小さ目に表示されます。
>・・・・、作成したストップウォッチの下に配置したレイヤーがストップウォッチの黒背景に塗りつぶされてしまう。
数値が白なら、ストップウォッチのクリップにルミナンスキーエフェクトをかけると黒背景を抜くことが出来ます。操作手順の②③をご覧ください。
リンクをクリップボードにコピー
コピー完了
After Effectsでコンポジションのフレームレートを100fpsに設定して、エフェクト「タイムコード」を適用すれば、100ミリ秒になります。
下図のように設定すれば背景は透明になります。
動画としてレンダリングする場合は、QuickTime 形式:ProRes4444、RGB+アルファに設定すれば、背景が透明のまま出力できます。
<追記>
正確には、:が付いているのでミリ秒でなく最後の2桁はフレーム数になります。
:を .に見えるように、四角のシェイプレイヤーで:の上部を隠してトラックマットを適用すれば、上部の点は透明になります。
下図(右側)では、背景に赤色の平面を追加しています。
リンクをクリップボードにコピー
コピー完了
150kwさん
ありがとうございます。
エクスプレッションで作成できました。
表示桁数を【秒とミリ】または【分と秒】といったストップウォッチで作りたいと思った場合、
エクスプレッションでは可能でしょうか?
プレミアでクロップで表示範囲を絞ったほうがいいでしょうか?
1桁なら0追加して、2桁にして表示
ここかなー。と思って、数字を増やしてみたら3桁になってしまいました。
Mukaida さん
すみません。やってみようとしたのですが、
タイムコードのエフェクトは何に掛ければいいのでしょうか?
テキストでよろしいのでしょうか?
素人でもうしわけございません。
リンクをクリップボードにコピー
コピー完了
タイムコードは、平面に適用することで数字が表示されます。
しかし、エクスプレッションを使えるようでしたら、この方法は不要です。
エクスプレッションだとフォントの変更や、数値を書き換えてカウントダウンや倍速などの応用にも使えます。
リンクをクリップボードにコピー
コピー完了
こんにちは
>エクスプレッションで作成できました。
お役に立てて良かったです。
>表示桁数を【秒とミリ】または【分と秒】といったストップウォッチで作りたいと思った場合、エクスプレッションでは可能でしょうか?
可能です。
時、分、秒、秒以下は、エクスプレッション記述部の下から2行目と3行目に、下記のように記載されています。
ですから、
【秒とミリ】の場合は、「時」と「分」を削除し、下記の様に記述します。
place( Math.floor(t%60) ) + "." + time.toFixed(3).substr(-3) ;
【分と秒】の場合は、「時」と「ミリ」を削除し、下記の様に記述します。
place( Math.floor((t%3600)/60) ) + ":" + place( Math.floor(t%60) ) ;
以下、参考のため記載します。ご存知でしたらごめんなさい。
◆【秒とミリ】または【分と秒】のコンポジションを簡単に作成するには、
①「プロジェクト」パネルで、ストップウォッチのコンポジションを選択し、「Ctrl」+「D」キーを押すと複製のコンポジションが作成されます。
②その複製のコンポジションをダブルクリックすると、「タイムライン」パネルに複製のコンポジションが作成されます。
③エクスプレッション記述行は、1行になっていますので、全体が表示されるように行の高さを広げます。
④エクスプレッションの不要な部分を削除します。
⑤コンポジション設定のデュレーションを適正な時間に修正します。
◆コンポジション設定で、デュレーションの簡単な入力方法
数値の間に「セミコロン」や「コロン」を入力せずに、数値を連続タイプします。すると、「セミコロン」や「コロン」は自動的に挿入されます。
これは、Premiere Pro 、Premiere Elements、After Effects等のビデオ関係ソフトで共通な方法です。
◆フォントの選択
等幅フォントを選択します。プロポーショナルフォントですと左右方向にぶれまくります。
>プレミアでクロップで表示範囲を絞ったほうがいいでしょうか?
【時と分と秒とミリ】、【分と秒】、【秒とミリ】に分けてコンポジションを作成しておいた方が良いと思います。
リンクをクリップボードにコピー
コピー完了
リンクをクリップボードにコピー
コピー完了
また色々試してみたら、きちっと1ミリ秒単位で動いてないようです。
これは仕方ないことなのでしょうか。
リンクをクリップボードにコピー
コピー完了
こんばんは
>また色々試してみたら、きちっと1ミリ秒単位で動いてないようです。これは仕方ないことなのでしょうか。
Premiere Proのフレームレートは59.94fpsとのことですので、1秒間に59.94枚の絵で映像が構成されます。
もし、フレームレート1000fpsで1000枚の絵で構成されれば、1000ミリ÷1000枚/秒=1ミリ秒/枚単位に増加しますが、59.94枚なら1000ミリ÷59.94枚/秒=16.68335ミリ秒/枚単位に増加します。従って、000、017、033、050、067、083、100、117、133、150、・・・・というように増加します。
フレームレート1000fpsは、Premiere Proでは全く不可能ですので、残念ですが、仕方がないことだと思います。
リンクをクリップボードにコピー
コピー完了
動画に配置する場合は、撮影時に100fps以上の高速撮影した動画を使用しないと、0.01秒単位で正確に測定はできません。
100fps未満の動画は、0.1秒単位までなら測定できます。
参考ですが、(正確な時間でないことを前提にして)
60fpsで、0.01秒のストップウォッチにして、末尾を偏らないようにするには、150kwさんのエクスプレッションの最終行を削除して、下記の記述を貼り付けてみてください。
60fpsの0.1秒は、6フレームになるため、6個 間隔で0の数値を入れてタイミングが合うようにしています。
なお、59.94fpsは、数値がランダムなため、この方法は使用できません。
mms = new Array('0','1','3','5','7','9','0','2','4','6','8','9');
frame =timeToFrames(time);
place( Math.floor(t/3600) ) + ":" + place( Math.floor((t%3600)/60) ) + ":" + place( Math.floor(t%60) )+ ":" + time.toFixed(2).substr(-1) + mms[frame%=12];
リンクをクリップボードにコピー
コピー完了
150kwさん
そういうことなのですか。把握できたと思います。
ミリ秒は仕方ないとして秒数はあっているものなのでしょうか?
Mukaidaさん
0.01秒単位では無理なのですね。
皆様すみません。Mukadiaさんから書いていただいたコードを貼り付けて試してみたいのですが、
ここで問題があるのかなと思っています。
現在:
1.AEのストップウォッチ を30fpsで作成している。
2.AEで作ったものをPremireで読み込んで使用している。
3.Premireは、59.94で作成済み。20個ぐらいシーケンスを作成ずみですべてが59.94に設定しています。
4.シーケンスには動画ファイルをいくつも配置しています。
質問:
現在のこの状況では、このままいただいたコードを貼り付けるだけでは駄目なのかなと思っています。
僕で考えてみて必要な作業としては下記のような修正工程が必要なのかな?と思っています。
もし、足りない工程とかありましたらご教示いただけないでしょうか?
修正1.59.94で作詞したAEのストップウォッチのフレームレートを変更する?
手順1:コンポジション➡コンポジション設定➡フレームレートを60fpsにして設定保存。
修正2:Premireで作成してしまった全シーケンスのフレームレートの修正?
手順1:シーケンス➡シーケンスの設定➡60fpsへの修正
修正3:59.94フレームに設置した動画ファイルのフレームレート修正?
手順1:59.94フレームになっている動画ファイル上で右クリック➡変更➡フッテージを変換➡フレームレートを指定 1.00から60に変更?
までの修正3つをすれば、できるのでしょうか?
ただ、修正3まで一回試しに動画ファイルでやってみたのですが、動画ファイルをダブルクリックしプロパティを確認してみても、フレームレートは59.94のままでした。
お分かりになる方、もしよろしければご教示いただけないでしょうか?
よろしくお願いいたします。
リンクをクリップボードにコピー
コピー完了
当方のエクスプレッションは、59.97fpsのAfter Effects上で 動作させると、時間が戻る現象が起きます。
59.97fpsのプロジェクトで使用する場合は、60fpsのAfter EffectsでレンダリングしてからPremiereに読み込んでください。