BASS_SSL do not support 16 KB

Started by jonahzheng,


jonahzheng

I was wrong, BASS_SSL 1.1.0l appears to already support 16KB.

Tadeu

BASS_SSL 1.1.0l is aligned to 16KB page support.

But it is not working on Android 16kb page devices. After updating both `libbass_ssl.so` and `libbass.so` in my project, when I try to stream media using `BASS_StreamCreateURL`, I always get `BASS_ERROR_SSL`, which is independent of the URL, server, or file (I tried multiple servers and multiple files).

Is that happening with someone else?

Aside from updating the `.SO` files and the BASS.java file, nothing else changed. I already checked all the release changes and API documentation, and I could not find any configuration change that could cause that.


Ian @ un4seen

If you add a system.loadLibrary("bass_ssl") call at the start of your app and then step over that line in the debugger, what messages do you see in Logcat?

Tadeu

Thanks for the suggestion.

Here is the crash message.

java.lang.UnsatisfiedLinkError: dlopen failed: "/data/app/~~M6VaeaH7ptoVv449RzKiOg==/fm.slumber.sleep.meditation.stories-qoKL_j8lSB-kK3pDXy2vsg==/base.apk!/lib/arm64-v8a/libbass_ssl.so" program alignment (8192) cannot be smaller than system page size (16384)

Before reply I double checked if I was using the latest BASS SSL library, and I am, version BASS_SSL 1.1.0l.

Is there another version of it? Or a way to build it with 16KB page support?

Ian @ un4seen

The last non-16kb page BASS_SSL version was also 1.1.0l (both based on OpenSSL 1.1.0l), so it isn't possible to distinguish which you have from that. You can check the file date instead; the 16kb page arm64-v8a libbass_ssl.so file is dated 12/9/2024. You can also use "objdump -p" on the file to check the alignment.

If you were previously using an older BASS_SSL version, is it possible your build system has that version cached? To check, if you delete the latest libbass_ssl.so libraries and rebuild your app, does it then fail to find libbass_ssl.so? If the problem persists, please also check if you can reproduce it in the emulator (with a 16kb page system image).

Tadeu

Thanks for the help!

After updating the project again, clear all caches, and it is working.