Author Topic: libbass.a for iOS ????  (Read 978 times)

promusicbisceglie

  • Posts: 25
libbass.a for iOS ????
« on: 1 Jun '23 - 09:18 »
Hi i'm using rad studio delphi and need for iOS development libbass.a .... libbass_fx.a .... libbassmidi.a .... where i can download these upgraded files?? i just find a bass.framework i cannot use...

Ian @ un4seen

  • Administrator
  • Posts: 26083
Re: libbass.a for iOS ????
« Reply #1 on: 1 Jun '23 - 13:54 »
Since BASS 2.4.17, the iOS versions of BASS/add-ons are dynamic libraries rather than static libraries, the same as on the other platforms. I'm not familiar with "rad studio delphi", but this change should generally just require linking with the new *.xcframework files instead of the old *.a files. If XCFrameworks aren't supported then you can try linking with the frameworks inside them (note there's one for devices and one for simulators).

promusicbisceglie

  • Posts: 25
Re: libbass.a for iOS ????
« Reply #2 on: 9 Jun '23 - 18:08 »
thank you, i will try and let you know

promusicbisceglie

  • Posts: 25
Re: libbass.a for iOS ????
« Reply #3 on: 16 Jun '23 - 14:51 »
Since BASS 2.4.17, the iOS versions of BASS/add-ons are dynamic libraries rather than static libraries, the same as on the other platforms. I'm not familiar with "rad studio delphi", but this change should generally just require linking with the new *.xcframework files instead of the old *.a files. If XCFrameworks aren't supported then you can try linking with the frameworks inside them (note there's one for devices and one for simulators).
Sorry, cannot work without heavy changes of my code ... many customized declaration...
function BASS_MIDI_StreamCreateFile (mem:BOOL; f:PWideChar; offset,length:QWORD; flags,freq:DWORD): HSTREAM; cdecl;external 'libbassmidi.a' name 'BASS_MIDI_StreamCreateFile';
How this will change???
Can you restore .a files?
Another question, why iOS don't have aac plugin for ac3 files? I need to decode some mp4 file within ac3 audio

Ian @ un4seen

  • Administrator
  • Posts: 26083
Re: libbass.a for iOS ????
« Reply #4 on: 16 Jun '23 - 16:26 »
Sorry, cannot work without heavy changes of my code ... many customized declaration...
function BASS_MIDI_StreamCreateFile (mem:BOOL; f:PWideChar; offset,length:QWORD; flags,freq:DWORD): HSTREAM; cdecl;external 'libbassmidi.a' name 'BASS_MIDI_StreamCreateFile';
How this will change???

Please try the Delphi units provided in the Windows BASS/add-on packages. They include support for other platforms too via a library name "const" definition, so that functions don't need to be customised for each platform. You may need to redownload to get the latest versions that include the new iOS library names.

Can you restore .a files?

Do you mean old versions? The latest BASS/add-on releases can't/won't be changed back, but I can get you the last static library releases if required. In that case, let me know which libraries you need.

Another question, why iOS don't have aac plugin for ac3 files? I need to decode some mp4 file within ac3 audio

I believe the CoreAudio codecs on iOS (and macOS) include support for AC3 in MP4 containers, so they should be playable by BASS without needing a plugin. If you have a file that isn't playable then please upload it to have a look at here (or post a link):

   ftp.un4seen.com/incoming/

MrRossi

  • Posts: 1
Re: libbass.a for iOS ????
« Reply #5 on: 27 Nov '23 - 15:53 »
Hello everyone,

I'm encountering the same problem as the thread author, or a similar problem mentioned here http://www.un4seen.com/forum/?topic=19367.0

I'm using Delphi 11.3 and want to publish my App for iOS.
As far as I know, Delphi cannot handle 3rd party frameworks nor can it "link binary with libraries".
(If I'm wrong here, please correct me!)

I can deploy the dynamic bass libraries (extracted from the xcframework and deployed to a subfolder) together with my App, and I can run it directly on my iOS device.
However, I encounter difficulties deploying it via an IPA-file to the App-Store (error-msg: "ERROR ITMS-90171: "Invalid Bundle Structure - The binary file "bass" is not permitted...".)

The best quick & dirty solution for me now seems to be using static libraries (bass.a, bassenc.a and bassenc_mp3.a, 64bit), if Ian@unseen could kindly provide them.
Alternatively, does any other Delphi user have a working solution for me?

Thanx &
Best Regards
Michael