我正在开发android应用程序,因为我必须使用在android编解码器上不可用的celt音频编解码器,我决定使用JNI,我遇到了以下问题(我是C新手)
D:/adt-bundle-windows-x86/android-ndk-r8e/build/core/add-application.mk:128: Android NDK: WARNING: APP_PLATFORM android-14 is larger than android:minSdkVersion 4 in ./AndroidManifest.xml
"Compile thumb : celt-0.11.1 <= bands.c
In file included from jni/celt-0.11.1/libcelt/modes.h:36:0,
from jni/celt-0.11.1/libcelt/bands.h:34,
from jni/celt-0.11.1/libcelt/bands.c:35:
jni/celt-0.11.1/libcelt/mdct.h:52:40: error: expected ':', ',', ';', '}' or '__attribute__' before 'trig'
这是源代码
#ifndef MDCT_H
#define MDCT_H
#include "kiss_fft.h"
#include "arch.h"
typedef struct {
int n;
int maxshift;
const kiss_fft_state *kfft[4];
const kiss_twiddle_scalar * restrict trig; //mdct.h line 52
} mdct_lookup;
我在像这样的许多其他行中遇到了同样的错误
error: expected '=', ',', ';', 'asm' or '__attribute__' before 'X'
编码
celt_norm * restrict X, * restrict Y;