GithubHelp home page GithubHelp logo

Comments (9)

la-matthew-yang avatar la-matthew-yang commented on July 21, 2024 1

Even with the static loading, some devices are still reporting the same error. For some other devices, the issue is fixed with the workaround.

I've noticed that the issues are only happening on devices with API level below 23. For 23+ devices, the issue is not found.

from libgdx-oboe.

barsoosayque avatar barsoosayque commented on July 21, 2024

Is there any correlation between a processor architecture and the crash ?

from libgdx-oboe.

la-matthew-yang avatar la-matthew-yang commented on July 21, 2024

Some are armeabi-v7a; some are arm64-v8a

from libgdx-oboe.

barsoosayque avatar barsoosayque commented on July 21, 2024

Hmm. Are there any working armeabi-v7a / arm64-v8a devices ? Otherwise it might be a false positive link time optimization.. However, I think my own test device is arm64-v8a, so that is indeed confusing.

Also, would be great to know Android version of the devices on which the crash happens, but I doubt that it will be the case 😔

from libgdx-oboe.

la-matthew-yang avatar la-matthew-yang commented on July 21, 2024

Sorry about the delay.

After some further testing, I found that this is Android API related. Most of the crashes are on API 17, 19 and 22.

I think this is related to the issue of native library loading. Related discussion: https://stackoverflow.com/questions/28806373/android-4-2-ndk-library-loading-crash-load-librarylinker-cpp750-soinfo-l

I think I fixed the issue by loading the so files explicitly like the following in AndroidApplication.java:
:)

SharedLibraryLoader libraryLoader = new SharedLibraryLoader();
libraryLoader.load("avutil");
libraryLoader.load("swresample");
libraryLoader.load("avcodec");
libraryLoader.load("avformat");

from libgdx-oboe.

barsoosayque avatar barsoosayque commented on July 21, 2024

Uhh, there is indeed a problem with dynamic linking in API 19+ (link). It is nearly impossible to link ffmpeg libraries statically, so I'll test your workaround, and if it works, I'll use it. Would be super neat if you'd PR it, otherwise I'll push the code after a while.

from libgdx-oboe.

la-matthew-yang avatar la-matthew-yang commented on July 21, 2024

I end up using libgdx-oboe for api 23+ and default MediaPlayer based libgdx audio for devices with api version lower than 23.

from libgdx-oboe.

barsoosayque avatar barsoosayque commented on July 21, 2024

I honestly would like to help you with this, but I don't have any device that would reproduce the issue. I'll research android dynamic linking once again, and hopefully will be able to blind fix that. Can't make any promises, though.

from libgdx-oboe.

barsoosayque avatar barsoosayque commented on July 21, 2024

Seems to be related to #17 if I'm not mistaken

from libgdx-oboe.

Related Issues (18)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.