Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kudlav/videoeditor
Web Based Video Editor Using MLT Framework, Bachelor thesis
https://github.com/kudlav/videoeditor
bachelor-thesis html5 melt
Last synced: 16 days ago
JSON representation
Web Based Video Editor Using MLT Framework, Bachelor thesis
- Host: GitHub
- URL: https://github.com/kudlav/videoeditor
- Owner: kudlav
- License: apache-2.0
- Created: 2019-03-07T12:30:00.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2021-01-19T14:47:44.000Z (almost 4 years ago)
- Last Synced: 2024-10-17T23:01:58.223Z (25 days ago)
- Topics: bachelor-thesis, html5, melt
- Language: JavaScript
- Homepage: https://github.com/kudlav/videoeditor-doc
- Size: 6.42 MB
- Stars: 446
- Watchers: 17
- Forks: 110
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Web Based Video Editor Using MLT Framework
![Overal schema](https://raw.githubusercontent.com/kudlav/videoeditor/master/docs/schema.png)## See it in action (YouTube video)
[https://youtu.be/GemMThnqULE](https://youtu.be/GemMThnqULE)## Badges
[![Build Status](https://travis-ci.org/kudlav/videoeditor.svg?branch=master)](https://travis-ci.org/kudlav/videoeditor)## Features
- web application no plugin required
- server side rendering
- supported modern browsers (Firefox, Chrome, Safari, ...)
- open-source, Apache-2.0 license
- project automatically saved on server (as MLT XML), accessible via link
- unlimited number of video and audio tracks
- 6 video and audio filters (with ability to create more filters)### Input
- Supported formats depends on mlt framework, respectively on supported formats by ffmpeg.
- Video duration tested up to 1 hour 30 minutes.
- Input resolution up to 4K.### Output
Currently set to:
- Container: mp4
- Audio codec: aac
- Video codec: libx264## Installation
Project requires:
- [Node.js](https://nodejs.org/) 10.13.0+ to run server.
- MLT framework to export video.
- FFmpeg to handle multimedia files.```sh
$ sudo apt install melt
$ sudo apt install ladspa-sdk ffmpeg
```### Development
Install the dependencies and devDependencies and start the server and webpack for development. Don't forget to change `config.js` file.
```sh
$ npm install
$ npm run dev-build
$ npm run dev-start
```You can run code check using ESLint (required installed npx):
```sh
$ sudo npm i -g npx
$ npm run eslint
```### Production
Install the dependencies and start the server and webpack for production. Don't forget to change `config.js` file.
```sh
$ export NODE_ENV=production
$ npm install
$ npm run build
$ npm start
```Server now running at port 8080. You can access it using `localhost:8080`. This can be changed in `config.js`.
Note: this project doesn't require web server and videoeditor folder and it's subfolders should be stored outside of webserver (for security purpose).