Flux AIとFal AIを使用してアニメ壁紙を生成しTikTokに投稿

上級

これはContent Creation, Multimodal AI分野の自動化ワークフローで、20個のノードを含みます。主にIf, Set, Wait, FormTrigger, HttpRequestなどのノードを使用。 Flux AIとFal AIを使って動のなアニメ壁紙を生成し、TikTokに投稿する

前提条件
  • ターゲットAPIの認証情報が必要な場合あり
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
  "meta": {
    "instanceId": "90587241b61f532dbe71be441310f86b24bd62a247fd87ce3f4b074464fa220d",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "53e29fe4-13de-4a1b-b443-1979ebb40226",
      "name": "フォーム送信時",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        768,
        -32
      ],
      "webhookId": "219852ef-75c0-484a-9632-40063a333cad",
      "parameters": {
        "options": {},
        "formTitle": "Wallpaper Poster",
        "formFields": {
          "values": [
            {
              "fieldLabel": "Topic",
              "requiredField": true
            },
            {
              "fieldType": "dropdown",
              "fieldLabel": "Style Anime",
              "fieldOptions": {
                "values": [
                  {
                    "option": "Studio Ghibli"
                  },
                  {
                    "option": "Hayao Miyazaki"
                  },
                  {
                    "option": "Makoto Shinkai"
                  },
                  {
                    "option": "Yoshitaka Amano"
                  },
                  {
                    "option": "Akira Toriyama"
                  }
                ]
              }
            }
          ]
        }
      },
      "typeVersion": 2.3
    },
    {
      "id": "41dc894d-ac9a-4b8b-ac60-2016294d050a",
      "name": "URL設定",
      "type": "n8n-nodes-base.set",
      "position": [
        1488,
        -32
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "9d00e8b4-24cb-48bf-ad0d-d33a021453bf",
              "name": "prompt_url",
              "type": "string",
              "value": "=https://image.pollinations.ai/prompt/{{ $('Prompt Generator').item.json.text }}.jpg?width=720&height=1280&model=flux&nologo=true"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "e6f9f829-6a75-4b02-9300-046cd5b4bdf4",
      "name": "画像生成",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1664,
        -32
      ],
      "parameters": {
        "url": "={{ $json.prompt_url }}",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "55e74bb7-0680-4aa2-96e1-05a37715df76",
      "name": "画像アップロード",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1840,
        -32
      ],
      "parameters": {
        "url": "https://getlate.dev/api/v1/media",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "contentType": "multipart-form-data",
        "authentication": "genericCredentialType",
        "bodyParameters": {
          "parameters": [
            {
              "name": "files",
              "parameterType": "formBinaryData",
              "inputDataFieldName": "data"
            }
          ]
        },
        "genericAuthType": "httpBearerAuth"
      },
      "credentials": {
        "httpBearerAuth": {
          "id": "6L6krjDWwxC9hB3i",
          "name": "Late Dev"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "5ad5da87-1d34-4ccd-86c1-b56d5f9053ff",
      "name": "動画作成",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        720,
        336
      ],
      "parameters": {
        "url": "https://queue.fal.run/fal-ai/minimax/hailuo-02-fast/image-to-video",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n     \"prompt\": \"seamless looping video with gentle, ambient motion. Add slow, continuous effects such as drifting particles, subtle light flicker, soft haze, floating dust, rippling water, moving clouds, or faint color shifts. The motion should be cyclical and loopable, with no clear start or end, maintaining a calm and dreamy Lofi vibe suitable for a background visual. Camera movement is static.\",\n     \"image_url\": \"{{ $json.files[0].url }}\",\n     \"prompt_optimizer\": false\n   }",
        "sendBody": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {
        "httpBearerAuth": {
          "id": "Ynx6pfNxK2MWOyHa",
          "name": "Together API"
        },
        "httpHeaderAuth": {
          "id": "Eh1sqIEM3DqrvmoW",
          "name": "Fal AI 1"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "669828e6-a7c9-4cef-8e4e-3350745c4983",
      "name": "待機",
      "type": "n8n-nodes-base.wait",
      "position": [
        880,
        336
      ],
      "webhookId": "965dfc5d-bf13-4b77-b93d-2f0cd6d91fb1",
      "parameters": {
        "amount": 10
      },
      "typeVersion": 1.1
    },
    {
      "id": "18c79d61-05ed-4a1e-abfe-465ace7d42c5",
      "name": "条件分岐",
      "type": "n8n-nodes-base.if",
      "position": [
        1200,
        336
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "f281e5e7-0bbb-4b46-b795-c1365177a813",
              "operator": {
                "name": "filter.operator.equals",
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.status }}",
              "rightValue": "COMPLETED"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "909184ed-dad3-43d9-a8cc-3084a728246d",
      "name": "ステータス取得",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1040,
        336
      ],
      "parameters": {
        "url": "={{ $json.status_url }}",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {
        "httpHeaderAuth": {
          "id": "Eh1sqIEM3DqrvmoW",
          "name": "Fal AI 1"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "cda825da-a458-4130-9247-7bc06dcc87c2",
      "name": "動画取得",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1360,
        336
      ],
      "parameters": {
        "url": "={{ $('Create Video').first().json.response_url }}",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {
        "httpHeaderAuth": {
          "id": "Eh1sqIEM3DqrvmoW",
          "name": "Fal AI 1"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "de43537f-caa1-4dc1-a30d-bc2f74461cdf",
      "name": "タグ生成",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        1568,
        336
      ],
      "parameters": {
        "text": "=Generate exactly 5 related keywords for the topic: {{ $('On form submission').item.json.Topic }}.  \nFormat them in a single line, styled as Twitter hashtags, separated by commas.  \nOutput only in the format shown below, with no extra text or explanation.  \nExample output: #keyword1, #keyword2, #keyword3, #keyword4, #keyword5",
        "batching": {},
        "promptType": "define"
      },
      "typeVersion": 1.7
    },
    {
      "id": "f863f307-5ae8-403f-8782-4164ad278783",
      "name": "プロンプト生成",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        1184,
        -32
      ],
      "parameters": {
        "text": "=Topic:\n{{ $json.Topic }}\n\nAnime style artist: {{ $json['Style Anime'] }}",
        "batching": {},
        "messages": {
          "messageValues": [
            {
              "message": "=Role & Purpose  \nYou are an AI Agent specialized in generating one high-quality text-to-image prompt for anime wallpaper creation. Your role is to craft one visually rich, stylistically accurate, and detailed prompt descriptions that guide image generation models toward stunning anime-style backgrounds, based on any given topics.\n\nCapabilities  \n- Generate a descriptive prompt for anime wallpapers.\n- Specify style details such as lighting, mood, perspective, and color palette, and in the style of defined anime artist.  \n- Include environmental and character elements that enhance anime aesthetics.   \n- Ensure consistency in anime art styles (studio-inspired, cel-shaded, soft painting).  \n- Each prompt must be in one line of paragraph, no extra characters like quotes, dash, or hypens.  \n\nInteraction Style  \n- Be concise but vivid; balance brevity with detailed imagery.  \n- Use structured descriptions (setting → style → mood → details).  \n- Maintain a creative, aesthetic-driven tone.  \n- Always ensure clarity.\n- Never include image aspect ratio or size.\n\nNotes  \n- Avoid generic phrases; focus on unique scene-building details.  \n- Ensure the prompt highlights \"anime style\" explicitly.  \n- Always include atmosphere or mood keywords (e.g., serene, dramatic, dreamy).    \n"
            }
          ]
        },
        "promptType": "define"
      },
      "typeVersion": 1.7
    },
    {
      "id": "f1b46418-2b1d-4c9a-b066-0063030526cb",
      "name": "Tiktok 投稿",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1856,
        336
      ],
      "parameters": {
        "url": "https://getlate.dev/api/v1/posts",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"content\": \"{{ $('Tag Generator').item.json.text }} Epic Anime Wallpaper\",\n  \"publishNow\": true,\n  \"platforms\": [\n    {\n      \"platform\": \"tiktok\",\n      \"accountId\": \"xxxxxxxxxxxxxxxxxxxxx\",\n      \"platformSpecificData\": {\n        \"tiktokSettings\": {\n          \"privacy_level\": \"PUBLIC_TO_EVERYONE\",\n          \"video_made_with_ai\": true,\n          \"allow_comment\": true,\n          \"allow_duet\": false,\n          \"allow_stitch\": false,\n          \"commercial_content_type\": \"none\",\n          \"content_preview_confirmed\": true,\n          \"express_consent_given\": true\n        }\n      }\n    }\n  ],\n  \"mediaItems\": [\n    { \"type\": \"video\", \"url\": \"{{ $('Get Video').first().json.video.url }}\" }\n  ]\n}\n",
        "sendBody": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpBearerAuth"
      },
      "credentials": {
        "httpBearerAuth": {
          "id": "6L6krjDWwxC9hB3i",
          "name": "Late Dev"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "e3e9456a-177e-418a-a88a-42c26f943911",
      "name": "Groqチャットモデル",
      "type": "@n8n/n8n-nodes-langchain.lmChatGroq",
      "position": [
        1184,
        64
      ],
      "parameters": {
        "model": "openai/gpt-oss-120b",
        "options": {}
      },
      "credentials": {
        "groqApi": {
          "id": "g20vlWa5IUn8BaKl",
          "name": "Groq account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "827d2bd5-6880-43bd-9a2c-cd38c74ec278",
      "name": "付箋",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        672,
        240
      ],
      "parameters": {
        "color": 5,
        "width": 832,
        "height": 304,
        "content": "## 2. ANIMATED VIDEO GENERATOR"
      },
      "typeVersion": 1
    },
    {
      "id": "8f617a95-ac58-4051-b29a-a0ce9d8aa502",
      "name": "付箋1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1040,
        -144
      ],
      "parameters": {
        "color": 5,
        "width": 992,
        "height": 336,
        "content": "## 1. IMAGE GENERATOR"
      },
      "typeVersion": 1
    },
    {
      "id": "1f23b989-ccc6-4875-93ee-416f716c4d69",
      "name": "付箋2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1520,
        240
      ],
      "parameters": {
        "color": 5,
        "width": 512,
        "height": 304,
        "content": "## 3. POST TO TIKTOK"
      },
      "typeVersion": 1
    },
    {
      "id": "0fb96474-bf17-42fa-8c3a-4552d4a83d8e",
      "name": "付箋3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        672,
        -144
      ],
      "parameters": {
        "color": 5,
        "width": 336,
        "height": 336,
        "content": "## START HERE"
      },
      "typeVersion": 1
    },
    {
      "id": "eda1ad07-ba9e-434e-87a3-c6d653bd3c7f",
      "name": "付箋4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        128,
        -144
      ],
      "parameters": {
        "width": 512,
        "height": 688,
        "content": "## Animated Anime Wallpaper TikTok Post  \n### This n8n template demonstrates how to generate animated anime wallpapers and automatically post them on TikTok.  \n\nBy default, the workflow creates an anime-themed image based on user input, converts it into an animated video, and then automatically publishes it to TikTok.  \n\n**Possible Customizations:**  \n- Replace the default **Form Trigger** with a **Scheduled Trigger**.  \n- Connect a topics database (e.g., Google Sheets or Airtable) to automatically generate and post animated anime wallpapers on TikTok at regular intervals.  \n\n### How It Works  \n1. The user opens an n8n form and enters the desired anime wallpaper topic and style.  \n2. Based on the input, **OpenAI GPT-OSS (via Groq)** generates a text-to-image prompt.  \n3. The **Flux AI model on Pollination AI** generates an anime wallpaper image from the prompt.  \n4. Using the generated image, the **Minimax Hailuo 02 Fast model on Fal AI** creates an animated video.  \n5. The final video is automatically published to TikTok via the **GetLate API**.  \n\n### Requirements  \n- Groq API Key  \n- Fal AI API Key  \n- GetLate API connected to your TikTok account  \n"
      },
      "typeVersion": 1
    },
    {
      "id": "eb8ce4dc-0e9a-409e-b4fe-d07ece793330",
      "name": "付箋5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2064,
        -144
      ],
      "parameters": {
        "color": 7,
        "width": 576,
        "height": 336,
        "content": "## How to Use  \n\n1. Open the **Groq Chat Model** node, add your **Groq API Key**, and select an LLM model.  \n   - By default, this template uses **OpenAI GPT-OSS 120B**.  \n2. Open the **n8n Form** using either the **Test URL** or the **Production URL**.  \n3. Get your API key from [getlate.dev](https://getlate.dev/) and add the credentials in both the **Upload IMG** node and the **TikTok Post** node.  \n4. Get your API key from [Fal.ai](https://fal.ai/dashboard/keys) and make sure to top up credits.  \n5. Add your **Fal AI credentials** to the following nodes: **Create Video**, **Get Status**, and **Get Video**.  \n6. Once everything is set up, copy your **n8n Form URL** and open it in your browser to start using the workflow.  \n"
      },
      "typeVersion": 1
    },
    {
      "id": "55052995-06fe-4f64-8306-e65a3541d299",
      "name": "付箋6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2064,
        240
      ],
      "parameters": {
        "color": 7,
        "width": 576,
        "height": 304,
        "content": "## Documentation\n1. [Minimax Hailuo API on Fal](https://fal.ai/models/fal-ai/minimax/hailuo-02-fast/image-to-video/api)\n2. [Pollination AI](https://github.com/pollinations/pollinations)\n3. [GetLate.dev](https://getlate.dev/docs)\n4. [Groq API](https://console.groq.com/docs/quickstart)"
      },
      "typeVersion": 1
    }
  ],
  "pinData": {},
  "connections": {
    "18c79d61-05ed-4a1e-abfe-465ace7d42c5": {
      "main": [
        [
          {
            "node": "cda825da-a458-4130-9247-7bc06dcc87c2",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "669828e6-a7c9-4cef-8e4e-3350745c4983",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "669828e6-a7c9-4cef-8e4e-3350745c4983": {
      "main": [
        [
          {
            "node": "909184ed-dad3-43d9-a8cc-3084a728246d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "41dc894d-ac9a-4b8b-ac60-2016294d050a": {
      "main": [
        [
          {
            "node": "e6f9f829-6a75-4b02-9300-046cd5b4bdf4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "cda825da-a458-4130-9247-7bc06dcc87c2": {
      "main": [
        [
          {
            "node": "de43537f-caa1-4dc1-a30d-bc2f74461cdf",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "909184ed-dad3-43d9-a8cc-3084a728246d": {
      "main": [
        [
          {
            "node": "18c79d61-05ed-4a1e-abfe-465ace7d42c5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "55e74bb7-0680-4aa2-96e1-05a37715df76": {
      "main": [
        [
          {
            "node": "5ad5da87-1d34-4ccd-86c1-b56d5f9053ff",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5ad5da87-1d34-4ccd-86c1-b56d5f9053ff": {
      "main": [
        [
          {
            "node": "669828e6-a7c9-4cef-8e4e-3350745c4983",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "de43537f-caa1-4dc1-a30d-bc2f74461cdf": {
      "main": [
        [
          {
            "node": "f1b46418-2b1d-4c9a-b066-0063030526cb",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e6f9f829-6a75-4b02-9300-046cd5b4bdf4": {
      "main": [
        [
          {
            "node": "55e74bb7-0680-4aa2-96e1-05a37715df76",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e3e9456a-177e-418a-a88a-42c26f943911": {
      "ai_languageModel": [
        [
          {
            "node": "f863f307-5ae8-403f-8782-4164ad278783",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "de43537f-caa1-4dc1-a30d-bc2f74461cdf",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "f863f307-5ae8-403f-8782-4164ad278783": {
      "main": [
        [
          {
            "node": "41dc894d-ac9a-4b8b-ac60-2016294d050a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "53e29fe4-13de-4a1b-b443-1979ebb40226": {
      "main": [
        [
          {
            "node": "f863f307-5ae8-403f-8782-4164ad278783",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
よくある質問

このワークフローの使い方は?

上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。

このワークフローはどんな場面に適していますか?

上級 - コンテンツ作成, マルチモーダルAI

有料ですか?

このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。

関連ワークフロー

ワークフロー情報
難易度
上級
ノード数20
カテゴリー2
ノードタイプ8
難易度説明

上級者向け、16ノード以上の複雑なワークフロー

外部リンク
n8n.ioで表示

このワークフローを共有

カテゴリー

カテゴリー: 34