All Projects → farski → serverless-transcribe

farski / serverless-transcribe

Licence: MIT License
A simple UI for Amazon Transcribe

Programming Languages

python
139335 projects - #7 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to serverless-transcribe

scription
An editor for speech-to-text transcripts such as AWS Transcribe and Mozilla DeepSpeech
Stars: ✭ 46 (-6.12%)
Mutual labels:  transcription, aws-transcribe
slamdunk
Streamlining SLAM-seq analysis with ultra-high sensitivity
Stars: ✭ 24 (-51.02%)
Mutual labels:  transcription
parlatype
GNOME audio player for transcription
Stars: ✭ 151 (+208.16%)
Mutual labels:  transcription
gtranscribe
Software for interview transcription
Stars: ✭ 12 (-75.51%)
Mutual labels:  transcription
glaemscribe
Glaemscribe, the tolkienian languages/writings transcription engine.
Stars: ✭ 29 (-40.82%)
Mutual labels:  transcription
cmu-pronouncing-dictionary
The 134,000+ words and their pronunciations in the CMU pronouncing dictionary
Stars: ✭ 46 (-6.12%)
Mutual labels:  transcription
leopard
On-device speech-to-text engine powered by deep learning
Stars: ✭ 354 (+622.45%)
Mutual labels:  transcription
madoc-platform
A platform for the display, enrichment, and curation of IIIF-based digital objects
Stars: ✭ 28 (-42.86%)
Mutual labels:  transcription
nashi
Some bits of javascript to transcribe scanned pages using PageXML
Stars: ✭ 13 (-73.47%)
Mutual labels:  transcription
aws-transcribe-demo
A simple AWS demo utilises Amazon Transcribe to convert audio to text and analyse.
Stars: ✭ 39 (-20.41%)
Mutual labels:  aws-transcribe
kaldi helpers
🙊 A set of scripts to use in preparing a corpus for speech-to-text processing with the Kaldi Automatic Speech Recognition Library.
Stars: ✭ 13 (-73.47%)
Mutual labels:  transcription
aws-content-analysis
This project is a fully automated video search engine which uses AWS AI services for computer vision and speech recognition to catalog video archives.
Stars: ✭ 67 (+36.73%)
Mutual labels:  aws-transcribe
Braille-Translator
Translates standard alphabet based text to Grade 2 Braille and back.
Stars: ✭ 29 (-40.82%)
Mutual labels:  transcription
speechmatics-python
Python library and CLI for Speechmatics
Stars: ✭ 24 (-51.02%)
Mutual labels:  transcription
simple diarizer
Simplified diarization pipeline using some pretrained models - audio file to diarized segments in a few lines of code
Stars: ✭ 26 (-46.94%)
Mutual labels:  transcription
asr24
24-hour Automatic Speech Recognition
Stars: ✭ 27 (-44.9%)
Mutual labels:  transcription
kaldi-long-audio-alignment
Long audio alignment using Kaldi
Stars: ✭ 21 (-57.14%)
Mutual labels:  transcription
youtube-transcriber
Automatically transcribes YouTube videos
Stars: ✭ 71 (+44.9%)
Mutual labels:  transcription
CCAligner
🔮 Word by word audio subtitle synchronisation tool and API. Developed under GSoC 2017 with CCExtractor.
Stars: ✭ 131 (+167.35%)
Mutual labels:  transcription
realtime-transcription-playground
A real-time transcription project using React and socketio
Stars: ✭ 101 (+106.12%)
Mutual labels:  transcription

serverless-transcribe

A simple, serverless web UI for Amazon Transcribe. Supports WAV, FLAC, AMR, MP3, MP4, Ogg (Opus), and WebM audio without any fixed costs.

How it Works

Once the project has been launched in CloudFormation, you will have access to a webpage that allows users to upload audio files. The page uploads the files directly to S3. The S3 bucket is configured to watch for audio files. When it sees new audio files, an AWS Lambda function is invoked, which starts a transcription job.

File detection is based on the file extension. Supported extensions are: .wav, .flac, .amr, .3ga, .mp3, .mp4, .m4a, .oga, .ogg, .opus, and .webm.

Another Lambda function is triggered via EventBridge event when the transcription job completes (or fails). An email is sent to the user who uploaded file with details about the job failure, or a raw transcript that is extracted from the job results.

The webpage is protected by HTTP Basic authentication, with a single set of credentials that you set when launching the stack. This is handled by an authorizer on the API Gateway, and could be extended to allow for more robust authorization schemes.

Amazon Transcribe currently has file limits of 4 hours and 2 GB.

AWS Costs

The cost of running and using this project are almost entirely based on usage. Media files uploaded to S3 are set to expire after one day, and the resulting files in the transcripts bucket expire after 30 days. The Lambda functions have no fixed costs, so you will only be charged when they are invoked. Amazon Transcribe is "pay-as-you-go based on the seconds of audio transcribed per month".

Most resources created from the CloudFormation template include a Project resource tag, which you can use for cost allocation. Transcription jobs also include this tag, and can include an optional tag defined using stack parameters.

How to Use

The project is organized using a SAM CloudFormation template. Launching a stack from this template will create all the resources necessary for the system to work.

Requirements

  • The stack must be launched in an AWS region that supports SES. The addresses that SES will send to and from are determined by your SES domain verification and sandboxing status.

Deploying from the AWS Serverless Application Repository

The application can be deployed from the AWS Serverless Application Repository into your own AWS account. This is the easiest way to get started with serverless-transcribe.

Using the SAM CLI to deploy

The app can also be deployed using the AWS SAM CLI. Once the CLI is installed, you can run sam deploy --guided in the project directory to deploy the application. (After the first deploy, you can use sam deploy if samconfig.toml is present in the directory.)

Any other deployment method that is compatible with SAM templates would also work.

Note: The deploy script that was previously included in the project is no longer supported.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].