Emscripten之编译项目

本文介绍了如何在Emscripten环境下编译C项目,特别是针对Faac这个AAC音频编码库。文章详细阐述了两种引入库依赖的方法:直接引入源文件和使用静态/动态库,并给出了相应的编译指令。通过设置ALLOW_MEMORY_GROWTH参数,允许在运行时动态扩展内存,解决了内存容量问题。最后,讨论了在编译为WebAssembly时采用可变内存模式的效率优势。
摘要由CSDN通过智能技术生成

一、前言

在C项目中引入外部依赖,通常有两种方法:引入库源代码、使用静/动态库。因为Emscripten做的工作主要是将C代码编译成asm.js或者WebAssembly,所以对于Emscripten编译的C项目而言,也是可以使用以上两种方法添加依赖。接下来将以在Ubuntu16.04 x64系统下使用Emscripten编译Faac项目为例进行讲解。

二、使用Emscripten编译项目

Faac是基于C编写的开源库,是目前较成熟的AAC音频编码器。假设以下程序test.cc需要使用Faac的依赖:

#include <iostream>
#include "faac.h"

int main()
{
   
	unsigned long inputSample;
	unsigned long maxOutputBytes;
	faacEncHandle encoder;
	encoder = faacEncOpen(8000, 1, 
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值