## ShowFrameNumber

`ShowFrameNumber` (clip, bool "scroll", int "offset", int "x", int "y", string "font", float "size", int "text_color", int "halo_color", float "font_width", float "font_angle")

`ShowFrameNumber` は、AviSynth が考えるフレーム番号を示すテキストをすべてのフレーム上に描画します。これは、スクリプトを書くときに役立つことがあります。`ShowFrameNumber` によって生成されるクリップに追加のフィルタを適用すると、それらのフィルタは画像を扱うようにフレーム上のテキストを扱います。そのため、あなたが目にするときには、番号が歪められているかもしれません。

scroll （デフォルト: false）が true に設定されると、フレーム番号はビデオ上に一回のみ描画され、上から下へスクロールします。でなければ、ビデオの右側に収まる分だけ描画されます。フレーム番号は、トップフィールドファーストの素材に関してはクリップの左側に描画されますが、ボトムフィールドファーストの素材については右側に、フィールドベースの素材では（そのフィールドがトップであるかボトムであるかによって）クリップの左側と右側に交互に描画されます。

v2.56 から、その他のオプション（offset、x、y、font、size、text_color、halo_color、font_width、font_angle）が追加されています。'''offset''' は、ユーザーが表示されるフレーム番号にオフセットを追加することを可能にします。それ以外のオプションの説明については、Subtitle を参照してください。

## ShowSMPTE

`ShowSMPTE` (clip, float "fps", string "offset", int "offset_f", int "x", int "y", string "font", float "size", int "text_color", int "halo_color", float "font_width", float "font_angle")

`ShowSMPTE` は `ShowFrameNumber` と似ていますが、SMPTE タイムコード*1（時間:分:秒:フレーム）を表示します。v2.53 から、カレントの fps が利用できない場合をのぞき、引数 fps は必須ではなくなりました。それ以外の場合*2は引数 fps が必要で、その値は 23.976、24、25、29.97、30 のいずれかでなければなりません。

v2.56 から、その他のオプション（offset、offset_f、x、y、font、size、text_color、halo_color、font_width、font_angle）が内蔵されています。offset は、ユーザーがタイムコードにオフセットを追加することを可能にします。一方、offset_f は、ユーザーがフレーム番号を指定することによってタイムコードにオフセットを追加することを可能にします（offset は offset_f に優先します）。それ以外のオプションの説明については、Subtitle を参照してください。

ドロップフレーム VS ノンドロップフレーム タイムコード

クリップのフレームレートが 29.969 と 29.971 の間なら、ドロップフレームタイムコード*3が有効化されます。元々、テレビ信号が白黒だった頃、NTSC は 60 Hz （30fps）で動作していました。色が追加された際に、技術的な理由により 59.94 Hz （29.97 fps）に変更されました。1000 フレームの走査に対し、1001 とカウントされます（実際にフレームをドロップするのではなく、単にフレーム番号の問題です）。10 分ごとを除き、毎分最初の 2 フレームがドロップされます。すなわち、00:00:00:00, 00:00:00:01, 00:00:00:02, ..., 00:00:59:29, 00:01:00:02, 00:01:00:03, ..., 00:01:59:29, 00:02:00:02, 00:02:00:03, ..., 00:08:59:29, 00:09:00:02, 00:09:00:03, ..., 00:09:59:29, 00:10:00:00, 00:10:00:01, ... などといった具合になります。ドロップされたフレームをカウントすることは、ドロップフレームにおける 00:10:00:00 が実時間の 00:10:00:00 と一致することを意味します。

使用例

    ShowSMPTE(offset="00:00:59:29", x=360, y=576, font="georgia",
    \        size=24, text_color=$ff0000)

    Mpeg2Source("clip.d2v") # 常にトップフィールドファースト
    # 9 フレームのオフセットを使って、クリップの左側に上から下へ
    # スクロールするフレーム番号を描画する
    ShowFrameNumber(scroll=true, offset=9, text_color=$ff0000)

## ShowTime

`ShowTime` (clip, int "offset_f", int "x", int "y", string "font", float "size", int "text_color", int "halo_color", float "font_width", float "font_angle")

`ShowTime` は `ShowSMPTE` に似ていますが、経過時間（時:分:秒.ミリ秒）を表示します。オプションの説明については ShowSMPTE を参照してください。

注: これらのフィルタは、テキスト描画のため、かなり重いです。

更新履歴

v2.58 | ShowTime 関数を追加。 font_width パラメータと font_angle パラメータを追加。
v2.56 | offset とその他のオプションを追加。

`原文 Date: 2007/09/12 08:02:39`
`日本語訳 $Date: 2008/06/22 07:41:20 $`

- 訳者註:
  - *1 参考: SMPTEタイム・コード - マルチメディア／インターネット事典
  - *2 カレントの fps が利用できない場合。
  - *3 PDF です。