Author Topic: BASSZXTUNE - chiptune support for BASS  (Read 17647 times)

ZXED

  • Posts: 40
Re: BASSZXTUNE - chiptune support for BASS
« Reply #25 on: 15 Nov '15 - 09:53 »
The new version (v2.4.4) of BASSZXTUNE is out!

Major improvements:
    - new formats: NSF, NSFE, GBS, SAP, HES, VGM, GYM, AHX
    - seek speed was increased dramatically for some formats
    - Android i686 build

Downloads, details & full changelog:
https://sourceforge.net/projects/basszxtune/files/basszxtune/v2.4.4/

In the next version I'll probably try to disable the support for the formats that overlap with BASS-native formats.
This is not implemented yet.

Dhry

  • Posts: 64
Re: BASSZXTUNE - chiptune support for BASS
« Reply #26 on: 11 Dec '15 - 23:13 »
Is there a way to make this work with the 1by1 player? I extracted basszxtune.dll and basszxtune.lib into the 1by1 folder but it just crashes the player. Usually you can just extract a BASS extension into the folder and it will work fine by extending bass.dll automatically.

Cheers
DRS

haspor

  • Posts: 19
Re: BASSZXTUNE - chiptune support for BASS
« Reply #27 on: 15 Dec '15 - 09:18 »
The new version (v2.4.4) of BASSZXTUNE is out!

Major improvements:
    - new formats: NSF, NSFE, GBS, SAP, HES, VGM, GYM, AHX
    - seek speed was increased dramatically for some formats
    - Android i686 build

Downloads, details & full changelog:
https://sourceforge.net/projects/basszxtune/files/basszxtune/v2.4.4/

In the next version I'll probably try to disable the support for the formats that overlap with BASS-native formats.
This is not implemented yet.


outstanding job :)

ZXED

  • Posts: 40
Re: BASSZXTUNE - chiptune support for BASS
« Reply #28 on: 20 Dec '15 - 14:25 »
I extracted basszxtune.dll and basszxtune.lib into the 1by1 folder but it just crashes the player.

Weird. Judging by the debug output, the crash happens outside of the plugin, before the plugin is even loaded. It seems like 1by1 can't load the plugin because of some binary incompatibility or something like that. Also, 1by1 provides no logs nor error messages, so I can't effectively locate the source of the problem. I tested the plugin with another music player - AIMP, and they work fine together. Currently, I have no idea why the plugin doesn't work with 1by1.

BTW, *.lib files are only needed for development, you don't have to copy these files alongside *.dll.

Jfarro

  • Posts: 33
Re: BASSZXTUNE - chiptune support for BASS
« Reply #29 on: 5 Jan '16 - 09:46 »
I'm working on a Windows UWP app using Bass, and was looking at adding .nsf and SID support.  This library looks like a much better avenue than my other plan (trying to shim in FMod somehow and then programmatically alter).

How tough would it be to have this work with a windows UWP app? I'm willing to help where I can.

Dhry

  • Posts: 64
Re: BASSZXTUNE - chiptune support for BASS
« Reply #30 on: 5 Jan '16 - 16:37 »
Weird. Judging by the debug output, the crash happens outside of the plugin, before the plugin is even loaded. It seems like 1by1 can't load the plugin because of some binary incompatibility or something like that. Also, 1by1 provides no logs nor error messages, so I can't effectively locate the source of the problem. I tested the plugin with another music player - AIMP, and they work fine together. Currently, I have no idea why the plugin doesn't work with 1by1.

No worries ZXED, thanks for looking at it. I might post on the 1by1 forum and see what they say about it.

Cheers
DRS

ZXED

  • Posts: 40
Re: BASSZXTUNE - chiptune support for BASS
« Reply #31 on: 5 Jan '16 - 17:23 »
How tough would it be to have this work with a windows UWP app?

I'll look into it and contact you via PM when I have any ideas. Also, do you have a fully working UWP example (project source code) that uses some other BASS add-on? That could be a great help for me since I have no experience with UWP projects.

Jfarro

  • Posts: 33
Re: BASSZXTUNE - chiptune support for BASS
« Reply #32 on: 10 Jan '16 - 21:23 »
I do have Bass for Windows phone working, along with Midi support.  There were some changes Ian I believe had to do to Bass to use the Storage API's for file loading..and when I consumed them I had to use Task.Run to do loads on a background thread. Other than that I have the Midi addon working quite well with soundfont support and such.

Jfarro

  • Posts: 33
