Automated Videos

Generation of educational and automated videos.
Project Links
Key points

Word Generation
Words are generated from themes that I define. An AI generates a list of words and their translations based on the theme.

Word Difficulty
I transfer the AI results to a database managed by NestJS. Each word is manually assigned a difficulty level via a dedicated interface.

Voice Generation
Each word is pronounced by an AI-generated voice running locally. The voice is created using Coqui TTS. I provide a reference audio file for the voice and a text file, and it generates a voice that pronounces the text.

Video Generation
Videos are generated using Remotion. I apply an introduction sentence and a theme, followed by a series of words to guess with increasing difficulty until the end of the video. The whole process is accompanied by a 3D character that reacts to the question and answer. Remotion can generate a video in a few minutes, retrieving information stored in the database through requests to the NestJS server.

Video Upload
YouTube and TikTok offer APIs for uploading videos, but they have access restrictions. So, I developed a NodeJS script to upload videos using Puppeteer, a tool for automating tasks on websites. The entire process—login, upload, filling in details, and scheduling the video—is automated.
Challenges
The generated voices sometimes fail, requiring manual verification of each result. If the voice is bad or buggy, I have to rerun the AI with a new seed.
Since the video upload system is automated through a script using a virtual browser, any update to the YouTube or TikTok interface can potentially break the script.
I initially thought the content would attract a certain audience due to the quality of the videos compared to competing channels. However, the lack of exposure led me to stop publishing new videos.