Question

How do I automatically turn blog articles into podcast episodes with AI voice cloning in Zapier?

  • 11 August 2023
  • 18 replies
  • 608 views

Userlevel 1

I’d ideally like to create a workflow where I take my blog articles and automatically turn them into podcast episodes. 

I’ve heard good things from Elevenlabs for ai voice cloning but I’m not seeing a Zapier integration unfortunately. I would like to make this a fully automated no touch solution. 

What apps automatically post podcast episodes to all platform channels on your behalf? I’d like to explore options. 

Any good AI voice cloning or AI voice apps that work well with zapier?


18 replies

Userlevel 7
Badge +14

Hi @Tina Lopez 

There is this Zap action: OpenAI - Create Transcription

 

Userlevel 1

Hi @Tina Lopez!

I would use Stack AI for that which has a native integration with ElevenLabs to transcribe podcasts.
They have a youtube video explaining how this would be done here:
 



Hope this helps!

Userlevel 1
Badge

Hi @Tina Lopez 

There is this Zap action: OpenAI - Create Transcription

 

Thanks. But is there a way to connect Eleven Labs anyway, for passing text to generate audio or bringing in generated audio into Zapier? I couldn’t find the integration.

Userlevel 7
Badge +14

@Ed M 

If possible, it would probably involved one of these approaches:

Userlevel 1
Badge

Thanks @Troy Tessalone. Currently working my way through the webhook solution. Almost there! 

Userlevel 7
Badge +6

That’s great news @Ed M! Glad to hear Troy was able to point you in the right direction!

If you have any other questions, please don’t hesitate to reach out to the Community. We’re always happy to help! 😊

Userlevel 1

@Ed M were you able to get this working with webhooks? I’d love to leverage the ElevenLabs API as well

@Ed M please share Ed! 

Userlevel 1

@grouchy I was able to get the API working using Code by Zapier. Using JavaScript, I called the endpoint: https://api.elevenlabs.io/v1/text-to-speech

 

The JavaScript is structured as follows:

{ "text": "This is my text I want read", "voice_settings": { "similarity_boost": 1, "stability": 1, "use_speaker_boost": true } }

 

I hope this helps!

This takes an blog article, generates a podcast-style with two persons talking and uploads it to all podcast plattforms + returns an HTML Widget to embed into Blog Article. Takes at least 2 hours though to setup with custom code, apify etc.

Userlevel 1
Badge

 

@Kroeger This is really cool! I hadn’t thought of automating a conversational podcast, but you’ve inspired me. I’ll try and give it a go and hope you don’t mind if I ping you back where I might get stuck.

Userlevel 1
Badge

@grouchy Hi. Not sure if you still need it, but these are the settings I used. 

You may need to refer to the Elevenlabs API docs and try it out there to get the Voice ID, your API key, etc. The API page is quite helpful. It lets you try it out there first. I don’t fully understand it all myself tbh, but ChatGPT helps a lot.

Userlevel 1
Badge

This takes an blog article, generates a podcast-style with two persons talking and uploads it to all podcast plattforms + returns an HTML Widget to embed into Blog Article. Takes at least 2 hours though to setup with custom code, apify etc.

@Kroeger Trying to work out what you’ve done (a bit like a puzzle!). My guess is:

  • ChatGPT drafts the convo with alternating lines for Person A and Person B.
  • Step 3: A code step then converts these into line items for Person A and line items for Person B? Unsure about this.
  • Step 7: You then convert those Person A and B lines into audio and add these audio urls to Google Sheets?
  • Step 17: Not sure what’s happening here.
  • Step 18: I’m assuming you’re extracting all the audio from the urls and outputting them as one file somehow? But how?
  • Step 20: You upload the final audio podcast file to Google Drive.

 

How far off the mark was I with my guesses? Also, please do let me know where I might have gotten it wrong, and especially for Steps 17 and 18, would really appreciate learning more about what you did there.

 

Thanks!

Sure.

  • ChatGPT drafts the convo with alternating lines for Person A and Person B.

Yeah. You need to tell ChatGPT to always start with e.g. “Person A” and “Person B” and always in new line so the code step can split it easily (add here backup in case chatgpt doesnt do always new lines etc.)

Actually improved it so its not Person “A” and “B” because than sometimes the script says like “Hey B” - so I just gave them names.

  • Step 3: A code step then converts these into line items for Person A and line items for Person B? Unsure about this.

Mostly yes. Splits the text output into strings with text for person a and b, seperated by “,” so the loop thing can loop on it. As before: Add backup so it catches all edge cases the chatgpt script generates.

  • Step 7: You then convert those Person A and B lines into audio and add these audio urls to Google Sheets?

Yes, add the file urls to sheets with the loop run number, so if its loop 1, 2 etc. (important for later) and which person said it. You need external database because you can’t access the result in the other path that gives back the final audio. You can probably also use Zapier Tables, Airtable etc. I like Sheets because of the nice history where I can check for errors.

  • Step 17: Not sure what’s happening here.

You need to bring the single audio files in the right order so its in the final audio as generated in the chatgpt script. I use the loop number and person. So loop run 1 and person A will be first audio, loop run person B second, loop run 2 person a third audio and so on. Then I output a string with all audio files, seperated again by “,”.

  • Step 18: I’m assuming you’re extracting all the audio from the urls and outputting them as one file somehow? But how?

Yeah, that’s stressful. I used Apify because they allow you to run a python script with external packages (zapier code step unfortunetly not). You can generate the apify python script with ChatGPT, but took me long so it works perfectly and gives you back only one audio file.

  • Step 20: You upload the final audio podcast file to Google Drive.

Yes but not super important, did it only as a backup in case my podcast provider looses them. More important is that Step 24 posts them to Podigee and than automatically to Spotify, Apple Podcasts etc.

And other tip: I tried Elevenlabs because audio quality is better. BUT: Roughly every 50th file generated by them sounds super weird, some bug on their end I think. Like then its super high pitched or super slow etc. So if you only send them a whole script it probably sounds all good, but if you stich each time 20 different audios together the chances are high one of them is really bad and then the whole podcast episode is lost. ChatGPT is more reliable on my tests (and like 10x cheaper). If you add nice background music sounds totally okay. Though you can’t clone your voice. Or you find a way to quality-check the files generated by Elevenlabs. But I also generate german audios, so maybe in english they dont have that problem.

@Ed M this is grouchy again. I am going to give it a shot @Kroeger yours is incredible too. I am only trying a one person podcast, so maybe it will be easier. I professionally cloned my voice and I agree - sometimes there are weird bugs that appear, so I have to regenerate certain paragraphs - sometimes two and three times, before it sounds correct. But I will give it a whirl! Thanks. 

Userlevel 1
Badge

@Kroeger Really appreciate the insights and tips. Will have a go and see how far I can get.

@Ed M would you mind sharing your zap step by step from start to finish? What I want to do is this: Add my script into trello. 

New card creates script (already have that)

Then I want to move finished Trello card into the Elevenlabs work flow you created. So I just need to know your first to last steps. 

Reply