我正在尝试用 adnroid ndk 编译 lib LAME
我已经被this编译成功了并使用它将 pcm 转换为 mp3,任何想法都可以正常工作
但现在我想使用 lame 的 hip_decode 但它似乎 hip 通常不存在于库中,即使使用“mpglib_interface.c”编译也是如此
并关注this我使用“#define HAVE_MPGLIB 1”和“LOCAL_CFLAGS = -DSTDC_HEADERS -DHAVE_MPGLIB” 但是我得到了
libmp3lame/mpglib_interface.c:36:10: fatal error: 'interface.h' file not found
我试过 include interface.h 但它似乎不对并且给出了奇怪的错误...
最佳答案
我解决了这个问题
您必须将 mpglib 中的所有 .c 和 .h 文件复制(并替换)到 libmp3lame
并添加所有.c文件 安卓.mk
以我为例:
LOCAL_SRC_FILES := ../lame-3.100/libmp3lame/dct64_i386.c ../lame-3.100/libmp3lame/tabinit.c ../lame-3.100/libmp3lame/layer1.c ../lame-3.100/libmp3lame/layer2.c ../lame-3.100/libmp3lame/layer3.c ../lame-3.100/libmp3lame/decode_i386.c ../lame-3.100/libmp3lame/common.c ../lame-3.100/libmp3lame/interface.c ../lame-3.100/libmp3lame/mpglib_interface.c ../lame-3.100/libmp3lame/bitstream.c ../lame-3.100/libmp3lame/encoder.c ../lame-3.100/libmp3lame/fft.c ../lame-3.100/libmp3lame/gain_analysis.c ../lame-3.100/libmp3lame/id3tag.c ../lame-3.100/libmp3lame/lame.c ../lame-3.100/libmp3lame/newmdct.c ../lame-3.100/libmp3lame/presets.c ../lame-3.100/libmp3lame/psymodel.c ../lame-3.100/libmp3lame/quantize.c ../lame-3.100/libmp3lame/quantize_pvt.c ../lame-3.100/libmp3lame/reservoir.c ../lame-3.100/libmp3lame/set_get.c ../lame-3.100/libmp3lame/tables.c ../lame-3.100/libmp3lame/takehiro.c ../lame-3.100/libmp3lame/util.c ../lame-3.100/libmp3lame/vbrquantize.c ../lame-3.100/libmp3lame/VbrTag.c ../lame-3.100/libmp3lame/version.c
关于Android NDK 编译 LAME HAVE_MPGLIB > 'interface.h' 找不到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53011499/