Author Topic: BASS_FX 2.4.12.1  (Read 844188 times)

Ian @ un4seen

  • Administrator
  • Posts: 26177
Re: BASS_FX 2.4.12.1
« Reply #725 on: 25 Jun '18 - 13:38 »
Yes, on Linux, BASS_FX (and the other add-ons) isn't linked with the libbass.so library and instead depend on it being loaded by the application first.

Vperus

  • Posts: 2
Re: BASS_FX 2.4.12.1
« Reply #726 on: 25 Jun '18 - 17:27 »
Any reasons to do it? For example if you want to use https://github.com/ManagedBass/ManagedBass with native libraries + NETCore you need to write platform dependent code to load it on linux, not just include-use.

Regards,
Vperus.

Ian @ un4seen

  • Administrator
  • Posts: 26177
Re: BASS_FX 2.4.12.1
« Reply #727 on: 26 Jun '18 - 13:53 »
The reason for it is that the application's directory isn't in Linux's library search path, ie. Linux won't find the libraries if they're placed alongside your executable (like Windows will). So the add-ons would fail to load if they were linked with the libbass.so library and it isn't installed in the library search path.

When using .Net, calling a BASS function before any add-on functions are called should ensure that the BASS library is loaded before the add-ons are. For example, you could call BASS_GetVersion first thing in your initialization code.

Sander van den Brakel

  • Guest
Re: BASS_FX 2.4.12.1
« Reply #728 on: 22 Oct '18 - 17:18 »
We use ManagedBass in C# to build Apps in Visual Studio.

We create streams like this:

Code: [Select]
var loopFlag = (loopState) ? BassFlags.Loop : BassFlags.Default;
_stream = Bass.CreateStream(AppEnvironment.AudioPath + filePath, 0, 0, loopFlag);

