How to Automatically Generate Carousels from YouTube Videos
Are you tired of spending hours watching videos, drafting personalized carousels, and copying and pasting information from different sources? With our Make scenario, you can automate the video content management process, automatically obtaining, synthesizing, and organizing video information into slide shows. Read on to learn how this scenario can transform your workflow.
Here's a workflow designed to:
- Obtaining a URL of a YouTube video from a table in Airtable
- Extract the video ID from the URL
- Perform A video-text transcript
- Synthesize The text in a carousel content
- Organize The content of the slides in a presentation
- Save The presentation in a Google Drive folder
- Update the table in Airtable with the download URL
With this workflow, you'll reduce the time you spend watching videos, drafting personalized carousels, and copying and pasting information from a variety of sources.
This scenario can make a difference if you work in:
- Content Marketing
- Brand Marketing
- Communication
Ready to optimize your carousel generation process? Read on to learn how to save valuable time and focus on more strategic activities.
Step 1: Prerequisites
Before you begin, make sure you have the following prerequisites:
- An Account on Make
- A connection to Google Drive
- A connection to Open Ai Account
- A connection to Airtable
Step 2: Configuring the Workflow
The workflow includes 1 Webhook, 11 actions, 1 Flow Control, and 1 Router.
1. Webhook- Custom Webhook
This acts as a trigger for the workflow so that the Make scenario starts.
2. Airtable- Get a Record
Get the field RecordID From the table YouTube videos Inside the database Social Media Calendar.
3. Text Parser- Match Pattern
In this block, a text analyzer is responsible for the Subdivision Of the piece Momentous Than Information from the URL through a regular expression.
This is equivalent to extracting the ID from the “URL”
with a custom rule depending on the structure of the URL itself. In this case we have the following:
(?:\?|&)v=(?<id>[a-zA-Z0-9_-]{11})
Feel free to consult the Documentation for detailed information on the Text Analyzer and how to play with regular expressions.
4. HTTP- Make a request
Perform an HTTP request using API authentication using an access token provided by Rapid API or similar services. This process will take advantage of an endpoint (https://subtitles-for-youtube.p.rapidapi.com/subtitles) to retrieve the subtitles of a YouTube video. To do this, you will need to provide the YouTube video ID as an input parameter.
4.1 Ignore
This is a workaround in place to execute Error Handling in Make.
When making HTTP requests to external services, you may encounter runtime errors that cannot be controlled, since they depend on the third-party service. Without an error handler, the entire scenario could break down in case of errors.
The use of an error handler is essential to handle any errors generated by the previous OpenAI chat completion action. In the event of an error, this allows you to skip the next steps in the workflow. However, if the error does not occur, the flow can proceed without interruption with the next steps.
5. Tool- Variable Set
Create an array containing captions as plain text
using the built-in map function:
6. Tool- Text Aggregator
Aggregate array values into a single text using array “transcipt_array ()” built in the previous step.
7. Open AI- Create a Completion
Let the OpenAI GPT 3.5 Turbo 16K model (feel free to use other more sophisticated ones like GPT 4 or the latest one released by OpenAI) write the content of a LinkedIn post. Two roles are involved:
- System → Acts as the creator of LinkedIn that publishes viral content
- User → Specify the piece of information needed to design the post.
Specify policies in terms of using emojis, best practices in writing texts, or anything else you consider appropriate and in line with your content strategy.
The more specific you are at this stage, the better.
You can set guidelines for the format:
jsxCopy code
{
"slide_1_hook": "hook per la slide 1",
"slide_2_title": "titolo per la slide 2",
"slide_2_content": "contenuto per la slide 2",
"slide_3_title": "titolo per la slide 3",
"slide_3_content": "contenuto per la slide 3",
"slide_4_title": "titolo per la slide 4",
"slide_4_content": "contenuto per la slide 4",
"slide_5_title": "titolo per la slide 5",
"slide_5_content": "contenuto per la slide 5"
}
And provide an example of what you want things to look like:
jsxCopy code
{
"slide_1_hook": "📊 Ottieni informazioni sull'azienda in pochi secondi! 🚀",
"slide_2_title": "Passaggio 1:",
"slide_2_content": "Connetti il tuo foglio Google 📝"
}
Feel free to change other parameters or leave the default values.
8. JSON- Parse JSON
Create a JSON data structure and use the information collected in the previous step 7. Open AI- Create a Completion
9. Google Slides- Create a presentation
Use the information contained in the JSON and save the slide set to a location in Google Drive.
10. Google Drive- Download to file
Retrieve the slide set using the file ID 'Submission ID'
11. Airtable- Update a record
Update the YouTube video table in the social media calendar
saving the text of the carousel and the URL of the slides to access and download the file.
Step 3: Final Result
Congratulations!
You've automated the process of generating carousels from any YouTube video 🚀
Now you can save valuable time by focusing on more strategic activities.
If you're interested in generating notes from audio files, be sure to read our full article on how to do it here. You'll find detailed instructions and helpful tips to make the most of this functionality.
Do you prefer to follow a video to better understand how to generate notes from audio files? No problem! Follow the our tutorial who will guide you step by step!
Don't hesitate to explore our YouTube channel to implement other use cases and automations 🤖
Good automation!