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