Works perfectly. However we now want to apply a pitch-shift fx on this stream (while it's already playing).
Is this possible with BassFX?

Thanks in advance....

Sander

Ian @ un4seen

  • Administrator
  • Posts: 26177
Re: BASS_FX 2.4.12.1
« Reply #729 on: 23 Oct '18 - 17:13 »
Yes, you can use the BASS_FX add-on's tempo processing for that. You will need to add the BASS_STREAM_DECODE flag to the BASS_StreamCreateFile call, and then call BASS_FX_TempoCreate on that stream to get a new stream with tempo processing enabled. You may also want to use the BASS_FX_FREESOURCE flag in the BASS_FX_TempoCreate call, to have the 1st stream automatically freed when the 2nd one is.

Note ManagedBass presents/names the functions and flags a bit differently but the process is the same.

vandenbrakel

  • Posts: 26
Re: BASS_FX 2.4.12.1
« Reply #730 on: 3 Jan '19 - 10:58 »
Okay, thanks. That now works in the standard way. Create|Decode->Tempo|Decode->Pitch->Addtomixer->Output.
But when we put pitch on a stream that is already playing through a mixer, it doesnt't get pitched.

C# example code that works pitched
Code: [Select]
var beatles = Bass.CreateStream(path + "beatles.mp3", 0, 0, BassFlags.Decode);
beatles = BassFx.TempoCreate(beatles, BassFlags.Decode);
Bass.ChannelSetAttribute(beatles, ChannelAttribute.Pitch, 10);
var mixer = BassMix.CreateMixerStream(44100, 2, BassFlags.Default); // create stereo mixer with same sample rate
var state = BassMix.MixerAddChannel(mixer, beatles, BassFlags.MixerDownMix);
Bass.ChannelPlay(mixer);

C# example that doesn't work. Probably we need to chnage the origional stream?
Code: [Select]
var beatles = Bass.CreateStream(path + "beatles.mp3", 0, 0, BassFlags.Decode);
var mixer = BassMix.CreateMixerStream(44100, 2, BassFlags.Default); // create stereo mixer with same sample rate
var state = BassMix.MixerAddChannel(mixer, beatles, BassFlags.MixerDownMix);
Bass.ChannelPlay(mixer);

//change pitch while we play through mixer
beatles = BassFx.TempoCreate(beatles, BassFlags.Decode);
Bass.ChannelSetAttribute(beatles, ChannelAttribute.Pitch, 10);


Hope this makes any sense. Thanks

Ian @ un4seen

  • Administrator
  • Posts: 26177
Re: BASS_FX 2.4.12.1
« Reply #731 on: 3 Jan '19 - 14:00 »
In the 2nd case, the problem is that it is the original stream (not the tempo stream) that is added to the mixer. If you want to delay the pitch change, you should still make the BASS_FX_TempoCreate call before adding to the mixer and just delay the BASS_ChannelSetAttribute call.

vandenbrakel

  • Posts: 26
Re: BASS_FX 2.4.12.1
« Reply #732 on: 3 Jan '19 - 14:19 »
Thanks!

That works. And with the
Code: [Select]
BassFlags.FxFreeSource flag set it doesn't seem to affect CPU that much.

(: JOBnik! :)

  • Posts: 1080
Re: BASS_FX 2.4.12.2 beta
« Reply #733 on: 24 Jan '19 - 14:16 »
Hi ;D

Please test the latest updates:

* Tempo:
  * Updated to the latest SoundTouch version 2.1.3

* Reverse:
  * Fixed BASS_ERROR_UNKNOWN error when restarting playback of a reverse stream, as described in this thread:
    www.un4seen.com/forum/?topic=18176

* BPM:
  * Updated to the latest SoundTouch version 2.1.3
  * Rewrote Beats-per-Minute analysis algorithm for more reliable BPM detection.

* DSP:
  * Fixed fFeedback parameter in BASS_FX_BFX_CHORUS effect.
  * Enabled fS parameter to be greater than 1 in BASS_FX_BFX_BQF effect.
  * Fixed bStereo parameter in BASS_FX_BFX_ECHO4 effect for Android.


SoundTouch's Beat Position detection will be added later.

Windows x86/x64: http://www.jobnik.net/BASS_FX/beta/bass_fx24122-beta.zip
Linux x86/x64: http://www.jobnik.net/BASS_FX/beta/bass_fx24122-linux-beta.zip
Android: http://www.jobnik.net/BASS_FX/beta/bass_fx24123-android-beta.zip
« Last Edit: 26 Jul '21 - 18:21 by (: JOBnik! :) »

rv

  • Posts: 387
Re: BASS_FX 2.4.12.1
« Reply #734 on: 27 Jan '19 - 14:32 »
Is it possible to get a list of all the drums hits position like in this picture?

https://dt7v1i9vyp3mf.cloudfront.net/styles/news_large/s3/imagelibrary/b/beatrecyclesensitivity-1PFOXXXmwvggiCjALH0lCX8PtGUydeBC.jpg

Not only One beat per measure

otherside

  • Posts: 57
Re: BASS_FX 2.4.12.1
« Reply #735 on: 28 Jan '19 - 10:55 »
Hello. I often get a lot of crashes (I am using bassfx of current release version)

Code: [Select]
SIGABRT 0x00000000000069bb
#0. Crashed: Thread
0  libc.so                        0xf6ea1758 (Missing)
1  libc.so                        0xf6e7b80d (Missing)
2  libc.so                        0xf6e789bf (Missing)
3  libc.so                        0xf6e76572 (Missing)
4  libstdc++.so                   0xf5a774df (Missing)
5  libstdc++.so                   0xf5a78fda (Missing)
6  libstdc++.so                   0xf5a76cd9 (Missing)
7  libstdc++.so                   0xf5a78fda (Missing)
8  libstdc++.so                   0xf5a76ccf (Missing)
9  libstdc++.so                   0xf5a76ccf (Missing)
10 libbass_fx.so                  0xee6185d3 (Missing)
11 (Missing)                      0x37fffffe (Missing)


lqbe

  • Posts: 36
Re: BASS_FX 2.4.12.1
« Reply #737 on: 11 Mar '19 - 05:57 »
SoundTouch's Beat Position detection will be added later.
Exciting! Can't wait

rv

  • Posts: 387
Re: BASS_FX 2.4.12.1
« Reply #738 on: 30 Apr '19 - 12:51 »
Hi,

For the BASS_FX_BFX_ECHO4, is it possible to add a LPF (only one knob, frequency, from 1hz? to max freq=DISABLE) before injecting it to the feedback
This is very common in a DELAY to have the echo darker than original delay
it is often called HIGH DAMP feature


Cristian1980

  • Posts: 70
Re: BASS_FX 2.4.12.1
« Reply #739 on: 23 May '19 - 10:20 »
Hello,

Do you think we could have BASS FX for Mac built with SDK 10.9? This is a requirement in order to notarize applications for the latest MAC OS.
The latest BASS FX version seems to be using SDK 10.8.
https://developer.apple.com/documentation/security/notarizing_your_app_before_distribution?language=objc

Thank you for any help,
Cristian

lqbe

  • Posts: 36
Re: BASS_FX 2.4.12.1
« Reply #740 on: 26 May '19 - 14:43 »
SoundTouch's Beat Position detection will be added later.
Exciting! Can't wait
Any news on this? PM if you need a tester, of course.

victor

  • Posts: 137
Re: BASS_FX 2.4.12.1
« Reply #741 on: 15 Jun '19 - 14:23 »
Hello,

Do you think we could have BASS FX for Mac built with SDK 10.9? This is a requirement in order to notarize applications for the latest MAC OS.
The latest BASS FX version seems to be using SDK 10.8.
https://developer.apple.com/documentation/security/notarizing_your_app_before_distribution?language=objc

Thank you for any help,
Cristian
one more vote for this.
Thanks

otherside

  • Posts: 57
Re: BASS_FX 2.4.12.1
« Reply #742 on: 21 Jun '19 - 08:25 »
Hello. Can u please add x64 versions of the library? Google request to do it until August or the apps will not be able to update.

kenumir

  • Posts: 28
Re: BASS_FX 2.4.12.1
« Reply #743 on: 11 Jul '19 - 07:15 »
+1
BASS has x86_64 files.

Ian @ un4seen

  • Administrator
  • Posts: 26177
Re: BASS_FX 2.4.12.1
« Reply #744 on: 11 Jul '19 - 13:46 »
There is an x86_64 build available here:

   http://jobnik.net/BASS_FX/beta/bass_fx24123-android-beta.zip

workoutDJ

  • Posts: 28
Re: BASS_FX 2.4.12.1
« Reply #745 on: 18 Jul '19 - 20:34 »
 :D  I am a VB developer and really enjoyed the samples you have .. even though they are in VB6.  My desire is to have an interface like a DJ mixing board and found the BPM sample code GREAT!   My question is:  can I have like two instances of this functionality (like speeding up and slowing down the BPM and volume) and get one output (that I want to save as an MP3)?  I have been STRUGGLING with the mixer and have not located great VB samples of using the mixer.  Again, I am very happy with your work and web site !  Thanks
George

Ian @ un4seen

  • Administrator
  • Posts: 26177
Re: BASS_FX 2.4.12.1
« Reply #746 on: 19 Jul '19 - 15:24 »
Do you want to adjust the tempo of 2 files and play/encode a mix of both? If so, you would indeed use a mixer for that, ie. plug both files into the mixer (with tempo adjustment enabled) and set an encoder on the mixer. I'm not a VB user myself, but the calls will be much the same in any language and could look something like this:

Code: [Select]
mixer = BASS_Mixer_StreamCreate(freq, chans, BASS_MIXER_END); // create a mixer
BASS_Encode_MP3_StartFile(mixer, options, BASS_ENCODE_AUTOFREE, outfilename); // set an MP3 encoder on it
source1 = BASS_StreamCreateFile(false, infilename1, 0, 0, BASS_STREAM_DECODE); // create decoder for 1st file
source1 = BASS_Tempo_StreamCreate(source1, BASS_FX_FREESOURCE); // enable tempo processing on it
BASS_Mixer_StreamAddChannel(mixer, source1, 0); // plug it into the mixer
source2 = BASS_StreamCreateFile(false, infilename2, 0, 0, BASS_STREAM_DECODE); // create decoder for 2nd file
source2 = BASS_Tempo_StreamCreate(source2, BASS_FX_FREESOURCE); // enable tempo processing on it
BASS_Mixer_StreamAddChannel(mixer, source2, 0); // plug it into the mixer
// set tempos/etc here
BASS_ChannelPlay(mixer, 0); // start the mixer

...

BASS_StreamFree(mixer); // free the mixer (and encoder due to AUTOFREE)
BASS_StreamFree(source1); // free the 1st file stuff
BASS_StreamFree(source2); // free the 2nd file stuff

Please see the documentation for details on the mentioned functions.

workoutDJ

  • Posts: 28
Re: BASS_FX 2.4.12.1
« Reply #747 on: 19 Jul '19 - 18:29 »
You rock and are a very serious person with real answers.  I have been a fan for years of your product and contributions.  Thanks !
George

workoutDJ

  • Posts: 28
Re: BASS_FX 2.4.12.1 Problems with a mixer
« Reply #748 on: 22 Jul '19 - 19:12 »
I just cannot seem to get this all working . . . again.  I am using VB15 but I do have ver.6 around too if necessary.  Using the latest DLL files from your site.  I do a reference for Bass.net but the others do not load as references.  Here is my code and you will see the problems where VB just cannot find the libraries !  All of the BassMix pieces are not loading for me.  HELP        Thanks

        Dim intLength As Integer = 0
        Dim iStreamA As Integer = 0
        Dim iStreamB As Integer = 0
        Dim ioutputMixerStream As Integer = 0
        Dim sMP3_A As String
        Dim sMP3_B As String
        Dim iNumberOfSpeakers As Integer = 2

        sMP3_A = "U:\MUSIC\test.mp3"
        sMP3_B = "U:\MUSIC\TEST2.mp3"
        Bass.BASS_Init(-1, 44100, BASSInit.BASS_DEVICE_DEFAULT, IntPtr.Zero)
        BassNet.Registration("george@georgeeckenrode.com", "2X15232326152322")

        Dim mixer As Integer
        mixer = BassMix.BASS_Mixer_StreamCreate(44100, 2, BASSFlag.BASS_SAMPLE_FLOAT)

        'iStreamA = Bass.BASS_StreamCreateFile(sMP3_A, 0L, 0L, BASSFlag.BASS_STREAM_DECODE Or BASSFlag.BASS_SAMPLE_FLOAT)
        iStreamA = Bass.BASS_StreamCreateFile(sMP3_A, 0, 0, BASSFlag.BASS_DEFAULT)

        iStreamA = BASS_FX_TempoCreate(iStreamA, BASSFlag.BASS_FX_FREESOURCE Or BASSFlag.BASS_STREAM_DECODE)

        iStreamB = Bass.BASS_StreamCreateFile(sMP3_B, 0L, 0L, BASSFlag.BASS_STREAM_DECODE Or BASSFlag.BASS_SAMPLE_FLOAT)
        BASS_Mixer_StreamAddChannel(mixer, iStreamB, 0)   ' --- // plug it into the mixer

        Dim okA As Boolean = BASS_Mixer_StreamAddChannel(mixer, iStreamA, BASSFlag.BASS_DEFAULT)
        Dim okB As Boolean = BASS_Mixer_StreamAddChannel(mixer, iStreamB, BASSFlag.BASS_DEFAULT)

        Bass.BASS_ChannelPlay(mixer, False)

Ian @ un4seen

  • Administrator
  • Posts: 26177
Re: BASS_FX 2.4.12.1
« Reply #749 on: 23 Jul '19 - 12:31 »
Do you mean it can't find the BASS/add-on DLLs? I think you just need to copy them to the output directory (where the EXE is).