BASS.NET API 2.4.17.5

Started by radio42,

radio42

Hi Ken,

just wondering, if your recording EQ issue resolved - since that was definitly not a BASS nor a BASS.NEt thing?!

Regarding the WaveForm rendering. I guess the WaveForm will for now stay as it is.
Introducing such layers would increase the complexity of the rendering and the painting a lot. And the cost of doing so would not justify it's use case. So I guess, if you need such you'll need to implement your own WaveForm class.

ken

I don't had have the time to test more ways with my "EQ thing" I try to do it soon, and get back to you.

The waveform was just an crazy idea, don't bother  :)
/Ken

Renegade

Are there any breaking changes between 2.3.1.3 and 2.3.1.8?

Just checking to make sure.

Thanks in advance.

radio42

Yes and No - it depends what you have used so far;-)

Mainly between 2.3.1.3 and 2.3.1.8 BASSAsio has been changed, since in between BASSAsio became a final release (see ASIOPROC).
Also BASSmix has slightly be changed - no real breaking changes here, but new methods have been added which are recommended to be used.
And finally there was one BASS change regarding the use of stream creation flags (before illegal flags have been ignored - in the latest BASS version they will cause an error) - this is mailnly around the use of the AUTOFREE and DECODE flags.

Here is a complete list of changes between 2.3.1.3 and 2.3.1.8:
// 2.3.1.4 - BASSmix: support for latest version added:
//           . new BASS_MIXER_PAUSE flag:
//             to be used with BASS_Mixer_StreamAddChannel(Ex) and BASS_Mixer_ChannelFlags
//           . new BASS_Mixer_ChannelSetSync and BASS_Mixer_ChannelRemoveSync
//           . new BASS_Mixer_ChannelIsActive, BASS_Mixer_ChannelPause, BASS_Mixer_ChannelPlay
// 2.3.1.5 - Upgrade supporting BASSVis v2.3.1.0
//         - WaveForm: improved rendering performance
// 2.3.1.6 - Upgrade supporting BASSVis v2.3.1.1
//         - BASS: Version 2.3.0.3 support added:
//           . FX state resetting: new BASS_FXReset method
//           . PLS/M3U playlist URL processing: new BASS_CONFIG_NET_PLAYLIST config option
//           . Internet stream connection status retrieval: new BASS_FILEPOS_CONNECTED (BASS_StreamGetFilePosition mode)
//           . Lyrics3v2 tags: new BASS_TAG_LYRICS3 (BASS_ChannelGetTags type)
//           . IT virtual channel configuration: new BASS_CONFIG_MUSIC_VIRTUAL config option
//           . Accurate speaker detection on Vista: BASS_INFO (speakers member)
//           . Device output/input rate retrieval on Vista: BASS_INFO and BASS_RECORDINFO (freq member)
//           . Syncing upon position changes BASS_SYNC_SETPOS (BASS_ChannelSetSync type)
//           . Improved stall handling: BASS_SYNC_STALL
//           . Invalid decoding channel flags produce an error instead of being ignored:
//             at BASS_StreamCreate/File/User/Url and BASS_MusicLoad
//         - Misc: new DSP_BufferStream class added (synchronized decoding channel clones)
// 2.3.1.7 - Upgrade supporting BASS v2.3.0.3
//           Upgrade supporting BASSmix v2.3.0.0
//           Upgrade supporting BASSVis v2.3.1.2
//           DSP_PeakLevelMeter: small bug fix when calculating the UpdateTime
//           BassAsioHandler: small bug fix with the Volume calculation
//           BassAsioHandler: new Notification event handler added
// 2.3.1.8 - Upgrade supporting BASS_VIS v2.3.2.1
//         - Bug-Fix in AddOn.Tags: reading non zero-terminated ID3v1 tags
//         - Upgrade in EncoderOGG: supporting new oggenc2.84 (float input)
//         - Enhancement in WaveForm: new volume curve options and WAVEFORMDRAWTYPE.HalfMono
//         - Upgrade supporting final BASSASIO v1.0.0.0
//           (ASIOPROC signature change: must now return the number of bytes written)

Renegade

Thanks Bernd. I'll watch for those.

One other thing - are the upgrades for other BASS modules necessary when moving to 2.3.1.8 or are they optional? Any breaks there?

I just want to make sure that I have a good grip on what I'll need to watch for.

Thanks in advance.

radio42

No breaks there, but you definitly should upgrade the add-ons as well due to some internal BASS changes.

radio42

#281
21.12.2007: Version 2.4.0.0 beta is out!

Please see the help file (.chm) for a complete list of changes and take a look to the "Upgrading from 2.3" section!
Note, that support for .Net 1.1 has been discontinued. Supported .Net Framework versions include 2.0, 3.0 and 3.5.

Last 2.4 BASS.NET beta upload: 08.02.2008  BassVideo support added, latest BASSmix updated

BASS.NET beta:
Full Install:
  www.un4seen.com/filez/4/Bass24.Net.zip

Lib only:
  www.un4seen.com/filez/4/Bass24.Net_beta.zip

BASS_WADSP:
  www.un4seen.com/filez/4/bass_wadsp24.zip


