(artifact: Artifact)
| 94 | ); |
| 95 | |
| 96 | const readTimeline = (artifact: Artifact): Timeline | null => { |
| 97 | if (!artifact.runDir) return null; |
| 98 | const timelinePath = join(artifact.runDir, "timeline.json"); |
| 99 | if (!existsSync(timelinePath)) return null; |
| 100 | return JSON.parse(readFileSync(timelinePath, "utf8")) as Timeline; |
| 101 | }; |
| 102 | |
| 103 | const urlSegments = (artifact: Artifact, duration: number): ReadonlyArray<UrlSegment> => { |
| 104 | if (basename(artifact.path) !== "session.mp4") return []; |