Behöver ert företag hjälp med att implementera AI? Kontakta oss och få prisoffert här →
AI Skolan
januari 22, 2026

Google Sheets till Google Drive: röstpålägg klara

Rickard Andersson Partner, Nodenordic.se

Du har manus som ligger snyggt i Google Sheets, men det ”enkla” voiceover-steget blir ett slit. Kopiera text. Generera ljud. Ladda ner. Byt namn. Ladda upp. Och så frågar någon: ”Vilken fil hör till rad 38?”

Det är här automatisering för Sheets Drive voiceovers verkligen lönar sig. Marknadschefer märker det när produktionen stannar, byråteam märker det vid kundleverans, och solo-skapare märker det när batchning av innehåll tar en hel eftermiddag.

Det här arbetsflödet förvandlar kalkylbladsmanus till namngivna WAV-filer i Google Drive och skriver sedan tillbaka Drive-länken till samma sheet. Du får se vad det gör, vad du behöver och hur det körs från start till mål.

Så fungerar den här automatiseringen

Hela n8n-arbetsflödet, från trigger till slutresultat:

n8n Workflow Template: Google Sheets till Google Drive: röstpålägg klara

Problemet: att göra voiceovers av manus är fortfarande manuellt

Manusgenerering går snabbt nu. Flaskhalsen är allt som kommer efter. När dina manus är godkända i Google Sheets måste någon fortfarande köra text-till-tal, hålla filnamn konsekventa, konvertera ljudet till ett användbart format och lagra det där redigeraren faktiskt hittar det. Det är inte svårt arbete. Det är felkänsligt arbete. Ett missat namnbyte eller en felplacerad nedladdning blir till en Slack-tråd, en ny export och ännu en runda ”vilken version är det här?”

Det drar snabbt iväg. Så här faller det isär i verkligheten:

  • Du hanterar samma fil tre gånger: ladda ner, byta namn och ladda upp igen.
  • Rader i sheetet markeras som ”klara” utan en strukturerad länk till den faktiska WAV-filen, så redigerare jagar assets.
  • Ljudformaten blir inkonsekventa, vilket betyder extra konverteringssteg innan redigeringen ens kan börja.
  • Att batcha 20 manus blir ett repetitivt admin-pass i stället för en snabb produktionskörning.

Lösningen: Google Sheets → AI-röst → WAV → Drive (med länkar tillbaka)

Det här n8n-arbetsflödet läser dina manus-rader från Google Sheets, hittar de som du inte har processat ännu och genererar en voiceover för varje via Google Gemini Text-to-Speech API. Det skapar ett säkert, konsekvent filnamn (så du slipper konstiga tecken eller dubbla namn), sparar råljudet på disk och kör FFmpeg lokalt för att konvertera till en standardiserad WAV-fil. Därefter laddar det upp WAV-filen till en vald Google Drive-mapp. Till sist uppdaterar det ursprungliga Google Sheet med Drive-länken och markerar raden som klar, så produktion och redigering håller sig synkade.

Arbetsflödet startar med en manuell kör-trigger när du är redo att generera en batch. Därifrån itererar det genom oprocessade rader, genererar ljud, konverterar till WAV och laddar upp till Drive. Sheetet blir uppföljningssystemet, vilket gör överlämning friktionsfri.

Det du får: automatisering vs. resultat

Exempel: så här ser det ut

Säg att du genererar 25 annonsmanus i ett Google Sheet varje vecka. Manuellt kanske du lägger cirka 5 minuter per manus på att generera ljud, byta namn, konvertera och ladda upp, vilket blir ungefär 2 timmar repetitivt arbete. Med det här arbetsflödet startar du en körning (cirka 5 minuter för att rimlighetskolla inställningar) och låter sedan batchen processas i bakgrunden medan filer genereras och konverteras. När det är klart har din Google Drive-mapp 25 korrekt namngivna WAV-filer och sheetet har länkar för direkt överlämning.

Det här behöver du

  • n8n-instans (prova n8n Cloud gratis)
  • Self-hosting-alternativ om du föredrar det (Hostinger fungerar bra)
  • Google Sheets för att lagra manus och statusfält.
  • Google Drive för att lagra färdiga WAV-filer.
  • Google Gemini API-nyckel (hämta den från Google AI Studio / Gemini API-konsolen).

Kunskapsnivå: Avancerad. Du kommer att self-hosta n8n, sätta filsökvägar och installera FFmpeg på samma maskin.

Vill du inte sätta upp detta själv? Prata med en automationsexpert (gratis 15-minuters konsultation).

Så fungerar det

Du startar körningen när du är redo. En manuell trigger drar igång allt, vilket är smidigt när du vill generera voiceovers i tydliga batchar efter godkännanden.

Ditt Google Sheet blir den enda sanningskällan. n8n hämtar manus-rader, filtrerar på de som inte är markerade som klara och processar dem i batchar så att du inte överbelastar dina API:er eller din maskin.

