Skip to content
This repository was archived by the owner on Sep 5, 2024. It is now read-only.
forked from FFmpeg/FFmpeg

Mirror of git://source.ffmpeg.org/ffmpeg.git

License

Unknown and 3 other licenses found

Licenses found

Unknown
LICENSE.md
GPL-2.0
COPYING.GPLv2
GPL-3.0
COPYING.GPLv3
LGPL-3.0
COPYING.LGPLv3
Notifications You must be signed in to change notification settings

ffmpegwasm/ffmpeg.wasm-core

This branch is 276 commits ahead of, 21218 commits behind FFmpeg/FFmpeg:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

f888b52 · Jul 27, 2023
Jul 27, 2023
Jun 2, 2020
Jul 9, 2020
Mar 21, 2020
Nov 2, 2020
Jul 10, 2020
Jun 8, 2020
Jul 6, 2020
Jul 10, 2020
Jan 9, 2018
Jul 2, 2020
Jun 8, 2020
Jun 8, 2020
Jun 8, 2020
Jun 18, 2014
Jun 8, 2020
Jul 27, 2023
Jun 8, 2020
Jul 27, 2023
Jan 27, 2017
Sep 24, 2020
Jul 27, 2023
Mar 31, 2020
Mar 14, 2019
Sep 18, 2016
Jun 5, 2009
Jun 5, 2009
Feb 9, 2012
Jun 5, 2009
Jan 31, 2013
Jul 10, 2020
Jan 31, 2019
Dec 28, 2019
May 23, 2020
Mar 11, 2020
Jul 27, 2023
Jul 9, 2020
Jun 14, 2020
Jul 27, 2023
Jul 27, 2023
Oct 30, 2020

FFmpeg.wasm Core

Deprecated, merge to https://github.com/ffmpegwasm/ffmpeg.wasm as part of the monorepo.

Node Version FFmpeg.wasm Core npm (tag) Maintenance Downloads Total Downloads Month

This is the core part of FFmpeg.wasm where we transpile C/C++ code of FFmpeg to JavaScript/WebAssembly code. It is still very experimental (and slow), but shows the possibilities of using FFmpeg purely in the browser.

If you have any issues for this repository, please put it here: https://github.com/ffmpegwasm/ffmpeg.wasm/issues

Setup

$ git clone https://github.com/ffmpegwasm/ffmpeg.wasm-core
$ git submodule update --init --recursive

Build

  1. Use docker (easy way)

Install latest docker and run build-with-docker.sh.

$ bash build-with-docker.sh
  1. Install emsdk (unstable way)

Setup the emsdk from HERE and run build.sh.

$ bash build.sh

If nothing goes wrong, you can find JavaScript files in wasm/packages/core/dist.

Test

Once the build completes, you can test with following scripts:

$ cd wasm
$ npm install
$ npm test

Configuration

Base

Library/Tool Name Version Remark
Emscripten 3.1.30
FFmpeg 4.3.1

Video

Library/Tool Name Version Remark
x264 0.160.x mp4 format
x265 3.4 mp4 format, only works with -pix_fmt yuv420p10le and -pix_fmt yuv420p12le
libvpx 1.9.0 webm format
theora 1.1.1 ogv format
aom 1.0.0 mkv format, extremely slow (takes over 120s for 1s video), not recommended to use

Audio

Library/Tool Name Version Remark
wavpack 5.3.0 wav/wv format
lame 3.100 mp3 format
fdk-aac 2.0.1 aac format
ogg 1.3.4 required by vorbis
vorbis 1.3.6 ogg format
opus 1.3.1 opus format

Image

Library/Tool Name Version Remark
libwebp 1.1.0 webp format

Others

Library/Tool Name Version Remark
freetype2 2.10.4 font file support
fribidi 1.0.10 Arabic and Hebrew alphabets support
harfbuzz 2.7.4 text shaping engine
libass 0.15.0 SSA/ASS subtitles rendering library

About

Mirror of git://source.ffmpeg.org/ffmpeg.git

Topics

Resources

License

Unknown and 3 other licenses found

Licenses found

Unknown
LICENSE.md
GPL-2.0
COPYING.GPLv2
GPL-3.0
COPYING.GPLv3
LGPL-3.0
COPYING.LGPLv3

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 91.7%
  • Assembly 6.6%
  • Makefile 1.3%
  • C++ 0.2%
  • Shell 0.1%
  • Objective-C 0.1%