3
- Я строй Android проекта смешанного режима, проект с использованием нативного FFmpeg
- В Libs является
2.1. libavutil.so -> libavutil.so.51
2.2. libavcodec.so -> libavcodec.so.54
2.3. libavformat.so -> libavformat.so.54 - Моего Java код включает следующий раздел JNI для загрузки родную LIBS:
статического {
System.loadLibrary ("avutil");
System.loadLibrary ("avcodec");
System.loadLibrary ("avformat");
} - 'libavcodec.so' зависит от 'libavutil.so.51' И НЕ на 'libavutil.so'.
- При запуске моей деятельности System.loadLibrary ("avcodec"); excepts с «не может загрузить необходимую библиотеку„libavutil.so.51“для„libavcodec.so“(„libavutil.so.51“библиотеки не найден)»
- На моем Android.mk У меня есть следующий раздел чтобы родные ЛИЭС добавлен в АПК:
включает $ (CLEAR_VARS)
LOCAL_MODULE: = MyLib
LOCAL_SRC_FILES: = ../../../mylib/libmylib.so
включает $ (PREBUILT_SHARED_LIBRARY)
- замена libmylib.so на libmylib.so.% Some num бер% вызывают неудачное завершение процесса сборки с [LOCAL_SRC_FILES должны указывать на файл, заканчивающийся с «.so»]
Имея выше в виде, как я могу иметь кодек загрузки без проблемы зависимостей?
- Могу ли я установить зависимость libavcodec.so, чтобы указать на libavutil.so, а не libavutil.so.51?
- Могу ли я изменить Android.mk, чтобы он мог упаковать libavutil.so.51 (без расширения .SO)? будет ли он загружаться с помощью «System.loadLibrary»?.
Любая помощь будет оценена по достоинству !!!
Надав в Sophin
- Могу ли я установить зависимость libavcodec.so, чтобы указать на libavutil.so, а не libavutil.so.51?
Вы когда-нибудь находили реальное решение? Я в той же дыре и сталкиваюсь с тем же ограничением из-за LGPL. – spartygw
Хорошо, я, наконец, нашел решение для этого, изменив Makefile в дистрибутиве ffmpeg для создания библиотек без суффикса версии. Итак, у меня есть true libavutil.so, libavcodec.so, libswscale.so и все работает над моей связью 4! – spartygw
Привет, я столкнулся с такой же проблемой, когда использовал последний FFMPEG, ваша точка очень полезна, но я не сделал этого из-за того, что не знаю, как изменить, можете ли вы помочь мне указать, как его изменить? – Sean