• Stars
    star
    917
  • Rank 49,814 (Top 1.0 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created almost 4 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

zero-dependency browser-based video editor

mebm

tutorial

https://bwasti.github.io/mebm/ (empty project)

mebm is a browser based video editor that supports animation of images and text overlays. The animation is done with key-frames (denoted in blue on the timeline) and linear interpolation.

The design values simplicity and rudimentary functionality over a full feature set.

usage

  • space to pause/play
  • select layers to manipulate them (click on the timeline or sidebar)
    • shift + scroll or pinch to zoom text and images
    • drag to move them
    • arrow keys to jump between keypoints
    • backspace to remove keypoints
  • import
    • by dragging in videos images or audio files
    • by clicking "+ media"
    • by pasting URLs to hosted media (only some domains)
  • export by clicking "export"
    • let video play to completion
    • click "download" to grab a copy (.webm)


output:

todo

  • timeline
    • allow extending beyond current max time (medium)
    • split audio play head (hard)
    • splits in templates (medium)
  • file management
    • error on bad type (easy)
    • animated .gif support
  • editing
    • menu for advanced settings per layer (easy)
    • element selection by click (medium)
    • undo (hard)
    • face tracking (medium)
    • opacity (easy)
    • rotation (medium)
  • compatibility
    • chrome export bug workaround
    • mouseover preview safari fix
    • mobile touch events (partially done)
  • code
    • refactor/simplify MoveableLayer this.frames
    • make video a MoveableLayer
    • compress video frames
    • investigate memory use warning on safari
    • cache render output for thumbnails
    • move height/width setting logic out of render loop
    • improve text scaling logic (avoid font size, use ctx.scale)

More Repositories

1

wasmblr

C++ WebAssembly assembler in a single header file
C++
164
star
2

jott

A simple way to jot down notes
JavaScript
111
star
3

cache.py

Python memoization across program runs.
Python
111
star
4

vim-multiuser

a multiple user vim plugin
Python
105
star
5

emojicam

personal project to render webcam data directly as emoji πŸ˜ƒ
TypeScript
71
star
6

webpipe

A simple command line websocket utility for piping messages to and from a browser.
C
55
star
7

btb

Blue-text Bot AI. Uses Ollama + AppleScript
Python
49
star
8

pytorch_compiler_tutorial

Codebase associated with the PyTorch compiler tutorial
C++
44
star
9

mlvt

machine learning visualization tools in the terminal
Python
35
star
10

lazy

Python Library for Lazy Interfaces
Python
34
star
11

better_bindings

Better bindings for Python
Python
17
star
12

avalanche_playground

Structural (non-cryptographic) Python implementation of the Avalanche algorithm by TeamRocket
Python
15
star
13

torch_julia

[alpha] Expose Julia functions to PyTorch
C++
15
star
14

brr.js

trying to make WebGPU a bit easier to use
JavaScript
15
star
15

web_assembly_experiments

A repo to hold some simple experiments
C++
14
star
16

lofii

JavaScript
13
star
17

kayvee

model UI experiments
HTML
8
star
18

pic2emoji

convert images to emoji art
Python
7
star
19

bram.town

bram.town projects
TypeScript
5
star
20

webtorch

Python
3
star
21

template_array

Array manipulation at compile time.
C++
2
star
22

hma

lightweight differentiable multi-dimensional arrays
C++
1
star
23

evorati

Python
1
star
24

chess

C++
1
star
25

shumai_old

fast ML in JS with bun + flashlight
TypeScript
1
star
26

nnc_benchmark_server

Python
1
star
27

kq

C++
1
star
28

bison-example-calc-

hosting this -- from the bison gnu repo
C++
1
star