Skip to content

Commit 02238ae

Browse files
committed
Make sure timeline is not empty
1 parent a33f561 commit 02238ae

File tree

4 files changed

+9
-4
lines changed

4 files changed

+9
-4
lines changed

auto_editor/formats/fcp7.py

+4-3
Original file line numberDiff line numberDiff line change
@@ -424,13 +424,14 @@ def resolve_write_audio(audio: Element, make_filedef, tl: v3) -> None:
424424
clipitem.append(speedup(aclip.speed * 100))
425425

426426

427-
def premiere_write_audio(audio: Element, make_filedef, src: FileInfo, tl: v3) -> None:
427+
def premiere_write_audio(audio: Element, make_filedef, tl: v3) -> None:
428428
ET.SubElement(audio, "numOutputChannels").text = "2"
429429
aformat = ET.SubElement(audio, "format")
430430
aschar = ET.SubElement(aformat, "samplecharacteristics")
431431
ET.SubElement(aschar, "depth").text = DEPTH
432432
ET.SubElement(aschar, "samplerate").text = f"{tl.sr}"
433-
433+
src = tl.src
434+
assert src is not None
434435
t = 0
435436
for aclips in tl.a:
436437
for channelcount in range(0, 2): # Because "stereo" is hardcoded.
@@ -579,7 +580,7 @@ def make_filedef(clipitem: Element, src: FileInfo) -> None:
579580
if resolve:
580581
resolve_write_audio(audio, make_filedef, tl)
581582
else:
582-
premiere_write_audio(audio, make_filedef, src, tl)
583+
premiere_write_audio(audio, make_filedef, tl)
583584

584585
tree = ET.ElementTree(xmeml)
585586
ET.indent(tree, space=" ", level=0)

auto_editor/lang/stdenv.py

+1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
if TYPE_CHECKING:
1414
from typing import Any, Literal
1515

16+
import numpy as np
1617
from numpy.typing import NDArray
1718

1819
Number = int | float | complex | Fraction

auto_editor/make_layers.py

+3
Original file line numberDiff line numberDiff line change
@@ -302,4 +302,7 @@ def chunkify(arr: NDArray, smap: dict[int, float]) -> Chunks:
302302
else:
303303
v1_compatiable = None
304304

305+
if len(vtl) == 0 and len(atl) == 0:
306+
log.error("Timeline is empty, nothing to do.")
307+
305308
return v3(inp, tb, sr, res, args.background, vtl, atl, v1_compatiable)

auto_editor/render/audio.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -300,7 +300,7 @@ def make_new_audio(
300300

301301
temp = log.temp
302302

303-
if not tl.a or not tl.a[0]:
303+
if not tl.a[0]:
304304
log.error("Trying to render empty audio timeline")
305305

306306
for i, layer in enumerate(tl.a):

0 commit comments

Comments
 (0)