├── README.md └── template.json /README.md: -------------------------------------------------------------------------------- 1 | ### AI Pov videolari olusturmak icin N8N Workflow prompt ve configleri 2 | 3 | Youtube videosuna [buradan](https://www.youtube.com/watch?v=dPZ1V2qU07Y "buradan") gidebilirsiniz. 4 | Template excel linkine [buradan](https://docs.google.com/spreadsheets/d/16Qr5Wg3PBHQz8tAeHVP_XEsU1qKCQ4n-xuRhgMJBtY0/edit?gid=0#gid=0 "buradan") gidebilirsiniz. 5 | Template'i [buradan](https://github.com/kker4m/pov-videos-n8n-workflow/blob/main/template.json "buradan") indirdikten sonra n8n'de import kullanarak kullanabilirsiniz. 6 | 7 | Fikir uretmek icin prompt; 8 | ```yaml 9 | Bana [tarih boyunca ünlü kişiler, örneğin Kleopatra] için [5] fikir ver 10 | 11 | -------- 12 | 13 | Çıktınız: her zaman tablo biçimindedir 14 | 15 | Yapılandırılmış tablo biçiminde viral POV video fikirleri üretmek için tasarlanmış bir yapay zekasınız. Çıktınız her zaman şu yapıyı izlemelidir: 16 | 17 | id idea caption production environment_prompt publishing 18 | 1 POV:[ilgi çekici senaryo] [kısa,viral dostu caption] for production [max 10-word screen descriptor] pending 19 | Yönergeler: 20 | id 1'den başlar ve her satır için 1 artar. 21 | idea "POV:" ile başlamalı ve kullanıcının temasına veya istemine dayalı sürükleyici, ilgi çekici ve potansiyel olarak viral bir deneyimi tanımlamalıdır, caption viralite için optimize edilmiş kısa, dikkat çekici bir metin olmalıdır. production her zaman "for production" olarak ayarlanmıştır. environment_prompt sahnenin, zaman diliminin, sınıf durumunun veya işin özlü, max 20-word açıklamasıdır. Bu her zaman POV'sini gördüğünüz kişinin zengin mi yoksa fakir mi olduğundan bahseder publishing her zaman "pending"dir. Örnek Çıktı: 22 | id idea caption production environment_prompt publishing 23 | 1 POV: 1905'te Pennsylvania'da bir kömür madencisi olarak uyanıyorsunuz POV caption for production 1900's hyper-realistic beklemede 24 | 2 POV: Dünya'daki son kişi olduğunuzu fark ediyorsunuz Dünya boş... şimdi ne olacak? for production Post-apokaliptik, terk edilmiş şehir beklemede 25 | 3 POV: Ortaçağ zindanında uyanıyorsunuz Kaçabilir misiniz? for production Karanlık, ışıklı taş duvarlar, zincirler beklemede 26 | ``` 27 | 28 | 29 | Video sırasıyla ikinci prompt: 30 | ```yaml 31 | Sen, son derece ayrıntılı ve hiper gerçekçi POV (bakış açısı) görüntü istemi fikirleri oluşturma konusunda uzmanlaşmış, gelişmiş bir istem oluşturma AI'sınız. Göreviniz, belirli bir video konusuna dayalı bir "günlük yaşam" deneyimini tasvir eden, ardışık bir anlatıyı izleyen özlü, eylem odaklı, sürükleyici istem fikirleri üretmektir. Çıktılarınız asla çift tırnak işareti içermez Yataktan uyanma kısmını atlayabilirsiniz. Giysi giymekle ilgili eylemleri çıktı olarak vermeyin. Ayak kullanmayla ilgili eylemleri çıktı olarak vermeyin. Ayrıca, insanların genellikle yaptığı yaygın şeyler yerine, belirli senaryo için daha sansasyonel ve benzersiz sahnelere öncelik verirsiniz. Yönergeler: Her çıktı, izleyicinin anı yaşadığını hissetmesini sağlayan birinci şahıs bakış açısını temsil eder. Kavrama, koşma, ulaşma, tutma, doğru yürüme, tökezleme, tırmanma, kaldırma, dönme, adım atma gibi eylem tabanlı fiiller kullanın. Dalmayı güçlendirmek için POV, GoPro tarzı, birinci şahıs bakış açısı, bakış açısı gibi anahtar kelimeler kullanın. Tüm çıktıları 5 ila 10 kelime uzunluğunda tutun. Hiçbir çıktıda asla çift tırnak işareti kullanmayın. Tüm sahneler hiper gerçekçi, yüksek kaliteli ve sinematik olmalı, güçlü görsel ve duygusal etki uyandırmalıdır. Her komut dizisi, sabahtan akşama kadar hayatın tüm gününü kapsayan mantıksal bir sırayı izlemeli ve anlatının sürekliliğini sağlamalıdır. İç gözlemden veya belirsiz açıklamalardan kaçının; tutarlı, sürükleyici bir hikaye oluşturan fiziksel eylemlere ve etkileşimlere odaklanın. Örnekler: Konu: Ortaçağ Avrupası'nda Bir Köylü Günü Ahşap bir kulübe kapısını iterek açmak Bir köy kuyusundan su almak Eski deri ayakkabıları bağlamak için keeling yapmak Hareketli bir pazar meydanında yürümek Bir tüccara gümüş bir sikke uzatmak Bir tepeye bir çuval buğday taşımak Ahşap bir çite çivi çakmak Çıtırdayan bir ateşte güveç karıştırmak Yatağın yanına bir mum koymak Konu: Bir Siberpunk Paralı Askerinin Rutini Titreyen neon tavan ışıklarıyla uyanmak Bir masanın üzerindeki dolaşık kabloları bir kenara itmek Görev güncellemeleri için bir bilek implantını taramak Loş bir sokakta bir plazma tabancasını yüklemek Yağmurda bir uçan bisiklete binmek Bir kasa tarayıcısından bir anahtar kartı geçirmek İHA'lar devriye gezerken siper almak Eldivenli parmaklarla neon ışıklı bir terminali hacklemek Yorgunluktan metal bir karyolaya çökmek Konu: I. Dünya Savaşı'nda Bir Asker Günü Yıpranmış bir miğferden kiri silmek Şafakta lanet bir siperden tırmanmak Paslı bir fırfırı titreyen eller kalın sisin içinden dikenli tellerin arasından yürüyerek ateş altında bir düşman sığınağına doğru koşarken mermiler patlarken kum torbalarının arkasında yeniden yükleme yaparken bir askerin yarasını yırtık bezle sararken ay ışığında bir gökyüzünün altında bir sigara yakmak siperlerde tahta bir kasaya yaslanarak 32 | ``` 33 | 34 | Üçüncü prompt: 35 | ``` 36 | Siz, Flux ve MidJourney gibi görüntü oluşturma modelleri için optimize edilmiş, kısa POV (bakış açısı) görüntü istemi fikirlerini ayrıntılı, hiper gerçekçi istemlere dönüştürmede uzmanlaşmış gelişmiş bir istem oluşturma AI'sınız. Göreviniz, kısa bir girdiyi alıp onu birinci şahıs perspektifine sıkı sıkıya bağlı, izleyicinin sahnede fiziksel olarak mevcutmuş gibi hissetmesini sağlayan zengin, sinematik, sürükleyici bir istem haline getirmektir. 37 | 38 | Bu, üzerinde çalışmanız gereken kısa istem fikridir: {{ $json.response.text }} 39 | Her istem, görüntünün ortamını tanımlamak için bunu kullanmalıdır: {{ $('Google Sheets').first().json.environment_prompt }} 40 | 41 | Her istemin iki bölümü vardır: 42 | 1/ Ön planda, izleyicinin ellerini, uzuvlarını veya ayaklarını gösterin ve tanımlayın. "[İlgili uzuv]'un birinci şahıs bakış açısıyla çekilmiş GoPro çekimi..." ile başlamalıdır. 43 | 2/ Arka planda, manzarayı tanımlayın. "Arka planda [manzarayı tarif edin]" ile başlamalıdır 44 | En Önemli Yönergeler: 45 | Her görüntü birinci şahıs perspektif çekimi olmalıdır - izleyici sadece gözlemlemiyormuş gibi, anı kendisi deneyimliyormuş gibi hissetmelidir. 46 | Görünür bir uzuv (eller veya ayaklar) her zaman mevcut olmalı ve ortamda aktif olarak yer almalıdır - ister kavrayarak, uzanarak, iterek, kaldırarak veya doğal bir şekilde etkileşim kurarak. 47 | Çerçeveleme dinamik ve etkileşimli olmalı, gerçek dünyadaki insan görüşünü taklit ederek bir GoPro veya başa takılan kamera çekimine benzer şekilde hareket, derinlik ve daldırma sağlamalıdır. 48 | Diğer Önemli Yönergeler: 49 | Tüm vücut farkındalığı: İstem, izleyiciye fiziksel bir varlıkları olduğunu, ağırlık kayması, soğukta nefesin buharlaşması veya adrenalinden parmakların titremesi gibi hislerden bahsederek gizlice hatırlatmalıdır. 50 | Duyusal derinlik: İstem, gerçekçiliği artırmak için birden fazla duyuyu (görme, dokunma, sıcaklık, ses, hatta koku) harekete geçirmelidir. 51 | Dünya etkileşimi: Eller veya ayaklar sadece mevcut olmamalı, aynı zamanda sahneyle aktif olarak etkileşimde bulunmalıdır (örneğin, kavrama, ayarlama, öne adım atma, yüzeylere sürtünme). 52 | İstemleri, ekstra biçimlendirme, açıklama veya gereksiz çıktı olmadan tek bir sinematik cümlede 1000 karakterin altında tutun. Örnekler: 53 | Giriş: Neon sokaklarda bir yangın merdivenine tırmanmak 54 | Çıktı: Kaygan, paslı yangın merdivenine tutunmak için çabalayan eldivenli ellerin bakış açısı, aşağıdaki su birikintilerinde dans eden neon ışıklar, titreyen parmaklardan aşağı akan soğuk yağmur, nefesim nemli havayı buğulandırırken uzaklardaki sirenlerin uluması, hemen erişebileceğim mesafede bir çatı kenarı. 55 | 56 | Giriş: Kalabalık bir kafede kahve almak 57 | Çıktı: Buharı tüten bir kupayı kavrayan uzattığım elimin bakış açısı, seramikten yayılan sıcaklık, baristanın dövmeli kolu kupayı bana doğru uzatıyor, sabah telaşının fayans duvarlarda yankılanan gevezeliği, zengin espresso aroması nefesimi doldururken güneş ışığının havada uçuşan tozu yakalaması. 58 | 59 | Giriş: Ortaçağ meyhanesinde uyanmak 60 | Çıktı: Kaba, nasırlı ellerimin ağır gözlerimi ovuşturması, titrek mum ışığının ahşap kirişlerdeki gölgeleri çarpıtması, parmaklarımın bir kupanın terden ıslanmış oluklarını izlemesi, havaya yapışan yoğun bira ve duman kokusu, boğuk kahkahalar ve uzaktan gelen bir lavtanın tıngırdaması duyularımı uyandırıyor. 61 | ``` 62 | 63 | 64 | ## Kodlar, Istekler 65 | Video olusturma da kullanilan istek: 66 | ```yaml 67 | { 68 | "prompt": "{{ $json.prompt }}", 69 | "cfg_scale":0.65, 70 | "image_url": "{{ $json.images.last().url }}", 71 | "duration": "5", 72 | "negative_prompt": "blur, distort, and low quality", 73 | "camera_control": { 74 | "type":"simple", 75 | "config: { 76 | "horizontal":0, 77 | "vertical":0, 78 | "pan":0, 79 | "tilt":0, 80 | "roll":0, 81 | "zoom":0 82 | } 83 | } 84 | } 85 | ``` 86 | 87 | Video editoru icin kodlar: 88 | ``` 89 | { 90 | "output_format": "mp4", 91 | "width": 1000, 92 | "height": 1920, 93 | "elements": [ 94 | { 95 | "id": "80bbfec1-5564-443d-aa69-247eb0e5b808", 96 | "name": "Audio-1", 97 | "type": "audio", 98 | "track": 1, 99 | "time": 0, 100 | "source": "c994e134-998d-4755-9ce0-9f128c5ba3a2", 101 | "trim_duration": 5, 102 | "dynamic": true 103 | }, 104 | { 105 | "id": "42201e23-902d-4b50-9827-1fc90f7ed783", 106 | "name": "Audio-2", 107 | "type": "audio", 108 | "track": 1, 109 | "source": "c994e134-998d-4755-9ce0-9f128c5ba3a2", 110 | "trim_duration": 5, 111 | "dynamic": true 112 | }, 113 | { 114 | "id": "8f23daa9-a07f-461c-a3d2-20dc01dac9bc", 115 | "name": "Audio-3", 116 | "type": "audio", 117 | "track": 1, 118 | "source": "c994e134-998d-4755-9ce0-9f128c5ba3a2", 119 | "trim_duration": 5, 120 | "dynamic": true 121 | }, 122 | { 123 | "id": "a127a34d-8d27-4f30-9848-41de99b044e9", 124 | "name": "Audio-4", 125 | "type": "audio", 126 | "track": 1, 127 | "source": "c994e134-998d-4755-9ce0-9f128c5ba3a2", 128 | "trim_duration": 5, 129 | "dynamic": true 130 | }, 131 | { 132 | "id": "109417eb-bd4d-4342-86f3-8ced16638d87", 133 | "name": "Audio-5", 134 | "type": "audio", 135 | "track": 1, 136 | "source": "c994e134-998d-4755-9ce0-9f128c5ba3a2", 137 | "trim_duration": 5, 138 | "dynamic": true 139 | }, 140 | { 141 | "id": "2cf9a19a-7cf1-4c6b-ba8a-048fe2167b58", 142 | "name": "Video-1", 143 | "type": "video", 144 | "track": 2, 145 | "time": 0, 146 | "duration": 5, 147 | "dynamic": true 148 | }, 149 | { 150 | "id": "7ed9f7b4-4264-46a3-a0d0-4ba30830ed7c", 151 | "name": "Video-2", 152 | "type": "video", 153 | "track": 2, 154 | "duration": 5, 155 | "dynamic": true 156 | }, 157 | { 158 | "id": "c0243484-683e-4b2c-b462-d32994199adc", 159 | "name": "Video-3", 160 | "type": "video", 161 | "track": 2, 162 | "duration": 5, 163 | "dynamic": true 164 | }, 165 | { 166 | "id": "16b471ac-13a1-4530-a64f-80351a5365c5", 167 | "name": "Video-4", 168 | "type": "video", 169 | "track": 2, 170 | "duration": 5, 171 | "dynamic": true 172 | }, 173 | { 174 | "id": "e12a4f1e-2133-49f4-b403-d231f1aca835", 175 | "name": "Video-5", 176 | "type": "video", 177 | "track": 2, 178 | "duration": 5, 179 | "dynamic": true 180 | }, 181 | { 182 | "id": "052c6152-4f35-4765-88ea-814fbfab8051", 183 | "name": "Text-1", 184 | "type": "text", 185 | "track": 3, 186 | "duration": 5, 187 | "x": "2.7527%", 188 | "y": "17.1734%", 189 | "width": "94.4945%", 190 | "height": "7.8041%", 191 | "x_anchor": "0%", 192 | "y_anchor": "0%", 193 | "text": "Ornek bir yazi", 194 | "font_family": "Oswald", 195 | "font_weight": "700", 196 | "font_size": "7 vmin", 197 | "background_color": "#1d1d1d", 198 | "fill_color": "#ffffff", 199 | "dynamic": true 200 | }, 201 | { 202 | "id": "7bb3f818-0ab5-495d-8969-f404583ecd1b", 203 | "name": "Text-2", 204 | "type": "text", 205 | "track": 3, 206 | "duration": 5, 207 | "x": "2.7527%", 208 | "y": "17.1734%", 209 | "width": "94.4945%", 210 | "height": "7.8041%", 211 | "x_anchor": "0%", 212 | "y_anchor": "0%", 213 | "text": "Ornek bir yazi", 214 | "font_family": "Oswald", 215 | "font_weight": "700", 216 | "font_size": "7 vmin", 217 | "background_color": "#1d1d1d", 218 | "fill_color": "#ffffff", 219 | "dynamic": true 220 | }, 221 | { 222 | "id": "57035e7c-9ed3-4bc0-b6bd-2f7ed61672a4", 223 | "name": "Text-3", 224 | "type": "text", 225 | "track": 3, 226 | "duration": 5, 227 | "x": "2.7527%", 228 | "y": "17.1734%", 229 | "width": "94.4945%", 230 | "height": "7.8041%", 231 | "x_anchor": "0%", 232 | "y_anchor": "0%", 233 | "text": "Ornek bir yazi", 234 | "font_family": "Oswald", 235 | "font_weight": "700", 236 | "font_size": "7 vmin", 237 | "background_color": "#1d1d1d", 238 | "fill_color": "#ffffff", 239 | "dynamic": true 240 | }, 241 | { 242 | "id": "8b76acc9-0cbb-47e3-a4ce-9cffd8d3fde4", 243 | "name": "Text-4", 244 | "type": "text", 245 | "track": 3, 246 | "duration": 5, 247 | "x": "2.7527%", 248 | "y": "17.1734%", 249 | "width": "94.4945%", 250 | "height": "7.8041%", 251 | "x_anchor": "0%", 252 | "y_anchor": "0%", 253 | "text": "Ornek bir yazi", 254 | "font_family": "Oswald", 255 | "font_weight": "700", 256 | "font_size": "7 vmin", 257 | "background_color": "#1d1d1d", 258 | "fill_color": "#ffffff", 259 | "dynamic": true 260 | }, 261 | { 262 | "id": "3a6f5044-7b2b-48fc-bbfb-2a1436bdd6c6", 263 | "name": "Text-5", 264 | "type": "text", 265 | "track": 3, 266 | "duration": 5, 267 | "x": "2.7527%", 268 | "y": "17.1734%", 269 | "width": "94.4945%", 270 | "height": "7.8041%", 271 | "x_anchor": "0%", 272 | "y_anchor": "0%", 273 | "text": "Ornek bir yazi", 274 | "font_family": "Oswald", 275 | "font_weight": "700", 276 | "font_size": "7 vmin", 277 | "background_color": "#1d1d1d", 278 | "fill_color": "#ffffff", 279 | "dynamic": true 280 | } 281 | ] 282 | } 283 | ``` 284 | 285 | Video editorune post istegi atarken kullanilacak body: 286 | ``` 287 | { 288 | "template_id":"7d7cdb2a-c604-4c6a-b464-23d6d1ab5d02", 289 | "modifications":{ 290 | "Audio-1.source":"{{ $json.sound_urls[0] }}", 291 | "Audio-2.source":"{{ $json.sound_urls[1] }}", 292 | "Audio-3.source":"{{ $json.sound_urls[2] }}", 293 | "Audio-4.source":"{{ $json.sound_urls[3] }}", 294 | "Audio-5.source":"{{ $json.sound_urls[4] }}", 295 | 296 | "Video-1.source":"{{ $json.video_urls[0] }}", 297 | "Video-2.source":"{{ $json.video_urls[1] }}", 298 | "Video-3.source":"{{ $json.video_urls[2] }}", 299 | "Video-4.source":"{{ $json.video_urls[3] }}", 300 | "Video-5.source":"{{ $json.video_urls[4] }}", 301 | 302 | "Text-1.text":"{{ $json.scene_titles[0] }}", 303 | "Text-2.text":"{{ $json.scene_titles[1] }}", 304 | "Text-3.text":"{{ $json.scene_titles[2] }}", 305 | "Text-4.text":"{{ $json.scene_titles[3] }}", 306 | "Text-5.text":"{{ $json.scene_titles[4] }}" 307 | } 308 | } 309 | ``` 310 | -------------------------------------------------------------------------------- /template.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "My workflow", 3 | "nodes": [ 4 | { 5 | "parameters": { 6 | "rule": { 7 | "interval": [ 8 | {} 9 | ] 10 | } 11 | }, 12 | "type": "n8n-nodes-base.scheduleTrigger", 13 | "typeVersion": 1.2, 14 | "position": [ 15 | 0, 16 | 0 17 | ], 18 | "id": "51302f1e-5ecc-46ac-8653-5408fb290365", 19 | "name": "Schedule Trigger" 20 | }, 21 | { 22 | "parameters": { 23 | "documentId": { 24 | "__rl": true, 25 | "value": "1lKC__gEvHbARQ2FfJgvrV-Yn_AbzfAMBQ0hfTi5gF0o", 26 | "mode": "list", 27 | "cachedResultName": "POV Video Sheet", 28 | "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1lKC__gEvHbARQ2FfJgvrV-Yn_AbzfAMBQ0hfTi5gF0o/edit?usp=drivesdk" 29 | }, 30 | "sheetName": { 31 | "__rl": true, 32 | "value": "gid=0", 33 | "mode": "list", 34 | "cachedResultName": "Sheet1", 35 | "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1lKC__gEvHbARQ2FfJgvrV-Yn_AbzfAMBQ0hfTi5gF0o/edit#gid=0" 36 | }, 37 | "filtersUI": { 38 | "values": [ 39 | { 40 | "lookupColumn": "production", 41 | "lookupValue": "for production" 42 | } 43 | ] 44 | }, 45 | "options": { 46 | "returnFirstMatch": true 47 | } 48 | }, 49 | "type": "n8n-nodes-base.googleSheets", 50 | "typeVersion": 4.5, 51 | "position": [ 52 | 220, 53 | 0 54 | ], 55 | "id": "3ae5d0e1-b87e-465d-8ec1-2d8060d493b3", 56 | "name": "Google Sheets" 57 | }, 58 | { 59 | "parameters": { 60 | "promptType": "define", 61 | "text": "={{ $json.idea }}", 62 | "hasOutputParser": true, 63 | "messages": { 64 | "messageValues": [ 65 | { 66 | "message": "You are an advanced prompt-generation AI specializing in crafting highly detailed and hyper-realistic POV (point of view) image prompt ideas. Your task is to generate concise, action-driven, immersive prompt ideas that follow a sequential narrative, depicting a \"day in the life\" experience based on a given video topic. Your outputs never include double-quotes You can skip the part on waking up from bed. Don't output actions related to wearing clothing. Don't output actions related to using feet. You also prioritize more sensational and unique scenes for that given scenario, instead of common things people do generally Guidelines: Every output represents a first-person perspective, making the viewer feel like they are experiencing the moment. Use action-based verbs like gripping, running, reaching, holding, walking toward, stumbling, climbing, lifting, turning, stepping into. Use keywords such as POV, GoPro-style, first-person view, point of view to reinforce immersion. Keep all outputs between 5 to 10 words long. Never use double quotes in any output. All scenes must be hyper-realistic, high quality, and cinematic, evoking strong visual and emotional impact. Each set of prompts must follow a logical sequence, covering a full day in the life from morning to night, ensuring narrative continuity. Avoid introspection or vague descriptions-focus on physical actions and interactions that build a cohesive, immersive story. Examples: Topic: A Peasant's Day in Medieval Europe Pushing open a wooden cottage door Scooping water from a village well Keeling to tie worn leather shoes Walking through a bustling market square Handing a silver coint o a merchant Carrying a sack of wheat up a hill Hammering nails into a wooden fence Stirring stew over a crackling fire Placing a candle by the bedside Topic: A Cyberpunk Mercenary's Routine Waking up to flickering neon ceiling lights Pushing aside tangled wires on a desk Scanning a wrist implant for mission updates Loading a plasma pistol in a dim alley Stepping onto a hover bike in the rain Swiping a keycard through a vault scanner Ducking behind cover as drones patrol ahead Hacking a neon-lit terminal with gloved fingers Collapsiong onto a metal cot in exhaustion Topic: A Soldier's Day in World War I Wiping dirt from a battered helmet Climbing out of a damnp trench at dawn Holding a rusted rufle with trembling hands Walking through thick fog past barbed wire Rushing toward an enemy bunker under fire Reloading behind sandbags as shells explode Bandaging a soldier's wound with torn cloth Lighting a cigarette under a moonlit sky Resting against a wooden crate in the trenches " 67 | } 68 | ] 69 | } 70 | }, 71 | "type": "@n8n/n8n-nodes-langchain.chainLlm", 72 | "typeVersion": 1.5, 73 | "position": [ 74 | 400, 75 | 0 76 | ], 77 | "id": "feccc0d7-8619-4ac1-bdce-957c2669fb23", 78 | "name": "Generate Titles" 79 | }, 80 | { 81 | "parameters": { 82 | "model": { 83 | "__rl": true, 84 | "value": "gpt-4o-mini", 85 | "mode": "list", 86 | "cachedResultName": "gpt-4o-mini" 87 | }, 88 | "options": {} 89 | }, 90 | "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi", 91 | "typeVersion": 1.2, 92 | "position": [ 93 | 400, 94 | 180 95 | ], 96 | "id": "f3396107-56d5-441e-adb4-c08195fbc6c7", 97 | "name": "OpenAI Chat Model" 98 | }, 99 | { 100 | "parameters": { 101 | "options": { 102 | "numberOfItems": 5 103 | } 104 | }, 105 | "type": "@n8n/n8n-nodes-langchain.outputParserItemList", 106 | "typeVersion": 1, 107 | "position": [ 108 | 560, 109 | 180 110 | ], 111 | "id": "ab52f907-a163-469e-9aeb-9edd70c843f3", 112 | "name": "Item List Output Parser" 113 | }, 114 | { 115 | "parameters": { 116 | "content": "## Video Fikrinin belirlenmesi\n", 117 | "height": 560, 118 | "width": 880, 119 | "color": 6 120 | }, 121 | "type": "n8n-nodes-base.stickyNote", 122 | "typeVersion": 1, 123 | "position": [ 124 | -60, 125 | -180 126 | ], 127 | "id": "94ef5acb-5f70-4850-8c56-9376a37d9e09", 128 | "name": "Sticky Note" 129 | }, 130 | { 131 | "parameters": { 132 | "modelId": { 133 | "__rl": true, 134 | "value": "o1-mini", 135 | "mode": "list", 136 | "cachedResultName": "O1-MINI" 137 | }, 138 | "messages": { 139 | "values": [ 140 | { 141 | "content": "=You are an advanced prompt-generation AI specializing in expanding short POV (point-of-view) image prompt ideas into detailed, hyper-realistic prompts optimized for image-generation models like Flux and MidJourney. Your task is to take a brief input and transform it into a rich, cinematic, immersive prompt that strictly adheres to a first-person perspective, making the viewer feel as if they are physically present in the scene.\n\nThis is the short prompt idea you need to expand upon: {{ $json.response.text }}\nEvery prompt must use this to describe the environment of the image: {{ $('Google Sheets').first().json.environment_prompt }}\n\nEvery prompt has two sections:\n1/ In the foreground, show and describe the hands, limbs, or feet of the viewer. must start with \"First person view POV GoPro shot of [relevant limb]...\"\n2/ In the background, describe the scenery. must start with \"In the background, [describe scenery]\"\nMost Important Guidelines:\nEvery image must be a first-person perspective shot-the viewer must feel like they are experiencing the moment themselves, not just observing it.\nA visible limb (hands or feet) must always be present and actively engaged in the environment-whether gripping, reaching, pushing, lifting, or interacting in a natural way.\nThe framing must be dynamic and interactive, mimicking real-world human vision ensuring motion, depth, and immersion similar to a GoPro or head-mounted camera shot.\n\n\nOther Key Guidelines:\nFull-body awareness: The prompt should subtly remind the viewer that they have a physical presence-mentioning sensations like weight shifting, breath fogging in the cold, or fingers trembling from adrenaline.\nSensory depth: The prompt should engage multiple senses (sight, touch, temperature, sound, even smell) to heighten realism.\nWorld interaction: The hands or feet should not just be present but actively interacting with the scene (e-g-, clutching, adjusting, stepping forward, brushing against surfaces).\nKeep prompts under 1000 characters in a single, cinematic sentence with no extra formatting, explanations, or unnecessary output.\nExamples:\nInput: Climbing a fire escape over neon streets\nOutput: POV of gloved hands straining to pull up against the slick, rusted fire escape ladder, neon lights dancing in the puddles below, cold rain sliding down trembling fingers, distant sirens wailing as my breath fogs the damp air, a rooftop edge just within reach.\n\nInput: Reaching for a coffee in a bustling café\nOutput: POV of my outstretched hand wrapping around a steaming mug, heat radiating through the ceramic, the barista's tattooed arm extending the cup towards me, the chatter of morning rush echoing off tiled walls, sunlight catching floating dust as the rich aroma of espresso fills my breath.\n\nInput: Waking up in a medieval tavern\nOutput: POV of my rough, calloused hands rubbing heavy eyes, the flickering candlelight warping shadows on wooden beams, my fingers tracing the sweat-soaked grooves of a tankard, the thick scent of ale and smoke clinging to the air, muffled laughter and the distant pluck of a lute stirring my senses awake." 142 | } 143 | ] 144 | }, 145 | "options": {} 146 | }, 147 | "type": "@n8n/n8n-nodes-langchain.openAi", 148 | "typeVersion": 1.8, 149 | "position": [ 150 | 940, 151 | -420 152 | ], 153 | "id": "d0c08628-1caa-491d-917c-2cd19bef8486", 154 | "name": "OpenAI" 155 | }, 156 | { 157 | "parameters": { 158 | "content": "## Prompt Olusturma\n", 159 | "height": 340, 160 | "width": 480 161 | }, 162 | "type": "n8n-nodes-base.stickyNote", 163 | "typeVersion": 1, 164 | "position": [ 165 | 880, 166 | -500 167 | ], 168 | "id": "3c462600-0912-4b2e-8051-5bb4b94e9d94", 169 | "name": "Sticky Note1" 170 | }, 171 | { 172 | "parameters": { 173 | "url": "=https://queue.fal.run/fal-ai/flux/requests/{{ $json.request_id }}", 174 | "authentication": "genericCredentialType", 175 | "genericAuthType": "httpHeaderAuth", 176 | "options": {} 177 | }, 178 | "id": "94cd5a76-38a9-4b76-9fdd-72688e61bac5", 179 | "name": "Get Image Result URL", 180 | "type": "n8n-nodes-base.httpRequest", 181 | "position": [ 182 | 1380, 183 | 0 184 | ], 185 | "typeVersion": 4.2 186 | }, 187 | { 188 | "parameters": { 189 | "url": "=https://queue.fal.run/fal-ai/flux/requests/{{ $json.request_id }}/status", 190 | "authentication": "genericCredentialType", 191 | "genericAuthType": "httpHeaderAuth", 192 | "options": {} 193 | }, 194 | "id": "61b9a89f-3fae-4a15-9720-84d20e55c930", 195 | "name": "Check Status", 196 | "type": "n8n-nodes-base.httpRequest", 197 | "position": [ 198 | 1140, 199 | 0 200 | ], 201 | "typeVersion": 4.2 202 | }, 203 | { 204 | "parameters": { 205 | "conditions": { 206 | "options": { 207 | "version": 2, 208 | "leftValue": "", 209 | "caseSensitive": true, 210 | "typeValidation": "strict" 211 | }, 212 | "combinator": "and", 213 | "conditions": [ 214 | { 215 | "id": "299a7c34-dcff-4991-a73f-5b1a84f188ea", 216 | "operator": { 217 | "name": "filter.operator.equals", 218 | "type": "string", 219 | "operation": "equals" 220 | }, 221 | "leftValue": "={{ $json.status }}", 222 | "rightValue": "COMPLETED" 223 | } 224 | ] 225 | }, 226 | "options": {} 227 | }, 228 | "id": "20a49d5d-4604-498b-8ae5-f1e5fec85b17", 229 | "name": "Completed?", 230 | "type": "n8n-nodes-base.if", 231 | "position": [ 232 | 1260, 233 | 0 234 | ], 235 | "typeVersion": 2.2 236 | }, 237 | { 238 | "parameters": { 239 | "method": "POST", 240 | "url": "https://queue.fal.run/fal-ai/flux/dev", 241 | "authentication": "genericCredentialType", 242 | "genericAuthType": "httpHeaderAuth", 243 | "sendBody": true, 244 | "specifyBody": "json", 245 | "jsonBody": "={\n \"prompt\": \"{{ $json.message.content }}\",\n \"image_size\": {\n \"width\": 540,\n \"height\": 960\n},\n \"num_images\": 1,\n \"enable_safety_checker\": true\n}", 246 | "options": {} 247 | }, 248 | "id": "a222fb7b-5521-4138-92c8-27a79d6eba10", 249 | "name": "Fal Flux", 250 | "type": "n8n-nodes-base.httpRequest", 251 | "position": [ 252 | 900, 253 | 0 254 | ], 255 | "typeVersion": 4.2 256 | }, 257 | { 258 | "parameters": { 259 | "unit": "minutes" 260 | }, 261 | "id": "6c2e0d64-12c7-4f7b-a018-36341aed05d7", 262 | "name": "Wait 1 Sec", 263 | "type": "n8n-nodes-base.wait", 264 | "position": [ 265 | 1020, 266 | 0 267 | ], 268 | "webhookId": "61a8626c-e281-4d4b-abb0-b9d87d1b4e7c", 269 | "typeVersion": 1.1 270 | }, 271 | { 272 | "parameters": { 273 | "content": "## Resim Olusturma\n", 274 | "height": 320, 275 | "width": 700, 276 | "color": 4 277 | }, 278 | "type": "n8n-nodes-base.stickyNote", 279 | "typeVersion": 1, 280 | "position": [ 281 | 860, 282 | -100 283 | ], 284 | "id": "ff7941b7-7cec-4cd1-af91-65abb10bd4e3", 285 | "name": "Sticky Note2" 286 | }, 287 | { 288 | "parameters": { 289 | "method": "POST", 290 | "url": "https://queue.fal.run/fal-ai/kling-video/v1/standard/image-to-video", 291 | "authentication": "genericCredentialType", 292 | "genericAuthType": "httpHeaderAuth", 293 | "sendBody": true, 294 | "specifyBody": "json", 295 | "jsonBody": "={\n \"prompt\": \"{{ $json.prompt }}\",\n \"cfg_scale\": 0.65,\n \"image_url\": \"{{ $json.images.last().url }}\",\n \"duration\": 5,\n \"negative_prompt\": \"blur, distort, and low quality\",\n \"camera_control\": {\n \"type\": \"simple\",\n \"config\": {\n \"horizontal\": 0,\n \"vertical\": 0,\n \"pan\": 0,\n \"tilt\": 0,\n \"roll\": 0,\n \"zoom\": 0\n }\n }\n}\n", 296 | "options": {} 297 | }, 298 | "id": "dd806efd-9042-4fea-92b6-63a7ee8b2898", 299 | "name": "Fal Kling", 300 | "type": "n8n-nodes-base.httpRequest", 301 | "position": [ 302 | 940, 303 | 340 304 | ], 305 | "typeVersion": 4.2 306 | }, 307 | { 308 | "parameters": { 309 | "content": "## Video Olusturma\n", 310 | "height": 360, 311 | "width": 800, 312 | "color": 4 313 | }, 314 | "type": "n8n-nodes-base.stickyNote", 315 | "typeVersion": 1, 316 | "position": [ 317 | 840, 318 | 260 319 | ], 320 | "id": "2d4d7c64-1f1b-46f4-8cb1-3f10b0355f8e", 321 | "name": "Sticky Note3" 322 | }, 323 | { 324 | "parameters": { 325 | "url": "=https://queue.fal.run/fal-ai/kling-video/requests/{{ $json.request_id }}", 326 | "authentication": "genericCredentialType", 327 | "genericAuthType": "httpHeaderAuth", 328 | "options": {} 329 | }, 330 | "id": "a033cf81-3d13-4e5f-b1a9-34479d1108d5", 331 | "name": "Video Result", 332 | "type": "n8n-nodes-base.httpRequest", 333 | "position": [ 334 | 1420, 335 | 340 336 | ], 337 | "typeVersion": 4.2 338 | }, 339 | { 340 | "parameters": { 341 | "conditions": { 342 | "options": { 343 | "version": 2, 344 | "leftValue": "", 345 | "caseSensitive": true, 346 | "typeValidation": "strict" 347 | }, 348 | "conditions": [ 349 | { 350 | "id": "299a7c34-dcff-4991-a73f-5b1a84f188ea", 351 | "operator": { 352 | "name": "filter.operator.equals", 353 | "type": "string", 354 | "operation": "equals" 355 | }, 356 | "leftValue": "={{ $json.status }}", 357 | "rightValue": "COMPLETED" 358 | } 359 | ], 360 | "combinator": "and" 361 | }, 362 | "options": {} 363 | }, 364 | "id": "85d0cf70-f4cf-489b-a93e-88d45377b86c", 365 | "name": "Completed ?", 366 | "type": "n8n-nodes-base.if", 367 | "position": [ 368 | 1300, 369 | 340 370 | ], 371 | "typeVersion": 2.2 372 | }, 373 | { 374 | "parameters": { 375 | "url": "=https://queue.fal.run/fal-ai/flux/requests/{{ $json.request_id }}/status", 376 | "authentication": "genericCredentialType", 377 | "genericAuthType": "httpHeaderAuth", 378 | "options": {} 379 | }, 380 | "id": "8c224316-6dc2-42e1-9ef1-2e7066c44f68", 381 | "name": "Check Status", 382 | "type": "n8n-nodes-base.httpRequest", 383 | "position": [ 384 | 1180, 385 | 340 386 | ], 387 | "typeVersion": 4.2 388 | }, 389 | { 390 | "parameters": { 391 | "amount": 10, 392 | "unit": "minutes" 393 | }, 394 | "id": "746818d6-dc7f-4e91-b2af-91870b328c36", 395 | "name": "Wait 5 Sec", 396 | "type": "n8n-nodes-base.wait", 397 | "position": [ 398 | 1060, 399 | 340 400 | ], 401 | "webhookId": "61a8626c-e281-4d4b-abb0-b9d87d1b4e7c", 402 | "typeVersion": 1.1 403 | }, 404 | { 405 | "parameters": { 406 | "content": "## Sesleri Olusturma\n", 407 | "height": 360, 408 | "width": 800, 409 | "color": 4 410 | }, 411 | "type": "n8n-nodes-base.stickyNote", 412 | "typeVersion": 1, 413 | "position": [ 414 | 840, 415 | 660 416 | ], 417 | "id": "5e242ef9-352c-4234-8626-49316cee4c78", 418 | "name": "Sticky Note4" 419 | }, 420 | { 421 | "parameters": { 422 | "method": "POST", 423 | "url": "https://api.elevenlabs.io/v1/sound-generation", 424 | "sendHeaders": true, 425 | "headerParameters": { 426 | "parameters": [ 427 | { 428 | "name": "xi-api-key", 429 | "value": "sk_7c691c24a31c2f67f918637ddcd89307862a68ec3f4e88cd" 430 | } 431 | ] 432 | }, 433 | "sendBody": true, 434 | "contentType": "raw", 435 | "rawContentType": "application/json", 436 | "body": "={\n \"text\": \"no voice {{ $('Google Sheets').first().json.idea.substring(0,60) }}, {{ $('OpenAI').item.json.message.content.substring(0,379) }}\",\n \"duration_seconds\": 5,\n \"prompt_influence\": 0.6\n}", 437 | "options": {} 438 | }, 439 | "type": "n8n-nodes-base.httpRequest", 440 | "typeVersion": 4.2, 441 | "position": [ 442 | 860, 443 | 760 444 | ], 445 | "id": "17750505-544f-4e83-94bf-9611b8b690b7", 446 | "name": "Text-to-sound" 447 | }, 448 | { 449 | "parameters": { 450 | "name": "={{ $('Completed ?').item.json.request_id }}.mp3", 451 | "driveId": { 452 | "__rl": true, 453 | "mode": "list", 454 | "value": "My Drive" 455 | }, 456 | "folderId": { 457 | "__rl": true, 458 | "value": "1KH1y9ApClyDhyA21PI5XAdVybIyDKW_N", 459 | "mode": "list", 460 | "cachedResultName": "n8n", 461 | "cachedResultUrl": "https://drive.google.com/drive/folders/1KH1y9ApClyDhyA21PI5XAdVybIyDKW_N" 462 | }, 463 | "options": {} 464 | }, 465 | "type": "n8n-nodes-base.googleDrive", 466 | "typeVersion": 3, 467 | "position": [ 468 | 1080, 469 | 760 470 | ], 471 | "id": "7175d99a-336e-449f-8783-c2098238de07", 472 | "name": "Upload MP3" 473 | }, 474 | { 475 | "parameters": { 476 | "operation": "share", 477 | "fileId": { 478 | "__rl": true, 479 | "value": "={{ $json.id }}", 480 | "mode": "id" 481 | }, 482 | "permissionsUi": { 483 | "permissionsValues": { 484 | "role": "writer", 485 | "type": "anyone", 486 | "allowFileDiscovery": true 487 | } 488 | }, 489 | "options": {} 490 | }, 491 | "type": "n8n-nodes-base.googleDrive", 492 | "typeVersion": 3, 493 | "position": [ 494 | 1300, 495 | 760 496 | ], 497 | "id": "20f5b0ba-707a-4d4d-bcae-584d753f1349", 498 | "name": "Update Access" 499 | }, 500 | { 501 | "parameters": { 502 | "content": "## FINAL VIDEO\n", 503 | "height": 280, 504 | "width": 1400, 505 | "color": 3 506 | }, 507 | "type": "n8n-nodes-base.stickyNote", 508 | "typeVersion": 1, 509 | "position": [ 510 | 1800, 511 | 100 512 | ], 513 | "id": "79a27c42-ed40-447c-a5b6-8394f9d209fb", 514 | "name": "Sticky Note5" 515 | }, 516 | { 517 | "parameters": { 518 | "mode": "combine", 519 | "combineBy": "combineByPosition", 520 | "numberInputs": 4, 521 | "options": {} 522 | }, 523 | "type": "n8n-nodes-base.merge", 524 | "typeVersion": 3, 525 | "position": [ 526 | 1840, 527 | 160 528 | ], 529 | "id": "dd652cae-b2dc-4781-bfde-4b8c6dfa97bf", 530 | "name": "Merge" 531 | }, 532 | { 533 | "parameters": { 534 | "jsCode": "return [\n\t{\n\t\tscene_titles: items.map(item => item.json.response.text),\n\t\tvideo_urls: items.map(item=> item.json.video.url),\n\t\tsound_urls: items.map(item=> item.json.webContentLink)\n\t}\n];" 535 | }, 536 | "type": "n8n-nodes-base.code", 537 | "typeVersion": 2, 538 | "position": [ 539 | 2060, 540 | 160 541 | ], 542 | "id": "1e701b8f-b453-4ee9-8942-53676e12a4c4", 543 | "name": "List Elements" 544 | }, 545 | { 546 | "parameters": { 547 | "method": "POST", 548 | "url": "https://api.creatomate.com/v1/renders", 549 | "sendHeaders": true, 550 | "headerParameters": { 551 | "parameters": [ 552 | { 553 | "name": "Authorization", 554 | "value": "Bearer 3cca0e1fa741488f95aa30f1097c681d2298ba6c03b4c468a17dbba5fa556039646dc38ad55c8b5d93c07449cefbd60a" 555 | }, 556 | { 557 | "name": "Content-Type", 558 | "value": "application/json" 559 | } 560 | ] 561 | }, 562 | "sendBody": true, 563 | "contentType": "raw", 564 | "rawContentType": "application/json", 565 | "body": "={\n \"template_id\":\"c915e7f2-124d-4696-b605-0bfe0ff1c1eb\",\n \"modifications\":{\n \"Audio-1.source\":\"{{ $json.sound_urls[0] }}\",\n \"Audio-2.source\":\"{{ $json.sound_urls[1] }}\",\n \"Audio-3.source\":\"{{ $json.sound_urls[2] }}\",\n \"Audio-4.source\":\"{{ $json.sound_urls[3] }}\",\n \"Audio-5.source\":\"{{ $json.sound_urls[4] }}\",\n\n \"Video-1.source\":\"{{ $json.video_urls[0] }}\",\n \"Video-2.source\":\"{{ $json.video_urls[1] }}\",\n \"Video-3.source\":\"{{ $json.video_urls[2] }}\",\n \"Video-4.source\":\"{{ $json.video_urls[3] }}\",\n \"Video-5.source\":\"{{ $json.video_urls[4] }}\",\n\n \"Text-1.text\":\"{{ $json.video_urls[0] }}\",\n \"Text-2.text\":\"{{ $json.video_urls[1] }}\",\n \"Text-3.text\":\"{{ $json.video_urls[2] }}\",\n \"Text-4.text\":\"{{ $json.video_urls[3] }}\",\n \"Text-5.text\":\"{{ $json.video_urls[4] }}\"\n }\n}", 566 | "options": {} 567 | }, 568 | "type": "n8n-nodes-base.httpRequest", 569 | "typeVersion": 4.2, 570 | "position": [ 571 | 2280, 572 | 160 573 | ], 574 | "id": "6eac864c-5c37-4b98-82a3-8fbc93134dcb", 575 | "name": "Render Video", 576 | "executeOnce": true 577 | }, 578 | { 579 | "parameters": { 580 | "operation": "update", 581 | "documentId": { 582 | "__rl": true, 583 | "value": "1lKC__gEvHbARQ2FfJgvrV-Yn_AbzfAMBQ0hfTi5gF0o", 584 | "mode": "list", 585 | "cachedResultName": "POV Video Sheet", 586 | "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1lKC__gEvHbARQ2FfJgvrV-Yn_AbzfAMBQ0hfTi5gF0o/edit?usp=drivesdk" 587 | }, 588 | "sheetName": { 589 | "__rl": true, 590 | "value": "gid=0", 591 | "mode": "list", 592 | "cachedResultName": "Sheet1", 593 | "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1lKC__gEvHbARQ2FfJgvrV-Yn_AbzfAMBQ0hfTi5gF0o/edit#gid=0" 594 | }, 595 | "columns": { 596 | "mappingMode": "defineBelow", 597 | "value": { 598 | "id": "={{ $('Google Sheets').first().json.id }}", 599 | "production": "done", 600 | "publishing": "for publishing", 601 | "final_output": "={{ $json.url }}" 602 | }, 603 | "matchingColumns": [ 604 | "id" 605 | ], 606 | "schema": [ 607 | { 608 | "id": "id", 609 | "displayName": "id", 610 | "required": false, 611 | "defaultMatch": true, 612 | "display": true, 613 | "type": "string", 614 | "canBeUsedToMatch": true, 615 | "removed": false 616 | }, 617 | { 618 | "id": "idea", 619 | "displayName": "idea", 620 | "required": false, 621 | "defaultMatch": false, 622 | "display": true, 623 | "type": "string", 624 | "canBeUsedToMatch": true 625 | }, 626 | { 627 | "id": "caption", 628 | "displayName": "caption", 629 | "required": false, 630 | "defaultMatch": false, 631 | "display": true, 632 | "type": "string", 633 | "canBeUsedToMatch": true 634 | }, 635 | { 636 | "id": "production", 637 | "displayName": "production", 638 | "required": false, 639 | "defaultMatch": false, 640 | "display": true, 641 | "type": "string", 642 | "canBeUsedToMatch": true 643 | }, 644 | { 645 | "id": "environment_prompt", 646 | "displayName": "environment_prompt", 647 | "required": false, 648 | "defaultMatch": false, 649 | "display": true, 650 | "type": "string", 651 | "canBeUsedToMatch": true 652 | }, 653 | { 654 | "id": "publishing", 655 | "displayName": "publishing", 656 | "required": false, 657 | "defaultMatch": false, 658 | "display": true, 659 | "type": "string", 660 | "canBeUsedToMatch": true 661 | }, 662 | { 663 | "id": "final_output", 664 | "displayName": "final_output", 665 | "required": false, 666 | "defaultMatch": false, 667 | "display": true, 668 | "type": "string", 669 | "canBeUsedToMatch": true 670 | }, 671 | { 672 | "id": "row_number", 673 | "displayName": "row_number", 674 | "required": false, 675 | "defaultMatch": false, 676 | "display": true, 677 | "type": "string", 678 | "canBeUsedToMatch": true, 679 | "readOnly": true, 680 | "removed": true 681 | } 682 | ], 683 | "attemptToConvertTypes": false, 684 | "convertFieldsToString": false 685 | }, 686 | "options": {} 687 | }, 688 | "type": "n8n-nodes-base.googleSheets", 689 | "typeVersion": 4.5, 690 | "position": [ 691 | 2500, 692 | 160 693 | ], 694 | "id": "ee45e122-6039-47c8-b6d9-e10acdd48fe7", 695 | "name": "Final Row Update" 696 | } 697 | ], 698 | "pinData": {}, 699 | "connections": { 700 | "Schedule Trigger": { 701 | "main": [ 702 | [ 703 | { 704 | "node": "Google Sheets", 705 | "type": "main", 706 | "index": 0 707 | } 708 | ] 709 | ] 710 | }, 711 | "Google Sheets": { 712 | "main": [ 713 | [ 714 | { 715 | "node": "Generate Titles", 716 | "type": "main", 717 | "index": 0 718 | } 719 | ] 720 | ] 721 | }, 722 | "OpenAI Chat Model": { 723 | "ai_languageModel": [ 724 | [ 725 | { 726 | "node": "Generate Titles", 727 | "type": "ai_languageModel", 728 | "index": 0 729 | } 730 | ] 731 | ] 732 | }, 733 | "Item List Output Parser": { 734 | "ai_outputParser": [ 735 | [ 736 | { 737 | "node": "Generate Titles", 738 | "type": "ai_outputParser", 739 | "index": 0 740 | } 741 | ] 742 | ] 743 | }, 744 | "Generate Titles": { 745 | "main": [ 746 | [ 747 | { 748 | "node": "OpenAI", 749 | "type": "main", 750 | "index": 0 751 | }, 752 | { 753 | "node": "Merge", 754 | "type": "main", 755 | "index": 0 756 | } 757 | ] 758 | ] 759 | }, 760 | "Get Image Result URL": { 761 | "main": [ 762 | [ 763 | { 764 | "node": "Fal Kling", 765 | "type": "main", 766 | "index": 0 767 | } 768 | ] 769 | ] 770 | }, 771 | "Check Status": { 772 | "main": [ 773 | [ 774 | { 775 | "node": "Completed?", 776 | "type": "main", 777 | "index": 0 778 | } 779 | ] 780 | ] 781 | }, 782 | "Completed?": { 783 | "main": [ 784 | [ 785 | { 786 | "node": "Get Image Result URL", 787 | "type": "main", 788 | "index": 0 789 | } 790 | ], 791 | [ 792 | { 793 | "node": "Wait 1 Sec", 794 | "type": "main", 795 | "index": 0 796 | } 797 | ] 798 | ] 799 | }, 800 | "Fal Flux": { 801 | "main": [ 802 | [ 803 | { 804 | "node": "Wait 1 Sec", 805 | "type": "main", 806 | "index": 0 807 | } 808 | ] 809 | ] 810 | }, 811 | "OpenAI": { 812 | "main": [ 813 | [ 814 | { 815 | "node": "Fal Flux", 816 | "type": "main", 817 | "index": 0 818 | } 819 | ] 820 | ] 821 | }, 822 | "Wait 1 Sec": { 823 | "main": [ 824 | [ 825 | { 826 | "node": "Check Status", 827 | "type": "main", 828 | "index": 0 829 | } 830 | ] 831 | ] 832 | }, 833 | "Fal Kling": { 834 | "main": [ 835 | [ 836 | { 837 | "node": "Wait 5 Sec", 838 | "type": "main", 839 | "index": 0 840 | } 841 | ] 842 | ] 843 | }, 844 | "Completed ?": { 845 | "main": [ 846 | [ 847 | { 848 | "node": "Video Result", 849 | "type": "main", 850 | "index": 0 851 | } 852 | ], 853 | [ 854 | { 855 | "node": "Wait 5 Sec", 856 | "type": "main", 857 | "index": 0 858 | } 859 | ] 860 | ] 861 | }, 862 | "Check Status": { 863 | "main": [ 864 | [ 865 | { 866 | "node": "Completed ?", 867 | "type": "main", 868 | "index": 0 869 | } 870 | ] 871 | ] 872 | }, 873 | "Wait 5 Sec": { 874 | "main": [ 875 | [ 876 | { 877 | "node": "Check Status", 878 | "type": "main", 879 | "index": 0 880 | } 881 | ] 882 | ] 883 | }, 884 | "Video Result": { 885 | "main": [ 886 | [ 887 | { 888 | "node": "Text-to-sound", 889 | "type": "main", 890 | "index": 0 891 | }, 892 | { 893 | "node": "Merge", 894 | "type": "main", 895 | "index": 1 896 | } 897 | ] 898 | ] 899 | }, 900 | "Text-to-sound": { 901 | "main": [ 902 | [ 903 | { 904 | "node": "Upload MP3", 905 | "type": "main", 906 | "index": 0 907 | } 908 | ] 909 | ] 910 | }, 911 | "Upload MP3": { 912 | "main": [ 913 | [ 914 | { 915 | "node": "Update Access", 916 | "type": "main", 917 | "index": 0 918 | }, 919 | { 920 | "node": "Merge", 921 | "type": "main", 922 | "index": 2 923 | } 924 | ] 925 | ] 926 | }, 927 | "Update Access": { 928 | "main": [ 929 | [ 930 | { 931 | "node": "Merge", 932 | "type": "main", 933 | "index": 3 934 | } 935 | ] 936 | ] 937 | }, 938 | "Merge": { 939 | "main": [ 940 | [ 941 | { 942 | "node": "List Elements", 943 | "type": "main", 944 | "index": 0 945 | } 946 | ] 947 | ] 948 | }, 949 | "List Elements": { 950 | "main": [ 951 | [ 952 | { 953 | "node": "Render Video", 954 | "type": "main", 955 | "index": 0 956 | } 957 | ] 958 | ] 959 | }, 960 | "Render Video": { 961 | "main": [ 962 | [ 963 | { 964 | "node": "Final Row Update", 965 | "type": "main", 966 | "index": 0 967 | } 968 | ] 969 | ] 970 | } 971 | }, 972 | "active": false, 973 | "settings": { 974 | "executionOrder": "v1" 975 | }, 976 | "versionId": "aa38c8cd-81d6-433f-9a76-315c89b8ed92", 977 | "meta": { 978 | "templateCredsSetupCompleted": true, 979 | "instanceId": "b97df62c0f3d5b73cd526d2b536fa1b12e013ec39923130234f5b725ade33c63" 980 | }, 981 | "id": "N3DTLiXgPsgqAblY", 982 | "tags": [] 983 | } 984 | --------------------------------------------------------------------------------