Installer notes:
The provided samples are now installed to the <AppDataUser> directory!


BassFan

Missing full API of WMP from BassVis in to NET API 2.4.0.0

greets BassFan

radio42

In BASS.NET 2.4 beta the following was added for WMP:
- "BASSVISKIND_WMP" in BASSVISPlugin enum
- "BASSVIS_SetModulePreset" method

I couldn't see anything else which was added for WMP support?
So what is actually missing?

BassFan

#284
Quote from: radio42In BASS.NET 2.4 beta the following was added for WMP:
- "BASSVISKIND_WMP" in BASSVISPlugin enum
- "BASSVIS_SetModulePreset" method

I couldn't see anything else which was added for WMP support?
So what is actually missing?

i have write a private message ;)
please show in to C++ Header File from bassvis24 Archive

EDIT:
any BASS_VIS_EXEC Fields member .. not insert

greets BassFan

radio42

I see!
An update is on the page now (see above).

BassFan

Quote from: radio42I see!
An update is on the page now (see above).

Thanks ;)

greets BassFan

BassFan

#287
@Radio42

ok i think the api .NET 2.4 for bassvis is finish now all work fine with no problems
added 30 Sonique plugins and no problem with findplugin.

thanks ..

greets BassFan


radio42

The current BASS.NET 2.4 version is already ready for 64-bit!
It can actually be used on either 32- and 64-bit as it was compiled for all CPU's.
So there is no need for any special 64-bit build ;-)

However, I think the native BASS libs are still 32-bit versions!

smesser

#290
Bernd,

Note: I am using the 2.4 betas of everything.

After much efforts and communications with BassFan he suggested that I talk to you.

I ported the VB.NET BassVis  example to C# and am having troubles with it running Winamp visuals
on Vista. I then tried to run Winamp visuals on Vista with:

The example.exe (Delphi) binary that came with the BassVis and it worked fine.
I then tried the Winamp visuals with the VB.NET example and just get a blank screen.

Can you think of anything to try. I am banging my head against the keyboard at this point.

Thanks

EDIT: I forgot to mention that the problems are with vis_avs.dll milkdrop works fine.
 

radio42

I am not sure how I could help - since I don't fully understand where and what the real problem is.
So it sounds like the VB.Net example is also not working properly on Vista?

smesser

Well, I don't know BassFan suggested talking to you.

Who wrote the VB.NET example?

I just tried the VB.NET example on XP and it doesn't work there either.
I guess the VB.NET example is not compatible with the 2.4 version.

I have not been around since Bass 2.1 so there how been so many changes since then.

I guess since it works with the delphi exe it must be the VB.NET implementation that is the problem.



radio42

QuoteWho wrote the VB.NET example?
BassFan wrote it.

Are you sure to use all the latest 2.4 beta versions?
As BassFan tested all under Xp and that is working very weel.
Another user alkso reported no problems under Vista.
So it might be in your environment.
Maybe you have somewhere an 'old' DLL flying around which is loaded, instead of the newer once?

smesser

I will try to reget all the latest dll's and see if that makes a difference.

From the Bass 2.4 thread or from your thread?

radio42


BassFan

#296
Quote from: smesserI will try to reget all the latest dll's and see if that makes a difference.

From the Bass 2.4 thread or from your thread?
QuoteI just tried the VB.NET example on XP and it doesn't work there either.
can not understand your problem please show pic run under XP/not Vista and it work
vers. B and D

greets BassFan

smesser

Okay, I got all the latest stuff and the VB.NET example now works on Vista.

So, for sure the problem is in my porting of the VB.NET Example.

I have found one thing that I am not sure I ported correctly maybe one of you know.

In VB.NET from the VisStart_Click setting up the  VisPort

hWndGen = mVisParam.VisGenWinHandle

If hWndGen <> 0 Then
BASSVIS.BASS_VIS_SetVisPort(mVisParam, hWndGen, picPlgSource.Handle, 0, 0, picPlgSource.Width, picPlgSource.Height)

In VB hWndGen in an int but the parameter is of type IntPtr.

In my port I cast hWndGen as an IntPtr else it won't compile. Maybe this is wrong.

if (optPicBox.Checked)
{
      modVis.hWndGen = (int)mVisParam.VisGenWinHandle;

      if (modVis.hWndGen != 0)
      {
             BassVis.BASS_VIS_SetVisPort(mVisParam, (IntPtr)modVis.hWndGen, picPlgSource.Handle, 0, 0, picPlgSource.Width, picPlgSource.Height);
      }
}

The VB.NET code uses int and IntPtr interchangably in C# I can't do that.


Well, this may or maynot be the problem but surely it is something that I have not done correctly

BassFan


radio42

Yes, that cast is invalid!
In general: to convert an "int" to an IntPtr you might use:
a) IntPtr p = new IntPtr(intval)
b) int intval = p.ToInt32()

However, why do you need to convert that at all, since in BASS.NET both methods/classes already use an IntPtr.
So you might directly use:
IntPtr hWndGen = mVisParam.VisGenWinHandle;
...
BassVis.BASS_VIS_SetVisPort(mVisParam, hWndGen, picPlgSource.Handle, 0, 0, picPlgSource.Width, picPlgSource.Height);