android - Android NDK 编译 LAME HAVE_MPGLIB > 'interface.h' 文件未找到
问题描述
我正在尝试使用 adnroid ndk 编译 lib LAME
我已经成功地编译了这个并用它来将 pcm 转换为 mp3 并且任何想法都可以正常工作
但现在我想使用 lame 的 hip_decode 但似乎 hip_decode 通常不存在于 lib 中,即使使用“mpglib_interface.c”编译也是如此
并按照这个我使用“#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
并在 Android.mk 中添加所有 .c 文件
就我而言:
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
推荐阅读
- javascript - “固定”元素内的“粘性”元素向相反方向滑动
- powerbi - 带有多个筛选器的 Power BI DAX 运行总计
- html - 无法使用 CSS 删除内容框上的间距
- sharepoint - 哪个 SharePoint API 使用 JSOM 或 REST?
- python - 如何解决:DLL 加载失败:找不到文件 tensorflow.python._pywrap_tensorflow_internal
- reactjs - How do I redirect to another page upon search in React js?
- java - Java RestTemplate 如何使用正文发布
- javascript - 从 key 获取 JSON 值,其中 key 是变量名
- ruby - 如何在 mac 版本 10.15.5 上更新 ruby
- ios - 在 Game Center 中连接的设备之间发送数据时出错