FFmpeg + WebAssembly

This page summarizes the projects mentioned and recommended in the original post on dev.to

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • FFmpeg

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

  • FROM emscripten/emsdk:2.0.16 as build ARG FFMPEG_VERSION=4.3.2 ARG X264_VERSION=20170226-2245-stable ARG PREFIX=/opt/ffmpeg ARG MAKEFLAGS="-j4" # Build dependencies. RUN apt-get update && apt-get install -y autoconf libtool build-essential # Download and build x264. RUN cd /tmp && \ wget https://download.videolan.org/pub/videolan/x264/snapshots/x264-snapshot-${X264_VERSION}.tar.bz2 && \ tar xvfj x264-snapshot-${X264_VERSION}.tar.bz2 RUN cd /tmp/x264-snapshot-${X264_VERSION} && \ emconfigure ./configure \ --prefix=${PREFIX} \ --host=i686-gnu \ --enable-static \ --disable-cli \ --disable-asm \ --extra-cflags="-s USE_PTHREADS=1" RUN cd /tmp/x264-snapshot-${X264_VERSION} && \ emmake make && emmake make install # Download ffmpeg release source. RUN cd /tmp/ && \ wget http://ffmpeg.org/releases/ffmpeg-${FFMPEG_VERSION}.tar.gz && \ tar zxf ffmpeg-${FFMPEG_VERSION}.tar.gz && rm ffmpeg-${FFMPEG_VERSION}.tar.gz ARG CFLAGS="-s USE_PTHREADS=1 -O3 -I${PREFIX}/include" ARG LDFLAGS="$CFLAGS -L${PREFIX}/lib -s INITIAL_MEMORY=33554432" # Configure and build FFmpeg with emscripten. # Disable all programs and only enable features we will use. # https://github.com/FFmpeg/FFmpeg/blob/master/configure RUN cd /tmp/ffmpeg-${FFMPEG_VERSION} && \ emconfigure ./configure \ --prefix=${PREFIX} \ --target-os=none \ --arch=x86_32 \ --enable-cross-compile \ --disable-debug \ --disable-x86asm \ --disable-inline-asm \ --disable-stripping \ --disable-programs \ --disable-doc \ --disable-all \ --enable-avcodec \ --enable-avformat \ --enable-avfilter \ --enable-avdevice \ --enable-avutil \ --enable-swresample \ --enable-postproc \ --enable-swscale \ --enable-filters \ --enable-protocol=file \ --enable-decoder=h264,aac,pcm_s16le \ --enable-demuxer=mov,matroska \ --enable-muxer=mp4 \ --enable-gpl \ --enable-libx264 \ --extra-cflags="$CFLAGS" \ --extra-cxxflags="$CFLAGS" \ --extra-ldflags="$LDFLAGS" \ --nm="llvm-nm -g" \ --ar=emar \ --as=llvm-as \ --ranlib=llvm-ranlib \ --cc=emcc \ --cxx=em++ \ --objcc=emcc \ --dep-cc=emcc RUN cd /tmp/ffmpeg-${FFMPEG_VERSION} && \ emmake make -j4 && \ emmake make install

  • ffmpeg.wasm

    FFmpeg for browser, powered by WebAssembly

  • This has already been done before. You can check out ffmpeg.wasm for running the FFmpeg CLI in the browser environment.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • ffmpeg-libav-tutorial

    FFmpeg libav tutorial - learn how media works from basic to transmuxing, transcoding and more. Translations: πŸ‡ΊπŸ‡Έ πŸ‡¨πŸ‡³ πŸ‡°πŸ‡· πŸ‡ͺπŸ‡Έ πŸ‡»πŸ‡³ πŸ‡§πŸ‡·

  • If you are not familiar with libav, ffmpeg-libav-tutorial is a great introduction.

  • ffmpeg-webassembly-example

    FFmpeg + WebAssembly

  • Check out https://github.com/alfg/ffmpeg-webassembly-example for the full demo files in this guide.

  • ffprobe-wasm

    A Web-based FFProbe. Powered by FFmpeg, Vue and Web Assembly!

  • I also have a more advanced example of using FFProbe via Wasm: https://github.com/alfg/ffprobe-wasm

  • libav-examples

    Collection of FFmpeg libav examples.

  • Express

    Fast, unopinionated, minimalist web framework for node.

  • We can do this by running simple NodeJS server using Express, easily:

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • FFmpeg-online: ffpmeg running on the browser

    2 projects | news.ycombinator.com | 15 Oct 2023
  • Locoly (locoly.app): an in-browser video editor running all computations locally

    1 project | /r/SideProject | 29 Jul 2023
  • Downloadable Software to Convert MKV to MP4

    3 projects | /r/DataHoarder | 2 Jul 2023
  • [TASK] Reverse Engineer my Web App Before Production

    1 project | /r/slavelabour | 11 Jul 2023
  • what is the best still maintained front end for mpv?

    2 projects | /r/mpv | 10 Jul 2023