What is FCPXML Format?

Introduction to FCPXML

FCPXML (Final Cut Pro XML) is the project file format used by Final Cut Pro X. It's an XML-based format that describes everything in your Final Cut Pro project, including video clips, effects, transitions, and titles (including subtitles).

FCPXML File Structure

An FCPXML file consists of several main sections:

  • <resources> - Defines formats, effects, and media used in the project
  • <library> - Contains events and projects
  • <event> - Groups of projects and clips
  • <project> - Individual editing projects
  • <sequence> - Timeline containing clips and effects

Example FCPXML File

Here's a basic example of an FCPXML file structure with a title element:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE fcpxml>
<fcpxml version="1.9">
    <resources>
        <format id="r1" name="FFVideoFormat1080p30" frameDuration="100/3000s" width="1920" height="1080"/>
        <effect id="r2" name="Basic Title" uid=".../Titles.localized/Bumper:Opener.localized/Basic Title.localized/Basic Title.moti"/>
    </resources>
    <library>
        <event name="Subtitles">
            <project name="My Project">
                <sequence format="r1">
                    <spine>
                        <title ref="r2" offset="1s" duration="3s">
                            <text>Hello, welcome to OrcaSubtitle!</text>
                        </title>
                    </spine>
                </sequence>
            </project>
        </event>
    </library>
</fcpxml>

Key Elements for Subtitles

When working with subtitles in FCPXML, these are the important elements:

  • <title> - Creates a text element (subtitle)
  • <text> - Contains the actual subtitle text
  • offset - Specifies when the subtitle appears
  • duration - Specifies how long the subtitle displays

Time Format in FCPXML

FCPXML uses several time formats:

  • 100/3000s - Frame duration (e.g., for 30fps video)
  • 1s - Simple seconds
  • 1/30s - Fractions of seconds
  • 1000/30000s - High-precision timing

Common Attributes

Format Attributes

  • width - Video width in pixels
  • height - Video height in pixels
  • frameDuration - Duration of each frame

Title Attributes

  • ref - Reference to a title effect
  • offset - Start time of the title
  • duration - How long the title displays
  • lane - Vertical position in the timeline

Best Practices

  • Always specify the FCPXML version
  • Include all necessary resources
  • Use proper time formats for your project's frame rate
  • Organize subtitles in separate events for better management
  • Use descriptive names for projects and events

Common Issues and Solutions

1. Version Compatibility

Different versions of Final Cut Pro support different FCPXML versions. Always check compatibility when sharing projects.

2. Missing Resources

Ensure all referenced resources (effects, formats) are included in the FCPXML file or available in the target system.

3. Timing Issues

Pay attention to frame rates and time formats. Mismatched frame rates can cause subtitle sync issues.