是否可以使用Emscripten进行优化来构建/编译Opus / libopus?我不确定这是否是Emscripten和WebAssembly的当前限制,或者是否存在确保解码器在WebAssembly(wasm)中进行优化的选项。
<小时/> 我在opus_decoder
下面收到以下警告:
CC src/opus_decoder.lo
src/opus_decoder.c:37:10: warning: You appear to be compiling without optimization, if so
opus will be very slow. [-W#pragma-messages]
在没有Emscripten包装器的情况下正常编译Opus时不会产生此警告:
$ ./configure --disable-intrinsics --disable-rtcd
$ make
包装时引入警告:
$ emconfigure ./configure --disable-intrinsics --disable-rtcd
$ emmake make
使用:
d01199b
)答案 0 :(得分:2)
您可以将CFLAGS
传递到配置步骤,如下所示:
emconfigure ./configure --disable-intrinsics --disable-rtcd CFLAGS='-O2'
这将启用优化并隐藏消息。
答案 1 :(得分:1)
嗯,你在emscripten中运行它,所以它不会很快......:)
问题在于,如果你假装是gcc但实际上并不是x86目标,那么你会受到这条消息的攻击。</ p>
您可以忽略该消息(优化似乎仅适用于x86)或定义OPUS_WILL_BE_SLOW(-DOPUS_WILL_BE_SLOW)以使其消失。
答案 2 :(得分:0)
我还没有测试过webassembly,但我过去使用emscripten编译来创建与asm.js一起使用的代码,我已经将这些选项用于emcc
GROUP BY