Project Details

ChatGPT YouTube Meta Generator Chrome Extension

Josh Van Riel
Josh Van Riel

Apr 2023 - Apr 2023

Description

As the developer of the YouTube Meta Generator Chrome extension, I created both the frontend Chrome extension and backend serverless AWS application designed to automatically generate metadata like titles, descriptions, and meta keywords for YouTube videos and video files. The application uses AWS Lambda Functions & Layers, DynamoDB, S3, SNS, and OpenAI APIs (Whisper ASR and ChatGPT) to provide backend services for the client-side Chrome extension.


The main features of this project include a frontend Chrome extension built with React & TypeScript, automatic metadata generation for YouTube videos, transcription of video files using OpenAI Whisper ASR, metadata inference using OpenAI ChatGPT Completions, video processing using Ffmpeg and YTDL, storage of video files and metadata in an S3 bucket, and a serverless architecture using AWS Lambda Functions & Layers. This allows for the automatic conversion, transcription, and inference of YouTube videos and video files simply by uploading a local file or pasting a YouTube link.


I set up several AWS Lambda functions, an S3 bucket, a DynamoDB table, and an SNS topic to manage the processing and storage of video files and metadata. The application relies on OpenAI Whisper ASR for transcribing the audio content from video files and OpenAI ChatGPT Completions API for generating metadata based on the transcribed content.


Deployment of the application is made easy through an AWS SAM template, which provisions all necessary resources, permissions, and IAM roles for the Lambda functions. To deploy the application, simply follow the standard AWS SAM CLI deployment steps, providing the necessary API keys and credentials for OpenAI APIs.


I may at a later date implement a paywall for a paid version of the extension via StripeJS. This paid version would allow bulk upload and usage for YouTubers that require automation at scale.


Currently I have architected the system to developer specifications to ensure I do not incur high fees (limit the possibly amount of function invocations and DB read/writes), but if this goes into production, as it is a serverless system it will be very easy to scale it up.


The extension is currently available but not publicly listed. I plan on releasing it publicly once I can increase the length of the video to be analyzed to 1 hour (currently there is a limit of 15 minutes due to upstream bottlenecks and limits with the OpenAI API's but higher limits are already in beta.


You can try out the chrome extension at this link:


https://chrome.google.com/webstore/detail/video-metadata-generator/kefolmegbkljjphcfefocncgohjhgdhh


This was a fairly short project which i did in my spare time over a few weeks, predominantly just as a bit of fun to enhance my skills in Typescript, AWS serverless and chrome extension development.


Tech & Skills Used

Chrome Extension Development
ChatGPT & OpenAI APIs
AWS Solutions Architect
React
Typescript
AWS Amazon Web Services
AWS Lambda
AWS API Gateway
AWS IAM
AWS S3
AWS SNS
AWS SAM
AWS CloudFormation
AWS CloudWatch

Repository

Available on request


Image Gallery

1/7