Сборка libvpx для Android
Мне нужно использовать кодирование vp8 в моем приложении для Android. Так что мне нужно скомпилировать libvpx для Android с NDK.
Я использую шаги в этом вопросе сборки vp8 на Android, чтобы сделать это.
Я использую android-ndk-r15c для компиляции. Сначала я запускаю конфигурацию:
libvpx_android/jni$ ./libvpx/configure --target=armv7-android-gcc --disable-examples --sdk-path=/home/android-ndk-r15c
есть выход:
disabling examples
enabling vp8_encoder
enabling vp8_decoder
enabling vp9_encoder
enabling vp9_decoder
Configuring for target 'armv7-android-gcc'
enabling armv7
enabling neon
enabling neon_asm
enabling realtime_only
enabling runtime_cpu_detect
enabling webm_io
enabling libyuv
Creating makefiles for armv7-android-gcc libs
Creating makefiles for armv7-android-gcc tools
Creating makefiles for armv7-android-gcc docs
Затем я запускаю сборку с:
/home/android-ndk-r15c/ndk-build
и получил ошибку:
[armeabi-v7a] Install : liboggJNI.so => libs/armeabi-v7a/liboggJNI.so
[armeabi-v7a] Install : libvorbisJNI.so => libs/armeabi-v7a/libvorbisJNI.so
[armeabi-v7a] Compile arm : vpx <= vpx_config.c
[armeabi-v7a] StaticLibrary : libvpx.a
[armeabi-v7a] SharedLibrary : libvpxJNI.so
[armeabi-v7a] Install : libvpxJNI.so => libs/armeabi-v7a/libvpxJNI.so
[armeabi-v7a] Compile++ arm : webmJNI <= Cluster.cc
/home/libvpx_android/jni/bindings/JNI/webm/mkvmuxer/Cluster.cc:73:63: error: no matching constructor for initialization of
'mkvmuxer::Cluster'
jlong jCluster = reinterpret_cast<jlong>(new (std::nothrow) mkvmuxer::Cluster(
^
/home/libvpx_android/jni/bindings/JNI/libwebm/mkvmuxer/mkvmuxer.h:1387:36: note: candidate constructor not viable: requires
1 argument, but 2 were provided
LIBWEBM_DISALLOW_COPY_AND_ASSIGN(Cluster);
^
/home/libvpx_android/jni/bindings/JNI/libwebm/mkvmuxer/mkvmuxer.h:1203:3: note: candidate constructor not viable: requires
at least 3 arguments, but 2 were provided
Cluster(uint64_t timecode, int64_t cues_pos, uint64_t timecode_scale,
^
1 error generated.