This project aims to transcribe Discord chat sessions from chat participants (speech-to-text). This text will be processed into a word heatmap/word cloud for visualization purposes. The visualization tool is hosted on a static webpage for easy access via the internet.
This project is built entirely on the Cloud, using Amazon Web Services (AWS). Amazon Transcribe, a speech transcribing service, serves as the backbone of this project. The backend for this project is hosted on AWS Lambda and AWS S3.
The project was developed using these tools:
- User will trigger Craig Bot on Discord. Craig Bot will output a FLAC audio recording of the chat session. User uploads this FLAC audio recording to the Input S3 bucket.
- FLAC file upload in S3 triggers a Lambda function to initiate the transcription job on Amazon Transcribe. Job parameters are pre-configured via the Lambda function.
- Upon completion of the transcription job, a custom Event rule on EventBridge will trigger a Lambda function to process the transcript (retrieved from Output S3 bucket).
- Processed transcript data will be sent to a static webpage hosted in S3. An SNS email notification will be sent to the user to notify them of the job outcome.
- User must have access to an AWS account.
- User must invite Craig Bot to their Discord server.
Solution can be deployed using CloudFormation.
WIP - Include CFN template for deployment.
WIP - List steps to take as an end user to trigger the solution.
Distributed under the MIT License. Refer to LICENSE
for more details.
Owner/Creator: Yi Hao, Wong