https://www.youtube.com/watch?v=ED-lg1Ho9gU&feature=youtu.be
- Magic Video
- Botao Martin
- Harrison
- Qi
- This web application is used for in-browser video editing, and allows users to upload and download the edited video. Note: We are thinking about adding the idea of user account to this platform and allowing users to share their video with others.
- Video captioning
- Splicing multiple videos together
- Able to trim a part of the video
- Adding audio files & images to videos
- Basic Transition effects (e.g. Fade In, Fade Out)
- Preview of the edited video
- Able to add your voice into the video (via the user’s microphone)
- Users can get help using from the “User Guide” section
- MongoDB
- ExpressJS
- ReactJS
- NodeJS
- Deploy on Heroku
- This is the JavaScript library that we mainly used for video editing:
- Data Structure Design: Data structure for the video edit package (store all the current edit action and status of different video/sound-track source)
- Integration: We need to seamlessly integrate multiple JavaScript libraries together, since there isn’t one library that can handle all our video editing needs
- User Interface: Since we are using JavaScript libraries for the “backend”, we would need a more complex front-end to simulate the desired video editing software.
- Optimizing Render/Editing Performance: Video editing takes a long time to compile normally. Depending on the JavaScript libraries that we use, our web app may have performance issues that we need to address.
- Minimizing Response Time: Since this is a very interactive web, we want to ensure a smooth user experience. We will need to use the idea of async and sync effectively to minimize the response time.
- npm run install-all
To run, Type the following in the terminal:
- npm run dev
Note: this may have issue with cookie secure flag
Instead you can run production:
- npm run postbuild
and then run
- npm run product_run