{
  "config": {},
  "extra": {
    "ds": {
      "offset": [
        1567.9682516987227,
        905.8821830750749
      ],
      "scale": 0.6084625439307023
    },
    "frontendVersion": "1.45.20"
  },
  "groups": [],
  "id": "6d029989-7e4b-4077-acb4-e5c45eec2b1d",
  "last_link_id": 6,
  "last_node_id": 8,
  "links": [
    [
      2,
      3,
      0,
      4,
      0,
      "AUDIO"
    ],
    [
      5,
      8,
      0,
      3,
      2,
      "AUDIO"
    ]
  ],
  "nodes": [
    {
      "bgcolor": "#653",
      "color": "#432",
      "flags": {},
      "id": 3,
      "inputs": [
        {
          "link": null,
          "localized_name": "text_prompt",
          "name": "text_prompt",
          "type": "STRING",
          "widget": {
            "name": "text_prompt"
          }
        },
        {
          "link": null,
          "localized_name": "reference_mode",
          "name": "reference_mode",
          "type": "COMFY_DYNAMICCOMBO_V3",
          "widget": {
            "name": "reference_mode"
          }
        },
        {
          "label": "reference_audio_1",
          "link": 5,
          "localized_name": "reference_mode.reference_audio_1",
          "name": "reference_mode.reference_audio_1",
          "shape": 7,
          "type": "AUDIO"
        },
        {
          "label": "reference_audio_2",
          "link": null,
          "localized_name": "reference_mode.reference_audio_2",
          "name": "reference_mode.reference_audio_2",
          "shape": 7,
          "type": "AUDIO"
        },
        {
          "label": "reference_audio_3",
          "link": null,
          "localized_name": "reference_mode.reference_audio_3",
          "name": "reference_mode.reference_audio_3",
          "shape": 7,
          "type": "AUDIO"
        },
        {
          "link": null,
          "localized_name": "sample_rate",
          "name": "sample_rate",
          "type": "COMBO",
          "widget": {
            "name": "sample_rate"
          }
        },
        {
          "link": null,
          "localized_name": "speech_rate",
          "name": "speech_rate",
          "type": "INT",
          "widget": {
            "name": "speech_rate"
          }
        },
        {
          "link": null,
          "localized_name": "loudness_rate",
          "name": "loudness_rate",
          "type": "INT",
          "widget": {
            "name": "loudness_rate"
          }
        },
        {
          "link": null,
          "localized_name": "pitch_rate",
          "name": "pitch_rate",
          "type": "INT",
          "widget": {
            "name": "pitch_rate"
          }
        },
        {
          "link": null,
          "localized_name": "seed",
          "name": "seed",
          "type": "INT",
          "widget": {
            "name": "seed"
          }
        }
      ],
      "mode": 0,
      "order": 2,
      "outputs": [
        {
          "links": [
            2
          ],
          "localized_name": "AUDIO",
          "name": "AUDIO",
          "type": "AUDIO"
        }
      ],
      "pos": [
        -243.23859960711826,
        -386.98716660616896
      ],
      "properties": {
        "Node name for S&R": "ByteDanceSeedAudio"
      },
      "size": [
        501.90625,
        356
      ],
      "type": "ByteDanceSeedAudio",
      "widgets_values": [
        "Quiet café ambience, soft room tone, faint distant chatter, no background music.\n\nElena (woman in her late twenties, warm mid-range voice, soft but clear, calm and friendly, voiced by @Audio1) says gently:\n\"Hi, I'm Elena. Thanks for joining me today. I'll speak naturally, warmly, and clearly, just like my reference voice.\"\n\nElena (voiced by @Audio1), a little warmer, says:\n\"Listen for my pitch, my pauses, and how I finish each sentence softly but clearly.\"\n\nEnds in silence.",
        "audio reference",
        "24000",
        0,
        0,
        0,
        1266743122,
        "randomize"
      ]
    },
    {
      "flags": {},
      "id": 4,
      "inputs": [
        {
          "link": 2,
          "localized_name": "audio",
          "name": "audio",
          "type": "AUDIO"
        },
        {
          "link": null,
          "localized_name": "filename_prefix",
          "name": "filename_prefix",
          "type": "STRING",
          "widget": {
            "name": "filename_prefix"
          }
        },
        {
          "link": null,
          "localized_name": "format",
          "name": "format",
          "type": "COMFY_DYNAMICCOMBO_V3",
          "widget": {
            "name": "format"
          }
        },
        {
          "link": null,
          "localized_name": "format.quality",
          "name": "format.quality",
          "type": "COMBO",
          "widget": {
            "name": "format.quality"
          }
        },
        {
          "link": null,
          "localized_name": "audioUI",
          "name": "audioUI",
          "type": "AUDIO_UI",
          "widget": {
            "name": "audioUI"
          }
        }
      ],
      "mode": 0,
      "order": 3,
      "outputs": [
        {
          "links": null,
          "localized_name": "audio",
          "name": "audio",
          "type": "AUDIO"
        }
      ],
      "pos": [
        286.54824314203955,
        -386.8170900771985
      ],
      "properties": {
        "Node name for S&R": "SaveAudioAdvanced"
      },
      "size": [
        621.46875,
        176
      ],
      "type": "SaveAudioAdvanced",
      "widgets_values": [
        "audio/Seed_Audio_1.0_r2a",
        "mp3",
        "V0"
      ]
    },
    {
      "bgcolor": "#000",
      "color": "#222",
      "flags": {},
      "id": 5,
      "inputs": [],
      "mode": 0,
      "order": 0,
      "outputs": [],
      "pos": [
        -1201.9415604737128,
        -388.79810918508224
      ],
      "properties": {},
      "size": [
        476.71875,
        1824.09375
      ],
      "title": "Note: TA2A Prompt Guide",
      "type": "MarkdownNote",
      "widgets_values": [
        "Seed Audio 1.0: TA2A (Text + Audio to Audio) Workflow Guide\n\n## What This Workflow Does\nLoad Audio → ByteDance Seed Audio 1.0 (audio reference) → Save Audio.\n\nTA2A = text prompt + reference audio. Clone voice(s) from up to 3 reference clips, then generate a new scene with those voices plus ambience, music, and SFX.\n\nBest for: keeping a consistent character voice, multi-speaker scenes with known voices, dubbing when you already have a voice sample.\n\n## How to Use\n1. Load Audio: add your reference clip(s) (≤30s each).\n2. Connect AUDIO → reference_audio_1 (and _2, _3 if needed, in order, no gaps).\n3. Keep reference_mode on \"audio reference\".\n4. In text_prompt, tag each speaker with voiced by @AudioN matching the connected clip.\n5. Run the workflow.\n\n@Audio1 = reference_audio_1 · @Audio2 = reference_audio_2 · @Audio3 = reference_audio_3\n\nNeed a reference clip first? Use the T2A workflow to generate a clean single-speaker sample, then use it here.\n\n## Target Language\nThe model supports English and Chinese. It may mix languages if you do not specify.\n\nTo lock the output language, add a bracket tag at the top:\n- [Language: English only.]\n- [Language: Chinese only.]\n\nAlso state the language in each character's voice traits, for example: speaks English only, or speaks Chinese only. Write dialogue in your target language.\n\n## Avoid Scene Text Being Spoken\nWrap non-dialogue in [square brackets]. Only quoted text after says / whispers should be spoken.\n\n## Prompt Guide\n1. [Language: ...] optional but recommended\n2. [Environment / BGM / SFX: ...]\n3. Name (voice traits, voiced by @Audio1) says: \"dialogue\"\n4. Name (voiced by @Audio1), [emotion], says: \"next line\"\n5. Name2 (voice traits, voiced by @Audio2) replies: \"dialogue\"\n6. [Outro]\n\nRules:\n- Every @AudioN in the prompt must have a matching connected clip\n- Same speaker reuses the same @AudioN on later lines\n- Max 3 reference clips · ≤30s each · connect 1→2→3 without gaps\n\nLimits: prompt ≤3000 chars · output ≤2 min · English & Chinese\n\n## Example (single reference)\n[Language: English only.]\n[Environment: quiet café ambience, soft room tone, no music.]\n\nElena (warm mid-range voice, calm and friendly, speaks English only, voiced by @Audio1) says gently:\n\"Hi, thanks for joining me today.\"\n\nElena (voiced by @Audio1), a little warmer, says:\n\"I'll speak naturally, just like my reference voice.\"\n\n[Silence.]"
      ]
    },
    {
      "flags": {},
      "id": 8,
      "inputs": [
        {
          "link": null,
          "localized_name": "audio",
          "name": "audio",
          "type": "COMBO",
          "widget": {
            "name": "audio"
          }
        },
        {
          "link": null,
          "localized_name": "audioUI",
          "name": "audioUI",
          "type": "AUDIO_UI",
          "widget": {
            "name": "audioUI"
          }
        },
        {
          "link": null,
          "localized_name": "choose file to upload",
          "name": "upload",
          "type": "AUDIOUPLOAD",
          "widget": {
            "name": "upload"
          }
        }
      ],
      "mode": 0,
      "order": 1,
      "outputs": [
        {
          "links": [
            5
          ],
          "localized_name": "AUDIO",
          "name": "AUDIO",
          "type": "AUDIO"
        }
      ],
      "pos": [
        -687.3165865045286,
        -386.89512185518817
      ],
      "properties": {
        "Node name for S&R": "LoadAudio"
      },
      "size": [
        366.625,
        152
      ],
      "type": "LoadAudio",
      "widgets_values": [
        "seed_audio_ref_audio1.mp3",
        null,
        null
      ]
    }
  ],
  "revision": 0,
  "version": 0.4
}