Röstgenerering och konvertering sker automatiskt. Varje manus skickas till Gemini TTS-endpointen (HTTP Request), ljudet som kommer tillbaka sparas på disk och FFmpeg körs lokalt (Execute Command) för att konvertera till en standardiserad WAV-fil.

Drive får de färdiga filerna, och Sheets får kvittot. n8n laddar upp WAV-filen till din valda Google Drive-mapp och uppdaterar sedan original-sheetet med Drive-länken och en klar-markering så att ingen behöver gissa.

Du kan enkelt justera röststil och namngivningsregler så att de matchar ditt arbetsflöde och ändå behålla samma Sheet-till-Drive-överlämning. Se hela implementationsguiden nedan för anpassningsalternativ.

Steg-för-steg-guide för implementering

Steg 1: konfigurera trigger för manuell körning

Det här arbetsflödet startar manuellt så att ni kan köra röstgenerering vid behov.

  1. Lägg till och öppna Manual Run Trigger.
  2. Lämna standardinställningarna (inga parametrar krävs).
  3. Koppla Manual Run Trigger till Retrieve Script Rows.

Steg 2: anslut Google Sheets

Hämta manus från ett kalkylark och skriv senare tillbaka ljudlänkarna.

  1. Öppna Retrieve Script Rows och ställ in Document till [YOUR_ID] och Sheet till Text Overlays.
  2. Inloggningsuppgifter krävs: Anslut era googleSheetsOAuth2Api-credentials i Retrieve Script Rows.
  3. Öppna Update Sheet With Links och bekräfta att Operation är appendOrUpdate.
  4. Inloggningsuppgifter krävs: Anslut era googleSheetsOAuth2Api-credentials i Update Sheet With Links.

⚠️ Vanlig fallgrop: Säkerställ att ert ark innehåller kolumnerna som används i Update Sheet With Links, särskilt Voice Generated?, Voice Link och Google Drive ID, annars misslyckas uppdateringen.

Steg 3: konfigurera filtrering och batchning

Det här steget behandlar bara rader som inte har fått röst ännu och itererar dem en och en.

  1. Öppna Filter Unprocessed och verifiera att villkoret använder {{ $json['Voice Generated?'] }} notEquals Yes.
  2. Öppna Batch Iterator och behåll standardinställningarna för att iterera varje rad.
  3. Bekräfta att Update Sheet With Links loopar tillbaka till Batch Iterator så att varje rad behandlas sekventiellt.

Steg 4: konfigurera röstgenerering och lokal ljudbearbetning

Dessa noder genererar ljud, lagrar det lokalt och förbereder en WAV med FFmpeg.

  1. I Build Safe Filename behåller ni den medföljande JavaScript-koden för att generera safeFilename från full_script_text och row_number.
  2. Öppna Voice Synthesis API och ställ in URL till https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash-preview-tts:generateContent och Method till POST.
  3. Ställ in JSON Body till det befintliga uttrycket och behåll prompten: Say this script in a neutral professional accent at a face pace enthusiastically: {{ $json.full_script_text }}.
  4. I Voice Synthesis API lägger ni till query-parametern key med [CONFIGURE_YOUR_API_KEY].
  5. Öppna Binary File Converter och ställ in Operation till toBinary, Source Property till candidates[0].content.parts[0].inlineData.data, File Name till {{ $('Build Safe Filename').item.json.safeFilename }}.pcm och Mime Type till {{ $json.candidates[0].content.parts[0].inlineData.mimeType }}.
  6. Öppna Write PCM to Disk och ställ in File Name till /Users/INSERT_YOUR_LOCAL_STORAGE_HERE/{{ $('Build Safe Filename').item.json.safeFilename }}.pcm med Operation = write.
  7. I Capture File Path lägger ni till tilldelningen fileName = {{ $json.fileName }}.
  8. Behåll den medföljande koden i Prepare FFmpeg Command för att bygga kommandot och härleda wavPath.
  9. Öppna Execute FFmpeg Job och ställ in Command till {{ $json.command }}.
  10. Öppna Read WAV From Disk och ställ in File Selector till {{ $('Prepare FFmpeg Command').item.json.wavPath }}.

⚠️ Vanlig fallgrop: Sökvägen i Write PCM to Disk måste finnas på er n8n-host och FFmpeg måste vara installerat för att Execute FFmpeg Job ska fungera.

Steg 5: konfigurera uppladdning till Drive och uppdateringar i kalkylarket

Ladda upp WAV-filen och skriv tillbaka länkar och status.

  1. Öppna Upload WAV to Drive och ställ in Name till {{ $('Build Safe Filename').item.json.safeFilename }}.wav.
  2. Ställ in Drive till My Drive och Folder till / (Root folder) eller er målmapp.
  3. Inloggningsuppgifter krävs: Anslut era googleDriveOAuth2Api-credentials i Upload WAV to Drive.
  4. Öppna Update Sheet With Links och bekräfta de mappade värdena: Voice Link = {{ $json.webViewLink }}, Google Drive ID = {{ $json.id }}, Voice Generated? = Yes, Computer File Name = {{ $('Read WAV From Disk').item.json.fileName }}, Google Drive Download Link = {{ $json.webContentLink }}.

