140 lines
2.6 KiB
Python
Executable File
140 lines
2.6 KiB
Python
Executable File
"""
|
|
FCPXML - Python library for reading, writing, and modifying Final Cut Pro XML files.
|
|
|
|
This package provides tools to:
|
|
- Parse FCPXML files into Python objects
|
|
- Modify existing FCPXML files (add markers, trim clips, reorder, etc.)
|
|
- Generate new FCPXML files from scratch
|
|
- Create AI-powered rough cuts from source material
|
|
- Compare timelines and export to other NLE formats
|
|
"""
|
|
|
|
from .diff import ClipDiff, MarkerDiff, TimelineDiff, compare_timelines
|
|
from .export import DaVinciExporter
|
|
from .models import (
|
|
MARKER_XML_TAGS,
|
|
AudioClip,
|
|
Clip,
|
|
CompoundClip,
|
|
ConnectedClip,
|
|
# Core models
|
|
Keyword,
|
|
Marker,
|
|
MarkerColor,
|
|
# Enums
|
|
MarkerType,
|
|
PacingConfig,
|
|
PacingStyle,
|
|
Project,
|
|
RoughCutResult,
|
|
# Rough cut models
|
|
SegmentSpec,
|
|
SilenceCandidate,
|
|
Timecode,
|
|
Timeline,
|
|
# Time handling
|
|
TimeValue,
|
|
Transition,
|
|
TransitionType,
|
|
VideoClip,
|
|
)
|
|
from .parser import FCPXMLParser, parse_fcpxml
|
|
from .rough_cut import (
|
|
RoughCutGenerator,
|
|
generate_rough_cut,
|
|
generate_segmented_rough_cut,
|
|
)
|
|
from .templates import (
|
|
BUILTIN_TEMPLATES,
|
|
ClipSpec,
|
|
Template,
|
|
TemplateSlot,
|
|
apply_template,
|
|
list_templates,
|
|
)
|
|
from .writer import (
|
|
FCP_EFFECTS,
|
|
FCPXMLModifier,
|
|
FCPXMLWriter,
|
|
add_marker_to_file,
|
|
build_marker_element,
|
|
list_effects,
|
|
modify_fcpxml,
|
|
trim_clip_in_file,
|
|
validate_fcpxml,
|
|
write_fcpxml,
|
|
)
|
|
|
|
__version__ = "0.6.35"
|
|
__author__ = "DareDev256"
|
|
|
|
__all__ = [
|
|
# Version
|
|
"__version__",
|
|
|
|
# Enums & constants
|
|
"MarkerType",
|
|
"MarkerColor",
|
|
"MARKER_XML_TAGS",
|
|
"TransitionType",
|
|
"PacingStyle",
|
|
|
|
# Time
|
|
"TimeValue",
|
|
"Timecode",
|
|
|
|
# Models
|
|
"Keyword",
|
|
"Marker",
|
|
"Clip",
|
|
"AudioClip",
|
|
"VideoClip",
|
|
"ConnectedClip",
|
|
"CompoundClip",
|
|
"SilenceCandidate",
|
|
"Transition",
|
|
"Timeline",
|
|
"Project",
|
|
"SegmentSpec",
|
|
"PacingConfig",
|
|
"RoughCutResult",
|
|
|
|
# Parser
|
|
"FCPXMLParser",
|
|
"parse_fcpxml",
|
|
|
|
# Writer
|
|
"FCPXMLWriter",
|
|
"FCPXMLModifier",
|
|
"modify_fcpxml",
|
|
"add_marker_to_file",
|
|
"trim_clip_in_file",
|
|
"write_fcpxml",
|
|
"build_marker_element",
|
|
"validate_fcpxml",
|
|
"FCP_EFFECTS",
|
|
"list_effects",
|
|
|
|
# Templates (v0.6.0)
|
|
"Template",
|
|
"TemplateSlot",
|
|
"ClipSpec",
|
|
"BUILTIN_TEMPLATES",
|
|
"list_templates",
|
|
"apply_template",
|
|
|
|
# Rough Cut
|
|
"RoughCutGenerator",
|
|
"generate_rough_cut",
|
|
"generate_segmented_rough_cut",
|
|
|
|
# Diff
|
|
"compare_timelines",
|
|
"TimelineDiff",
|
|
"ClipDiff",
|
|
"MarkerDiff",
|
|
|
|
# Export
|
|
"DaVinciExporter",
|
|
]
|