{
  "schemaVersion": "vidia-package@1",
  "meta": {
    "title": "UGC 광고 영상",
    "summary": "제품 사진 한 장으로 크리에이터가 직접 써 보고 추천하는 듯한 SNS 후기형 광고 영상을 만듭니다. 크리에이터 추천·비포/애프터·언박싱 중에서 고르고, 목소리는 TTS 내레이션과 영상 속 인물이 직접 말하기 중에서 고릅니다.",
    "format": "shorts",
    "tags": [
      "광고",
      "UGC",
      "커머스",
      "제품",
      "숏츠",
      "후기"
    ],
    "knowhow": "## 이 패키지의 접근\n\n- **2초 안에 멈추게 한다.** 첫 대사는 공감 질문·의외의 결과·솔직한 고백 중 하나로 시작하고, 제품은 첫 장면 1초 안에 화면에 보입니다. 인사·자기소개로 시작하지 않습니다.\n- **광고 유형별 흐름.** 크리에이터 추천은 공감 → 소개 → 시연 → 느낌 → 추천, 비포·애프터는 같은 장소·같은 사람으로 전후를 대비, 언박싱은 상자 첫인상 → 개봉 → 첫 사용 순서로 짭니다.\n- **올린 사진이 곧 기준.** 제품 사진(과 크리에이터 사진)을 그대로 참조 시트로 등록해 모든 장면에서 같은 제품·같은 사람이 나오고, 제품 이미지 평가가 모양·색·라벨이 달라진 컷을 다시 만듭니다.\n- **목소리 두 가지.** TTS 내레이션은 발음이 정확하고 자막이 붙는 대신 입 모양이 보이지 않는 시연·리액션 컷으로 연출합니다. 직접 말하기는 영상 모델이 대사와 입 모양을 함께 만들어 자연스럽지만, 대사를 짧게 써야 또렷합니다.\n- **체험 표현만.** '최고', '100%', 효능 단정 같은 과장 광고 표현은 쓰지 않고 '저는 ~했어요' 같은 체험 문장으로 씁니다."
  },
  "inputForm": [
    {
      "key": "product_image",
      "label": "제품 사진",
      "type": "asset",
      "required": true,
      "help": "배경이 깔끔한 제품 사진 한 장. 영상 속 제품의 모양·색·라벨이 이 사진대로 유지됩니다.",
      "accept": "image"
    },
    {
      "key": "user_prompt",
      "label": "제품 설명과 요청",
      "type": "longtext",
      "required": true,
      "help": "제품의 강점·타깃·사용 장면·원하는 분위기를 적어 주세요. 여기 적은 내용이 가장 먼저 반영됩니다.",
      "placeholder": "예: 보라색 유리병 향수. 손목에 뿌리고 은은하게 오래가는 향을 강조. 20대 직장인 여성 타깃.",
      "maxLength": 1500
    },
    {
      "key": "model_image",
      "label": "크리에이터 사진",
      "type": "asset",
      "required": false,
      "help": "영상에 나올 사람 사진(초상권이 있는 본인·동의받은 사람만). 비우면 제품에 어울리는 크리에이터를 새로 만듭니다.",
      "accept": "image"
    },
    {
      "key": "ad_type",
      "label": "광고 유형",
      "type": "select",
      "required": false,
      "help": "",
      "options": [
        "크리에이터 추천",
        "비포·애프터",
        "언박싱"
      ],
      "default": "크리에이터 추천"
    },
    {
      "key": "voice_mode",
      "label": "목소리",
      "type": "select",
      "required": false,
      "help": "TTS 는 발음이 정확하고 자막이 붙습니다. 직접 말하기는 입 모양까지 자연스럽지만 대사가 짧아집니다.",
      "options": [
        "TTS 내레이션 + 자막",
        "영상 속 인물이 직접 말하기"
      ],
      "default": "TTS 내레이션 + 자막"
    },
    {
      "key": "duration_sec",
      "label": "길이(초)",
      "type": "number",
      "required": false,
      "help": "",
      "min": 6,
      "max": 15,
      "default": 10
    },
    {
      "key": "aspect_ratio",
      "label": "화면 비율",
      "type": "select",
      "required": false,
      "help": "",
      "options": [
        "9:16",
        "16:9",
        "1:1"
      ],
      "default": "9:16"
    },
    {
      "key": "resolution",
      "label": "해상도",
      "type": "select",
      "required": false,
      "help": "",
      "options": [
        "720p",
        "480p"
      ],
      "default": "720p"
    },
    {
      "key": "sound",
      "label": "AI 영상 현장음",
      "type": "select",
      "required": false,
      "help": "켜면 영상 모델이 주변 소리를 함께 만듭니다(TTS 목소리 아래에 작게 깔립니다).",
      "options": [
        "켜기",
        "끄기"
      ],
      "default": "켜기"
    }
  ],
  "agent": {
    "maxTurns": 30
  },
  "start": "n1",
  "nodes": [
    {
      "id": "n1",
      "module": {
        "id": 78,
        "versionId": 78,
        "name": "UGC 광고 기획",
        "stage": "script",
        "versionNo": 1,
        "ownerId": 1,
        "price": 0,
        "contentPublic": true
      },
      "label": "UGC 광고 기획",
      "next": "n2",
      "pause": false,
      "maxVisits": 3,
      "note": "제품 분석 → 광고 유형별 흐름·대사·장면 설계도",
      "branches": [
        {
          "label": "직접 말하기(음성·자막 건너뜀)",
          "when": {
            "route": "native"
          },
          "goto": "n4"
        }
      ],
      "ui": {
        "x": 0,
        "y": 0
      }
    },
    {
      "id": "n2",
      "module": {
        "id": 76,
        "versionId": 76,
        "name": "TTS 생성",
        "stage": "tts",
        "versionNo": 1,
        "ownerId": 1,
        "price": 0,
        "contentPublic": true
      },
      "label": "TTS",
      "next": "n3",
      "pause": false,
      "maxVisits": 3,
      "note": "",
      "branches": [],
      "ui": {
        "x": 0,
        "y": 140
      }
    },
    {
      "id": "n3",
      "module": {
        "id": 73,
        "versionId": 73,
        "name": "자막 생성",
        "stage": "subtitle",
        "versionNo": 1,
        "ownerId": 1,
        "price": 0,
        "contentPublic": true
      },
      "label": "자막",
      "next": "n4",
      "pause": false,
      "maxVisits": 3,
      "note": "",
      "branches": [],
      "ui": {
        "x": 0,
        "y": 280
      }
    },
    {
      "id": "n4",
      "module": {
        "id": 11,
        "versionId": 11,
        "name": "AI 이미지",
        "stage": "image",
        "versionNo": 1,
        "ownerId": 1,
        "price": 0,
        "contentPublic": true
      },
      "label": "키프레임 이미지",
      "next": "n5",
      "pause": false,
      "maxVisits": 2,
      "note": "",
      "branches": [],
      "ui": {
        "x": 0,
        "y": 420
      }
    },
    {
      "id": "n5",
      "module": {
        "id": 30,
        "versionId": 30,
        "name": "이미지 평가 · 제품·광고 컷",
        "stage": "review",
        "versionNo": 1,
        "ownerId": 1,
        "price": 0,
        "contentPublic": true
      },
      "label": "제품 이미지 평가",
      "next": "n6",
      "pause": false,
      "maxVisits": 3,
      "note": "",
      "branches": [
        {
          "label": "다시 만들기",
          "when": {
            "route": "retry"
          },
          "goto": "n4"
        }
      ],
      "ui": {
        "x": 0,
        "y": 560
      }
    },
    {
      "id": "n6",
      "module": {
        "id": 79,
        "versionId": 79,
        "name": "AI 영상",
        "stage": "video",
        "versionNo": 1,
        "ownerId": 1,
        "price": 0,
        "contentPublic": true
      },
      "label": "AI 영상 제작",
      "next": "n7",
      "pause": false,
      "maxVisits": 3,
      "note": "",
      "branches": [],
      "ui": {
        "x": 0,
        "y": 700
      }
    },
    {
      "id": "n7",
      "module": {
        "id": 22,
        "versionId": 22,
        "name": "최종 렌더링",
        "stage": "render",
        "versionNo": 1,
        "ownerId": 1,
        "price": 0,
        "contentPublic": true
      },
      "label": "최종 합성",
      "next": null,
      "pause": false,
      "maxVisits": 3,
      "note": "",
      "branches": [],
      "ui": {
        "x": 0,
        "y": 840
      }
    }
  ]
}