WebAssembly01--web 编译FFmpeg(WebAssembly版)库

简介: WebAssembly01--web 编译FFmpeg(WebAssembly版)库

下载ffmpeg版本

注意 这里环境是承接docker Ubuntu wasm 环境配置 浏览器debug c/c++ 中的docker ubuntu 环境

git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg
cd ffmpeg
git branch -r
git checkout origin/release/5.1  #切换到5.1版本

交叉编译

指定编译工具

指定c编译工具 --cc="emcc"

指定c++编译工具--cxx="em++"

指定创建静态库工具 --ar="emar"

指定输出目标

--enable-cross-compile

--target-os=none #所有

--arch=x86_32

--cpu=gengeric

裁剪ffmpeg

裁剪大模块

--disable-avformat --disable-avdevice --disable-avfilter --disable-swresample

--disable-programs --disable-debug --disable-doc

其他杂项

--disable-everything

打开需要的解码器(我这里只做播放)

--enable-decoder=hevc --enable-parser=hevc

--enable-decoder=h264 --enable-parser=h264

buildffmpeg.sh

#!/bin/bash
rm -rf ffmpeg
mkdir -p ffmpeg
abspath=$(pwd)/ffmpeg
cd /home/emsdk/ffmpeg
make clean
emconfigure ./configure --cc="emcc" --cxx="em++" --ar="emar" --nm="emnm" \
--prefix=${abspath} \
--enable-cross-compile --target-os=none --arch=x86_32 --cpu=gengeric\
--disable-avformat --disable-avdevice --disable-avfilter --disable-swresample \
--disable-programs --disable-debug --disable-doc --disable-everything \
--enable-decoder=hevc --enable-parser=hevc \
--enable-decoder=h264 --enable-parser=h264  \
--enable-gpl --enable-version3 --disable-x86asm --disable-postproc --disable-asm
make install
目录
相关文章
|
2月前
|
前端开发 JavaScript 区块链
连接区块链节点的 JavaScript 库 web3.js
连接区块链节点的 JavaScript 库 web3.js
|
2月前
|
Linux
Linux编译FFmpeg
Linux编译FFmpeg
80 0
|
18天前
|
开发框架 .NET PHP
Web服务搭建&站库分离&路由访问
Web服务搭建&站库分离&路由访问
|
2月前
|
算法 Linux Windows
FFmpeg开发笔记(十七)Windows环境给FFmpeg集成字幕库libass
在Windows环境下为FFmpeg集成字幕渲染库libass涉及多个步骤,包括安装freetype、libxml2、gperf、fontconfig、fribidi、harfbuzz和libass。每个库的安装都需要下载源码、配置、编译和安装,并更新PKG_CONFIG_PATH环境变量。最后,重新配置并编译FFmpeg以启用libass及相关依赖。完成上述步骤后,通过`ffmpeg -version`确认libass已成功集成。
52 1
FFmpeg开发笔记(十七)Windows环境给FFmpeg集成字幕库libass
|
2月前
|
安全 Linux Android开发
FFmpeg开发笔记(十六)Linux交叉编译Android的OpenSSL库
该文介绍了如何在Linux服务器上交叉编译Android的FFmpeg库以支持HTTPS视频播放。首先,从GitHub下载openssl源码,解压后通过编译脚本`build_openssl.sh`生成64位静态库。接着,更新环境变量加载openssl,并编辑FFmpeg配置脚本`config_ffmpeg_openssl.sh`启用openssl支持。然后,编译安装FFmpeg。最后,将编译好的库文件导入App工程的相应目录,修改视频链接为HTTPS,App即可播放HTTPS在线视频。
56 3
FFmpeg开发笔记(十六)Linux交叉编译Android的OpenSSL库
|
2月前
|
机器学习/深度学习 JSON 编译器
C++ 资源大全:标准库、Web框架、人工智能等 | 最全整理
C++ 资源列表,内容包括: 标准库、Web应用框架、人工智能、数据库、图片处理、机器学习、日志、代码分析等
86 1
|
1月前
|
Ubuntu
蓝易云 - Ubuntu18.04安装编译ffmpeg库
现在,你应该已经在你的Ubuntu 18.04系统上成功安装和编译了FFmpeg库。你可以通过运行 `ffmpeg -version`来验证安装是否成功。
27 0
|
2月前
|
中间件 Go API
Golang深入浅出之-Go语言标准库net/http:构建Web服务器
【4月更文挑战第25天】Go语言的`net/http`包是构建高性能Web服务器的核心,提供创建服务器和发起请求的功能。本文讨论了使用中的常见问题和解决方案,包括:使用第三方路由库改进路由设计、引入中间件处理通用逻辑、设置合适的超时和连接管理以防止资源泄露。通过基础服务器和中间件的代码示例,展示了如何有效运用`net/http`包。掌握这些最佳实践,有助于开发出高效、易维护的Web服务。
54 1
|
2月前
|
JavaScript 前端开发 API
在Node.js上使用dojo库进行面向对象web应用开发
请注意,虽然这个例子在Node.js环境中使用了Dojo,但Dojo的许多功能(例如DOM操作和AJAX请求)在Node.js环境中可能无法正常工作。因此,如果你打算在Node.js环境中使用Dojo,你可能需要查找一些适用于服务器端JavaScript的替代方案。
33 0
|
2月前
|
Ubuntu Linux Shell
Android-NDK-clang 编译 FFmpeg
Android-NDK-clang 编译 FFmpeg
57 0