
SMPTEタイムコード(/ ˈ s ɪ m p t iː /または/ ˈ s ɪ m t iː / )は、ビデオまたはフィルムの個々のフレームにタイムコードを付与するための一連の標準規格です。このシステムは、米国映画テレビ技術者協会( SMPTE)によってSMPTE 12M仕様で定義されています。SMPTEは2008年にこの規格を改訂し、新たな説明と明確化を加えて、SMPTE 12M-1とSMPTE 12M-2の2部構成の文書となりました。
タイムコードは映画、ビデオ、またはオーディオ素材に付加されるだけでなく、音楽や演劇作品の同期にも利用されています。編集、同期、識別のための時間基準を提供します。タイムコードはメディアメタデータの一種です。タイムコードの発明により、現代のビデオテープ編集が可能になり、最終的にはノンリニア編集システムの開発につながりました。

SMPTEタイムコードは、時:分:秒:フレームの形式で表され、通常は32ビットの2進化10進数で表現されます。また、ドロップフレームフラグとカラーフレーミングフラグ、そしてユーザービットの使用を定義するための3つの追加の2進グループフラグビットもあります。その他のSMPTEタイムコードの形式は、リニアタイムコードの形式から派生しています。垂直インターバルタイムコードなどのより複雑なタイムコードには、様々なエンコードで追加情報が含まれる場合もあります。
1秒未満のタイムコードの時間値はフレーム単位で表されます。一般的にサポートされているフレームレートは次のとおりです。
一般的に、SMPTEタイムコードのフレームレート情報は暗黙的であり、メディアからのタイムコードの到着速度から分かります。また、メディアにエンコードされた他のメタデータで指定される場合もあります。カラーフレームやドロップフレームビットなど、いくつかのビットの解釈は、基盤となるデータレートに依存します。特に、ドロップフレームビットは29.97フレーム/秒と30フレーム/秒でのみ有効です。
タイムコードは、連続したデータ値のストリームとして生成されます。アプリケーションによっては、実際の時計の時刻が使用される場合もありますが、エンコードされた時間はより任意の参照を持つ概念的な時刻である場合もあります。一連の録音を行った後、または粗い編集を行った後では、記録されたタイムコードが不連続なセグメントで構成される場合があります。
一般的に、現在のフレームのリニアタイムコード( LTC )は、そのフレームが経過するまで知ることができません。その時点では編集を行うには遅すぎます。実用的なシステムでは、タイムコードの昇順を監視し、そこから現在のフレームの時間を推測します。
アナログシステムのタイムコードはビットエラーやドロップアウトが発生しやすいため、ほとんどのタイムコード処理デバイスはタイムコード値のシーケンスにおける内部的な整合性をチェックし、短いエラーバーストを修正するために単純なエラー訂正方式を採用しています。そのため、不連続なタイムコード範囲の境界は、数フレームが経過するまで正確には特定できません。
ドロップフレーム・タイムコードは、カラーNTSCビデオが発明された際に導入された妥協策に由来しています。NTSCの設計者は、既存のモノクロテレビとの互換性を維持したいと考えていました。モノクロ受信機におけるサブキャリアの視認性を最小限に抑えるため、カラーサブキャリアをラインスキャン周波数の半分の奇数倍にする必要がありました。当初選択された倍数は495でした。フレームレートが30Hzの場合、ラインスキャン周波数は(30 × 525) = 15750Hzです。したがって、サブキャリア周波数は495/2 × 15750 = 3.898125 MHz。
これは当初選択されたサブキャリア周波数でしたが、テストの結果、一部のモノクロ受信機では、カラーサブキャリアと 4.5 MHz のサウンドインターキャリア間のビートによって生じる干渉パターンが見られることが示されました。このパターンの視認性は、サブキャリア周波数の倍数を 455 に下げ (ビート周波数を約 600 kHz から約 920 kHz に上げる)、ビート周波数をラインスキャン周波数の半分の奇数倍にすることで大幅に低減できます。この後者の変更は、サウンドインターキャリアを 0.1% 上げて 4.5045 MHz にすることで実現できましたが、設計者は既存の受信機で問題が発生する可能性があることを懸念し、代わりにカラーサブキャリア周波数を 0.1% 下げて、ラインスキャン周波数とフレームレートの両方を下げることにしました。こうして、NTSC カラーサブキャリアは 3.579 54 MHz (315/88 MHz)、ラインスキャン周波数は15.734265 kHz (9/572 MHz)、フレームレートは29.970029 Hz ( 30/1.001 Hz)。[1]
変更されたフレームレートは、公称フレームレート29.97フレーム/秒での1時間のタイムコードが、壁時計の1時間よりも3.6秒長くなることを意味しました(29.97の非ドロップタイムコード01:00:00:00の場合、ドロップフレームタイムコードは01:00:03;18、非ドロップ00:59:56:12の場合、ドロップフレームは01:00:00;00です)。これにより、1日で約1分半の誤差が生じました。[2]
これを修正するために、ドロップフレームSMPTEタイムコードが発明されました。その名前が示す通り、ドロップフレームタイムコードではビデオフレームが欠落したりスキップされたりすることはありません。むしろ、タイムコードの一部が欠落します。タイムコードの1時間を時計の1時間に一致させるために、ドロップフレームタイムコードは、分数が10で割り切れる場合を除き、毎分最初の1秒のフレーム番号0と1をスキップします。[a]これにより、タイムコードは10分ごとに18フレーム(18,000フレーム @ 30フレーム/秒)スキップされ、レートの差をほぼ完璧に補正します(ただし、9時間15分ごとに1フレームが蓄積されます)。[b] [3]
たとえば、フレーム カウントがドロップされる場合のシーケンスは次のようになります。
10分ごとに
ノンドロップタイムコードはコロンで区切られた数字のペア("HH:MM:SS:FF")で表示されますが、ドロップフレームは通常、すべての数字のペアをセミコロン(;)またはピリオド(.)で区切って表示され(HH;MM;SS;FF、HH.MM.SS.FF ) 、または秒とフレームの間だけに表示されます(HH:MM:SS;FF、HH:MM:SS.FF)。[c]ドロップフレームタイムコードは通常DFと略され、ノンドロップはNDFと略されます。
カラーフレーミングビットは、カラー フレームのフィールド 1 を示すためによく使用されます。これにより、編集機器は画像の破損を防ぐために適切なカラー フレーム シーケンスの境界でのみ編集できるようになります。
テレビスタジオの運用では、縦方向のタイムコードはスタジオマスター同期ジェネレータによって生成され、中央から配信されます。中央同期ジェネレータは通常、ネットワークタイムまたはGPSを使用して原子時計からタイミングを取得します。スタジオでは通常、複数の時計が運用されており、1つが故障した場合は自動的に切り替えられます。
SMPTEの縦方向タイムコードは、音楽の同期に広く使用されています。アメリカ、日本、その他60Hzの商用周波数を使用し、 NTSCテレビ方式を採用している国では、音声のフレームレートとして30フレーム/秒がよく使用されています。欧州放送連合( EBU)の標準フレームレートである25フレーム/秒は、ヨーロッパ、オーストラリア、そして商用周波数が50HzでPALまたはSECAMアナログテレビ方式を採用している地域で広く使用されています。[4]
タイムコードは、さまざまな方法で記録媒体に添付できます。
1960年代後半には、タイムコードにはいくつかのバージョン(EECO、DaVinci、Seimensなど)がありました。SMPTEが採用したバージョンは、カナダ国立映画庁に勤務していたレオ・オドネルによって開発されました。オドネルのバージョンは時刻を参照し、ロケットテレメトリから得られた80ビットワードを使用していました。オドネルのバージョンには、いくつかの特許が取得されています(例えば、US3877799)。それ以来、SMPTEは技術の進化に対応するために、いくつかの変更を加えてきました。
テレビタイムコードにドロップフレーム補正を適用すると、1時間後の偏差は約3.6ミリ秒に減少します。24時間後の偏差は約2.6フレーム(約86ミリ秒)です。