Skip to content

Video Editor v0.1.0

Latest

Choose a tag to compare

@glitter-gim glitter-gim released this 12 Nov 11:41

The first public release of Video Editor, a browser-based video editing application powered by FFmpeg WebAssembly and FastAPI.

Video Editor provides an interactive timeline and essential media editing tools directly in the browser. Media processing runs through FFmpeg WebAssembly, while the FastAPI backend handles recipe validation, processing plans, and preset management.

Highlights

Video Editing

  • Interactive timeline with Canvas-based video thumbnails
  • Timeline seeking, zooming, scrolling, and playhead controls
  • Video trimming and unwanted segment removal
  • Video cropping and resolution scaling
  • Output container and bitrate configuration
  • Undo and redo editing actions
  • Loop playback and keyboard shortcuts

Audio and Frame Processing

  • Keep or mute the original audio
  • Extract audio into supported formats
  • Capture video frames as PNG images

Browser-Based Processing

  • FFmpeg WebAssembly media processing
  • Recipe validation before execution
  • Processing progress and cancellation controls
  • Output preview and file download
  • No source-video upload endpoint in the current implementation

User Interface

  • Korean and English localization
  • Light and dark themes
  • Full and minimal editor interfaces

Backend and API

  • FastAPI-based REST API
  • FFmpeg processing plan generation
  • Recipe validation
  • Built-in and custom preset support
  • SQLite preset storage
  • Configurable CORS and trusted hosts
  • Optional authenticated preset write operations

Technology Stack

Python, FastAPI, Uvicorn, Vanilla JavaScript, HTML5, CSS3, FFmpeg WebAssembly, SQLite, REST API, Canvas API, Web Workers

Getting Started

Live Demo: https://vedit.glitter.kr/t/app

Clone the repository:

git clone https://github.com/glitter-node/video-editor.git
cd video-editor

Create a virtual environment and install dependencies:

python3 -m venv venv
venv/bin/python -m pip install -r requirements.txt

Start the development server:

./tools/dev-server.sh

Open the editor:

http://127.0.0.1:8011/t/app

For configuration, deployment, and testing instructions, see the [README](https://github.com/glitter-node/video-editor#readme).

Known Limitations

  • Processing performance depends on browser capabilities, available memory, and device resources.
  • Large or high-resolution videos may exceed browser memory limits.
  • Codec and output compatibility vary across browsers.
  • Some generated formats may not support in-browser preview.
  • Automatic recovery of unsaved editing state after a page refresh is not guaranteed.
  • Browser-based media processing requires WebAssembly and Web Worker support.
  • Compatibility with every browser, codec, and operating system has not been verified.

Privacy and Data Handling

The current frontend processes selected source media within the browser using FFmpeg WebAssembly.

The backend handles recipe validation, processing plan generation, and preset management. It does not provide a dedicated source-video upload or server-side transcoding endpoint.

Actual data handling may also depend on deployment infrastructure and browser configuration.

License

Released under the MIT License.

Copyright (c) 2026 Glitter.kr.

Third-party components remain subject to their respective licenses.


Repository: https://github.com/glitter-node/video-editor

Release: https://github.com/glitter-node/video-editor/releases/tag/v0.1.0

Live Demo: https://vedit.glitter.kr/t/app