Skip to content

Latest commit

 

History

History
41 lines (29 loc) · 4.32 KB

README.md

File metadata and controls

41 lines (29 loc) · 4.32 KB

ffmpeg-online

Wanna try/use FFMPEG without installing anything ? Then this is for you ! Everything is done client-sidely using JavaScript and WebAssembly, using the project FFMPEG.WASM

Use online

You can access to the stable server (hosted in France at O2Switch) or to the unstable server (hosted in United States at GitHub).

Use offline

Download the code source of that repository as ZIP, as GZIPed TAR or using Git: git clone https://github.com/HGStyle/ffmpeg-online.git, then extract the download archive (if you did not used the Git command) and just double click (on Windows and MacOS, Linux users may just need a single click) the file called index.html.

Project released under the MIT License (a.k.a. Expat License, X11 License or MIT/X License)

Copyright © 2023-until the end of the universe HGStyle.

Info about JavaScript libraries used

Files in the jslibs directory has been released by different persons from different projects, maybe using a different license (for now, they all use the same license as this project): read this for more info.

Some alternative projects to this one

I'm not the first human to ever do an interface for FFMPEG.WASM. Lots of people did work before me, even thought I have no link and didn't seen their project until now. Even thought my interface is not very very good, this is probably one of the only project not using JavaScript frameworks (I only used jQuery) so my project may be more suitable for developpers who want to implement it to other JavaScript frameworks or implement it without one.

Other possible ways to do it

This project uses FFMPEG.WASM, but there are other ways it could work. While I'm probably never gonna change the library of this project, I'm gonna give some links to possible alternatives that can be explored for more optimizations or simply alternatives:

  • FFMPEG.WASM by ffmpegwasm is the implementation I use, althrought it still does not supports many libraries, it works in general. GitHub: https://github.com/ffmpegwasm/ffmpeg.wasm
  • FFMPEG-WASM by wide-video is annother implementation that I discovered that seems to have more libraries supported, so more format supported too. GitHub: https://github.com/wide-video/ffmpeg-wasm
  • FFMPEG for WASIX by ptitseb is an implementation made for WASIX/WASMER althought it doesn't seems updated anymore (no updates for 8 months when I'm writting this), and it's not made for browser usage. However, according to this HackerNews comment posted here, it would maybe possible to use it in a webbrowser. Wasmer: https://wasmer.io/wasmer/ffmpeg
  • One last "hard way" or more "weird way" would be to use JSLinux, by example the Alpine Linux x86 Console-Only VM which includes FFMPEG by default. Maybe with some scripting someone would be able to make a FFMPEG JavaScript interface with it. Or just use v86 and its JavaScript API, it requires less time to setup I'd guess.