Re: BASSZXTUNE - chiptune support for BASS
« Reply #33 on: 20 Jan '16 - 11:52 »
(PLEASE SEE EDIT BELOW)
ZXED followed up with me and let me know that he tested it...and this just worked! I wanted to share this with any other fellow UWP windows developers.  I've also verified it in my app..the integration was really smooth.  This is for x64/x86...I'll work to compile it for Arm and see if I can get that working as well.

Thanks a ton ZXED for sharing this with the community...tonight I got to hear some of my favorite c64 tunes (Legacy of the ancients and the Koronis Rift theme) in an app that I'd put together with help from your library!

EDIT: While this did indeed compile and run, it does not currently pass store certification.  There are a number of MSVCRT api's which are called which the store does not allow. I'll see if I can help ZXED out and if we can get this working.
« Last Edit: 20 Jan '16 - 22:50 by Jfarro »

ZXED

  • Posts: 40

ZXED

  • Posts: 40
Re: BASSZXTUNE - chiptune support for BASS
« Reply #35 on: 30 Oct '16 - 09:04 »
The new version (v2.4.5) of BASSZXTUNE is out!

This version has undergone a huge rewrite and all constants BASS_POS_ZXTUNE_*, BASS_TAG_ZXTUNE_* and other constants and their usage have been changed! See README file for more details if you use any of these constants. Hopefully, there will be no such major changes from now on.

Major improvements:
    - new info can be retreived via tags: number of frames, loop frame, additional module strings (e.g. samples/instruments names) and more;
    - ability to set maximum allowed file size (can be somewhat useful on mobile devices with limited processing power), current max file size has been changed to 2 MiB;
    - fixed some crashes on Android.

Downloads, details & full changelog:
https://sourceforge.net/projects/basszxtune/files/basszxtune/v2.4.5/

The project source code has been moved to:
https://bitbucket.org/z80maniac/zxtune

Previously the source code was split between SourceForge and Bitbucket. Now all the source code is on Bitbucket. Also, now you can find clear instructions on how to build the add-on yourself:
https://bitbucket.org/z80maniac/zxtune/src/master/apps/plugins/BUILD.TXT
https://bitbucket.org/z80maniac/zxtune/src/master/apps/plugins/bass/BUILD.TXT

There will be no UWP version for now. May be in the next release. Also, there will be no corresponding XMplay plugin release because there were almost no changes in it since the last release.

ZXED

  • Posts: 40
Re: BASSZXTUNE - chiptune support for BASS
« Reply #36 on: 15 Jul '17 - 20:07 »
The new version (v2.4.6) of BASSZXTUNE is out!

Major changes:
    - default maximum file size is now 256 MiB

New supported formats:
    - PlayStation 1&2 Sound Format (PSF,PSF2)
    - Nintendo Ultra64 Sound Format (USF)
    - GameBoy Advance Sound Format (GSF)
    - HivelyTracker (HVL)

Known bugs:
    - Crash when opening compressed USF files on 64-bit Windows

Additional notes:
    - This release added support to PSF-like formats. These formats are usually multi-file, i.e. they need several files at once for a single tune (e.g. *.minipsf + *.psflib). BASSZXTUNE supports only single-file formats, but it supports archived modules. So, to play multi-file formats you may archive all needed files into any supported archive (zip, 7z, tar, gz, rar) optionally changing the extension of the archive to a supported extension (e.g. *.psf).
    - *.lib files for MSVC are no longer shipped inside the release archives. You can still use *.lib files from the previous versions or create them yourself.

Downloads, details & full changelog:
https://sourceforge.net/projects/basszxtune/files/basszxtune/v2.4.6/


Is there a way to disable some formats? I would like to use standard BASS capabilities for some file formats, like .xm, .it and such.
It turned out to be harder than I thought, so disabling formats will not be implemented. Instead you may use some hack to achieve the similar result. The add-on will not open any file if its filesize is bigger than the allowed filesize (BASS_CONFIG_ZXTUNE_MAXFILESIZE setting). So you may try the following:
Code: [Select]
DWORD oldVal = BASS_GetConfig(BASS_CONFIG_ZXTUNE_MAXFILESIZE);
BASS_SetConfig(BASS_CONFIG_ZXTUNE_MAXFILESIZE, 0);
BASS_StreamCreateFile(...);
BASS_SetConfig(BASS_CONFIG_ZXTUNE_MAXFILESIZE, oldVal);

Of course, to only disable BASS-supported formats, it's still easier to just call BASS_MusicLoad before BASS_StreamCreateFile.

There will be no UWP version for now. May be in the next release.
I decided to completely drop UWP version for the time being due to much complicated build and test processes. However, the project is open source, so anyone willing to try to make UWP version can fork the project here:
https://bitbucket.org/z80maniac/zxtune