使用Emscripten编译ffmpeg库(.bc)

    技术2025-12-31  2

    该文章将介绍如何使用emscripten编译ffmpeg,生成.bc文件,用于开发基于webassembly技术的视音频编辑器。

    ffmpeg版本:4.3 系统环境:Ubuntu 18

    1、

    首先下载ffmpeg源码 点击其中一个download下载。 下载并解压。 如果你下的是4.3版,解压后出现ffmpeg-4.3 文件夹。

    2、

    安装Emscripten 可参考以下资料。 安装Emscripten 并完成 你好,世界!中的实例。

    安装后,打开终端,进入管理员模式。 sudo root 输入密码:

    3、

    激活emcc命令 从终端进入emsdk文件夹(也就是之前安装Emscripten时下载的emsdk)。 实行如下命令:

    ./emsdk activate latest source ./emsdk_env.sh

    检查反馈是否正常。

    之后使用 emcc -v 检查emcc命令是否成功激活。

    4、

    开始编译。

    从刚刚激活了emcc命令的终端窗口进入 ffmpeg-4.3文件夹。 执行以下命令对ffmpeg进行配置:

    emconfigure ./configure --cc="emcc" --cxx="em++" --ar="emar" --ranlib=emranlib --prefix=$(pwd)/dist --enable-cross-compile --target-os=none --arch=x86_64 --cpu=generic --disable-ffplay --disable-ffprobe --disable-asm --disable-doc --disable-devices --disable-indevs --disable-outdevs --disable-network --disable-w32threads --disable-pthreads --enable-ffmpeg --enable-static --disable-shared --enable-decoder=pcm_mulaw --enable-decoder=pcm_alaw --enable-decoder=adpcm_ima_smjpeg --enable-decoder=aac --enable-decoder=hevc --enable-decoder=h264 --enable-protocol=file --disable-stripping

    (如果报错,可以参考这篇Emscripten编译ffmpeg问题汇总进行处理,里面包含了我编译ffmpeg时踩过的的坑)

    如果你所使用的不是4.3版本, 可能会出现类似 Unknown option "–enable-version3 的反馈 只需要将命令中对应的词句删除即可。

    只要没有报错,就可以执行下一步了。 下面这步耗时较大,可以玩玩手机看看视频等待。

    make

    再接着

    sudo make install

    成功后,你将在ffmpeg-4.3文件夹下找到一个 名为 dist 的文件夹。 在该文件夹中的lib找到7个后缀为 .a 的文件。

    我一般将这些文件后缀修改为.bc。

    这些文件将在webassembly开发视音频编辑器时,用到。

    Processed: 0.012, SQL: 9