Skip to content

Commit f585e29

Browse files
committed
Fix premiere xml
1 parent b853b57 commit f585e29

File tree

1 file changed

+10
-9
lines changed

1 file changed

+10
-9
lines changed

auto_editor/formats/fcp7.py

+10-9
Original file line numberDiff line numberDiff line change
@@ -363,7 +363,6 @@ def media_def(
363363
ET.SubElement(rate, "ntsc").text = ntsc
364364
ET.SubElement(vschar, "width").text = f"{tl.res[0]}"
365365
ET.SubElement(vschar, "height").text = f"{tl.res[1]}"
366-
ET.SubElement(vschar, "anamorphic").text = "FALSE"
367366
ET.SubElement(vschar, "pixelaspectratio").text = "square"
368367

369368
for aud in src.audios:
@@ -389,7 +388,7 @@ def fcp7_write_xml(name: str, output: str, tl: v3, log: Log) -> None:
389388
src_to_id[src] = the_id
390389

391390
xmeml = ET.Element("xmeml", version="5")
392-
sequence = ET.SubElement(xmeml, "sequence")
391+
sequence = ET.SubElement(xmeml, "sequence", explodedTracks="true")
393392
ET.SubElement(sequence, "name").text = name
394393
ET.SubElement(sequence, "duration").text = f"{int(tl.out_len())}"
395394
rate = ET.SubElement(sequence, "rate")
@@ -400,13 +399,14 @@ def fcp7_write_xml(name: str, output: str, tl: v3, log: Log) -> None:
400399
vformat = ET.SubElement(video, "format")
401400
vschar = ET.SubElement(vformat, "samplecharacteristics")
402401

403-
rate = ET.SubElement(vschar, "rate")
404-
ET.SubElement(rate, "timebase").text = f"{timebase}"
405-
ET.SubElement(rate, "ntsc").text = ntsc
406402
ET.SubElement(vschar, "width").text = f"{width}"
407403
ET.SubElement(vschar, "height").text = f"{height}"
408404
ET.SubElement(vschar, "pixelaspectratio").text = "square"
409405

406+
rate = ET.SubElement(vschar, "rate")
407+
ET.SubElement(rate, "timebase").text = f"{timebase}"
408+
ET.SubElement(rate, "ntsc").text = ntsc
409+
410410
if len(tl.v) > 0 and len(tl.v[0]) > 0:
411411
track = ET.SubElement(video, "track")
412412

@@ -420,6 +420,7 @@ def fcp7_write_xml(name: str, output: str, tl: v3, log: Log) -> None:
420420

421421
clipitem = ET.SubElement(track, "clipitem", id=f"clipitem-{j+1}")
422422
ET.SubElement(clipitem, "name").text = src.path.stem
423+
ET.SubElement(clipitem, "enabled").text = "TRUE"
423424
ET.SubElement(clipitem, "start").text = _start
424425
ET.SubElement(clipitem, "end").text = _end
425426
ET.SubElement(clipitem, "in").text = _in
@@ -433,6 +434,7 @@ def fcp7_write_xml(name: str, output: str, tl: v3, log: Log) -> None:
433434
media_def(filedef, pathurl, clip.src, tl, timebase, ntsc)
434435
file_defs.add(pathurl)
435436

437+
ET.SubElement(clipitem, "compositemode").text = "normal"
436438
if clip.speed != 1:
437439
clipitem.append(speedup(clip.speed * 100))
438440

@@ -444,8 +446,6 @@ def fcp7_write_xml(name: str, output: str, tl: v3, log: Log) -> None:
444446
ET.SubElement(link, "mediatype").text = "video" if i == 0 else "audio"
445447
ET.SubElement(link, "trackindex").text = str(max(i, 1))
446448
ET.SubElement(link, "clipindex").text = str(j + 1)
447-
if i > 0:
448-
ET.SubElement(link, "groupindex").text = "1"
449449

450450
# Audio definitions and clips
451451
audio = ET.SubElement(media, "audio")
@@ -489,6 +489,7 @@ def fcp7_write_xml(name: str, output: str, tl: v3, log: Log) -> None:
489489
premiereChannelType="stereo",
490490
)
491491
ET.SubElement(clipitem, "name").text = src.path.stem
492+
ET.SubElement(clipitem, "enabled").text = "TRUE"
492493
ET.SubElement(clipitem, "start").text = _start
493494
ET.SubElement(clipitem, "end").text = _end
494495
ET.SubElement(clipitem, "in").text = _in
@@ -502,7 +503,7 @@ def fcp7_write_xml(name: str, output: str, tl: v3, log: Log) -> None:
502503

503504
sourcetrack = ET.SubElement(clipitem, "sourcetrack")
504505
ET.SubElement(sourcetrack, "mediatype").text = "audio"
505-
ET.SubElement(sourcetrack, "trackindex").text = f"{t + 1}"
506+
ET.SubElement(sourcetrack, "trackindex").text = f"{t}"
506507
labels = ET.SubElement(clipitem, "labels")
507508
ET.SubElement(labels, "label2").text = "Iris"
508509

@@ -512,5 +513,5 @@ def fcp7_write_xml(name: str, output: str, tl: v3, log: Log) -> None:
512513
audio.append(track)
513514

514515
tree = ET.ElementTree(xmeml)
515-
ET.indent(tree, space="\t", level=0)
516+
ET.indent(tree, space=" ", level=0)
516517
tree.write(output, xml_declaration=True, encoding="utf-8")

0 commit comments

Comments
 (0)