FCPXML(.fcpxml)を理解する:Final Cut Pro のタイムライン交換の基盤
現代の映画やテレビのポストプロダクションでは、プロジェクトが単一の編集スイートで完了することはほとんどありません。長編映画、コマーシャル、ドキュメンタリーは、Apple Final Cut Pro でカットされ、DaVinci Resolve でカラーリストがグレーディングし、Pro Tools でサウンドデザイナーがミックスし、Adobe After Effects でモーショングラフィックスを加えて仕上げられることがあります。
異なるデジタルオーディオワークステーション(DAW)やノンラインエディタ(NLE)間でタイムライン全体を、フラットで編集不可能なビデオファイルにレンダリングせずに移動させるには、インターチェンジフォーマットが必要です。
Apple Final Cut Pro ユーザーにとって、その橋渡しとなるのは FCPXML です(通常は単独の .fcpxml ファイルとして保存されるか、.fcpxmld バンドル内にパッケージされます)。
1. FCPXML ファイルとは?
.fcpxml ファイルは、Apple が開発した、特化された人間が読みやすい Extensible Markup Language(XML)ドキュメントです。ビデオ編集プロジェクトの構造設計図を記述しており、メディアクリップ、タイムラインシーケンス、カットポイント、トランジション、オーディオレベル、マーカー、キーワード、そして構造メタデータが含まれます。
重要な違い:FCPXML と従来の FCP 7 XML
2011年に Final Cut Pro X がデビューする前、Apple の旧来の Final Cut Pro(バージョン 1 から 7)は、従来のトラック(Track 1、Track 2、Audio A1/A2)に基づく標準 XML を使用していました。
Apple がエディタを トラックレス "マグネティックタイムライン", を中心に再構築した際、従来のトラックベースの XML や標準的な EDL/AAF ファイルでは、クリップの接続、ネスト、衝突の様子を正確に表現できなくなりました。Apple は FCPXML を導入し、マグネティックタイムラインの関係、ロール、コンパウンドクリップ、そして動的なセカンダリストーリーラインをネイティブにモデリングできるようにしました。
.fcpxmlと.fcpxmldの注意点: > Final Cut Pro 10.6 以降、Apple は.fcpxmldコンテナ(Final Cut Pro XML Bundle)を導入しました。従来の.fcpxmlは単一のテキストファイルですが、.fcpxmldは macOS のパッケージフォルダで、内部のInfo.fcpxmlファイルに加えて、補足メタデータ、カスタム LUT、または補助リソースリンクが含まれます。
2. FCPXML フォーマットの主要機能
FCPXML のアーキテクチャは、ハイエンドの編集およびコンフォームパイプラインの厳格な技術要件に対応しています:
1. トラックレス磁気タイムライン表現
固定された水平トラックを前提とする CMX 3600 EDL(Edit Decision Lists)や Avid AAF とは異なり、FCPXML はシーケンスを階層的に表現します:
- スパイン: 主なストーリーライン(
<spine>)はコアナラティブフローの基盤となります。 - アンカリング項目: カットアウェイ、Bロール、タイトル、サウンドエフェクトは、任意のレイヤーインデックスではなく、有理オフセットを使用して特定のスパインモーメントに直接付随します。
- コンパウンド&マルチカムクリップ: ネストされたシーケンス、マルチアングルカメラバンク、同期オーディオクリップは、モジュラーな親子要素として宣言されます。
2. 高精度有理数時間表現
ビデオフォーマットは、分数フレームレート(NTSC標準の $23.976$ fps、$29.97$ fps、$59.94$ fps など)に依存しています。これらのフレーム持続時間を単純な小数で表すと、必然的に浮動小数点の丸め誤差が生じ、長時間のテイクで音声と映像のドリフトが発生します。
FCPXML は、すべての時間値(オフセット、持続時間、イン/アウトポイント)を 有理数(秒の分数)として表現し、Apple の Core Media フレームワークに合わせることでこれを解決します。
- $24\text{ fps}$ フレーム持続時間:
100/2400sまたは1/24s - $29.97\text{ fps}$(NTSC)フレーム持続時間:
1001/30000s - $23.976\text{ fps}$ フレーム持続時間:
1001/24000s
3. 包括的なメタデータ保存
FCPXML は、従来のフォーマットが破棄する豊富な組織データをキャプチャします:
- クリップ評価(お気に入り、拒否)
- ユーザー定義キーワードとスマートコレクション
- 編集マーカーとTo-Doメモ
- オーディオロールとサブロール(ダイアログ、効果音、音楽)
- 動的空間適合パラメータ(フィット、フィル、ストレッチ)と変形キーフレーム
4. DTDによる標準化の強制
Appleは、FCPXMLの各バージョン(バージョン1.0から1.11+まで)に対して明示的な文書型定義(DTD)スキーマを維持しています。この厳格なバージョン管理により、開発者はプログラムで文書を検証でき、プロジェクトが異なるソフトウェア世代間で移行する際の下位互換性が保証されます。
3. 主な特性の概要
| 属性 | 仕様 |
|---|---|
| 開発者 | アップル社 |
| ファイル拡張子 | .fcpxml (プレーンXMLファイル) または .fcpxmld (バンドルパッケージ) |
| ファイル形式タイプ | 人が読める拡張マークアップ言語 (XML) |
| 時間形式 | 秒の有理分数 (例: value/timescale s) |
| スキーマ検証 | Apple公式FCPXML DTD (FCPXML.dtd) |
| オーディオの整理 | ロールベースのタグ付け(ダイアログ、音楽、効果、カスタムサブロール) |
| タイムラインモデル | マグネティックタイムライン階層(<spine>, <sequence>, <clip>, <gap>) |
| クロスプラットフォームサポート | macOS、Windows、Linux(パーシングツール、DaVinci Resolve、Premiere プラグインを介して) |
| 主な業界用途 | NLE 交換、カラーグレーディングコンフォーム、オーディオ仕上げ、アーカイブ |
4. .fcpxml ファイルの開き方と読み方
.fcpxml ファイルはエンコードされたビデオピクセルを保存しない(プロジェクトのレイアウト指示とファイルパスのみを含む)ため、開き方は タイムラインを編集 したいか、別の NLE でコンフォーム したいか、または 生コードを検査 したいかに依存します。
方法 1: Apple Final Cut Pro にインポートする (macOS)
- 起動 Final Cut Pro。
- File > Import > XML… に移動。
.fcpxmlまたは.fcpxmldファイルを見つけて、Import をクリックしてください。- Final Cut Pro は、インポートされたプロジェクトを含む新しいイベントを生成し、ストレージドライブ上の元のソースメディアへリンクします。
方法 2: DaVinci Resolve へ往復させる (macOS と Windows)
DaVinci Resolve には、カラー補正用の FCPXML シーケンスのインポートとエクスポートをネイティブでサポートする機能が含まれています:
- DaVinci Resolve を開き、対象のプロジェクトに入ります。
- File > Import > Timeline… を選択します(または
Ctrl+Shift+I/Cmd+Shift+Iを押します)。 .fcpxmlファイルを選択してください。- コンフォームダイアログで、タイムラインの解像度をマッピングし、ローカルストレージドライブからソースファイルを自動的にリンクするかどうかを選択します。
方法 3: プレーンテキストエディタで検査または編集する
FCPXMLは構造化テキストなので、任意のコードエディタ(VS Code、Sublime Text、BBEdit、または Notepad++)で開き、欠落したアセットのデバッグやディレクトリパスの変更ができます。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE fcpxml>
<fcpxml version="1.11">
<resources>
<format id="r1" name="FFVideoFormat1080p24" frameDuration="100/2400s" width="1920" height="1080"/>
<asset id="r2" name="Interview_A" src="file:///Volumes/Media/Clips/Take1.mov" duration="2400/24s" hasVideo="1" hasAudio="1"/>
</resources>
<library>
<event name="Production Cut">
<project name="Master Sequence">
<sequence format="r1" duration="1200/24s">
<spine>
<asset-clip ref="r2" offset="0s" name="Interview_A" start="100/24s" duration="400/24s"/>
</spine>
</sequence>
</project>
</event>
</library>
</fcpxml>
5. .fcpxml ファイルの作成とエクスポート方法
Final Cut Pro から FCPXML をエクスポートする
- Final Cut Pro で、ブラウザサイドバーからエクスポートしたいプロジェクト、イベント、またはライブラリ全体をハイライトします。
- 上部メニューバーに移動し、File > Export XML… を選択します。
- エクスポートバージョンを選択してください:
- Current Version (Latest): DaVinci Resolve の最新バージョンや更新されたオーディオツールに推奨されます。
- Previous Version (e.g., 1.9 or 1.10): レガシーなポストプロダクションユーティリティやサードパーティソフトウェアの旧バージョンに引き渡す際に推奨されます。
- 保存先ディレクトリを選択し、Save をクリックします。
プログラムで FCPXML を作成する
FCPXMLはオープンXML標準を使用しているため、ソフトウェアエンジニア、パイプラインテクニカルディレクター、そしてAI文字起こしサービスは、Python、Swift、またはJavaScriptを使用して .fcpxml ジェネレーターを構築し、フッテージログから直接自動タイムラインを作成できます:
- macOSターミナルで
xmllintを使用して、Appleの公式DTDに対して構造を検証します:
xmllint --dtdvalid "/Library/Application Support/Apple/Final Cut Pro DTDs/FCPXMLv1_11.dtd" --noout your_timeline.fcpxml
6. よくある質問 (FAQ)
**Q1: .fcpxml ファイルには実際のビデオおよびオーディオ映像が含まれていますか? いいえ、FCPXML ファイルは構造テキスト指示、クリップマーカー、ファイル参照のみを保存し、埋め込みメディアは含まれていません。
**Q2: .fcpxml ファイルと .fcpxmld バンドルの主な違いは何ですか?
.fcpxml は単一のプレーンテキストドキュメントであり、.fcpxmld は XML ドキュメントと LUT やメタデータなどの補助アセットを同梱した macOS パッケージフォルダーです。
**Q3: Adobe Premiere Pro は FCPXML ファイルを直接開くことができますか? Premiere Pro は FCPXML をネイティブにインポートできません。サードパーティの変換ユーティリティ(例:Intelligent Assistance SendToX)を使用するか、DaVinci Resolve を経由する必要があります。
**Q4: FCPXML が 1001/30000s のような分数を使用し、標準的な小数タイムスタンプではなくなるのはなぜですか?
FCPXML は有理分数を使用して、浮動小数点の丸め誤差を排除し、分数フレームレートでの音声と映像の同期ドリフトを防止します。
**Q5: Windows PC で .fcpxml ファイルを開いて編集できますか?
はい、.fcpxml ファイルは標準的な Windows テキストエディタで確認でき、DaVinci Resolve などの Windows 対応ソフトウェアにインポートできます。
7. 参考文献と有用なリソース
- Apple デベロッパー ドキュメンテーション: FCPXML リファレンス仕様
- Apple デベロッパー ガイド: FCPXML における Final Cut Pro アイテムの作成と記述
- Apple サポート: Final Cut Pro で XML ファイルをエクスポート
- FileInfo ディレクトリ: FCPXML ファイル拡張子の技術概要