From 15656235179d9d5bb8b66d7e22bfb51a5b8194e7 Mon Sep 17 00:00:00 2001 From: Jerome Wu Date: Tue, 25 Jul 2023 22:45:02 +0800 Subject: [PATCH] Complete overview page --- .../docs/getting-started/lib-versions.md | 1 - apps/website/docs/getting-started/usage.md | 2 +- apps/website/docs/intro.md | 14 --- apps/website/docs/overview.md | 93 ++++++++++++++++++ apps/website/docusaurus.config.js | 2 +- apps/website/sidebars.js | 8 +- apps/website/src/pages/playground.md | 2 +- .../static/asset/ffmpegwasm-arch.drawio | 80 +++++++++++++++ apps/website/static/img/ffmpegwasm-arch.png | Bin 0 -> 79474 bytes 9 files changed, 178 insertions(+), 24 deletions(-) delete mode 100644 apps/website/docs/getting-started/lib-versions.md delete mode 100644 apps/website/docs/intro.md create mode 100644 apps/website/docs/overview.md create mode 100644 apps/website/static/asset/ffmpegwasm-arch.drawio create mode 100644 apps/website/static/img/ffmpegwasm-arch.png diff --git a/apps/website/docs/getting-started/lib-versions.md b/apps/website/docs/getting-started/lib-versions.md deleted file mode 100644 index b530bec..0000000 --- a/apps/website/docs/getting-started/lib-versions.md +++ /dev/null @@ -1 +0,0 @@ -# Library Versions diff --git a/apps/website/docs/getting-started/usage.md b/apps/website/docs/getting-started/usage.md index 2bc7b07..5bebf24 100644 --- a/apps/website/docs/getting-started/usage.md +++ b/apps/website/docs/getting-started/usage.md @@ -3,7 +3,7 @@ Learn the basics of using ffmpeg.wasm. :::note -It is recommended to read [introduction](/docs/intro) to fully understand the +It is recommended to read [overview](/docs/overview) to fully understand the rationale. ::: diff --git a/apps/website/docs/intro.md b/apps/website/docs/intro.md deleted file mode 100644 index e9d790d..0000000 --- a/apps/website/docs/intro.md +++ /dev/null @@ -1,14 +0,0 @@ -# Introduction - -ffmpeg.wasm is an experimental project to run [FFmpeg](https://www.ffmpeg.org/) right -inside your browser without any back-end servers. It enables maximum security -for end-users and equips your web application with rich multimedia processing -capabilities. - -We leverage -[Emscripten](https://emscripten.org/) to compile FFmpeg source code and many -libraries to WebAssembly and develop a minimal but essential library to free -developers from common requirements like running ffmpeg inside web worker and -more. - -> Talk about how it works with a diagram diff --git a/apps/website/docs/overview.md b/apps/website/docs/overview.md new file mode 100644 index 0000000..b146a17 --- /dev/null +++ b/apps/website/docs/overview.md @@ -0,0 +1,93 @@ +import MuiThemeProvider from "@site/src/components/common/MuiThemeProvider"; +import Table from '@mui/material/Table'; +import TableBody from '@mui/material/TableBody'; +import TableCell from '@mui/material/TableCell'; +import TableContainer from '@mui/material/TableContainer'; +import TableHead from '@mui/material/TableHead'; +import TableRow from '@mui/material/TableRow'; +import Paper from '@mui/material/Paper'; + +# Overview + +## Introduction + +ffmpeg.wasm is a pure WebAssembly / JavaScript port of [FFmpeg](https://www.ffmpeg.org/) +enabling video & audio record, convert and stream right inside browsers. + +We leverage +[Emscripten](https://emscripten.org/) to transpile FFmpeg source code and many +libraries to WebAssembly and develop a minimal but essential library to free +developers from common requirements like running ffmpeg inside web worker and +more. + +## Advantages + +- **Security**: your users' data only lives inside their browser, no need to + worry about any data leakage or network latency. +- **Client-side computing**: instead of hosting a cluster of server-end servers, + you can now offload multimedia processing to client-side. +- **Flexible**: ffmpeg.wasm comes with single-thread and multi-thread cores, you + can use whichever fits your use case. + +## Architecture + +![architecture](/img/ffmpegwasm-arch.png) + +Multimedia transcoding is a resource-intensive task that you don't want to +execute in main thread, thus in ffmpeg.wasm we offload those task to web worker +(`ffmpeg.worker`) by default. This makes almost all function calls in ffmpeg.wasm +are asynchronous and it is recommended to use **async** / **await** syntax. + +`ffmpeg.worker` downloads WebAssembly code (`ffmpeg-core`) from CDN +and initialized it in WorkerGlobalScope. For any input video file you would like +to process, you need to first populated them inside ffmpeg-core File System and +also read result from `ffmpeg-core` File System once it is done. + +If you are using a multi-thread version of `ffmpeg-core`, more web workers will +be spawned by `ffmpeg-core` inside `ffmpeg.worker` + +## Libraries + +ffmpeg.wasm is built with toolchains / libraries: + + + + + + Name + Version + Note + + + + {[ + {name: "Emscripten", version: "3.1.40", note: ""}, + {name: "FFmpeg", version: "n5.1.3", note: ""}, + {name: "x264", version: "0.164.x", note: ""}, + {name: "x265", version: "3.4", note: ""}, + {name: "libvpx", version: "v1.9.0", note: ""}, + {name: "lame", version: "3.100", note: ""}, + {name: "ogg", version: "v1.3.4", note: ""}, + {name: "theora", version: "v1.1.1", note: ""}, + {name: "opus", version: "v1.3.1", note: ""}, + {name: "vorbis", version: "v1.3.3", note: ""}, + {name: "zlib", version: "v1.2.11", note: ""}, + {name: "libwebp", version: "v1.1.0", note: ""}, + {name: "freetype2", version: "v2.10.4", note: ""}, + {name: "fribidi", version: "v1.0.9", note: ""}, + {name: "harfbuzz", version: "5.2.0", note: ""}, + {name: "libass", version: "0.15.0", note: ""}, + ].map((row) => ( + + + {row.name} + + {row.version} + {row.note} + + ))} + +
+
diff --git a/apps/website/docusaurus.config.js b/apps/website/docusaurus.config.js index 95fe318..eae8156 100644 --- a/apps/website/docusaurus.config.js +++ b/apps/website/docusaurus.config.js @@ -72,7 +72,7 @@ const config = { items: [ { type: "doc", - docId: "intro", + docId: "overview", position: "left", label: "Docs", }, diff --git a/apps/website/sidebars.js b/apps/website/sidebars.js index 3dccb8e..58559ef 100644 --- a/apps/website/sidebars.js +++ b/apps/website/sidebars.js @@ -18,15 +18,11 @@ const sidebars = { // But you can create a sidebar manually tutorialSidebar: [ - "intro", + "overview", { type: "category", label: "Getting Started", - items: [ - "getting-started/installation", - "getting-started/usage", - "getting-started/lib-versions", - ], + items: ["getting-started/installation", "getting-started/usage"], }, "migration", "faq", diff --git a/apps/website/src/pages/playground.md b/apps/website/src/pages/playground.md index 0c202fc..3535c28 100644 --- a/apps/website/src/pages/playground.md +++ b/apps/website/src/pages/playground.md @@ -32,7 +32,7 @@ development! ## How to Use :rocket: -> It is recommended to read [Introduction](/docs/intro) first to learn +> It is recommended to read [Overview](/docs/overview) first to learn ffmpeg.wasm fundamentals. Demo Video: diff --git a/apps/website/static/asset/ffmpegwasm-arch.drawio b/apps/website/static/asset/ffmpegwasm-arch.drawio new file mode 100644 index 0000000..c76f1dc --- /dev/null +++ b/apps/website/static/asset/ffmpegwasm-arch.drawio @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/apps/website/static/img/ffmpegwasm-arch.png b/apps/website/static/img/ffmpegwasm-arch.png new file mode 100644 index 0000000000000000000000000000000000000000..f0ec68b767429c8c48173e6aae3f63bb408a8fa0 GIT binary patch literal 79474 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