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
目录
相关文章
|
6天前
|
Linux 编译器 Android开发
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
在Linux环境下,本文指导如何交叉编译x265的so库以适应Android。首先,需安装cmake和下载android-ndk-r21e。接着,下载x265源码,修改crosscompile.cmake的编译器设置。配置x265源码,使用指定的NDK路径,并在配置界面修改相关选项。随后,修改编译规则,编译并安装x265,调整pc描述文件并更新PKG_CONFIG_PATH。最后,修改FFmpeg配置脚本启用x265支持,编译安装FFmpeg,将生成的so文件导入Android工程,调整gradle配置以确保顺利运行。
24 1
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
|
1月前
|
算法 数据处理 开发者
FFmpeg库的使用与深度解析:解码音频流流程
FFmpeg库的使用与深度解析:解码音频流流程
36 0
|
3月前
|
XML 编解码 前端开发
【web组件库系列】封装自己的字体图标库
【web组件库系列】封装自己的字体图标库
56 0
|
3月前
|
Linux 编译器 数据安全/隐私保护
Windows10 使用MSYS2和VS2019编译FFmpeg源代码-测试通过
FFmpeg作为一个流媒体的整体解决方案,在很多项目中都使用了它,如果我们也需要使用FFmpeg进行开发,很多时候我们需要将源码编译成动态库或者静态库,然后将库放入到我们的项目中,这样我们就能在我们的项目中使用FFmpeg提供的接口进行开发。关于FFmpeg的介绍这里就不过多说明。
76 0
|
3天前
|
开发框架 前端开发 数据库
Python从入门到精通:3.3.2 深入学习Python库和框架:Web开发框架的探索与实践
Python从入门到精通:3.3.2 深入学习Python库和框架:Web开发框架的探索与实践
|
21天前
|
编解码 缓存 算法
FFmpeg开发笔记(四)FFmpeg的动态链接库介绍
FFmpeg是一个强大的多媒体处理框架,提供ffmpeg、ffplay和ffprobe工具及八个库:avcodec(编解码)、avdevice(设备输入输出)、avfilter(音视频滤镜)、avformat(格式处理)、avutil(通用工具和算法)、postproc(后期效果)、swresample(音频重采样)和swscale(视频图像转换)。这些库支持定制化开发,涵盖了从采集、编码、过滤到输出的全过程。了解详细FFmpeg开发信息,可参考《FFmpeg开发实战:从零基础到短视频上线》。
32 0
FFmpeg开发笔记(四)FFmpeg的动态链接库介绍
|
24天前
|
开发工具
使用FFmpeg4.3.1的SDK官方开发包编译ffmpeg.c(二)
使用FFmpeg4.3.1的SDK官方开发包编译ffmpeg.c(二)
12 0
|
1月前
|
存储 前端开发 JavaScript
强烈推荐一个Python库!制作Web Gui也太简单了!
强烈推荐一个Python库!制作Web Gui也太简单了!
|
2月前
|
SQL 开发框架 .NET
ASP.NET WEB+EntityFramework数据持久化——考核练习库——1、用户管理系统(考点:查询列表、增加、删除)
ASP.NET WEB+EntityFramework数据持久化——考核练习库——1、用户管理系统(考点:查询列表、增加、删除)
67 0
|
3月前
|
前端开发
【web组件库系列】纯CSS实现典型网页数据分页器
【web组件库系列】纯CSS实现典型网页数据分页器
46 0