feat: add task workflow and asset downloads
This commit is contained in:
708
lib/content/seedance-starter/catalog.json
Normal file
708
lib/content/seedance-starter/catalog.json
Normal file
@@ -0,0 +1,708 @@
|
||||
{
|
||||
"generatedAt": "2026-05-03T13:52:55.451Z",
|
||||
"purpose": "Startup reference content for Seedance-based creation modes. The UI should present these as selectable examples before custom upload.",
|
||||
"sourceAttribution": {
|
||||
"repository": "EvoLinkAI/awesome-seedance-2-guide",
|
||||
"repositoryUrl": "https://github.com/EvoLinkAI/awesome-seedance-2-guide",
|
||||
"importedPages": [
|
||||
"https://github.com/EvoLinkAI/awesome-seedance-2-guide/blob/main/use-cases/zh-CN/09-music-sync.md",
|
||||
"https://github.com/EvoLinkAI/awesome-seedance-2-guide/blob/main/use-cases/zh-CN/03-creative-effects.md"
|
||||
]
|
||||
},
|
||||
"downloadFailures": [],
|
||||
"cases": [
|
||||
{
|
||||
"id": "promo-storefront-sample-1",
|
||||
"slug": "promo-storefront-sample-1",
|
||||
"mode": "storefront_avatar_storyboard",
|
||||
"modeLabel": "宣传片制作",
|
||||
"guideId": "local-promo-sample",
|
||||
"title": "宣传片制作",
|
||||
"inputSummary": "本地样片参考 + 店铺分镜素材",
|
||||
"prompt": "参考@视频1的真实质感、空间氛围和转场节奏,结合用户上传素材,生成干净自然的通用宣传片。",
|
||||
"promptPattern": {
|
||||
"primaryReference": "local_storefront_reference_video",
|
||||
"userControlledInputs": [
|
||||
"project_name",
|
||||
"uploaded_materials",
|
||||
"final_prompt"
|
||||
],
|
||||
"seedanceInstruction": "将参考视频的真实质感、转场节奏和环境氛围迁移到用户上传素材上。"
|
||||
},
|
||||
"interactionHooks": {
|
||||
"editorType": "storyboard_cards",
|
||||
"defaultUserAction": "选择参考样片后,逐段上传店铺分镜素材并修改口播。",
|
||||
"visibleControls": [
|
||||
"分镜素材",
|
||||
"口播",
|
||||
"画面辅助",
|
||||
"镜头辅助"
|
||||
],
|
||||
"customUploadSecondary": false
|
||||
},
|
||||
"display": {
|
||||
"hasReferenceVideo": true,
|
||||
"hasResultVideo": false,
|
||||
"selectableAsReferenceTemplate": true
|
||||
},
|
||||
"assets": [],
|
||||
"source": {
|
||||
"title": "又见乌江名宿宣传片样片",
|
||||
"page": "local-desktop"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "promo-digital-human-host-1",
|
||||
"slug": "promo-digital-human-host-1",
|
||||
"mode": "storefront_avatar_storyboard",
|
||||
"modeLabel": "宣传片制作",
|
||||
"guideId": "local-digital-human-host",
|
||||
"title": "达人模式",
|
||||
"inputSummary": "固定达人形象 + 店铺分镜素材",
|
||||
"prompt": "固定@图片1作为达人出镜形象,结合用户上传的店铺分镜素材,生成达人自然出镜讲解的本地商铺介绍视频。",
|
||||
"promptPattern": {
|
||||
"primaryReference": "fixed_digital_human_host",
|
||||
"userControlledInputs": [
|
||||
"storefront_images",
|
||||
"host_lines",
|
||||
"scene_order"
|
||||
],
|
||||
"seedanceInstruction": "保持@图片1达人形象稳定,让达人出镜讲解与店铺画面自然穿插,口播、口型和声音同步。"
|
||||
},
|
||||
"interactionHooks": {
|
||||
"editorType": "storyboard_cards",
|
||||
"defaultUserAction": "选择达人模式后,逐段上传店铺分镜素材并修改口播。",
|
||||
"visibleControls": [
|
||||
"固定达人",
|
||||
"分镜素材",
|
||||
"口播",
|
||||
"画面辅助",
|
||||
"镜头辅助"
|
||||
],
|
||||
"customUploadSecondary": false
|
||||
},
|
||||
"display": {
|
||||
"hasReferenceVideo": false,
|
||||
"hasResultVideo": false,
|
||||
"selectableAsReferenceTemplate": true
|
||||
},
|
||||
"assets": [],
|
||||
"source": {
|
||||
"title": "本地达人形象",
|
||||
"page": "bundled-starter"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "2-3-9-1",
|
||||
"slug": "2-3-9-1",
|
||||
"mode": "music_sync_ad",
|
||||
"modeLabel": "音乐卡点广告片",
|
||||
"guideId": "09-music-sync",
|
||||
"title": "时尚换装卡点",
|
||||
"inputSummary": "4张图 + 1个参考视频(节奏)",
|
||||
"prompt": "海报中的女生在不停的换装,服装参考@图片1@图片2的样式,手中提着@图片3的包,\n视频节奏参考@视频",
|
||||
"promptPattern": {
|
||||
"primaryReference": "reference_video_as_rhythm",
|
||||
"userControlledInputs": [
|
||||
"ordered_images",
|
||||
"style_intensity",
|
||||
"scene_crop_freedom"
|
||||
],
|
||||
"seedanceInstruction": "让图片/画面根据参考视频的画面关键帧和整体节奏进行卡点。",
|
||||
"reusablePromptFragments": [
|
||||
"视频节奏参考@视频1",
|
||||
"根据@视频1中的画面关键帧的位置和整体节奏进行卡点",
|
||||
"可根据音乐及画面需求自行改变参考图的景别,及补充画面的光影变化"
|
||||
]
|
||||
},
|
||||
"interactionHooks": {
|
||||
"editorType": "rhythm_timeline",
|
||||
"defaultUserAction": "选择一个参考节奏视频,然后按出现顺序放入图片素材。",
|
||||
"visibleControls": [
|
||||
"参考节奏",
|
||||
"素材出现顺序",
|
||||
"卡点强度",
|
||||
"景别自由度",
|
||||
"整体风格"
|
||||
],
|
||||
"customUploadSecondary": true
|
||||
},
|
||||
"display": {
|
||||
"hasReferenceVideo": true,
|
||||
"hasResultVideo": true,
|
||||
"selectableAsReferenceTemplate": true
|
||||
},
|
||||
"assetBase": "https://pub-babc88c25d274cfeb8b2ae0cd0816872.r2.dev/assets/2-3-9/1",
|
||||
"assets": [],
|
||||
"source": {
|
||||
"title": "音乐卡点",
|
||||
"page": "https://github.com/EvoLinkAI/awesome-seedance-2-guide/blob/main/use-cases/zh-CN/09-music-sync.md"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "2-3-9-2",
|
||||
"slug": "2-3-9-2",
|
||||
"mode": "music_sync_ad",
|
||||
"modeLabel": "音乐卡点广告片",
|
||||
"guideId": "09-music-sync",
|
||||
"title": "多风格图片卡点混剪",
|
||||
"inputSummary": "6张风格图 + 1个参考视频(节奏)",
|
||||
"prompt": "@图片1@图片2@图片3@图片4@图片5@图片6@图片7中的图片根据@视频中的画面关键帧的位置\n和整体节奏进行卡点,画面中的人物更有动感,整体画面风格更梦幻,画面张力强,可根据\n音乐及画面需求自行改变参考图的景别,及补充画面的光影变化",
|
||||
"promptPattern": {
|
||||
"primaryReference": "reference_video_as_rhythm",
|
||||
"userControlledInputs": [
|
||||
"ordered_images",
|
||||
"style_intensity",
|
||||
"scene_crop_freedom"
|
||||
],
|
||||
"seedanceInstruction": "让图片/画面根据参考视频的画面关键帧和整体节奏进行卡点。",
|
||||
"reusablePromptFragments": [
|
||||
"视频节奏参考@视频1",
|
||||
"根据@视频1中的画面关键帧的位置和整体节奏进行卡点",
|
||||
"可根据音乐及画面需求自行改变参考图的景别,及补充画面的光影变化"
|
||||
]
|
||||
},
|
||||
"interactionHooks": {
|
||||
"editorType": "rhythm_timeline",
|
||||
"defaultUserAction": "选择一个参考节奏视频,然后按出现顺序放入图片素材。",
|
||||
"visibleControls": [
|
||||
"参考节奏",
|
||||
"素材出现顺序",
|
||||
"卡点强度",
|
||||
"景别自由度",
|
||||
"整体风格"
|
||||
],
|
||||
"customUploadSecondary": true
|
||||
},
|
||||
"display": {
|
||||
"hasReferenceVideo": true,
|
||||
"hasResultVideo": true,
|
||||
"selectableAsReferenceTemplate": true
|
||||
},
|
||||
"assetBase": "https://pub-babc88c25d274cfeb8b2ae0cd0816872.r2.dev/assets/2-3-9/2",
|
||||
"assets": [],
|
||||
"source": {
|
||||
"title": "音乐卡点",
|
||||
"page": "https://github.com/EvoLinkAI/awesome-seedance-2-guide/blob/main/use-cases/zh-CN/09-music-sync.md"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "2-3-9-3",
|
||||
"slug": "2-3-9-3",
|
||||
"mode": "music_sync_ad",
|
||||
"modeLabel": "音乐卡点广告片",
|
||||
"guideId": "09-music-sync",
|
||||
"title": "风光大片卡点转场",
|
||||
"inputSummary": "6张风景图 + 1个参考视频(节奏)",
|
||||
"prompt": "@图片1@图片2@图片3@图片4@图片5@图片6的风光场景图,参考@视频中的画面节奏,\n转场间画面风格及音乐节奏进行卡点",
|
||||
"promptPattern": {
|
||||
"primaryReference": "reference_video_as_rhythm",
|
||||
"userControlledInputs": [
|
||||
"ordered_images",
|
||||
"style_intensity",
|
||||
"scene_crop_freedom"
|
||||
],
|
||||
"seedanceInstruction": "让图片/画面根据参考视频的画面关键帧和整体节奏进行卡点。",
|
||||
"reusablePromptFragments": [
|
||||
"视频节奏参考@视频1",
|
||||
"根据@视频1中的画面关键帧的位置和整体节奏进行卡点",
|
||||
"可根据音乐及画面需求自行改变参考图的景别,及补充画面的光影变化"
|
||||
]
|
||||
},
|
||||
"interactionHooks": {
|
||||
"editorType": "rhythm_timeline",
|
||||
"defaultUserAction": "选择一个参考节奏视频,然后按出现顺序放入图片素材。",
|
||||
"visibleControls": [
|
||||
"参考节奏",
|
||||
"素材出现顺序",
|
||||
"卡点强度",
|
||||
"景别自由度",
|
||||
"整体风格"
|
||||
],
|
||||
"customUploadSecondary": true
|
||||
},
|
||||
"display": {
|
||||
"hasReferenceVideo": true,
|
||||
"hasResultVideo": true,
|
||||
"selectableAsReferenceTemplate": true
|
||||
},
|
||||
"assetBase": "https://pub-babc88c25d274cfeb8b2ae0cd0816872.r2.dev/assets/2-3-9/3",
|
||||
"assets": [],
|
||||
"source": {
|
||||
"title": "音乐卡点",
|
||||
"page": "https://github.com/EvoLinkAI/awesome-seedance-2-guide/blob/main/use-cases/zh-CN/09-music-sync.md"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "2-3-9-4",
|
||||
"slug": "2-3-9-4",
|
||||
"mode": "music_sync_ad",
|
||||
"modeLabel": "音乐卡点广告片",
|
||||
"guideId": "09-music-sync",
|
||||
"title": "动漫分镜 + 战斗卡点",
|
||||
"inputSummary": "纯文本(详细分镜脚本)",
|
||||
"prompt": "8秒智性博弈式战斗动漫片段,贴合复仇主题。\n0-3秒:女主转身坐下,转镜头,女主下了一步棋子,并说\"你输了\"。\n3-4秒:快速摇镜头,转向对面男人面部特写,男人咬牙切齿,对结果很不满。\n4-6秒:切镜头,俯拍,女人下了一步棋,对面的人们惊叹。\n6-8秒:镜头迅速向下摇,画面黑屏转场,后画面渐亮,昏暗室内,女人看着窗外月色静静地说\n\"我们走着瞧\"。",
|
||||
"promptPattern": {
|
||||
"primaryReference": "reference_video_as_rhythm",
|
||||
"userControlledInputs": [
|
||||
"ordered_images",
|
||||
"style_intensity",
|
||||
"scene_crop_freedom"
|
||||
],
|
||||
"seedanceInstruction": "让图片/画面根据参考视频的画面关键帧和整体节奏进行卡点。",
|
||||
"reusablePromptFragments": [
|
||||
"视频节奏参考@视频1",
|
||||
"根据@视频1中的画面关键帧的位置和整体节奏进行卡点",
|
||||
"可根据音乐及画面需求自行改变参考图的景别,及补充画面的光影变化"
|
||||
]
|
||||
},
|
||||
"interactionHooks": {
|
||||
"editorType": "rhythm_timeline",
|
||||
"defaultUserAction": "选择一个参考节奏视频,然后按出现顺序放入图片素材。",
|
||||
"visibleControls": [
|
||||
"参考节奏",
|
||||
"素材出现顺序",
|
||||
"卡点强度",
|
||||
"景别自由度",
|
||||
"整体风格"
|
||||
],
|
||||
"customUploadSecondary": true
|
||||
},
|
||||
"display": {
|
||||
"hasReferenceVideo": false,
|
||||
"hasResultVideo": true,
|
||||
"selectableAsReferenceTemplate": false
|
||||
},
|
||||
"assetBase": "https://pub-babc88c25d274cfeb8b2ae0cd0816872.r2.dev/assets/2-3-9/4",
|
||||
"assets": [],
|
||||
"source": {
|
||||
"title": "音乐卡点",
|
||||
"page": "https://github.com/EvoLinkAI/awesome-seedance-2-guide/blob/main/use-cases/zh-CN/09-music-sync.md"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "2-3-3-1",
|
||||
"slug": "2-3-3-1",
|
||||
"mode": "creative_remix",
|
||||
"modeLabel": "创意视频复刻",
|
||||
"guideId": "03-creative-effects",
|
||||
"title": "科幻眼镜穿越多世界",
|
||||
"inputSummary": "4张场景图 + 1个参考视频",
|
||||
"prompt": "将@视频1的人物换成@图片1,@图片1为首帧,人物带上虚拟科幻眼镜,参考@视频1的运镜,\n及近的环绕镜头,从第三人称视角变成人物的主观视角,在AI虚拟眼镜中穿梭,来到@图片2\n的深邃的蓝色宇宙,出现几架飞<E69EB6><E9A39E><EFBFBD>穿梭向远方,镜头跟随飞船穿梭到@图片3的像素世界,\n镜头低空飞过像素的山林世界,里面的树木生长形式出现,随后视角仰拍,急速穿梭到\n@图片4的浅绿色纹理的星球,镜头穿梭并掠过星球表面",
|
||||
"promptPattern": {
|
||||
"primaryReference": "reference_video_as_effect_template",
|
||||
"userControlledInputs": [
|
||||
"replacement_subject",
|
||||
"replacement_scene",
|
||||
"text_or_logo_replacement",
|
||||
"preserve_motion",
|
||||
"preserve_effect",
|
||||
"preserve_rhythm"
|
||||
],
|
||||
"seedanceInstruction": "明确说明完全参考@视频1的特效/动作/运镜,同时把原视频主体替换为用户素材。",
|
||||
"reusablePromptFragments": [
|
||||
"完全参考@视频1的特效和动作",
|
||||
"参考@视频1的运镜",
|
||||
"将@视频1的首帧人物替换成@图片1",
|
||||
"文字替换成用户提供的品牌文案或Logo"
|
||||
]
|
||||
},
|
||||
"interactionHooks": {
|
||||
"editorType": "reference_mapping",
|
||||
"defaultUserAction": "选择一个创意参考视频,然后映射要替换的主体、场景、文字和Logo。",
|
||||
"visibleControls": [
|
||||
"保留运镜",
|
||||
"保留动作",
|
||||
"保留特效",
|
||||
"保留节奏",
|
||||
"替换主体",
|
||||
"替换场景",
|
||||
"替换文字/Logo"
|
||||
],
|
||||
"customUploadSecondary": true
|
||||
},
|
||||
"display": {
|
||||
"hasReferenceVideo": true,
|
||||
"hasResultVideo": true,
|
||||
"selectableAsReferenceTemplate": true
|
||||
},
|
||||
"assetBase": "https://pub-babc88c25d274cfeb8b2ae0cd0816872.r2.dev/assets/2-3-3/1",
|
||||
"assets": [],
|
||||
"source": {
|
||||
"title": "创意模板 / 复杂特效精准复刻",
|
||||
"page": "https://github.com/EvoLinkAI/awesome-seedance-2-guide/blob/main/use-cases/zh-CN/03-creative-effects.md"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "2-3-3-2",
|
||||
"slug": "2-3-3-2",
|
||||
"mode": "creative_remix",
|
||||
"modeLabel": "创意视频复刻",
|
||||
"guideId": "03-creative-effects",
|
||||
"title": "鱼眼换装闪切",
|
||||
"inputSummary": "6张图(人物+服装)+ 1个参考视频",
|
||||
"prompt": "参考第一张图片里模特的五官长相。模特分别穿着第2-6张参考图里的服装凑近镜头,\n做出调皮、冷酷、可爱、惊讶、耍帅的造型,每一个造型穿着不同服装,每次更换,\n画面伴随会切镜,参考视频的里鱼眼镜头效果、重影闪烁的炫影画面效果,参考@视频1",
|
||||
"promptPattern": {
|
||||
"primaryReference": "reference_video_as_effect_template",
|
||||
"userControlledInputs": [
|
||||
"replacement_subject",
|
||||
"replacement_scene",
|
||||
"text_or_logo_replacement",
|
||||
"preserve_motion",
|
||||
"preserve_effect",
|
||||
"preserve_rhythm"
|
||||
],
|
||||
"seedanceInstruction": "明确说明完全参考@视频1的特效/动作/运镜,同时把原视频主体替换为用户素材。",
|
||||
"reusablePromptFragments": [
|
||||
"完全参考@视频1的特效和动作",
|
||||
"参考@视频1的运镜",
|
||||
"将@视频1的首帧人物替换成@图片1",
|
||||
"文字替换成用户提供的品牌文案或Logo"
|
||||
]
|
||||
},
|
||||
"interactionHooks": {
|
||||
"editorType": "reference_mapping",
|
||||
"defaultUserAction": "选择一个创意参考视频,然后映射要替换的主体、场景、文字和Logo。",
|
||||
"visibleControls": [
|
||||
"保留运镜",
|
||||
"保留动作",
|
||||
"保留特效",
|
||||
"保留节奏",
|
||||
"替换主体",
|
||||
"替换场景",
|
||||
"替换文字/Logo"
|
||||
],
|
||||
"customUploadSecondary": true
|
||||
},
|
||||
"display": {
|
||||
"hasReferenceVideo": true,
|
||||
"hasResultVideo": true,
|
||||
"selectableAsReferenceTemplate": true
|
||||
},
|
||||
"assetBase": "https://pub-babc88c25d274cfeb8b2ae0cd0816872.r2.dev/assets/2-3-3/2",
|
||||
"assets": [],
|
||||
"source": {
|
||||
"title": "创意模板 / 复杂特效精准复刻",
|
||||
"page": "https://github.com/EvoLinkAI/awesome-seedance-2-guide/blob/main/use-cases/zh-CN/03-creative-effects.md"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "2-3-3-3",
|
||||
"slug": "2-3-3-3",
|
||||
"mode": "creative_remix",
|
||||
"modeLabel": "创意视频复刻",
|
||||
"guideId": "03-creative-effects",
|
||||
"title": "羽绒服广告创意复刻",
|
||||
"inputSummary": "3张图 + 1个参考视频",
|
||||
"prompt": "参考视频的广告创意,用提供的羽绒服图片,并参考鹅绒图片、天鹅图片,搭配以下广告词\n\"这是根鹅绒,这是暖天鹅,这是能穿的极地天鹅绒羽绒服,新年穿得暖,生活过得暖\",\n生成新的羽绒服广告视频。",
|
||||
"promptPattern": {
|
||||
"primaryReference": "reference_video_as_effect_template",
|
||||
"userControlledInputs": [
|
||||
"replacement_subject",
|
||||
"replacement_scene",
|
||||
"text_or_logo_replacement",
|
||||
"preserve_motion",
|
||||
"preserve_effect",
|
||||
"preserve_rhythm"
|
||||
],
|
||||
"seedanceInstruction": "明确说明完全参考@视频1的特效/动作/运镜,同时把原视频主体替换为用户素材。",
|
||||
"reusablePromptFragments": [
|
||||
"完全参考@视频1的特效和动作",
|
||||
"参考@视频1的运镜",
|
||||
"将@视频1的首帧人物替换成@图片1",
|
||||
"文字替换成用户提供的品牌文案或Logo"
|
||||
]
|
||||
},
|
||||
"interactionHooks": {
|
||||
"editorType": "reference_mapping",
|
||||
"defaultUserAction": "选择一个创意参考视频,然后映射要替换的主体、场景、文字和Logo。",
|
||||
"visibleControls": [
|
||||
"保留运镜",
|
||||
"保留动作",
|
||||
"保留特效",
|
||||
"保留节奏",
|
||||
"替换主体",
|
||||
"替换场景",
|
||||
"替换文字/Logo"
|
||||
],
|
||||
"customUploadSecondary": true
|
||||
},
|
||||
"display": {
|
||||
"hasReferenceVideo": true,
|
||||
"hasResultVideo": true,
|
||||
"selectableAsReferenceTemplate": true
|
||||
},
|
||||
"assetBase": "https://pub-babc88c25d274cfeb8b2ae0cd0816872.r2.dev/assets/2-3-3/3",
|
||||
"assets": [],
|
||||
"source": {
|
||||
"title": "创意模板 / 复杂特效精准复刻",
|
||||
"page": "https://github.com/EvoLinkAI/awesome-seedance-2-guide/blob/main/use-cases/zh-CN/03-creative-effects.md"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "2-3-3-4",
|
||||
"slug": "2-3-3-4",
|
||||
"mode": "creative_remix",
|
||||
"modeLabel": "创意视频复刻",
|
||||
"guideId": "03-creative-effects",
|
||||
"title": "水墨太极功夫",
|
||||
"inputSummary": "1张人物图 + 1个参考视频",
|
||||
"prompt": "黑白水墨风格,@图片1的人物参考@视频1的特效和动作,上演一段水墨太极功夫",
|
||||
"promptPattern": {
|
||||
"primaryReference": "reference_video_as_effect_template",
|
||||
"userControlledInputs": [
|
||||
"replacement_subject",
|
||||
"replacement_scene",
|
||||
"text_or_logo_replacement",
|
||||
"preserve_motion",
|
||||
"preserve_effect",
|
||||
"preserve_rhythm"
|
||||
],
|
||||
"seedanceInstruction": "明确说明完全参考@视频1的特效/动作/运镜,同时把原视频主体替换为用户素材。",
|
||||
"reusablePromptFragments": [
|
||||
"完全参考@视频1的特效和动作",
|
||||
"参考@视频1的运镜",
|
||||
"将@视频1的首帧人物替换成@图片1",
|
||||
"文字替换成用户提供的品牌文案或Logo"
|
||||
]
|
||||
},
|
||||
"interactionHooks": {
|
||||
"editorType": "reference_mapping",
|
||||
"defaultUserAction": "选择一个创意参考视频,然后映射要替换的主体、场景、文字和Logo。",
|
||||
"visibleControls": [
|
||||
"保留运镜",
|
||||
"保留动作",
|
||||
"保留特效",
|
||||
"保留节奏",
|
||||
"替换主体",
|
||||
"替换场景",
|
||||
"替换文字/Logo"
|
||||
],
|
||||
"customUploadSecondary": true
|
||||
},
|
||||
"display": {
|
||||
"hasReferenceVideo": true,
|
||||
"hasResultVideo": true,
|
||||
"selectableAsReferenceTemplate": true
|
||||
},
|
||||
"assetBase": "https://pub-babc88c25d274cfeb8b2ae0cd0816872.r2.dev/assets/2-3-3/4",
|
||||
"assets": [],
|
||||
"source": {
|
||||
"title": "创意模板 / 复杂特效精准复刻",
|
||||
"page": "https://github.com/EvoLinkAI/awesome-seedance-2-guide/blob/main/use-cases/zh-CN/03-creative-effects.md"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "2-3-3-5",
|
||||
"slug": "2-3-3-5",
|
||||
"mode": "creative_remix",
|
||||
"modeLabel": "创意视频复刻",
|
||||
"guideId": "03-creative-effects",
|
||||
"title": "角色变装特效(玫瑰蔓延)",
|
||||
"inputSummary": "2张人物图 + 1个参考视频",
|
||||
"prompt": "将@视频1的首帧人物替换成@图片1,完全@参考视频1的特效和动作,手里的花蕊长出玫瑰\n花瓣,裂纹在脸部向上延伸,逐渐被杂草覆盖,人物双手拂过脸部,杂草变成粒子消散,\n最后变成@图片2的长相",
|
||||
"promptPattern": {
|
||||
"primaryReference": "reference_video_as_effect_template",
|
||||
"userControlledInputs": [
|
||||
"replacement_subject",
|
||||
"replacement_scene",
|
||||
"text_or_logo_replacement",
|
||||
"preserve_motion",
|
||||
"preserve_effect",
|
||||
"preserve_rhythm"
|
||||
],
|
||||
"seedanceInstruction": "明确说明完全参考@视频1的特效/动作/运镜,同时把原视频主体替换为用户素材。",
|
||||
"reusablePromptFragments": [
|
||||
"完全参考@视频1的特效和动作",
|
||||
"参考@视频1的运镜",
|
||||
"将@视频1的首帧人物替换成@图片1",
|
||||
"文字替换成用户提供的品牌文案或Logo"
|
||||
]
|
||||
},
|
||||
"interactionHooks": {
|
||||
"editorType": "reference_mapping",
|
||||
"defaultUserAction": "选择一个创意参考视频,然后映射要替换的主体、场景、文字和Logo。",
|
||||
"visibleControls": [
|
||||
"保留运镜",
|
||||
"保留动作",
|
||||
"保留特效",
|
||||
"保留节奏",
|
||||
"替换主体",
|
||||
"替换场景",
|
||||
"替换文字/Logo"
|
||||
],
|
||||
"customUploadSecondary": true
|
||||
},
|
||||
"display": {
|
||||
"hasReferenceVideo": true,
|
||||
"hasResultVideo": true,
|
||||
"selectableAsReferenceTemplate": true
|
||||
},
|
||||
"assetBase": "https://pub-babc88c25d274cfeb8b2ae0cd0816872.r2.dev/assets/2-3-3/5",
|
||||
"assets": [],
|
||||
"source": {
|
||||
"title": "创意模板 / 复杂特效精准复刻",
|
||||
"page": "https://github.com/EvoLinkAI/awesome-seedance-2-guide/blob/main/use-cases/zh-CN/03-creative-effects.md"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "2-3-3-6",
|
||||
"slug": "2-3-3-6",
|
||||
"mode": "creative_remix",
|
||||
"modeLabel": "创意视频复刻",
|
||||
"guideId": "03-creative-effects",
|
||||
"title": "拼图破碎转场 + 文字替换",
|
||||
"inputSummary": "2张图 + 1个参考视频",
|
||||
"prompt": "由@图片1的天花板开始,参考@视频1的拼图破碎效果进行转场,\"BELIEVE\"字体替换成\n\"Seedance\",参考@图2的字体",
|
||||
"promptPattern": {
|
||||
"primaryReference": "reference_video_as_effect_template",
|
||||
"userControlledInputs": [
|
||||
"replacement_subject",
|
||||
"replacement_scene",
|
||||
"text_or_logo_replacement",
|
||||
"preserve_motion",
|
||||
"preserve_effect",
|
||||
"preserve_rhythm"
|
||||
],
|
||||
"seedanceInstruction": "明确说明完全参考@视频1的特效/动作/运镜,同时把原视频主体替换为用户素材。",
|
||||
"reusablePromptFragments": [
|
||||
"完全参考@视频1的特效和动作",
|
||||
"参考@视频1的运镜",
|
||||
"将@视频1的首帧人物替换成@图片1",
|
||||
"文字替换成用户提供的品牌文案或Logo"
|
||||
]
|
||||
},
|
||||
"interactionHooks": {
|
||||
"editorType": "reference_mapping",
|
||||
"defaultUserAction": "选择一个创意参考视频,然后映射要替换的主体、场景、文字和Logo。",
|
||||
"visibleControls": [
|
||||
"保留运镜",
|
||||
"保留动作",
|
||||
"保留特效",
|
||||
"保留节奏",
|
||||
"替换主体",
|
||||
"替换场景",
|
||||
"替换文字/Logo"
|
||||
],
|
||||
"customUploadSecondary": true
|
||||
},
|
||||
"display": {
|
||||
"hasReferenceVideo": true,
|
||||
"hasResultVideo": true,
|
||||
"selectableAsReferenceTemplate": true
|
||||
},
|
||||
"assetBase": "https://pub-babc88c25d274cfeb8b2ae0cd0816872.r2.dev/assets/2-3-3/6",
|
||||
"assets": [],
|
||||
"source": {
|
||||
"title": "创意模板 / 复杂特效精准复刻",
|
||||
"page": "https://github.com/EvoLinkAI/awesome-seedance-2-guide/blob/main/use-cases/zh-CN/03-creative-effects.md"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "2-3-3-7",
|
||||
"slug": "2-3-3-7",
|
||||
"mode": "creative_remix",
|
||||
"modeLabel": "创意视频复刻",
|
||||
"guideId": "03-creative-effects",
|
||||
"title": "金色粒子片头",
|
||||
"inputSummary": "1张文字/Logo图 + 1个参考视频",
|
||||
"prompt": "以黑幕开场,参考视频1的粒子特效和材质,金色鎏金材质的沙砾从画面左边飘出并向右覆盖,\n参考@视频1的粒子吹散效果,@图片1的字体逐渐出现在画面中心",
|
||||
"promptPattern": {
|
||||
"primaryReference": "reference_video_as_effect_template",
|
||||
"userControlledInputs": [
|
||||
"replacement_subject",
|
||||
"replacement_scene",
|
||||
"text_or_logo_replacement",
|
||||
"preserve_motion",
|
||||
"preserve_effect",
|
||||
"preserve_rhythm"
|
||||
],
|
||||
"seedanceInstruction": "明确说明完全参考@视频1的特效/动作/运镜,同时把原视频主体替换为用户素材。",
|
||||
"reusablePromptFragments": [
|
||||
"完全参考@视频1的特效和动作",
|
||||
"参考@视频1的运镜",
|
||||
"将@视频1的首帧人物替换成@图片1",
|
||||
"文字替换成用户提供的品牌文案或Logo"
|
||||
]
|
||||
},
|
||||
"interactionHooks": {
|
||||
"editorType": "reference_mapping",
|
||||
"defaultUserAction": "选择一个创意参考视频,然后映射要替换的主体、场景、文字和Logo。",
|
||||
"visibleControls": [
|
||||
"保留运镜",
|
||||
"保留动作",
|
||||
"保留特效",
|
||||
"保留节奏",
|
||||
"替换主体",
|
||||
"替换场景",
|
||||
"替换文字/Logo"
|
||||
],
|
||||
"customUploadSecondary": true
|
||||
},
|
||||
"display": {
|
||||
"hasReferenceVideo": true,
|
||||
"hasResultVideo": true,
|
||||
"selectableAsReferenceTemplate": true
|
||||
},
|
||||
"assetBase": "https://pub-babc88c25d274cfeb8b2ae0cd0816872.r2.dev/assets/2-3-3/7",
|
||||
"assets": [],
|
||||
"source": {
|
||||
"title": "创意模板 / 复杂特效精准复刻",
|
||||
"page": "https://github.com/EvoLinkAI/awesome-seedance-2-guide/blob/main/use-cases/zh-CN/03-creative-effects.md"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "2-3-3-8",
|
||||
"slug": "2-3-3-8",
|
||||
"mode": "creative_remix",
|
||||
"modeLabel": "创意视频复刻",
|
||||
"guideId": "03-creative-effects",
|
||||
"title": "吃泡面抽象行为艺术",
|
||||
"inputSummary": "1张人物图 + 1个参考视频",
|
||||
"prompt": "@图片1的人物参考@视频1中的动作和表情变化,展示吃泡面的抽象行为",
|
||||
"promptPattern": {
|
||||
"primaryReference": "reference_video_as_effect_template",
|
||||
"userControlledInputs": [
|
||||
"replacement_subject",
|
||||
"replacement_scene",
|
||||
"text_or_logo_replacement",
|
||||
"preserve_motion",
|
||||
"preserve_effect",
|
||||
"preserve_rhythm"
|
||||
],
|
||||
"seedanceInstruction": "明确说明完全参考@视频1的特效/动作/运镜,同时把原视频主体替换为用户素材。",
|
||||
"reusablePromptFragments": [
|
||||
"完全参考@视频1的特效和动作",
|
||||
"参考@视频1的运镜",
|
||||
"将@视频1的首帧人物替换成@图片1",
|
||||
"文字替换成用户提供的品牌文案或Logo"
|
||||
]
|
||||
},
|
||||
"interactionHooks": {
|
||||
"editorType": "reference_mapping",
|
||||
"defaultUserAction": "选择一个创意参考视频,然后映射要替换的主体、场景、文字和Logo。",
|
||||
"visibleControls": [
|
||||
"保留运镜",
|
||||
"保留动作",
|
||||
"保留特效",
|
||||
"保留节奏",
|
||||
"替换主体",
|
||||
"替换场景",
|
||||
"替换文字/Logo"
|
||||
],
|
||||
"customUploadSecondary": true
|
||||
},
|
||||
"display": {
|
||||
"hasReferenceVideo": true,
|
||||
"hasResultVideo": true,
|
||||
"selectableAsReferenceTemplate": true
|
||||
},
|
||||
"assetBase": "https://pub-babc88c25d274cfeb8b2ae0cd0816872.r2.dev/assets/2-3-3/8",
|
||||
"assets": [],
|
||||
"source": {
|
||||
"title": "创意模板 / 复杂特效精准复刻",
|
||||
"page": "https://github.com/EvoLinkAI/awesome-seedance-2-guide/blob/main/use-cases/zh-CN/03-creative-effects.md"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
import catalog from "@/runtime/nianxx-play/content/seedance-starter/catalog.json";
|
||||
import catalog from "@/lib/content/seedance-starter/catalog.json";
|
||||
|
||||
type LegacyCatalog = typeof catalog;
|
||||
type LegacyCase = LegacyCatalog["cases"][number];
|
||||
type SeedanceCatalog = typeof catalog;
|
||||
type SeedanceCase = SeedanceCatalog["cases"][number];
|
||||
|
||||
export type VideoTemplate = {
|
||||
id: string;
|
||||
@@ -24,26 +24,16 @@ export type VideoTemplate = {
|
||||
};
|
||||
|
||||
export function getVideoTemplates(): VideoTemplate[] {
|
||||
return (catalog.cases as LegacyCase[]).map((item) => ({
|
||||
return (catalog.cases as SeedanceCase[]).map((item) => ({
|
||||
id: item.id,
|
||||
title: item.title,
|
||||
mode: item.mode,
|
||||
modeLabel: item.modeLabel,
|
||||
prompt: item.prompt,
|
||||
seedanceInstruction: typeof item.promptPattern?.seedanceInstruction === "string" ? item.promptPattern.seedanceInstruction : undefined,
|
||||
coverUrl: rewriteLegacyUrl(item.display?.coverPublicUrl),
|
||||
referenceVideoUrl: rewriteLegacyUrl(item.display?.referenceVideoPublicUrl),
|
||||
resultVideoUrl: rewriteLegacyUrl(item.display?.resultVideoPublicUrl),
|
||||
selectable: Boolean(item.display?.selectableAsReferenceTemplate),
|
||||
controls: item.interactionHooks?.visibleControls || [],
|
||||
materials: (item.assets || [])
|
||||
.map((asset) => ({
|
||||
role: asset.role,
|
||||
type: asset.role.includes("video") ? "video" as const : asset.role.includes("audio") ? "audio" as const : "image" as const,
|
||||
url: rewriteLegacyUrl(asset.publicUrl) || "",
|
||||
label: "promptLabel" in asset ? asset.promptLabel : undefined
|
||||
}))
|
||||
.filter((asset) => asset.url)
|
||||
materials: []
|
||||
}));
|
||||
}
|
||||
|
||||
@@ -51,10 +41,3 @@ export function getTemplateById(id?: string): VideoTemplate | undefined {
|
||||
if (!id) return undefined;
|
||||
return getVideoTemplates().find((template) => template.id === id);
|
||||
}
|
||||
|
||||
function rewriteLegacyUrl(url?: string | null): string | undefined {
|
||||
if (!url) return undefined;
|
||||
if (/^https?:\/\//i.test(url)) return url;
|
||||
if (url.startsWith("/seedance-starter-assets/") || url.startsWith("/starter/") || url.startsWith("/planning-cases/")) return url;
|
||||
return url;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user