How does FCPXML represent a split edit (audioStart / audioDuration), on which elements, in which units, and does the OTIO FCPX adapter read it?
Apple's FCPXML DTD (1.7 archive and the 1.10 page) declares optional audioStart and audioDuration time attributes on clip, mc-clip, ref-clip, sync-clip and asset-clip and says they define J/L cuts (split edits) on composite A/V clips; times are rational seconds. Two FCPXML 1.11 files in a third-party Swift library contain the attribute pair on sync-clips, with audioStart equal to start and audioDuration shorter than duration. The OTIO FCPX adapter at c61839e1 never mentions either attribute and skips clip/sync-clip/mc-clip as items, so a split edit expressed this way is not read by it. The sign convention of audioStart relative to start and offset is not defined in the DTD text; a third-party importer treats any difference between audioStart/audioDuration and start/duration as a split edit and then follows the video timing.
Structured fields
{
"citations": [
{
"url": "https://developer.apple.com/documentation/professional-video-applications/document-type-definition",
"note": "candidate evidence excerpts"
},
{
"url": "https://developer.apple.com/library/archive/documentation/Miscellaneous/Conceptual/LegacyDTDsFinalCutPro/FCPXMLDTDv1.7/FCPXMLDTDv1.7.html",
"note": "candidate evidence excerpts"
},
{
"url": "https://github.com/orchetect/swift-fcpxml/blob/00bcacf213cca9b99ced1efd3aad7529396719c7/Sources/SwiftFCPXML/Model/Protocols/Story%20Elements/FCPXMLElementAudioStartAndDuration.swift",
"note": "candidate evidence excerpts"
},
{
"url": "https://github.com/orchetect/swift-fcpxml/blob/00bcacf213cca9b99ced1efd3aad7529396719c7/Tests/SwiftFCPXMLTests/TestResource/FCPXML%20Exports/Occlusion3.fcpxml",
"note": "candidate evidence excerpts"
},
{
"url": "https://github.com/orchetect/swift-fcpxml/blob/00bcacf213cca9b99ced1efd3aad7529396719c7/Tests/SwiftFCPXMLTests/TestResource/FCPXML%20Exports/SyncClipRoles.fcpxml",
"note": "candidate evidence excerpts"
},
{
"url": "https://github.com/OpenTimelineIO/otio-fcpx-xml-adapter/blob/c61839e105fb035589d3ec704b1266a22089b425/src/otio_fcpx_xml_adapter/fcpx_xml.py",
"note": "candidate evidence excerpts"
},
{
"url": "https://github.com/OpenTimelineIO/otio-fcpx-xml-adapter/blob/c61839e105fb035589d3ec704b1266a22089b425/README.md",
"note": "candidate evidence excerpts"
},
{
"url": "https://developer.apple.com/documentation/professional-video-applications/asset-clip",
"note": "candidate evidence excerpts"
},
{
"url": "https://github.com/0xsline/OpenChatCut/blob/7fa4b7903e7ebecf832a36249f0c0c755200cc17/src/agent/tools/timeline-import-fcpxml-walk.ts",
"note": "candidate evidence excerpts"
},
{
"url": "https://github.com/0xsline/OpenChatCut/blob/7fa4b7903e7ebecf832a36249f0c0c755200cc17/src/agent/tools/timeline-import-fcpxml.verify.ts",
"note": "candidate evidence excerpts"
}
]
}Evidence claims
- [sourced_fact] Apple's FCPXML DTD (1.7 archive and the 1.10 page) declares optional audioStart and audioDuration time attributes on clip, mc-clip, ref-clip, sync-clip and asset-clip and says they define J/L cuts (split edits) on composite A/V clips; times are rational seconds. Two FCPXML 1.11 files in a third-party Swift library contain the attribute pair on sync-clips, with audioStart equal to start and audioDuration shorter than duration. The OTIO FCPX adapter at c61839e1 never mentions either attribute and skips clip/sync-clip/mc-clip as items, so a split edit expressed this way is not read by it. The sign convention of audioStart relative to start and offset is not defined in the DTD text; a third-party importer treats any difference between audioStart/audioDuration and start/duration as a split edit and then follows the video timing. · locator: candidate evidence excerpts source
Rights
| component | license | hosting | redistribution | modification | training | Evidence and notes |
|---|---|---|---|---|---|---|
| documentation | unknown | permitted | permitted | unknown | unknown | Applies to this original summary only, not to the cited sources. |
Linked records
- cites → https://developer.apple.com/documentation/professional-video-applications/asset-clip
- cites → https://developer.apple.com/documentation/professional-video-applications/document-type-definition
- cites → https://developer.apple.com/library/archive/documentation/Miscellaneous/Conceptual/LegacyDTDsFinalCutPro/FCPXMLDTDv1.7/FCPXMLDTDv1.7.html
- cites → https://github.com/0xsline/OpenChatCut/blob/7fa4b7903e7ebecf832a36249f0c0c755200cc17/src/agent/tools/timeline-import-fcpxml-walk.ts
- cites → https://github.com/0xsline/OpenChatCut/blob/7fa4b7903e7ebecf832a36249f0c0c755200cc17/src/agent/tools/timeline-import-fcpxml.verify.ts
- cites → https://github.com/OpenTimelineIO/otio-fcpx-xml-adapter/blob/c61839e105fb035589d3ec704b1266a22089b425/README.md
- cites → https://github.com/OpenTimelineIO/otio-fcpx-xml-adapter/blob/c61839e105fb035589d3ec704b1266a22089b425/src/otio_fcpx_xml_adapter/fcpx_xml.py
- cites → https://github.com/orchetect/swift-fcpxml/blob/00bcacf213cca9b99ced1efd3aad7529396719c7/Sources/SwiftFCPXML/Model/Protocols/Story%20Elements/FCPXMLElementAudioStartAndDuration.swift
- cites → https://github.com/orchetect/swift-fcpxml/blob/00bcacf213cca9b99ced1efd3aad7529396719c7/Tests/SwiftFCPXMLTests/TestResource/FCPXML%20Exports/Occlusion3.fcpxml
- cites → https://github.com/orchetect/swift-fcpxml/blob/00bcacf213cca9b99ced1efd3aad7529396719c7/Tests/SwiftFCPXMLTests/TestResource/FCPXML%20Exports/SyncClipRoles.fcpxml