feat: bootstrap commercial AI drama platform

This commit is contained in:
xz
2026-08-24 10:24:34 +08:00
commit ffb27d845b
100 changed files with 35314 additions and 0 deletions
+42
View File
@@ -0,0 +1,42 @@
import { mkdir, writeFile } from "node:fs/promises";
import { dirname, resolve } from "node:path";
import { fileURLToPath } from "node:url";
import { sampleProject } from "../src/data/sampleProject.js";
import {
buildEditList,
buildPromptPack,
buildShotList,
buildVoiceTable
} from "../src/lib/exporters.js";
import { projectQa } from "../src/lib/qa.js";
const root = resolve(dirname(fileURLToPath(import.meta.url)), "..");
const out = resolve(root, "exports/project-template");
const files = [
["bible/series-bible.json", sampleProject.series],
["shots/shot-list.json", buildShotList(sampleProject)],
["shots/prompt-pack.json", buildPromptPack(sampleProject)],
["voices/voice-lines.json", buildVoiceTable(sampleProject)],
["qa/qa-results.json", projectQa(sampleProject)],
["edit/edit-list.json", buildEditList(sampleProject)],
["characters/character-locks.json", sampleProject.characters],
["locations/location-locks.json", sampleProject.locations],
["props/prop-locks.json", sampleProject.props],
["final-video/delivery-manifest.json", {
schema: "ai-drama-platform.delivery-manifest.v1",
episodeId: sampleProject.episode.id,
expectedFinal: "final-video/E01_别往树下跑_master.mp4",
sourceEditList: "edit/edit-list.json",
subtitles: "edit/E01_别往树下跑.zh-CN.srt",
audioPolicy: "固定 TTS 声线替换随机原生音轨;环境声可独立保留。"
}]
];
for (const [name, value] of files) {
const target = resolve(out, name);
await mkdir(dirname(target), { recursive: true });
await writeFile(target, `${JSON.stringify(value, null, 2)}\n`, "utf8");
}
console.log(`sample exports written to ${out}`);