This repo is a sample video search app using AWS services.
- Transcribing Video and generate subtitle.
- Translate subtitle and generate subtitle.
- Search subtitle and jump to selected part of the video.
# install cdk
$ npm i aws-cdk
# bootstrap cdk
$ cdk bootstrap
# if you want to use aws credential profile
$ cdk bootstrap --profile yourprofile
# build lambda package.
$ nx run lambda:build
# on packages/infra
$ npm install
# aws credential setup required.
$ cdk deploy PipelineStack
# After deploying the stack, then the CodeCommit repo will be created.
# If you want to deploy this app, you have to push this repo to the CodeCommit repo.
$ git remote add codecommit <CodeCommit-Repo>
$ git push codecommit main
Just upload video file to s3 that is generated by CDK. Then the video will appear on Demo app. Video file s3 key must follow the following structure.
video/myvideo.en-US.mp4
- "video" is s3 key prefix for upload to s3. Only the video that include
video
prefix will be triggered by lambda. - "myvideo" will be the title.
- "en-US" is language code that used by transcribe. Refer this link.
- "mp4" is the file's extention. currently only mp4 and mov are supported.
You can access on demo app through the endpoint of deployed api gateway.
This sample use tantivy for searching subtitle. In particular, Among non-Latin languages, Korean is only supported (I used this).