Steg 6: testa och aktivera ert arbetsflöde

Kör ett manuellt test för att validera röstgenerering och filuppladdningar hela vägen.

  1. Klicka på Execute WorkflowManual Run Trigger för att bearbeta en batch med rader.
  2. Bekräfta att en .pcm- och en .wav-fil skapas i er lokala sökväg och att Execute FFmpeg Job slutförs utan fel.
  3. Verifiera att Upload WAV to Drive skapar en fil och att Update Sheet With Links skriver in URL:erna och sätter Voice Generated? till Yes.
  4. När ni är nöjda, växla arbetsflödet till Active för produktionsbruk.
🔒

Lås upp fullständig steg-för-steg-guide

Få den kompletta implementeringsguiden + nedladdningsbar mall

Vanliga fallgropar

  • Google Sheets-inloggningar kan gå ut eller sakna redigeringsåtkomst. Om uppdateringar slutar skrivas tillbaka, kontrollera status för inloggningen i n8n och bekräfta att sheetet är delat med det anslutna Google-kontot.
  • Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om efterföljande noder fallerar på grund av tomma svar.
  • FFmpeg är ett måste här, och sökvägsproblem är vanliga. Om Execute Command-noden fallerar, verifiera att FFmpeg är installerat på samma server som n8n och att n8n-användaren har rättigheter att köra det samt läsa/skriva till målmappen.

Vanliga frågor

Hur lång tid tar det att sätta upp den här automatiseringen för Sheets Drive voiceovers?

Räkna med cirka 1 timme, främst för self-hosting och FFmpeg-setup.

Behöver jag kunna koda för att automatisera Sheets Drive voiceovers?

Nej, men du behöver vara bekväm med att kopiera API-nycklar och redigera en lokal filsökväg. Arbetsflödet innehåller kodnoder, men du skriver vanligtvis inte om dem om du inte vill ha egen namngivningslogik.

Är n8n gratis att använda för det här arbetsflödet för Sheets Drive voiceovers?

Ja. n8n har ett gratis self-hosted-alternativ och en gratis provperiod på n8n Cloud. Cloud-planer börjar på 20 USD/månad för högre volym. Du behöver också räkna in användning av Google Gemini API, vilket vanligtvis blir småpengar per batch för korta manus.

Var kan jag hosta n8n för att köra den här automatiseringen?

Två alternativ: n8n Cloud (managerat, enklast setup) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärt och klarar n8n bra. Self-hosting ger dig obegränsade körningar men kräver grundläggande serverhantering.

Kan jag anpassa det här arbetsflödet för Sheets Drive voiceovers för olika röster och namngivning?

Ja. Du kan ändra röst och accent i HTTP Request-bodyt för ”Voice Synthesis API”, och du kan justera namngivningsregler i kodnoden ”Build Safe Filename”. Vanliga justeringar är att lägga till ett prefix med kampanjnamn, använda en ”Scene”-kolumn från sheetet eller skapa separata mappar per kund i Google Drive.

Varför misslyckas min Google Drive-anslutning i det här arbetsflödet?

Oftast är det ett auth- eller behörighetsproblem. Återanslut Google Drive-inloggningen i n8n, bekräfta att målmappen fortfarande finns och säkerställ att det anslutna kontot kan ladda upp till den. Om det bara fallerar på större batchar kan du också slå i API-kvoter, så det hjälper att minska batchstorleken.

Hur många manus kan den här automatiseringen för Sheets Drive voiceovers hantera?

Dussintals per körning är normalt, och hundratals är möjligt om din server är dimensionerad för det och du håller batchstorlekarna rimliga.

Är den här automatiseringen för Sheets Drive voiceovers bättre än att använda Zapier eller Make?

För just det här jobbet, ja, eftersom Zapier och Make inte smidigt kör lokala FFmpeg-kommandon eller skriver/läser lokala filer. Det här arbetsflödet bygger på self-hostad n8n så att det kan spara ljud på disk, konvertera det och sedan ladda upp WAV-filen. Det är hela poängen. Om din process inte kräver lokal konvertering kan ett enklare verktyg fungera bra för enkla automatiseringar av typen ”sheet-rad → API-anrop”. Men när du lägger till filhantering, batchning och pålitliga återkopplingar till Sheets är n8n ärligt talat en enklare långsiktig lösning. Om du vill ha hjälp att välja rätt upplägg, prata med en automationsexpert.

När det här väl rullar blir ditt sheet en tydlig produktionskö och Drive blir asset-biblioteket. Arbetsflödet tar bort de repetitiva momenten så att du kan leverera mer kreativt innehåll, snabbare.

Kontakta oss

Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.

×

Använd mall

Få direkt tillgång till denna n8n-arbetsflödes JSON-fil

Launch login modal Launch register modal